def getUserInfo(self, username): ''' 用户查看自己的基本信息 :param username: 微信用户提供的用户名 :return 'res[]/fail d': ''' if not username: return 'fail', errors.NOT_BIND r = Db.select('t_user', where="wx_name=$username", vars=locals(), limit=1) # 查看用户是否已绑定 if not r: # 用户还未绑定设备,即用户未注册账号 return 'fail', errors.NOT_BIND u = r[0] # 取出第一个用户为当前用户 res = dict() # 返回结果的字典 res['id'] = u['id'] # 用户ID res['bt'] = Common.secToStr(u['bind_time']) # 绑定时间 res['bs'] = '已绑定' # 绑定状态 r2 = Db.select('t_user_attribute', what='count(*)', where="user_id=$u['id']", vars=locals()) # 获取登录次数 if not r2: res['count'] = 0 # 登录次数 res['last'] = Common.secToLast(0) # 最后一次登录时间 else: res['count'] = r2[0]['count(*)'] # 登录次数 r3 = Db.select('t_user_attribute', where="user_id=$u['id']", vars=locals(), order="time desc", limit=1) # 获取最后一个记录 res['last'] = Common.secToLast(r3[0].time) # 最后一次登录时间 return 'success', res
def getDeviceInfo(self, username): ''' 用户查看设备信息 :param username: 微信用户提供的用户名 :return 'res[]/fail d': ''' if not username: return 'fail', errors.NOT_BIND r = Db.select('t_user', where='wx_name = $username', vars=locals(), limit=1) # 查看用户是否已绑定 if not r: # 用户还未绑定设备 return 'fail', errors.NOT_BIND u = r[0] # 取出第一个用户为当前用户 r1 = Db.select('t_device', where="id=$u['device_id']", vars=locals(), limit=1) # 获取设备基本信息 if not r1: # 如果设备不存在,则为系统错误 return 'fail', errors.ERROR_SYSTEM d = r1[0] # 取出第一个设备作为当前设备 res = dict() # 返回结果的字典 res['id'] = d['id'] # 设备ID res['ct'] = Common.secToStr(d['create_time']) # 生产日期 res['bs'] = '已绑定' # 绑定状态 res['rf'] = d['delay'] # 收集数据频率 r2 = Db.select('t_device_attribute', what='count(*)', where="device_id=$d['id']", vars=locals()) # 获取上传次数 if not r2: res['count'] = 0 # 上传次数 res['last'] = 0 # 最后一次上传时间 else: res['count'] = r2[0]['count(*)'] # 上传次数 r3 = Db.select('t_device_attribute', where="device_id=$d['id']", vars=locals(), order="time desc", limit=1) # 获取最后一个记录 res['last'] = Common.secToLast(r3[0].time) # 最后一次上传时间 return 'success', res