def get(self, owner_id): #get the list of devices owned by a particular user if not (session.get('logged_in') == True): return jsonify({ 'msg': "Session Expired. Pls login again.", 'result': False }) elif (session.get('logged_in') == True and session.get('user_id') != str(owner_id)): return jsonify({ 'msg': "Unauthorized Access Attempt", 'result': False }) devicelist = Device.getDevicesByOwner(owner_id) if (isinstance(devicelist, list)): devicelistofdicts = [device.toDict() for device in devicelist] response = {} response['devicelist'] = devicelistofdicts response['result'] = True return jsonify(response) else: response = {} response['msg'] = devicelist response['result'] = False return jsonify(response)
def get(self, owner_id): devicelist = Device.getDevicesByOwner(owner_id) if (isinstance(devicelist, str)): response = {} response['msg'] = devicelist response['result'] = False return jsonify(response) deviceidlist = [ device.getid() for device in devicelist if device.getstate() == True ] if (deviceidlist == []): response = {} response['msg'] = "No Devices with ongoing Sessions found." response['result'] = False return jsonify(response) devicedatalist = {} for deviceid in deviceidlist: dbkey = "device:" + deviceid dbval = self.db.get(dbkey) if (dbval != None): devicedatalist[deviceid] = literal_eval(dbval) response = {} response['devicedatalist'] = devicedatalist response['result'] = True return jsonify(response)
def getBill(self, user_id): us = UserSetting.getSetting(user_id, 'lastbilldate') us_dict = us.toDict() lastbilldate = us_dict['value'] print(lastbilldate) rows = Session.getEnergyConsumedPerDeviceByOwner( user_id, lastbilldate=lastbilldate) if (isinstance(rows, list)): totalenergyc_completedsessions = self.calcTotalEnergyConsumption( rows) else: totalenergyc_completedsessions = 0.0 devicelist = Device.getDevicesByOwner(user_id) if (isinstance(devicelist, list)): activedevicelist = [ device for device in devicelist if device.getstate() == True ] if (activedevicelist == []): totalenergyc_ongoingsessions = 0.0 else: totalenergyc_ongoingsessions = 0.0 for device in activedevicelist: dbkey = "device:" + device.getid() dbval = self.db.get(dbkey) if (dbval != None): devicertdata = literal_eval(dbval) totalenergyc_ongoingsessions += devicertdata['energyc'] found = False for i in range(len(rows)): if (rows[i]['id'] == device.getid()): rows[i]['rtenergyc'] = devicertdata['energyc'] found = True break if (found == False): d = {} d['id'] = device.getid() d['name'] = device.getname() d['rtenergyc'] = devicertdata['energyc'] rows.append(d) else: totalenergyc_ongoingsessions = 0.0 print(rows) totalenergyc = totalenergyc_completedsessions + totalenergyc_ongoingsessions d = {} d['totalenergyc'] = totalenergyc d['totalenergyc_completedsessions'] = totalenergyc_completedsessions d['totalenergyc_ongoingsessions'] = totalenergyc_ongoingsessions d['devicelist'] = rows return d