def get(self): #验证请求参数 args = self.parser.parse_args() opt = args.get('opt') city = args.get('city') district = args.get('district') #用于查询某城市区域的影城信息 if opt == 'cityAndDistrict': if city and district: cinemas = dao.queryOne(Cinemas).filter( Cinemas.city == city, Cinemas.district == district) if not cinemas.count(): return {'msg': '该地区没有电影院'} self.selectCinemas(cinemas) return {'msg': '城市和城区区域不能为空'} #用于查询某一城市的影城信息 elif opt == 'city': if city: cinemas = dao.queryOne(Cinemas).filter(Cinemas.city == city) if not cinemas.count(): return {'msg': '该城市没有电影院'} self.selectCinemas(cinemas) return {'msg': '搜索城市不能为空'} #查询所有的影城信息 else: cinemas = dao.queryAll(Cinemas) self.selectCinemas(cinemas)
def get(self): #验证用户名是否已注册 args = self.parser.parse_args() name = args.get('name') print('名字:', name) qs = dao.queryOne(User).filter(User.name == name) # print(qs) # print('sdfsdf',qs) if qs.count(): return {'status': 202, 'msg': '{} 用户名已被注册!'.format(name)} return {'status': 200, 'msg': '{} 用户名可以使用!'.format(name)}
def wrapper(*args, **kwargs): token = request.args.get('token') if not token: token = request.form.get('token') user_id = session.get(token) loginUser = dao.getById(User, user_id) if not loginUser: return {'msg': '请先登录!'} if loginUser.rights & qx == qx: return fn(*args, **kwargs) qxObj = dao.queryOne(Qx).filter(Qx.right == qx).first() return {'msg': '您没有 {} 权限'.format(qxObj.name)}
def wrapper(*args,**kwargs): print('-check login-') token = request.args.get('token') user_id = session.get(token) loginUser = dao.getById(User,user_id) if not user_id: return {'msg':'用户必须先登录'} if loginUser.rights & qx == qx: return fun(*args,**kwargs) else: qxObj = dao.queryOne(Qx).filter(Qx.right==qx).first() return {'msg':'用户没有{}权限'.format(qxObj.name)}
def login(self): activeParser = self.parser.copy() activeParser.add_argument('Token') activeParser.add_argument('username', dest='name', required=True, help='用户名真的不能为空') activeParser.add_argument('password', dest='pwd', required=True, help='密码不能为空') args = activeParser.parse_args() print(session.get(args.get('Token'))) if session.get(args.get('Token')): print('dfdfdfdfdfdf') return {'msg': '还想通过直接输入网页地址登录?'} name = args.get('name') print(name) # 将获取的用户输入密码加密,用于和数据库中密码相比较 pwd = md5_crypt(args.get('pwd')) qs = dao.queryOne(User).filter(User.name == name, User.password == pwd) print('进来了峨眉') if not qs.count(): return {'status':600,'msg': '您的用户名或口令有误'} else: qs:User = qs.first() if not qs.is_life: return {'status':700,'msg':'该用户已注销'} if qs.is_active: # 生成登录token,并将其存入至session中 loginToken = md5_crypt(str(uuid.uuid4())) print(loginToken) session[loginToken] = qs.id print('这是进来的user_id',qs.id) qs.last_login_time=datetime.now() dao.save(qs) print('-----------') out_user_fields = { 'name': fields.String, 'email': fields.String, 'phone': fields.String, 'photo': fields.String(attribute='photo_1') } out_fieleds = { 'msg': fields.String, 'data': fields.Nested(out_user_fields), 'access_token': fields.String } data = {'msg': '登录成功', 'data': qs, 'access_token':loginToken} print('========') return marshal(data,out_fieleds) return {'msg':'该用户未被激活'}
def get(self): # 验证请求参数 args = self.parser.parse_args() movies:BaseQuery = dao.queryOne(Movies).filter(Movies.flag == args.get('flag')) print(movies.all()) sort = args.get('sort') #排序 movies = movies.order_by(('-' if sort==1 else '')+args.get('orderby')) #分页 pager = movies.paginate(args.get('page'),args.get('limit')) return {'returnValue': pager.items}
def reactive(self): reactiveParser = self.parser.copy() reactiveParser.add_argument('email', required=True, help='邮箱不能为空') args = reactiveParser.parse_args() email = args.get('email') qs = dao.queryOne(User).filter(User.email == email) print('我得qs用户',qs.first()) if not qs.count(): return {'status': 505, 'msg': email + '邮箱未被注册'} # 重新发送邮件,sendEmail封装的是发送邮件的代码 helper.sendEmail(qs.first()) return {'msg': '重新申请用户激活,请查收邮箱进行激活'}