def up_auth(): '处理正在使用的客户被删除的问题' vice_id = request.args.get('vice_id') field = request.args.get('field') check = request.args.get('check') value = request.args.get('value') if check: field_status = '' if check == "true": field_status = 'T' elif check == 'false': field_status = 'F' SqlData.update_vice_field(field, field_status, int(vice_id)) res = SqlData.search_one_acc_vice(vice_id) RedisTool.hash_set('svb_vice_auth', res.get('vice_id'), res) return jsonify({'code': RET.OK, 'msg': MSG.OK}) if value: if field == "v_account": if SqlData.search_value_in('vice_account', value, field): return jsonify({ 'code': RET.SERVERERROR, 'msg': '用户名已存在,请重新命名!' }) SqlData.update_vice_field(field, value, int(vice_id)) return jsonify({'code': RET.OK, 'msg': MSG.OK})
def add_vice(): # 判断是否是子账号用户 vice_id = g.vice_id if vice_id: return render_template('user/no_auth.html') if request.method == 'GET': return render_template('user/update_vice.html') if request.method == 'POST': user_id = g.user_id data = json.loads(request.form.get('data')) v_account = data.get('account') v_password = data.get('password') c_card = data.get('c_card') top_up = data.get('top_up') refund = data.get('refund') del_card = data.get('del_card') up_label = data.get('up_label') account = v_account.strip() password = v_password.strip() if len(account) < 6 or len(password) < 6: return jsonify({"code": RET.SERVERERROR, 'msg': '账号或密码长度小于6位!'}) # 判断用户选择可哪些权限开启 c_card_status = 'T' if c_card else 'F' top_up_status = 'T' if top_up else 'F' refund_status = 'T' if refund else 'F' del_card_status = 'T' if del_card else 'F' up_label_status = 'T' if up_label else 'F' res = SqlData.search_vice_count(user_id) # 判断是否已经添加子账号,已添加则更新 if res < 3: if SqlData.search_value_in('vice_user', account, 'v_account'): return jsonify({ 'code': RET.SERVERERROR, 'msg': '用户名已存在,请重新命名!' }) SqlData.insert_account_vice(account, password, c_card_status, top_up_status, refund_status, del_card_status, up_label_status, user_id) vice_id = SqlData.search_vice_id(v_account) res = SqlData.search_one_acc_vice(vice_id) RedisTool.hash_set('svb_vice_auth', res.get('vice_id'), res) return jsonify({'code': RET.OK, 'msg': MSG.OK}) else: return jsonify({ 'code': RET.SERVERERROR, 'msg': '您的账号已添加3个子账号,不可重复添加!' })
def login(): if request.method == 'GET': str_data, img = createCodeImage(height=38) context = dict() context['img'] = img context['code'] = ImgCode().jiami(str_data) return render_template('user/login.html', **context) if request.method == 'POST': data = json.loads(request.form.get('data')) user_name = data.get('user_name') user_pass = data.get('pass_word') image_real = data.get('image_real') image_code = data.get('image_code') cus_status = data.get('cus_status') results = {'code': RET.OK, 'msg': MSG.OK} try: img_code = ImgCode().jiemi(image_real) if image_code.lower() != img_code.lower(): results['code'] = RET.SERVERERROR results['msg'] = '验证码错误!' return jsonify(results) if cus_status == "main": user_data = SqlData.search_user_info(user_name) if user_data: user_id = user_data.get('user_id') pass_word = user_data.get('password') name = user_data.get('name') if user_pass == pass_word: last_login_time = SqlData.search_user_field( 'last_login_time', user_id) if not last_login_time: return jsonify({'code': 307, 'msg': MSG.OK}) now_time = xianzai_time() SqlData.update_user_field('last_login_time', now_time, user_id) session['user_id'] = user_id session['name'] = name session['vice_id'] = None session.permanent = True return jsonify(results) else: results['code'] = RET.SERVERERROR results['msg'] = MSG.PSWDERROR return jsonify(results) else: results['code'] = RET.SERVERERROR results['msg'] = MSG.PSWDERROR return jsonify(results) if cus_status == 'vice': user_data = SqlData.search_user_vice_info(user_name) user_id = user_data.get('user_id') password = user_data.get('password') vice_id = user_data.get('vice_id') if password == user_pass: # 存储到缓存 session['user_id'] = user_id session['name'] = user_name session['vice_id'] = vice_id session.permanent = True # 存储子子账号操作权限到redis res = SqlData.search_one_acc_vice(vice_id) RedisTool.hash_set('svb_vice_auth', res.get('vice_id'), res) return jsonify(results) else: results['code'] = RET.SERVERERROR results['msg'] = MSG.PSWDERROR return jsonify(results) except Exception as e: logging.error(str(e)) results['code'] = RET.SERVERERROR results['msg'] = MSG.DATAERROR return jsonify(results)