|
@@ -147,6 +147,64 @@ class screen_set_path(Load):
|
|
|
state = self.service('common').update('farm', id, update)
|
|
|
self.out('yes', {'id':state})
|
|
|
|
|
|
+
|
|
|
+class screens_path(Load):
|
|
|
+ @Web.setting
|
|
|
+ def get(self):
|
|
|
+ farm = self.input('ids', '2,3,4')
|
|
|
+ self.data['farm'] = farm
|
|
|
+ farm = farm.split(',')
|
|
|
+ device = self.input('device')
|
|
|
+ farmInfo = self.service('common').one('farm', id=farm[0])
|
|
|
+
|
|
|
+
|
|
|
+ self.data['camera'] = []
|
|
|
+
|
|
|
+ deviceList = Device.get(self, search={'hardware_type--ins':(2,4,5),'farm_id--ins':farm})
|
|
|
+ self.data['device'] = {}
|
|
|
+ for v in farm:
|
|
|
+ self.data['device'][v] = []
|
|
|
+ deviceInfo = {}
|
|
|
+ devices = []
|
|
|
+ if deviceList:
|
|
|
+ for key, value in enumerate(deviceList):
|
|
|
+ if value['type_id'] > 0:
|
|
|
+ type_info = self.service('common').one('device_type', id=value['type_id'])
|
|
|
+ value['unit'] = type_info['unit']
|
|
|
+ value['typeName'] = type_info['name']
|
|
|
+ self.data['device'][str(value['farm_id'])].append(value)
|
|
|
+ devices.append(value['id'])
|
|
|
+ if not device and not deviceInfo:
|
|
|
+ deviceInfo = value
|
|
|
+ self.data['deviceList'] = {}
|
|
|
+ for v in farm:
|
|
|
+ farmData = self.service('common').one('farm', id=int(v))
|
|
|
+ if farmData:
|
|
|
+ self.data['deviceList'][v] = ({'name':farmData['name'] + '实时检测', 'device':self.data['device'][v]},)
|
|
|
+
|
|
|
+ Device.statBase(self, deviceInfo)
|
|
|
+ log_search = {}
|
|
|
+ if device:
|
|
|
+ log_search['device_id'] = device
|
|
|
+ else:
|
|
|
+ log_search['device_id--ins'] = devices
|
|
|
+ log_search['type_id'] = 2
|
|
|
+ log_search['farm_id--ins'] = farm
|
|
|
+
|
|
|
+ self.data['logs'] = self.service('common').list('msg', search=log_search, limit='0,1')
|
|
|
+ if self.data['logs']:
|
|
|
+ for key, value in enumerate(self.data['logs']):
|
|
|
+ type_info = self.service('common').one('msg_type', id=value['type_id'])
|
|
|
+ self.data['logs'][key]['type'] = type_info['name']
|
|
|
+ self.data['logs'][key]['cdates'] = Demeter.date(value['cdate'])
|
|
|
+ self.data['info'] = farmInfo
|
|
|
+ if not self.data['info']['welcome']:
|
|
|
+ self.data['info']['welcome'] = self.data['info']['name']
|
|
|
+
|
|
|
+ self.data['noset'] = True
|
|
|
+ self.data['stat'] = True
|
|
|
+ self.view("device/screens.html")
|
|
|
+
|
|
|
|
|
|
class data_path(Load):
|
|
|
@Web.auth
|