def add(): model_user = User() model_user.nickname = "郭大爷{0}号".format(random.randint(600, 800)) model_user.mobile = "1312332234" model_user.email = "*****@*****.**" db.session.add(model_user) db.session.commit() return 'nickname:{0}'.format(model_user.nickname)
def set(): default_pwd = "******" if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render("account/set.html", resp_data) resp = {'code': 200, 'msg': '编辑成功', 'data': {}} req = request.values nickname = req['nickname'] if 'nickname' in req else '' email = req['email'] if 'email' in req else '' mobile = req['mobile'] if 'mobile' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' id = req['id'] if 'id' in req else '0' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "nickname failed" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "email failed" return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "email failed" return jsonify(resp) user_info = User.query.filter(User.uid == id).first() if user_info: model_user = user_info else: model_user = User() model_user.updated_time = getCurrentDate() model_user.created_time = getCurrentDate() if login_pwd != default_pwd: model_user.login_salt = UserService.genSalt() model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.nickname = nickname model_user.email = email model_user.mobile = mobile model_user.login_name = login_name db.session.add(model_user) db.session.commit() return jsonify(resp)
def register(): if request.method == "GET": return ops_render("SignIn/register.html") resp = {'code': 200, 'msg': '操作成功~~', 'data': {}} req = request.values username = req['username'] if 'username' in req else '' nickname = req['nickname'] if 'nickname' in req else '' password = req['password'] if 'password' in req else '' email = req['email'] if 'email' in req else '' User_info = User.query.filter_by(login_name=username).first() if User_info: resp['code'] = -1 resp['msg'] = "已有此账号!" return jsonify(resp) salt = UserService.geneSalt() print(salt) password = UserService.genePwd(password, salt) model_User_info = User() model_User_info.created_time = getCurrentDate() model_User_info.login_name = username model_User_info.nickname = nickname model_User_info.login_salt = salt model_User_info.login_pwd = password model_User_info.email = email model_User_info.updated_time = getCurrentDate() db.session.add(model_User_info) db.session.commit() return jsonify(resp)
def set(): default_pwd = "******" if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) user_info = None if uid: user_info = User.query.filter_by(uid=uid).first() resp_data['user_info'] = user_info return ops_render("account/set.html", resp_data) elif request.method == "POST": resp = {'code': 200, 'msg': '操作成功', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else None mobile = req['mobile'] if 'mobile' in req else None email = req['email'] if 'email' in req else None login_name = req['login_name'] if 'login_name' in req else None login_pwd = req['login_pwd'] if 'login_pwd' in req else None if not all([nickname, mobile, email, login_name, login_pwd]): resp['code'] = -1 resp['msg'] = '参数不完整' return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = '该登录名已存在,请换一个' return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentData() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if default_pwd != login_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentData() db.session.add(model_user) db.session.commit() return jsonify(resp)
def get_user_by_email(self, email: str) -> User: sql = "SELECT * FROM users WHERE email = %s" val = (email, ) self.cursor.execute(sql, val) resultset = self.cursor.fetchall() if self.cursor.rowcount > 0: user = User( username=resultset[0][1], password_hash=resultset[0][2], email=resultset[0][3], ) user._id = resultset[0] return user return
def set(): default_pwd = "******" if request.method == "GET": resp_data = {} req = request.args uid = req.get("id", 0) user_info = None if uid: user_info = User.query.filter_by(uid=uid).first() resp_data["user_info"] = user_info return ops_render("account/set.html", resp_data) #添加和编辑账户的保存操作 resp = {"code": 200, "msg": "操作成功", "data": {}} req = request.values id = req['id'] if 'id' in req else "" nickname = req['nickname'] if 'nickname' in req else "" mobile = req['mobile'] if 'mobile' in req else "" email = req['email'] if 'email' in req else "" login_name = req['login_name'] if 'login_name' in req else "" login_pwd = req['login_pwd'] if 'login_pwd' in req else "" has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp["code"] = -1 resp["msg"] = "该登录名已存在,请换一个试试" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def register(): form = RegistrationForm() if form.validate_on_submit(): user = User(email=form.email.data, password=form.password.data) db.session.add(user) db.session.commit() # token = user.generate_confirmation_token() # send_email(user.email, 'Confirm Your Account', # 'auth/email/confirm', user=user, token=token) # flash('A confirmation email has been sent to you by email.') return redirect(url_for('admin.login')) return render_template('admin/register.html', form=form)
def register(): resp = {'code': 200, 'msg': '操作成功~', 'data': {}} req = request.values name = req['name'] if 'name' in req else '' password = req['password'] if 'password' in req else '' identification = req['identification'] if 'identification' in req else '' gender = req['gender'] if 'gender' in req else '' if name is None or len(name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名" return jsonify(resp) if password is None or len(password) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的密码" return jsonify(resp) user_info = User() user_info.name = name user_info.password = password user_info.identification = identification user_info.sex = gender db.session.add(user_info) db.session.commit() return jsonify(resp)
def _load_users(self): if not os.path.exists(self._user_filepath): return with open(self._user_filepath, "r") as infile: data: List[dict] = None try: data = json.load(infile) except Exception as err: print("user.dat: File was Empty") return for d in data: user = User( username=d["_username"], email=d["_email"], password_hash=d["_password_hash"], ) user._id = d["_id"] user.follows = d["follows"] if user._id > self._accumulate_user_id: self._accumulate_user_id = user._id self._users.append(user) print("user.dat: File Loaded")
def add(): form = UserForm() if form.validate_on_submit(): try: user = User(form.login_name.data, form.login_pwd.data, form.status.data) db.session.add(user) db.session.commit() flash("添加管理员成功!") return redirect(url_for('.index')) except: flash("添加管理员失败!", category="error") return render_template('/user/add.html', form=form)
def register(self, username: str, email: str, password: str) -> User: if not self.db.username_is_unique( username) or not self.db.email_is_unique(email): return new_user = self.db.create_user( User( username=username, email=email, password_hash=gen_pwd_hsh(password), )) if new_user is None: raise Exception("Could not Create User") return new_user
def search_user_node(tel): # db = get_db() db = driver.session() tel = str(tel) expression = "match(node:user)where node.tel=\'" + tel + "\' return node " result = db.run(expression) userList = [] for record in result: temp = User(record['node']) if temp: # 如果查找到了,直接返回python化后的neo4j结点 return temp else: return None
def reset_token(token): # 如果当前用户已经登陆就不可能需要重置密码(直接redirect到home) if current_user.is_authenticated: return redirect(url_for('home.home')) user = User.verify_reset_token(token=token) if user is None: flash('That is an invalid or expired token', category='warning') return redirect(url_for('reset_request.reset_request')) form = ResetPasswordForm() if form.validate_on_submit(): import random # 生成盐(用来给密码加密)可以用python自带的secrets salt = ''.join( [random.choice('0123456789abcdefABCDEF') for i in range(12)]) # 将数据库中的login_pwd 和login_salt 更新 user.login_pwd = passwd_gen(pwd=form.password.data, salt=salt) user.login_salt = salt db.session.commit() flash(message='Your password has been updated!', category='success') return redirect(url_for('login.login')) return render_template('reset_token.html', title='Reset Password', form=form)
def register(): # 如果用户已经登入就没必要注册(直接重定向到home) if current_user.is_authenticated: return redirect(url_for('home.home')) # 创建表单对象 form = RegistrationForm(csrf_secret=app.config['SECRET_KEY']) if form.validate_on_submit(): import random # 生成盐(用来给密码加密)可以用python自带的secrets salt = ''.join([random.choice('0123456789abcdefABCDEF') for i in range(12)]) form.validate_username(form.username) form.validate_email(form.email) # 创建User对象将提交上来的注册表单数据放在user_info中 user_info = User(login_name=form.username.data, email=form.email.data, login_pwd=passwd_gen(form.password.data, salt), login_salt=salt) # 向数据库插入 user_info db.session.add(user_info) db.session.commit() flash(message=f'Account created for {form.username.data}!', category='success') return redirect(url_for('login.login')) return render_template('register.html', title='Registration', form=form)
def set(): if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id",0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render("/account/set.html",resp_data) # POST resp = { 'code':200, 'msg':"操作成功", 'datat':{} } # 获取前端ajax传递的data req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'id' in req else '' mobile = req['mobile'] if 'id' in req else '' email = req['email'] if 'id' in req else '' login_name = req['login_name'] if 'id' in req else '' login_pwd = req['login_pwd'] if 'id' in req else '' # 校检 if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入规范的昵称" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入规范的手机" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入规范的邮箱" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入规范的登录名" return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = "请输入规范的登录密码" return jsonify(resp) # 筛选 is_exits = User.query.filter(User.login_name == login_name,User.uid != id).first() if is_exits: resp['code'] = -1 resp['msg'] = "该登录名已经存在,请更换" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() # 插入格式化的时间 model_user.created_time = getCurrentDate() # 生成16位的加密字符串 model_user.login_salt = UserService.generateSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if user_info and user_info.uid == 1: resp['code'] = -1 resp['msg'] = "该用户为Bruce" return jsonify(resp) model_user.login_pwd = UserService.generatePwd(login_pwd,model_user.login_salt) # 插入格式化的时间 model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): default_pwd = "******" if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render("account/set.html", resp_data) resp = {'code': 200, 'msg': '操作成功~~', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名~~" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号码~~" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的邮箱~~" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名~~" return jsonify(resp) if login_pwd is None or len(email) < 6: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录密码~~" return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "该登录名已存在,请换一个试试~~" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: if user_info and user_info.uid == 1: resp['code'] = -1 resp['msg'] = "该用户是演示账号,不准修改密码和登录用户名~~" return jsonify(resp) model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def setPwd(): default_pwd = "******" if request.method == 'GET': req = request.args uid = int(req.get('id'), 0) info = None if uid: info = User.query.filter_by(uid=uid).one_or_none() return ops_render("account/set.html", info=info) resp = {'code': 200, 'msg': '操作成功', 'data': {}} req = request.values # 尽量不要使用id作为变量名, 内建函数 id() user_id = ParamsValidator.GetORSetValue(req, 'id', value=0) nickname = ParamsValidator.GetORSetValue(req, 'nickname', value="") mobile = ParamsValidator.GetORSetValue(req, 'mobile', value="") email = ParamsValidator.GetORSetValue(req, 'email', value="") login_name = ParamsValidator.GetORSetValue(req, 'login_name', value="") login_pwd = ParamsValidator.GetORSetValue(req, 'login_pwd', value="") if ParamsValidator.DataRequired(nickname): resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名" elif ParamsValidator.DataRequired(mobile): resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号码" elif ParamsValidator.DataRequired(email): resp['code'] = -1 resp['msg'] = "请输入符合规范的邮箱" elif ParamsValidator.DataRequired(login_name): resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名" elif ParamsValidator.DataRequired(login_pwd): resp['code'] = -1 resp['msg'] = "请输入符合规范的登录密码" elif User.query.filter(User.login_name == login_name, User.uid != user_id).one_or_none(): resp['code'] = -1 resp['msg'] = "该登录名已存在,请换一个试试" else: user_info = User.query.filter_by(uid=user_id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: if user_info and user_info.uid == 1: resp['code'] = -1 resp['msg'] = "该用户是演示账号,不准修改密码和登录用户名" return jsonify(resp) # 当前密码 等于 默认密码的时候, 不更新密码 todo 只有输入密码不等于默认密码的时候才更新密码 model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def resetpwd(): #设置默认密码,如果改变则说明修改过了 default_pwd = '******' if request.method == 'GET': resp_data = {} req = request.args uid = int(req.get('id', 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info #传递到前端html文件 return ops_render('account/set.html', resp_data) resp = {'code': 200, 'msg': '操作成功', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的姓名!!!' return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的手机号码!!!' return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的邮箱!!!' return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的登录用户名!!!' return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = '请输入符合规范的登录密码!!!' return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = '该登录名已经存在,请换一个!!!' return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set_page(): default_pwd = '******' # 定义个默认密码显示 if request.method == 'GET': resp_data = {} req = request.args uid = int(req.get('id', 0)) user_info = None if uid: user_info = User.query.filter_by(uid=uid).first() resp_data['user_info'] = user_info back_url = UrlManager.buildUrl('/account/index') if user_info.status != 1: # 如果状态不是1,返回列表 return redirect(back_url) return ops_render('/account/set.html', resp_data) resp = {'code': 200, 'msg': '操作成功!', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: # 判断用户名长度 resp['code'] = -1 resp['msg'] = '请输入符合规范的姓名' return jsonify(resp) if mobile is None or len(mobile) < 11: # 判断手机长度 resp['code'] = -1 resp['msg'] = '请输入符合规范的手机' return jsonify(resp) if email is None or len(email) < 1: # 判断邮箱长度 resp['code'] = -1 resp['msg'] = '请输入符合规范的邮箱' return jsonify(resp) if login_name is None or len(login_name) < 1: # 判断登录名 resp['code'] = -1 resp['msg'] = '请输入符合规范的登录名' return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: # 判断登录密码 resp['code'] = -1 resp['msg'] = '请输入符合规范的登录密码' return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() # 判断用户名是否存在 if has_in: resp['code'] = -1 resp['msg'] = '该登录名已存在,请重新输入' return jsonify(resp) user_info = User.query.filter_by( uid=id).first() # 获取uid,判断是否存在,存在是更新,否则就新增 if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname # 变更用户名 model_user.mobile = mobile # 变更手机 model_user.email = email # 变更邮箱 model_user.login_name = login_name # 变更登录名 model_user.login_salt = UserService.geneSalt() if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd( login_pwd, model_user.login_salt) # 判断用户是否修改密码,如果修改变更登录密码 model_user.updated_time = getCurrentDate() # app.logger.info(user_info) db.session.add(model_user) # 增加用户信息 # app.logger.info(model_user) db.session.commit() # 统一提交 response = make_response(json.dumps(resp)) # # 设置了cookie,那么就能设置统一拦截器,防止客户端没有cookie而能进入后台,同时定义cookie的加密方式geneAuthCode response.set_cookie(app.config['AUTH_COOKIE_NAME'], '%s#%s' % (UserService.geneAuthCode(model_user), model_user.uid), 60 * 60 * 24 * 120) # 生成cookie形式为 16进制加密字符#uid,保存120天 return response
def set(): default_pwd = "******" #用于后面的判断是否对密码进行了修改 # 要把current-user传进来,用于layout 中的个人设置页面 current_user = session.current_user #如果方法是GET就直接展示页面,同时获取uid,用于识别要编辑的用户id,注意与current_user是两码事 if request.method == "GET": req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by( uid=uid).first() #通过uid我们可以获取到该用户信息然后显示在页面上,用于修改 return render_template("account/set.html", current_user=current_user, info=info) #如果方法是POST,那么获取数据,数据来自于set.js,这里省去了之前用过的form形式的收集数据的方法 resp = {'code': 200, 'msg': '操作成功', 'data': {}} req = request.values #参数较多是用values, 参数少时用args id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' #校验一下数据 if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名~~" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号码~~" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的邮箱~~" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名~~" return jsonify(resp) if login_pwd is None or len(email) < 6: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录密码~~" return jsonify(resp) #查看是否已经重复,同时User.uid != id 是兼顾修改时用的。因为修改时是可能出现重复的,比如用户并没有修改登录名称 has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "该登录名已存在,请换一个试试~~" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() #如果数据通过验证,则存入数据库 model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): if request.method == 'GET': resp_data = {} req = request.args uid = int(req.get('id',0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render('account/set.html',resp_data) # post请求 resp={ 'code':200, 'msg':'操作成功', 'data':{} } req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' print('新增的用户信息',nickname,mobile,email,login_name,login_pwd) if nickname is None or len(nickname)<1: resp['code'] = 0 resp['msg'] = '请输入正确的昵称' return jsonify(resp) if mobile is None or len(mobile)<1: resp['code'] = 0 resp['msg'] = '请输入正确的手机号' return jsonify(resp) if email is None or len(email)<1: resp['code'] = 0 resp['msg'] = '请输入正确的邮箱' return jsonify(resp) if login_name is None or len(login_name)<1: resp['code'] = 0 resp['msg'] = '请输入正确的登录名称' return jsonify(resp) if login_pwd is None or len(login_pwd)<6: resp['code'] = 0 resp['msg'] = '请输入正确的密码' return jsonify(resp) is_exsits = User.query.filter(User.login_name == login_name).first() if is_exsits: resp['code'] = 0 resp['msg'] = '该用户已存在' return jsonify(resp) user_info = User.query.filter_by(uid = id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.generateSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name # if user_info.id == User.uid: # resp['code'] = 0 # resp['msg'] = '该用户不可修改' # return jsonify(resp) model_user.login_pwd = UserService.genertePwd(login_pwd,model_user.login_salt) # if login_pwd != default_pwd model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): default_pwd = "******" if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) user_info = None if uid: user_info = User.query.filter_by(uid=uid).first() resp_data['user_info'] = user_info return ops_render('account/set.html', resp_data) resp = {"code": 200, "msg": "操作成功", "data": {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的昵称!" return jsonify(resp) if mobile is None or len(mobile) < 11: resp['code'] = -1 resp['msg'] = "请输入符合规范的电话号码!" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的邮箱!" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名!" return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录密码!" return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "该登录名已被占用" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.mobile = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() current_user = g.current_user communities = Community.query.filter( Community.platform_id == current_user.platform_id) resp_data['info'] = info resp_data['communities'] = communities return ops_render("account/set.html", resp_data) resp = {'code': 200, 'msg': '操作成功~~', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 platform_id = req['platform_id'] if 'platform_id' in req else '' platform_name = req['platform_name'] if 'platform_name' in req else '' community_id = req['community_id'] if 'community_id' in req else '' community_name = req['community_name'] if 'community_name' in req else '' nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' benefit = req['benefit'] if 'benefit' in req else 0 if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名~~" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号码~~" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名~~" return jsonify(resp) if login_pwd is None or len(login_pwd) < 3: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录密码~~" return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "该登录名已存在,请换一个试试~~" return jsonify(resp) benefit = Decimal(benefit).quantize(Decimal('0.00')) if benefit < 0: resp['code'] = -1 resp['msg'] = "请输入符合规范的售卖价格~~" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.platform_id = platform_id model_user.platform_name = platform_name model_user.community_id = community_id model_user.community_name = community_name model_user.email = email model_user.benefit = 0.00 model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.login_name = login_name model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.benefit = benefit model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def leaderApplicationApprove(): resp = {'code': 200, 'msg': '审核操作成功~~', 'data': {}} print(request) req = request.values id = int(req['id']) if 'id' in req else 0 member_id = int(req['member_id']) if 'member_id' in req else 0 community_name = req['community_name'] if 'community_name' in req else '' province = req['province'] if 'province' in req else '' city = req['city'] if 'city' in req else '' description = req['description'] if 'description' in req else '' pickups = req['pickups'] if 'pickups' in req else '' name = req['name'] if 'name' in req else '' mobile = req['mobile'] if 'mobile' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' email = req['email'] if 'email' in req else '' has_in = Community.query.filter(Community.name == community_name).first() if has_in: resp['code'] = -1 resp['msg'] = "该社区名已存在,请换一个试试~~" return jsonify(resp) model_community = Community() model_community.platform_id = g.current_user.platform_id model_community.platform_name = g.current_user.platform_name model_community.name = community_name model_community.province = province model_community.city = city model_community.description = description model_community.pickups = pickups db.session.add(model_community) db.session.commit() community = Community.query.filter_by( platform_id=g.current_user.platform_id, name=community_name).first() model_user = User() model_user.platform_id = community.platform_id model_user.platform_name = community.platform_name model_user.community_id = community.id model_user.community_name = community.name model_user.email = email model_user.benefit = 0.00 model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() model_user.nickname = name model_user.mobile = mobile model_user.login_name = login_name model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() member = Member.query.filter_by(id=member_id).first() ApplicationService.changeCommunity(member.platform_id, member_id, community.id, community.name) application = Application.query.filter_by(id=id).first() application.status = 1 db.session.add(application) db.session.commit() return jsonify(resp)
def create_user(body): # noqa: E501 """Create user This can only be done by the logged in user. # noqa: E501 :param body: Created user object :type body: :rtype: object """ logging.warning(body) password = body.get('password').encode('utf-8') salt = bcrypt.gensalt() password_hash = bcrypt.hashpw(password, salt).decode('utf-8') email_lower = body.get("email").lower() username = body.get("username") existing_user = User.query.filter_by(email_lower=email_lower).one_or_none() if existing_user: return "User already exists", 400 if username: existing_username = User.query.filter_by( username=username).one_or_none() if existing_username: return "Username already exists", 400 new_user = User() new_user.email = body.get("email") new_user.email_lower = email_lower if username: new_user.username = username new_user.native_language = body.get('nativeLanguage') or 'GB' new_user.language_i_want_to_learn = body.get('languageIWantToLearn') new_user.has_studied_foreign_language = body.get( 'hasStudiedForeignLanguage') new_user.password_hash = password_hash db.session.add(new_user) # here we says that db.session.add(new_user) is a pending transaction. This will allow us to get its id db.session.flush() for language_studied in body.get('languageHistory'): lh = LanguageHistory(user_id=new_user.id) lh.language = language_studied.get('language') lh.years_of_study = language_studied.get('yearsOfStudy') lh.proficiency_level = language_studied.get('proficiencyLevel') db.session.add(lh) db.session.commit() user_schema = UserSchema() access_token = create_access_token(identity=email_lower) response = { 'success': True, 'message': 'User created successfully', 'accessToken': access_token, 'currentUser': user_schema.dump(new_user) } return response, 200
def set(): default_pwd = '******' # 展示账户详情 if request.method == 'GET': resp_data = {} req = request.args uid = int(req.get('id',0)) user_info = None if uid : user_info = User.query.filter_by(uid=uid).first() resp_data['user_info'] = user_info return ops_render( "account/set.html",resp_data ) # 新建账户 req = request.values resp = {'code':200,'msg':'操作成功','data':{}} id = req['id'] if 'id' in req else '' nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的姓名~~' return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的手机号码~~' return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的邮箱~~' return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的登录用户名~~' return jsonify(resp) if login_pwd is None or len(login_pwd) < 1: resp['code'] = -1 resp['msg'] = '请输入符合规范的登录密码~~' return jsonify(resp) # 如果新增用户,只需判断新增的用户名和数据库用户名是否相等即可 # 如果是修改用户,需要判断除当前用户外还有没有相同的用户名 # filter方法可以传入多个参数进行判断 has_in = User.query.filter(User.login_name == login_name,User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = '该登录名已经存在,请换一个试试~~' return jsonify(resp) user_info = User.query.filter_by(uid = id).first() # 修改用户信息 if user_info: model_user = user_info # 新增加用户 else: model_user = User() model_user.login_salt = UserService.geneSalt() model_user.created_time = getCurrentDate() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name model_user.update_time = getCurrentDate() if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd,model_user.login_salt) # else: # model_user.login_pwd = UserService.genePwd(default_pwd,model_user.login_salt) db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): default_pwd = "*****" if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) user_info = None if uid: user_info = User.query.filter_by(uid=uid).first() if user_info.nickname == app.config['SUPER_ADMIN']: return redirect(UrlManager.buildUrl('/account/index')) resp_data['user_info'] = user_info resp_data['current'] = 'user' return ops_render('account/set.html', resp_data) resp = {'code': 200, 'msg': "操作成功", 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "請輸入符合規範的用戶名稱" return jsonify(resp) if mobile is None or len(mobile) < 11: resp['code'] = -1 resp['msg'] = "請輸入符合規範的手機號" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "請輸入符合規範的郵箱" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "請輸入符合規範的登錄名稱" return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = "請輸入符合規範的密碼" return jsonify(resp) has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "該登錄名稱已存在,請重新輸入" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.login_salt = UserService.geneSalt() model_user.created_time = getCurrentDate() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def set(): if request.method == "GET": resp_data = {} req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render('account/set.html', resp_data) # POST 更新数据库 resp = {'code': 200, 'msg': "操作成功", 'data': {}} # ajax 发送的数据 req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else '' mobile = req['mobile'] if 'mobile' in req else '' email = req['email'] if 'email' in req else '' login_name = req['login_name'] if 'login_name' in req else '' login_pwd = req['login_pwd'] if 'login_pwd' in req else '' if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的昵称" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的邮箱" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登录用户名" return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = "请输入符合规范的密码" return jsonify(resp) is_exsits = User.query.filter(User.login_name == login_name, User.uid != id).first() if is_exsits: resp['code'] = -1 resp['msg'] = "该登录名已经存在,请更换" return jsonify(resp) user_info = User.query.filter_by(uid=id).first() if user_info: model_user = user_info else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.generateSalt() model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.uid = 4 model_user.avatar = 1 model_user.login_name = login_name if user_info and user_info.uid == 1: resp['code'] = -1 resp['msg'] = "该用户为Dws,不允许修改" return jsonify(resp) model_user.login_pwd = UserService.generatePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)
def author(): if request.method == "GET": resp_data = {} if request.headers.getlist("X-Forwarded-For"): ip = request.headers.getlist("X-Forwarded-For")[0] else: ip = request.remote_addr req = request.values page = int(req['p']) if ('p' in req and req['p']) else 1 offset = (page - 1) * 20 author = str(req.get('author', '')) userinfo = User.query.filter_by(login_name=author).first() if userinfo: author = userinfo.nickname list = Wenzhang.query.filter_by(name=author).order_by( Wenzhang.articleid.desc()).offset(offset).limit(20).all() query = Biaoqian.query biaoqianlist = query.order_by(Biaoqian.biaoqianID.desc()) query = Heji.query hejilist = query.filter_by(name=author).order_by(Heji.hejiID.desc()) # 按热度顺序推最高的十个 tuijianlist = Wenzhang.query.filter_by(name=author).order_by( Wenzhang.hits.desc()).limit(10).all() resp_data['page'] = page resp_data['list'] = list resp_data['hejilist'] = hejilist resp_data['biaoqianlist'] = biaoqianlist resp_data['tuijianlist'] = tuijianlist resp_data['current'] = 'index' # 修改浏览数 blog_log_info = Log.query.first() if blog_log_info: model_log_info = blog_log_info model_log_info.updated_time = getFormatDate() model_log_info.hits = int(blog_log_info.hits) + 1 else: model_log_info = Log() model_log_info.hits = 1 model_log_info.updated_time = getFormatDate() resp_data['model_log_info'] = model_log_info db.session.add(model_log_info) db.session.commit() r = denglulog(ip, author + "首页") g.current_user = check_login() return ops_render("blog/info.html", resp_data) resp = {'code': 200, 'msg': '操作成功~', 'data': {}} info = check_login() req = request.values id = int(req['id']) if 'id' in req and req['id'] else 0 name = req['name'] if 'name' in req else '' main_image = "/upload/" + str( req['main_image']) if 'main_image' in req else '' jianjie = req['jianjie'] if 'jianjie' in req else '' user_info = User.query.filter_by(uid=id).first() if user_info: model_user_info = user_info else: model_user_info = User() model_user_info.headportraitadress = main_image model_user_info.jianjie = jianjie model_user_info.updated_time = getFormatDate() db.session.add(model_user_info) db.session.commit() return jsonify(resp)
def set(): default_pwd = "******" if request.method == 'GET': resp_data = {} req = request.args uid = int(req.get("id", 0)) info = None if uid: info = User.query.filter_by(uid=uid).first() resp_data['info'] = info return ops_render("account/set.html", resp_data) resp = {'code': 200, 'msg': '操作成功', 'data': {}} req = request.values id = req['id'] if 'id' in req else 0 nickname = req['nickname'] if 'nickname' in req else None mobile = req['mobile'] if 'mobile' in req else None email = req['email'] if 'email' in req else None login_name = req['login_name'] if 'login_name' in req else None login_pwd = req['login_pwd'] if 'login_pwd' in req else None if nickname is None or len(nickname) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的姓名" return jsonify(resp) if mobile is None or len(mobile) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的手机号码" return jsonify(resp) if email is None or len(email) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的email" return jsonify(resp) if login_name is None or len(login_name) < 1: resp['code'] = -1 resp['msg'] = "请输入符合规范的登陆昵称" return jsonify(resp) if login_pwd is None or len(login_pwd) < 6: resp['code'] = -1 resp['msg'] = "请输入符合规范的登陆密码" return jsonify(resp) # 新增的时候判断是否存在相同用户,编辑的时候用户名本身已经存在,所以 不等于id的还有没有和它一样的 has_in = User.query.filter(User.login_name == login_name, User.uid != id).first() if has_in: resp['code'] = -1 resp['msg'] = "该登陆名已经存在,请重新输入~" return jsonify(resp) # 用户信息是否存在 user_info = User.query.filter_by(uid=id).first() # 存在即说明用户存在,即要进行编辑模式 if user_info: model_user = user_info # 不存在即进行新增模式 else: model_user = User() model_user.created_time = getCurrentDate() model_user.login_salt = UserService.geneSalt() # 修改和新增都可以操作的内容 model_user.nickname = nickname model_user.mobile = mobile model_user.email = email model_user.login_name = login_name if login_pwd != default_pwd: model_user.login_pwd = UserService.genePwd(login_pwd, model_user.login_salt) model_user.updated_time = getCurrentDate() db.session.add(model_user) db.session.commit() return jsonify(resp)