def delete(self, *args, **kwargs): """admin only""" result = { "errno": 0, "reason": "" } if not self.current_user.admin: return self.send_error(status_code=404) key = self.get_argument("key", default="") if not key: result["errno"] = 1 result["reason"] = "missing argument" else: user = get_user_by_key(self.session, key) if not user: result["errno"] = 1 result["reason"] = "no matching key" else: user.active = False self.session.commit() self.write(json.dumps(result))
def get(self, *args, **kwargs): """admin only""" result = { "errno": 0, "reason": "", "user_info": [] } if not self.current_user.admin: return self.send_error(status_code=404) key = self.get_argument("key", default="") if not key: users = get_all_user(self.session) for user in users: result["user_info"].append(dict( id=user.id, email=user.email, name=user.username, dept=user.dept, type=user.type, manager=user.manager, blacklist=user.blacklist, key=user.key, city=user.city, building=user.building, seat=user.seat )) else: user = get_user_by_key(self.session, key) if not user: result["errno"] = 1 result["reason"] = "invalid key" else: result["user_info"] = [dict( id=user.id, email=user.email, name=user.username, dept=user.dept, type=user.type, manager=user.manager, blacklist=user.blacklist, key=user.key, city=user.city, building=user.building, seat=user.seat )] return self.write(json.dumps(result))
def post(self, *args, **kwargs): """admin only""" result = { "errno": 0, "reason": "" } try: key = self.get_argument("key") user = get_user_by_key(self.session, key) if not user: result["errno"] = 1 result["reason"] = u"非法key" elif not user.admin: result["errno"] = 1 result["reason"] = u"用户不是管理员" else: phone_id = self.get_argument("phoneId") identifier = self.get_argument("identifier") product = self.get_argument("product", default="") mode = self.get_argument("mode", default="") dpi = self.get_argument("dpi", default="") osv = self.get_argument("osv", default="") osvalias = self.get_argument("osvalias", default="") belongs = self.get_argument("belongs", default="") phone = get_phone_by_phone_id(self.session, phone_id) if phone: result["errno"] = 1 result["reason"] = u"phoneId已存在" else: new_phone = register_phone(self.session, phone_id, identifier, product, mode, dpi, osv, osvalias, belongs) if new_phone: set_borrower(self.session, new_phone, user) else: result["errno"] = 1 result["reason"] = u"注册设备失败" except tornado.web.MissingArgumentError: result["errno"] = 1 result["reason"] = u"缺少字段" return self.write(json.dumps(result))
def post(self, *args, **kwargs): result = { "errno": 0, "reason": "" } try: key = self.get_argument("key") phone_id = self.get_argument("phoneId") user = get_user_by_key(self.session, key) phone = get_phone_by_phone_id(self.session, phone_id) if not user: result["errno"] = 1 result["reason"] = u"非法key" elif not phone: result["errno"] = 1 result["reason"] = u"非法phoneId" elif user.blacklist is True: result["errno"] = 1 result["reason"] = u"该用户在黑名单" elif user.active is False: result["errno"] = 1 result["reason"] = u"该用户不可操作" elif phone.active is False: result["errno"] = 1 result["reason"] = u"该设备不可用" else: if set_borrower(self.session, phone, user): pass else: result["errno"] = 1 result["reason"] = u"设置失败" except tornado.web.MissingArgumentError: result["errno"] = 1 result["reason"] = u"缺少参数" return self.write(json.dumps(result)) return self.write(json.dumps(result))