예제 #1
0
def insert_or_update(ci_db, rap, version_id, num, select_col, value_dict, condition):
    """
    接口中心,判断是进行新增还是更新接口数据
    :param ci_db: auto_ci数据库连接
    :param rap: 接口数据
    :param version_id: 版本信息
    :param num: ci_rap数量
    :param select_col: 查询字段列表
    :param value_dict: 更新值字典
    :param condition:查询条件
    :return:
    """
    LOG.debug('版本信息数据{}'.format(version_id))
    LOG.debug('ci数据库接口条数{}'.format(num))
    LOG.debug('查询字段列表{}'.format(select_col))
    LOG.debug('更新值字典{}'.format(value_dict))
    LOG.debug('查询条件{}'.format(condition))
    if num in (None, 'null', 'NoneType', ' ', '', 'Null', 0):
        LOG.debug('新增接口,数据如下:【{}】'.format(rap))
        LOG.debug('新增数据字典{}'.format(value_dict))
        MysqlClent.insert(ci_db, 't_rap', value_dict)
    elif num == 1:
        LOG.debug('更新接口,数据如下:【{}】'.format(rap))
        update_rap_api(ci_db, rap, version_id, select_col, value_dict, condition)
    else:
        LOG.warning('表t_rap查询出{}的数据大于1条,请检查数据库数据'.format(condition))
예제 #2
0
def insert_user_bankinfo(user_uuid):
    """
    增加银行卡绑定信息
    :param user_uuid:  用户id
    :return:
    """
    bank_info = {'user_bank_card_uuid': ''.join(str(uuid.uuid1()).split('-')), 'user_uuid': user_uuid,
                 'bank_name': '工商银行', 'bank_card_no': '62122202001081234', 'bank_card_mobile': '13612345678',
                 'bank_card_type': 'bank_card_type_unknown', 'bill_email': '*****@*****.**',
                 'authentication_state': 'authentication_state_pass', 'created':'2019-12-19 18:57:34',
                 'updated': '2019-12-19 18:57:34', 'state': 'enabled'}
    mydb.insert(la.DB, 'Tbl_UserBankCardInfo', bank_info)
예제 #3
0
def test_sht_login():
    """
    商户通 获取 token
    :return:
    """
    redis_keys = redisDB.get_keys()
    for redis_key in redis_keys:
        if wx_name in redisDB.redis_get(redis_key):
            redisDB.del_name(redis_key)
    uuid_str = str(uuid.uuid4()).replace("-", "")
    wx_name_prefix = 'wxuser_' + wx_open_id
    wx_token = hashlib.md5(
        (wx_name_prefix + uuid_str).encode("utf-8")).hexdigest()
    wx_user_name = wx_name_prefix + wx_token
    wx_phone = 'https://wx.qlogo.cn/mmopen/vi_32' \
               '/Q0j4TwGTfTJInkWfFr8ftFB8TYjb78xiamRc9bqRDkJKZHliaeHLdldQjeGdtqIzl659XHEcBxicBeRHQq5wBOvpw/132'
    c_time = TimeFormat.getnow()
    state = 'enabled'
    created = TimeFormat.string_toTimestamp_13(c_time)
    rows = ms.select_rows(DB, 'Tbl_WX_User', 'id',
                          'name="{}" AND state="enabled"'.format(wx_name))
    if rows == 0:
        insert_dict = {
            "wx_user_uuid": wxUserUuid,
            "merchant_uuid": "",
            "name": wx_name,
            "phone": wx_phone,
            "open_id": wx_open_id,
            "is_master": wx_isMaster,
            "created": c_time,
            "updated": c_time,
            "state": state
        }
        ms.insert(DB, 'Tbl_WX_User', insert_dict)
    m_id = ms.select_one(DB, 'Tbl_WX_User', 'id',
                         'name="{}" AND state="enabled"'.format(wx_name))
    wx_user_info = {
        'created': created,
        'id': m_id,
        'isMaster': wx_isMaster,
        'merchantUuid': '',
        'name': wx_name,
        'openId': wx_open_id,
        'phone': wx_phone,
        'state': state,
        'token': wx_token,
        'updated': created,
        'wxUserUuid': wxUserUuid
    }
    redisDB.redis_set(wx_user_name, json.dumps(json.dumps(wx_user_info)))
    return wx_token
예제 #4
0
def get_bill_overdue(contract_uuid, user_uuid):
    """
    生成账单,并生成逾期数据
    :param contract_uuid:  订单ID
    :param user_uuid:  用户ID
    :return:
    """
    get_uuid = lambda x: ''.join(str(x).split('-'))
    user_bill_uuid = get_uuid(uuid.uuid1())
    user_bill_overdue_uuid = get_uuid(uuid.uuid1())
    # 增加出账信息
    bill_dict = {
        'user_bill_uuid': user_bill_uuid,
        'contract_uuid': contract_uuid,
        'user_uuid': user_uuid,
        'number': 1,
        'principal': 0.3,
        'handling_fee': 0.1,
        'payed_principal': 0,
        'payed_handling_fee': 0,
        'overdue_state': 'overdue_state_doing',
        'overdue_day': 30,
        'overdue_principal': 0.1,
        'overdue_handling_fee': 0.1,
        'payed_overdue_principal': 0,
        'last_pay_date': '2019-11-02 00:00:00',
        'payed_overdue_handling_fee': 0,
        'advance_payment_fee': 0,
        'preferential_amount': 0,
        'pay_state': 'pay_state_nopay',
        'state': 'enabled'
    }
    mydb.insert(la.DB, 'Tbl_UserBill', bill_dict)
    # 增加逾期信息
    bill_overdue_dict = {
        'user_bill_overdue_stream_uuid': user_bill_overdue_uuid,
        'contract_uuid': contract_uuid,
        'user_bill_uuid': user_bill_uuid,
        'number': 1,
        'principal': 0.3,
        'handling_fee': 0.1,
        'payed_principal': 0,
        'payed_handling_fee': 0,
        'overdue_principal': 0.2,
        'overdue_handling_fee': 0.02,
        'payed_overdue_principal': 0,
        'payed_overdue_handling_fee': 0,
        'state': 'enabled'
    }
    mydb.insert(la.DB, 'Tbl_UserBillOverdueStream', bill_overdue_dict)
예제 #5
0
def add_user():
    """
    添加APP端用户信息
    :return:
    """
    user_num = ms.select_rows(DB, 'Tbl_UserProfile', condition='mobile="{}"'.format(app_phone))
    if not user_num:
        uuid_no = str(uuid.uuid1()).replace('-', '')
        uuid_no2 = str(uuid.uuid1()).replace('-', '')
        insert_dict = {"user_uuid": uuid_no2, "name": user_name, "idcard_number": idcard, "mobile": app_phone,
                       "password": "******", "salt": "0HQ",
                       "authentication_state": "authentication_state_pass", "created": "2019-12-06 14:02:54",
                       "updated": "2019-12-06 14:47:26", "state": "enabled"}
        ms.insert(DB, 'Tbl_UserProfile', insert_dict)
예제 #6
0
def insert_OptLog(merchant_uuid):
    """
    插入审核 日志
    :param merchant_uuid: 商户的UUID
    :return:
    """
    values = {
        "opt_log_uuid": "3ca5f41cf27f40229adea5e152d3bb67",
        "opt_uuid": merchant_uuid,
        "audit_user_uuid": "109e99a3720a4a1a8b977ce0766bd2c3",
        "audit_user_name": "luolin",
        "opt_log_type": "Merchant",
        "opt_state_type": "Audit",
        "opt_result": "pass",
        "created": "2019-08-16 06:36:07",
        "updated": "2019-08-16 06:36:07",
        "state": "enabled"
    }
    MysqlClent.insert(DB, "Tbl_OptLog", values)
예제 #7
0
def add_platform_user():
    """
    添加web端用户信息
    :return:
    """
    user_num = ms.select_rows(DB, 'Tbl_PlatformUserProfile', condition='email="{}"'.format(super_email))
    if not user_num:
        uuid_no = str(uuid.uuid1()).replace('-', '')
        insert_dict = {"platform_user_profile_uuid": uuid_no, "name": user_name, "mobile": app_phone,
                       "password": '******', "salt": '12508731b78f4b20',
                       "email": super_email, "reset_password": '******',
                       "user_state": 'user_state_enabled', "create_user_uuid": 'adminUUID',
                       "created": '2019-12-11 10:50:37', "updated": '2019-12-11 10:51:17', "state": 'enabled'}
        ms.insert(DB, 'Tbl_PlatformUserProfile', insert_dict)
        privileges = ms.select_col(DB, 'Tbl_PlatformPrivilege', 'platform_privilege_uuid')
        privilege_values = [[uuid_no, p, '2019-12-11 10:51:00', '2019-12-11 10:51:00', 'enabled']
                            for p in privileges]
        privilege_col = ['platform_user_uuid', 'platform_privilege_uuid', 'created', 'updated', 'state']
        ms.insert_many(DB, 'Tbl_PlatformUserPrivilegeRelation', privilege_col, privilege_values)
예제 #8
0
def get_rap_groups(rap_db, ci_db, rap_info):
    """
    获取rap项目groups
    :param rap_db: rap数据库连接
    :param ci_db: ci数据库连接
    :param rap_info: {'dict_id': dict_id, 'corporation_id': id}
    :return: [dict_id, {'module1': [40, 42, 55, 80], 'module2': [...]}]
    """
    rap_group_result, groups = list(), dict()
    dict_id, corporation_id = rap_info['dict_id'], rap_info['corporation_id']
    rap_group_result.append(dict_id)
    production_lines = MysqlClent.select(rap_db, 'tb_production_line', 'id,name',
                                         'corporation_id="{}"'.format(corporation_id))
    LOG.debug('产品线信息{}'.format(production_lines))
    for production_line_id, production_line_name in production_lines:
        module_code = re.split('[-—]', production_line_name)[-1]
        if not FileUtils.is_valid(module_code):
            LOG.warning('模块名称{}无效,请确认是否需要修改'.format(module_code))
            continue
        LOG.debug('英文模块名{}'.format(module_code))
        group_infos = MysqlClent.select_join(rap_db, 'tb_project as p,tb_group as g', 'p.id,p.name', 'g.id=p.group_id',
                                             'g.production_line_id={} GROUP BY p.id'.format(production_line_id))
        LOG.debug('rap_group信息{}'.format(group_infos))
        rap_groups = list()
        for group_id, group_name in group_infos:
            rap_groups.append(group_id)
            rap_group_name = MysqlClent.select_col(ci_db, 't_rap_group', 'rap_group_name',
                                                   'dict_id={0} AND module="{1}"'.format(dict_id, module_code))
            LOG.debug('auto_ci库t_rap_group表对应关系查询结构{}'.format(rap_group_name))
            if not [gn for gn in rap_group_name if gn == group_name]:
                insert_value = {"dict_id": dict_id, "module": module_code, "rap_group_name": group_name}
                LOG.debug('auto_ci库t_rap_group表没有对应关系,新增数据:{}'.format(insert_value))
                MysqlClent.insert(ci_db, 't_rap_group', insert_value)
        LOG.debug('rap库tb_group表对应id{}'.format(rap_groups))
        if rap_groups:
            groups[module_code] = rap_groups
    rap_group_result.append(groups)
    LOG.debug('项目、模块、rap_group对应关系:{}'.format(rap_group_result))
    return rap_group_result
예제 #9
0
def update_contract_machine_pass(contract_uuid, user_uuid):
    """
    修改订单状态,绕过机审和签订合同
    :param contract_uuid: 订单UUID
    :param user_uuid: 用户UUID
    :return:
    """
    la.LOGGER.info('contract_uuid : {0} user_uuid : {1}'.format(contract_uuid, user_uuid))
    contract_state = {"qifa_machine_audit": "风控规则预置通过", "submit_state": "提交成功",
                      "contract_state": "生效"}
    update_contract_state(contract_uuid, contract_state)
    get_uuid = lambda x: ''.join(str(x).split('-'))
    contract_info_col = ['contract_info_uuid', 'contract_uuid', 'fdd_number', 'contract_name', 'type', 'platform',
                         'sign_state', 'view_url', 'download_url', 'state']
    contract_name = ["分期还款服务合同", "委托付款函", "通知函"]
    condtion = ['contract_uuid="{}"'.format(contract_uuid)]
    for _name in contract_name:
        _edtion = 'contract_name="{}"'.format(_name)
        condtion.append(_edtion)
        contract_info_rows = mydb.select_rows(la.DB, 'Tbl_ContractInfo', 'id', ' AND '.join(condtion))
        if contract_info_rows == 0:
            contract_info = mydb.select(la.DB, 'Tbl_ContractInfo', ','.join(contract_info_col), condtion[1])[0]
            la.LOGGER.info('查询Tbl_ContractInfo中"{0}"的值{1}'.format(_name, contract_info))
            contract_info[0:2] = get_uuid(uuid.uuid1()), contract_uuid
            la.LOGGER.info('插入Tbl_ContractInfo中"{0}"的值{1}'.format(_name, contract_info))
            mydb.insert(la.DB, 'Tbl_ContractInfo', dict(zip(contract_info_col, contract_info)))
        condtion.remove(_edtion)
    translog_rows = mydb.select_rows(la.DB, 'Tbl_TransLog', 'id', "user_id='{}'".format(user_uuid))
    if translog_rows == 0:
        translog_col = ['out_id', 'trans_log_uuid', 'trans_seq_id', 'user_id', 'cust_id', 'trans_type',
                        'trans_amt', 'fee_amt', 'trans_state', 'resp_code', 'err_code', 'chk_state',
                        'bank_state', 'oper_seq_id', 'trans_name', 'trans_obj', 'card_acct_type', 'card_id',
                        'card_opening_bank', 'card_acct_name', 'card_line_num', 'bank_remark',
                        'bank_seq_id', 'acct_seq_id', 'ret_fee', 'bank_proc_desc',
                        'gate_id', 'pay_channel_id', 'cash_type', 'state', 'business_data']
        translog_value = mydb.select(la.DB, 'Tbl_TransLog', ','.join(translog_col))[0]
        translog_dict = dict(zip(translog_col, translog_value))
        la.LOGGER.info('查询Tbl_TransLog的值{}'.format(translog_value))
        translog_dict['trans_log_uuid'], translog_dict['user_id'] = get_uuid(uuid.uuid1()), user_uuid
        translog_dict['trans_amt'], translog_dict['fee_amt'], translog_dict['bank_state'] = 1000, 0.0, 'bank_state_S'
        translog_dict['trans_state'], translog_dict['chk_state'], = 'trans_state_S', 'chk_state_S'
        la.LOGGER.info('插入Tbl_TransLog的值{}'.format(translog_dict))
        # 交易流水表 新增数据
        mydb.insert(la.DB, 'Tbl_TransLog', translog_dict)
    qifamachinelog_rows = mydb.select_rows(la.DB, 'Tbl_QifaMachineLog', 'id', condtion[0])
    if qifamachinelog_rows == 0:
        qifamachinelog_col = ['qifa_machine_log_uuid', 'contract_uuid', 'qifa_machine_audit', 'score',
                              'risk_warning', 'state']
        qifamachinelog_value = [get_uuid(uuid.uuid1()), contract_uuid, 'qifa_merchant_audit_pass', '67',
                                '中风险,建议核查', 'enabled']
        la.LOGGER.info('插入Tbl_QifaMachineLog的值{}'.format(qifamachinelog_value))
        # 系统机审表 新增数据
        mydb.insert(la.DB, 'Tbl_QifaMachineLog', dict(zip(qifamachinelog_col, qifamachinelog_value)))
    condtion.append('user_uuid="{}"'.format(user_uuid))
    user_ocr_info_rows = mydb.select_rows(la.DB, 'Tbl_UserOcrInfo', 'id', ' AND '.join(condtion))
    if user_ocr_info_rows == 0:
        user_ocr_info_col = ['user_ocr_uuid', 'contract_uuid', 'user_uuid', 'first_key', 'second_key', 'third_key',
                             'qiniu_config_id', 'authentication_state', 'state', 'note']
        user_ocr_info_value = mydb.select(la.DB, 'Tbl_UserOcrInfo', ','.join(user_ocr_info_col), 'note IS NOT NULL')[0]
        la.LOGGER.info('查询Tbl_UserOcrInfo的值{}'.format(user_ocr_info_value))
        user_ocr_info_value[0:3] = get_uuid(uuid.uuid1()), contract_uuid, user_uuid
        user_ocr_info_value[-1] = str(user_ocr_info_value[-1]).replace('\"', '\\\"')
        la.LOGGER.info('插入bl_UserOcrInfo的值{}'.format(user_ocr_info_value))
        # 客户OCR信息表 新增人脸识别数据
        mydb.insert(la.DB, 'Tbl_UserOcrInfo', dict(zip(user_ocr_info_col, user_ocr_info_value)))
    user_personal_info_rows = mydb.select_rows(la.DB, 'Tbl_UserPersonalInfo', 'id', ' AND '.join(condtion))
    if user_personal_info_rows == 0:
        user_personal_info_col = ['user_person_uuid', 'contract_uuid', 'user_uuid', 'datum_type_marry_id',
                                  'datum_type_education_id', 'datum_type_housing_id', 'live_province',
                                  'live_province_name', 'live_city', 'live_city_name', 'live_region',
                                  'live_region_name', 'live_detail', 'state']
        user_personal_info_value = mydb.select(la.DB, 'Tbl_UserPersonalInfo', ','.join(user_personal_info_col))[0]
        la.LOGGER.info('查询Tbl_UserPersonalInfo的值{}'.format(user_personal_info_value))
        user_personal_info_value[0:3] = get_uuid(uuid.uuid1()), contract_uuid, user_uuid
        la.LOGGER.info('插入Tbl_UserPersonalInfo的值{}'.format(user_personal_info_value))
        # 客户个人信息表 新增和订单关联的数据
        mydb.insert(la.DB, 'Tbl_UserPersonalInfo', dict(zip(user_personal_info_col, user_personal_info_value)))
    user_work_info_rows = mydb.select_rows(la.DB, 'Tbl_UserWorkInfo', 'id', ' AND '.join(condtion))
    if user_work_info_rows == 0:
        user_work_info_col = ['user_work_uuid', 'contract_uuid', 'user_uuid', 'company_name', 'position',
                              'work_phone', 'datum_type_income_id', 'datum_type_worktime_id', 'company_province',
                              'company_province_name', 'company_city', 'company_city_name', 'company_region',
                              'company_region_name', 'company_detail', 'state']
        user_work_info_value = mydb.select(la.DB, 'Tbl_UserWorkInfo', ','.join(user_work_info_col))[0]
        la.LOGGER.info('查询Tbl_UserWorkInfo的值{}'.format(user_work_info_value))
        user_work_info_value[0:3] = get_uuid(uuid.uuid1()), contract_uuid, user_uuid
        la.LOGGER.info('插入Tbl_UserWorkInfo的值{}'.format(user_work_info_value))
        # 客户工作信息表 新增和订单关联的数据
        mydb.insert(la.DB, 'Tbl_UserWorkInfo', dict(zip(user_work_info_col, user_work_info_value)))
    user_contact_info_rows = mydb.select_rows(la.DB, 'Tbl_UserContactInfo', 'id', ' AND '.join(condtion))
    user_contact_info_col = ['user_contact_uuid', 'contract_uuid', 'user_uuid', 'name', 'phone',
                             'datum_type_contact_id', 'state']
    user_contact_info_value = mydb.select(la.DB, 'Tbl_UserContactInfo', ','.join(user_contact_info_col))[0]
    la.LOGGER.info('查询Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
    user_contact_info_value[0:3] = get_uuid(uuid.uuid1()), contract_uuid, user_uuid
    if user_contact_info_rows == 0:
        # 客户联系人信息表 新增和订单关联的数据
        la.LOGGER.info('插入Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
        mydb.insert(la.DB, 'Tbl_UserContactInfo', dict(zip(user_contact_info_col, user_contact_info_value)))
    elif user_contact_info_rows > 1:
        mydb.delete(la.DB, 'Tbl_UserContactInfo',
                    "contract_uuid='{0}' AND user_uuid='{1}'".format(contract_uuid, user_uuid))
        la.LOGGER.info('插入Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
        mydb.insert(la.DB, 'Tbl_UserContactInfo', dict(zip(user_contact_info_col, user_contact_info_value)))
예제 #10
0
def insert_value(table_name, value_dict):
    mydb.insert(DB_CONN, table_name, value_dict)
예제 #11
0
def update_contract_machine_pass(contract_uuid, user_uuid):
    """
    修改订单状态,绕过机审和签订合同
    :param contract_uuid: 订单UUID
    :param user_uuid: 用户UUID
    :return:
    """
    la.LOGGER.info('contract_uuid : {0} user_uuid : {1}'.format(
        contract_uuid, user_uuid))
    contract_state = {
        "qifa_machine_audit": "风控规则预置通过",
        "submit_state": "提交成功",
        "contract_state": "生效"
    }
    update_contract_state(contract_uuid, contract_state)
    value_dict = {"loan_periods": 3}
    mydb.update_dict(la.DB, 'Tbl_Contract', value_dict,
                     'contract_uuid="{}"'.format(contract_uuid))
    get_uuid = lambda x: ''.join(str(x).split('-'))
    # contract_info_col = ['contract_info_uuid', 'contract_uuid', 'fdd_number', 'contract_name', 'type', 'platform',
    #                      'sign_state', 'view_url', 'download_url', 'state']
    # contract_name = ["分期还款服务合同", "委托付款函", "通知函"]
    contract_name = {
        '服务完结确认书_QA.pdf': "A",
        '应收账款转让协议书_QA.pdf': "B",
        '债权转让通知书_QA.pdf': "C",
        '居间服务协议_QA.pdf': "D",
        '医疗美容项目服务合同_QA.pdf': "E"
    }
    condtion = ['contract_uuid="{}"'.format(contract_uuid)]
    for _name in contract_name.keys():
        _edtion = 'contract_name="{}"'.format(_name)
        condtion.append(_edtion)
        contract_info_rows = mydb.select_rows(la.DB, 'Tbl_ContractInfo', 'id',
                                              ' AND '.join(condtion))
        if contract_info_rows == 0:
            insert_dict = {
                'contract_info_uuid': str(uuid.uuid1()).split('-'),
                'contract_uuid': contract_uuid,
                'fdd_number': "2020011618014346820480_" + contract_name[_name],
                'contract_name': _name,
                'type': '1',
                'platform': '1',
                'sign_state': '0',
                'view_url': '',
                'download_url': '',
                'state': 'enabled'
            }
            # contract_info = mydb.select(la.DB, 'Tbl_ContractInfo', ','.join(contract_info_col), condtion[1])[0]
            # la.LOGGER.info('查询Tbl_ContractInfo中"{0}"的值{1}'.format(_name, contract_info))
            # contract_info[0:2] = get_uuid(uuid.uuid1()), contract_uuid
            # la.LOGGER.info('插入Tbl_ContractInfo中"{0}"的值{1}'.format(_name, contract_info))
            # mydb.insert(la.DB, 'Tbl_ContractInfo', dict(zip(contract_info_col, contract_info)))
            mydb.insert(la.DB, 'Tbl_ContractInfo', insert_dict)
        condtion.remove(_edtion)
    translog_rows = mydb.select_rows(la.DB, 'Tbl_TransLog', 'id',
                                     "user_id='{}'".format(user_uuid))
    if not translog_rows:
        translog_dict = {
            'out_id': '2019112910110111420480',
            'trans_log_uuid': get_uuid(uuid.uuid1()),
            'trans_seq_id': '2019112911111294628672',
            'user_id': user_uuid,
            'cust_id': '',
            'trans_type': 'trans_type_P001',
            'trans_amt': 1000,
            'fee_amt': 0.0,
            'trans_state': 'trans_state_S',
            'resp_code': '',
            'err_code': '',
            'chk_state': 'chk_state_S',
            'bank_state': 'bank_state_S',
            'oper_seq_id': '',
            'trans_name': 'testAPI',
            'trans_obj': 'testAPI',
            'card_acct_type': 'card_acct_type_private',
            'card_id': '213105529995110',
            'card_opening_bank': '招商银行',
            'card_acct_name': 'testAPI',
            'card_line_num': '34646546',
            'bank_remark': 'testAPI',
            'bank_seq_id': '',
            'acct_seq_id': '',
            'ret_fee': 'ret_fee_no',
            'bank_proc_desc': '',
            'gate_id': '',
            'pay_channel_id': '',
            'cash_type': 'cash_type_T0',
            'state': 'enabled',
            'business_data': ''
        }
        la.LOGGER.info('插入Tbl_TransLog的值{}'.format(translog_dict))
        # 交易流水表 新增数据
        mydb.insert(la.DB, 'Tbl_TransLog', translog_dict)
    qifamachinelog_rows = mydb.select_rows(la.DB, 'Tbl_QifaMachineLog', 'id',
                                           condtion[0])
    if qifamachinelog_rows == 0:
        qifamachinelog_col = [
            'qifa_machine_log_uuid', 'contract_uuid', 'qifa_machine_audit',
            'score', 'risk_warning', 'state'
        ]
        qifamachinelog_value = [
            get_uuid(uuid.uuid1()), contract_uuid, 'qifa_merchant_audit_pass',
            '67', '中风险,建议核查', 'enabled'
        ]
        la.LOGGER.info('插入Tbl_QifaMachineLog的值{}'.format(qifamachinelog_value))
        # 系统机审表 新增数据
        mydb.insert(la.DB, 'Tbl_QifaMachineLog',
                    dict(zip(qifamachinelog_col, qifamachinelog_value)))
    condtion.append('user_uuid="{}"'.format(user_uuid))
    user_ocr_info_rows = mydb.select_rows(la.DB, 'Tbl_UserOcrInfo', 'id',
                                          ' AND '.join(condtion))
    if user_ocr_info_rows == 0:
        user_ocr_info_col = [
            'user_ocr_uuid', 'contract_uuid', 'user_uuid', 'first_key',
            'second_key', 'third_key', 'qiniu_config_id',
            'authentication_state', 'state', 'note'
        ]
        user_ocr_info_value = mydb.select(la.DB, 'Tbl_UserOcrInfo',
                                          ','.join(user_ocr_info_col),
                                          'note IS NOT NULL')[0]
        la.LOGGER.info('查询Tbl_UserOcrInfo的值{}'.format(user_ocr_info_value))
        user_ocr_info_value[0:3] = get_uuid(
            uuid.uuid1()), contract_uuid, user_uuid
        user_ocr_info_value[-1] = str(user_ocr_info_value[-1]).replace(
            '\"', '\\\"')
        la.LOGGER.info('插入bl_UserOcrInfo的值{}'.format(user_ocr_info_value))
        # 客户OCR信息表 新增人脸识别数据
        mydb.insert(la.DB, 'Tbl_UserOcrInfo',
                    dict(zip(user_ocr_info_col, user_ocr_info_value)))
    user_personal_info_rows = mydb.select_rows(la.DB, 'Tbl_UserPersonalInfo',
                                               'id', ' AND '.join(condtion))
    if user_personal_info_rows == 0:
        user_personal_info_col = [
            'user_person_uuid', 'contract_uuid', 'user_uuid',
            'datum_type_marry_id', 'datum_type_education_id',
            'datum_type_housing_id', 'live_province', 'live_province_name',
            'live_city', 'live_city_name', 'live_region', 'live_region_name',
            'live_detail', 'state'
        ]
        user_personal_info_value = mydb.select(
            la.DB, 'Tbl_UserPersonalInfo', ','.join(user_personal_info_col))[0]
        la.LOGGER.info(
            '查询Tbl_UserPersonalInfo的值{}'.format(user_personal_info_value))
        user_personal_info_value[0:3] = get_uuid(
            uuid.uuid1()), contract_uuid, user_uuid
        la.LOGGER.info(
            '插入Tbl_UserPersonalInfo的值{}'.format(user_personal_info_value))
        # 客户个人信息表 新增和订单关联的数据
        mydb.insert(
            la.DB, 'Tbl_UserPersonalInfo',
            dict(zip(user_personal_info_col, user_personal_info_value)))
    user_work_info_rows = mydb.select_rows(la.DB, 'Tbl_UserWorkInfo', 'id',
                                           ' AND '.join(condtion))
    if user_work_info_rows == 0:
        user_work_info_col = [
            'user_work_uuid', 'contract_uuid', 'user_uuid', 'company_name',
            'position', 'work_phone', 'datum_type_income_id',
            'datum_type_worktime_id', 'company_province',
            'company_province_name', 'company_city', 'company_city_name',
            'company_region', 'company_region_name', 'company_detail', 'state'
        ]
        user_work_info_value = mydb.select(la.DB, 'Tbl_UserWorkInfo',
                                           ','.join(user_work_info_col))[0]
        la.LOGGER.info('查询Tbl_UserWorkInfo的值{}'.format(user_work_info_value))
        user_work_info_value[0:3] = get_uuid(
            uuid.uuid1()), contract_uuid, user_uuid
        la.LOGGER.info('插入Tbl_UserWorkInfo的值{}'.format(user_work_info_value))
        # 客户工作信息表 新增和订单关联的数据
        mydb.insert(la.DB, 'Tbl_UserWorkInfo',
                    dict(zip(user_work_info_col, user_work_info_value)))
    user_contact_info_rows = mydb.select_rows(la.DB, 'Tbl_UserContactInfo',
                                              'id', ' AND '.join(condtion))
    user_contact_info_col = [
        'user_contact_uuid', 'contract_uuid', 'user_uuid', 'name', 'phone',
        'datum_type_contact_id', 'state'
    ]
    user_contact_info_value = mydb.select(la.DB, 'Tbl_UserContactInfo',
                                          ','.join(user_contact_info_col))[0]
    la.LOGGER.info('查询Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
    user_contact_info_value[0:3] = get_uuid(
        uuid.uuid1()), contract_uuid, user_uuid
    if user_contact_info_rows == 0:
        # 客户联系人信息表 新增和订单关联的数据
        la.LOGGER.info(
            '插入Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
        mydb.insert(la.DB, 'Tbl_UserContactInfo',
                    dict(zip(user_contact_info_col, user_contact_info_value)))
    elif user_contact_info_rows > 1:
        mydb.delete(
            la.DB, 'Tbl_UserContactInfo',
            "contract_uuid='{0}' AND user_uuid='{1}'".format(
                contract_uuid, user_uuid))
        la.LOGGER.info(
            '插入Tbl_UserContactInfo的值{}'.format(user_contact_info_value))
        mydb.insert(la.DB, 'Tbl_UserContactInfo',
                    dict(zip(user_contact_info_col, user_contact_info_value)))