Ejemplo n.º 1
0
def lum_change():
    phone = request.args.get('phone')
    user_name = request.args.get('userName')
    account = request.args.get('account')
    key = request.args.get('key')
    t = time.time() + 4
    if t < float(key):
        return jsonify({'code': 404, 'msg': '超出范围时间!'})
    send = CCP()
    res = send.send_Template_sms(int(phone), [user_name, account], 476970)
    return jsonify({'code': res, 'msg': ''})
Ejemplo n.º 2
0
def top_up():
    results = {"code": RET.OK, "msg": MSG.OK}
    try:
        data = request.form.get('money')
        name = request.form.get('name')
        pay_num = sum_code()
        t = xianzai_time()
        money = float(data)
        before = SqlData().search_user_field_name('balance', name)
        user_id = SqlData().search_user_field_name('id', name)
        # 更新账户余额
        SqlData().update_user_balance(money, user_id)
        # 实时查询当前余额,不以理论计算为结果
        balance = SqlData().search_user_field('balance', user_id)
        # 更新客户充值记录
        SqlData().insert_top_up(pay_num, t, money, before, balance, user_id, '系统')

        phone = SqlData().search_user_field_name('phone_num', name)

        if phone:

            CCP().send_Template_sms(phone, [name, t, money], 478898)

        return jsonify(results)

    except Exception as e:
        logging.error(e)
        results['code'] = RET.SERVERERROR
        results['msg'] = MSG.SERVERERROR
        return jsonify(results)
Ejemplo n.º 3
0
def ver_code_send():
    '''
    手机验证码的保存于验证
    :return:
    '''
    if request.method == 'POST':
        data = json.loads(request.form.get('data'))
        phone = data.get('phone')
        ver_key = data.get('ver_key')

        _code = verify_code(6, False)
        res = CCP().send_Template_sms(phone, [_code, '60s'], 488547,)
        if res == 0:
            cache.set(ver_key, _code, timeout=120)
            return jsonify({'code': RET.OK, 'msg': MSG.OK})
        else:
            return jsonify({'code': RET.SERVERERROR, 'msg': '短信发送失败!请检查号码是否正确!'})
Ejemplo n.º 4
0
def top_up():
    if request.method == 'GET':
        pay_time = request.args.get('pay_time')
        cus_name = request.args.get('cus_name')
        bank_msg = request.args.get('bank_msg')
        context = dict()
        context['pay_time'] = pay_time
        context['cus_name'] = cus_name
        context['bank_msg'] = bank_msg
        return render_template('verify_pay/check.html', **context)
    if request.method == 'POST':
        try:
            results = dict()
            data = json.loads(request.form.get('data'))
            pay_time = data.get('pay_time')
            cus_name = data.get('cus_name')
            check = data.get('check')
            ver_code = data.get('ver_code')
            bank_address = data.get("bank_msg")

            # 校验参数验证激活码
            if check != 'yes':
                results['code'] = RET.SERVERERROR
                results['msg'] = '请确认已收款!'
                return jsonify(results)
            pass_wd = SqlData.search_pay_code('ver_code', cus_name, pay_time)
            if pass_wd != ver_code:
                results['code'] = RET.SERVERERROR
                results['msg'] = '验证码错误!'
                return jsonify(results)

            status = SqlData.search_pay_code('status', cus_name, pay_time)
            if status != '待充值':
                results['code'] = RET.SERVERERROR
                results['msg'] = '该订单已充值,请刷新界面!'
                return jsonify(results)

            # 验证成功后,做客户账户充值
            cus_id = SqlData.search_user_field_name('id', cus_name)
            '''
            # 判断是否需要更改充值金额(取消改动充值金额权限)
            if not money:
                money = SqlData.search_pay_code('top_money', cus_name, pay_time)
            else:
                money = float(money)
                # 更新新的充值金额
                SqlData.update_pay_money(money, cus_id, pay_time)
            '''

            money = SqlData.search_pay_code('top_money', cus_name, pay_time)
            pay_num = sum_code()
            t = xianzai_time()
            before = SqlData.search_user_field_name('balance', cus_name)
            balance = before + money
            user_id = SqlData.search_user_field_name('id', cus_name)
            pay_money = SqlData.search_pay_code('pay_money', cus_name,
                                                pay_time)
            # 更新银行卡收款金额
            if bank_address:
                pattern = re.compile(r'\d+\.?\d*')
                bank_number = pattern.findall(bank_address)
                bank_money = SqlData.search_bank_top(bank_number)
                update_money = float(pay_money) + float(bank_money)
                SqlData.update_bank_top(bank_number, float(pay_money),
                                        update_money)
            else:
                # 更新首款码收款金额
                # pay_money = SqlData.search_pay_code('pay_money', cus_name, pay_time)
                url = SqlData.search_pay_code('url', cus_name, pay_time)
                SqlData.update_qr_money('top_money', pay_money, url)

            # 更新账户余额
            SqlData.update_user_balance(money, user_id)

            # 更新客户充值记录
            SqlData.insert_top_up(pay_num, t, money, before, balance, user_id)

            # 更新pay_log的订单的充值状态
            SqlData.update_pay_status('已充值', t, cus_id, pay_time)

            phone = SqlData.search_user_field_name('phone_num', cus_name)
            mid_phone = SqlData.search_pay_code('phone', cus_name, pay_time)

            # 给客户和代充值人发送短信通知
            money_msg = "{}元, 可用余额{}".format(money, balance)
            if phone:
                phone_list = phone.split(",")
                for p in phone_list:
                    CCP().send_Template_sms(p, [cus_name, t, money_msg],
                                            485108)
            if mid_phone:
                CCP().send_Template_sms(mid_phone, [cus_name, t, money_msg],
                                        485108)
            results['code'] = RET.OK
            results['msg'] = MSG.OK
            return jsonify(results)
        except Exception as e:
            logging.error(str(e))
            results = dict()
            results['code'] = RET.SERVERERROR
            results['msg'] = str(e)
            return jsonify(results)
Ejemplo n.º 5
0
def top_up():
    if request.method == 'GET':
        pay_time = request.args.get('pay_time')
        cus_name = request.args.get('cus_name')
        context = dict()
        context['pay_time'] = pay_time
        context['cus_name'] = cus_name
        return render_template('verify_pay/check.html', **context)
    if request.method == 'POST':
        try:
            results = dict()
            data = json.loads(request.form.get('data'))
            pay_time = data.get('pay_time')
            cus_name = data.get('cus_name')
            check = data.get('check')
            ver_code = data.get('ver_code')
            money = data.get('money')

            # 校验参数验证激活码
            if check != 'yes':
                results['code'] = RET.SERVERERROR
                results['msg'] = '请确认已收款!'
                return jsonify(results)
            pass_wd = SqlData().search_pay_code('ver_code', cus_name, pay_time)
            if pass_wd != ver_code:
                results['code'] = RET.SERVERERROR
                results['msg'] = '验证码错误!'
                return jsonify(results)

            status = SqlData().search_pay_code('status', cus_name, pay_time)
            if status != '待充值':
                results['code'] = RET.SERVERERROR
                results['msg'] = '该订单已充值,请刷新界面!'
                return jsonify(results)

            # 验证成功后,做客户账户充值
            cus_id = SqlData().search_user_field_name('id', cus_name)

            # 判断是否需要根据输入的美元金额扣除手续费在充值
            if money:
                money = float(money)
                # 更新新的充值金额
                dollar_hand = SqlData().search_admin_field('dollar_hand')
                money = round(money / (1+dollar_hand), 2)
                SqlData().update_pay_money(money, cus_id, pay_time)

            money = SqlData().search_pay_code('top_money', cus_name, pay_time)
            pay_num = sum_code()
            t = xianzai_time()
            before = SqlData().search_user_field_name('balance', cus_name)

            user_id = SqlData().search_user_field_name('id', cus_name)

            # 更新首款码收款金额
            pay_money = SqlData().search_pay_code('pay_money', cus_name, pay_time)
            url = SqlData().search_pay_code('url', cus_name, pay_time)
            SqlData().update_qr_money('top_money', pay_money, url)

            # 更新账户余额
            SqlData().update_user_balance(money, user_id)

            # 实时查询当前余额不以理论计算为结果
            balance = SqlData().search_user_field('balance', user_id)

            # 更新客户充值记录
            SqlData().insert_top_up(pay_num, t, money, before, balance, user_id, '系统')

            # 更新pay_log的订单的充值状态
            SqlData().update_pay_status('已充值', t, cus_id, pay_time)

            phone = SqlData().search_user_field_name('phone_num', cus_name)
            mid_phone = SqlData().search_pay_code('phone', cus_name, pay_time)

            # 判断是否是相同电话,是则只发送一次短信
            if phone and mid_phone and phone == mid_phone:
                CCP().send_Template_sms(phone, [cus_name, t, money], 478898)
            else:
                # 给客户和代充值人发送短信通知
                if phone:
                    CCP().send_Template_sms(phone, [cus_name, t, money], 478898)
                if mid_phone:
                    CCP().send_Template_sms(mid_phone, [cus_name, t, money], 478898)
            results['code'] = RET.OK
            results['msg'] = MSG.OK
            return jsonify(results)
        except Exception as e:
            logging.error(str(e))
            results = dict()
            results['code'] = RET.SERVERERROR
            results['msg'] = MSG.SERVERERROR
            return jsonify(results)
Ejemplo n.º 6
0
def reg_check():
    if request.method == 'GET':
        pay_time = request.args.get('pay_time')
        u_name = request.args.get('u_name')
        package = request.args.get('package')
        context = dict()
        context['pay_time'] = pay_time
        context['u_name'] = u_name
        context['package'] = package
        return render_template('verify_pay/reg_check.html', **context)
    if request.method == 'POST':
        try:
            results = dict()
            data = json.loads(request.form.get('data'))
            pay_time = data.get('pay_time')
            u_name = data.get('u_name')
            package = data.get('package')
            check = data.get('check')
            ver_code = data.get('ver_code')

            # 校验参数验证激活码
            if check != 'yes':
                results['code'] = RET.SERVERERROR
                results['msg'] = '请确认已收款!'
                return jsonify(results)

            # 查询邮件中的验证码
            pass_wd = SqlData().search_account_reg_field('ver_code', pay_time, u_name)
            if pass_wd != ver_code:
                results['code'] = RET.SERVERERROR
                results['msg'] = '验证码错误!'
                return jsonify(results)

            # 却认订单状态
            status = SqlData().search_account_reg_field('status', pay_time, u_name)
            if status:
                results['code'] = RET.SERVERERROR
                results['msg'] = '该订单已充值,请刷新界面!'
                return jsonify(results)

            # 验证成功后,做新增客户端账号(基础参数还需:建卡费, 最低充值,最高充值)
            # 根据选择的套餐查出对应的收费标准
            data = SqlData().search_reg_money(package)
            price = data.get('price')
            refund = data.get('refund')
            min_top = data.get('min_top')
            max_top = data.get('max_top')
            u_acc = SqlData().search_account_reg_field('u_acc', pay_time, u_name)
            u_pass = SqlData().search_account_reg_field('u_pass', pay_time, u_name)
            phone = SqlData().search_account_reg_field('phone', pay_time, u_name)
            start_time = SqlData().search_account_reg_field('start_time', pay_time, u_name)
            stop_time = SqlData().search_account_reg_field('stop_time', pay_time, u_name)
            SqlData().insert_account(u_acc, u_pass, phone, u_name, price, refund, min_top, max_top, start_time, stop_time)

            # 添加默认充值记录0元(用于单独充值结算总充值金额避免BUG)
            n_time = xianzai_time()
            account_id = SqlData().search_user_field_name('id', u_name)
            SqlData().insert_top_up('10001', n_time, 0, 0, 0, account_id, '系统')

            # 判断是否是中介介绍,如果是则绑定到中介
            middle_id = SqlData().search_account_reg_field('middle_id', pay_time, u_name)
            if middle_id:
                SqlData().update_user_field_int('middle_id', middle_id, account_id)

            # 更新首款码收款金额
            pay_money = SqlData().search_account_reg_field('reg_money', pay_time, u_name)
            url = SqlData().search_account_reg_field('url', pay_time, u_name)
            SqlData().update_qr_money('top_money', pay_money, url)

            # 更新订单状态和确认时间
            SqlData().update_account_reg_field('status', '已确认', pay_time, u_name)
            SqlData().update_account_reg_field('ver_time', n_time, pay_time, u_name)

            # 给客户和代充值人发送短信通知
            if phone:
                CCP().send_Template_sms(phone, [u_name, n_time, u_acc, u_pass], 488712)
            results['code'] = RET.OK
            results['msg'] = MSG.OK
            return jsonify(results)
        except Exception as e:
            logging.error(str(e))
            results = dict()
            results['code'] = RET.SERVERERROR
            results['msg'] = MSG.SERVERERROR
            return jsonify(results)