예제 #1
0
    def logout(self):
        all_req_data = {}
        token = self.login()

        #退出登录请求数据
        logout_req_data = token['data']['accToken']
        all_req_data.update({'accToken':logout_req_data})

        #退出登录请求头
        logout_req_header = {
        'serialno':'1098293248392',
        'accToken':logout_req_data,
        'systemId':'WPT'
    }
        all_req_data.update(logout_req_header)

        #退出登录请求数据
        public.log_record('退出登录请求数据', sys._getframe().f_lineno, all_req_data)

        logout_res_data = requests.post(
            url=config.plms_logout_default_url,
            json={'accToken':logout_req_data},
            headers = logout_req_header
        )
        if logout_res_data.json()['retCode']:
            return logout_res_data.json()
        else:
            public.log_record('退出登录失败响应数据', sys._getframe().f_lineno, logout_res_data.text)
예제 #2
0
    def login(self):
        all_req_data = {}
        login_req_data = {
            'userId': config.default_operation_name,
            'password': '******',
        }
        all_req_data.update(login_req_data)

        login_req_header =  {
            'serialno':'1098293248392',
            'systemId':'WPT'
        }
        all_req_data.update(login_req_header)

        public.log_record('登录请求数据', sys._getframe().f_lineno, all_req_data)

        login_res_data = requests.post(
            url=config.plms_login_default_url,
            json=login_req_data,
            headers = login_req_header
        )
        if login_res_data.json()['retCode']:
            return login_res_data.json()

        else:
            public.log_record('登录请求败响应数据', sys._getframe().f_lineno, login_res_data.text)
            return None
예제 #3
0
def admission(business_type):

    req_data = {
        'certId': get_user_info[1],
        'businessType': business_type,
        'inputType': 'NOTXD',
        'mainBorrowerCertId': '',
        'interfaceType': 'Y1',
        'source': 'WPT'
    }

    # 获取到其他业务类型的中文名称
    for k, v in config.business_type.items():
        if v[0] == business_type:
            business_type_name = v[1]

    try:
        response = requests.post(url=config.inner_admission_default_url,
                                 json=req_data)
        public.log_record('准入%s' % business_type_name,
                          sys._getframe().f_lineno,
                          '{url:%s,data:%s}' % (response.url, str(req_data)))
        return response.json()

    except Exception as e:
        public.log_record('准入%s' % business_type_name,
                          sys._getframe().f_lineno, ',异常信息:%s' % e)
예제 #4
0
    def handel_query(self, *args, **kwargs):
        cursor = self.conn.connect()

        if len(args) == 0:
            columns = '*'
        else:
            columns = str(args).replace('(', '').replace(')',
                                                         '').replace("'",
                                                                     '')[:-1]

        is_null = ''
        condition = ''

        for k, v in kwargs.items():
            is_null += v

        if is_null == '':
            sql = " select %s from attachment ; " % (columns)

        else:
            for k, v in kwargs.items():
                condition += " %s = '%s' and " % (k, v)

            sql = " select %s from attachment where %s " % (columns, condition)
            sql = sql.strip()[:-4] + ';'

            public.log_record('查询影像附件信息:', sys._getframe().f_lineno, sql)

        cursor.execute(sql)

        results = cursor.fetchall()

        self.conn.close()

        return results
예제 #5
0
    def test_get_apply_id(self):
        '''  获取空白申请编号'''

        apply_id_res = requests.get(url=config.wk_get_apply_id_default_url)
        if apply_id_res.json()['code']:
            public.log_record('获取空白申请编号响应数据', sys._getframe().f_lineno, apply_id_res.text)
            self.assertEqual(apply_id_res.json()['code'],'000000')
        else:
            public.log_record('获取空白申请编号失败响应数据', sys._getframe().f_lineno, apply_id_res.text)
예제 #6
0
    def test_logout(self):
        '''  退出登录'''

        logout = LoginLogout()
        logout_res_data = logout.logout()

        if logout_res_data['retCode']:
            self.assertEqual(logout_res_data['retCode'], '000000')
        else:
            public.log_record('退出登录请求败响应数据', sys._getframe().f_lineno, logout_res_data)
예제 #7
0
    def test_query_valid_recommend(self):
        '''  查询有效推荐 '''

        recommend_info = cma_recommend()
        if recommend_info:
            public.log_record('根据身份证号查询最近一笔有效推荐人信息响应数据', sys._getframe().f_lineno, recommend_info)
            self.assertEqual(recommend_info['code'],'000000')

        else:
            public.log_record('根据身份证号查询最近一笔有效推荐人信息失败响应数据', sys._getframe().f_lineno, recommend_info)
예제 #8
0
    def test_inquiry_credit(self):
        '''  查询征信报告'''

        handel_credit = public.CreditInquiry()

        inquiry_credit = handel_credit.save_to_mongoDB()

        if inquiry_credit:
            public.log_record('查询征信响应数据:', sys._getframe().f_lineno, inquiry_credit)
            self.assertEqual(str(inquiry_credit['code']),'0','查询征信')
        else:
            public.log_record('查询征信失败响应数据:', sys._getframe().f_lineno, inquiry_credit)
예제 #9
0
    def handel_update(self, **kwargs):

        cursor = self.conn.connect()

        sql = " update apply set %s = '%s' where apply_id = '%s' ;"

        for k, v in kwargs.items():
            new_sql = sql % (k, v, kwargs['apply_id'])
            public.log_record('修改申请单状态:', sys._getframe().f_lineno, new_sql)
            cursor.execute(new_sql)

        self.conn.close()
예제 #10
0
    def test_login(self):
        '''  登录认证'''


        login = LoginLogout()
        login_res_data = login.login()

        if login_res_data['retCode']:
            public.log_record('登录请求应数据', sys._getframe().f_lineno, login_res_data)
            self.assertEqual(login_res_data['retCode'], '000000')
        else:
            public.log_record('登录请求败响应数据', sys._getframe().f_lineno, login_res_data)
예제 #11
0
    def test_submit_nbts(self):
        '''  提交宁波通商 '''
        business_type = config.business_type['NBTS'][0]
        submit_result = public.submit(business_type)

        if submit_result:
            public.log_record('提交【宁波通商】响应结果',
                              sys._getframe().f_lineno, submit_result)
            submit_status = submit_result['code']
            self.assertEqual(submit_status, '000000')
        else:
            public.log_record('提交【宁波通商】失败响应结果',
                              sys._getframe().f_lineno, submit_result)
예제 #12
0
    def test_submit_zljr(self):
        '''  提交招联金融 '''
        business_type = config.business_type['ZLJR'][0]
        submit_result = public.submit(business_type)

        if submit_result:
            public.log_record('提交【招联金融】响应结果',
                              sys._getframe().f_lineno, submit_result)
            submit_status = submit_result['code']
            self.assertEqual(submit_status, '000000')
        else:
            public.log_record('提交【招联金融】失败响应结果',
                              sys._getframe().f_lineno, submit_result)
예제 #13
0
    def test_fetch_credit_result(self):
        '''  查询征信结果 '''

        handel_credit_result = public.CreditInquiry(flag=True)

        get_inquiry_credit_result = handel_credit_result.fetch_result()


        if get_inquiry_credit_result:
            public.log_record('获取征信结果响应数据:', sys._getframe().f_lineno, get_inquiry_credit_result)
            self.assertGreater(int(get_inquiry_credit_result['data']['totalCount']), 0, '查询征信结果')
        else:
            public.log_record('获取征信结果失败响应数据:', sys._getframe().f_lineno, get_inquiry_credit_result)
예제 #14
0
    def test_submit_yyfax(self):
        ''' 提交友金快贷 '''
        business_type = config.business_type['YYFAX'][0]
        submit_result = public.submit(business_type)

        if submit_result:
            public.log_record('提交【友金快贷】响应结果',
                              sys._getframe().f_lineno, submit_result)
            submit_status = submit_result['code']
            self.assertEqual(submit_status, '000000')
        else:
            public.log_record('提交【友金快贷】失败响应结果',
                              sys._getframe().f_lineno, submit_result)
예제 #15
0
    def test_tel_sign_admission(self):
        '''  电话签约准入 '''

        #当前电话签约条件下数据
        signing_data = {
            'apply_status': '001',
            'state': '0070',
            'sub_state': '0001'
        }  #,'operate_org_id':config.default_operate_org_id

        #请求准入数据
        signing_admission_data = {
            'operator': config.default_operation_name,
            'systemId': '05',
            'applyId': None
        }

        wk = wk_db_server.ApplyRepository()
        query_result = wk.handel_query('1', ('apply_id', 'business_type'),
                                       **signing_data)

        if query_result is None:
            public.log_record('当前查询条件下没有待补件的数据',
                              sys._getframe().f_lineno, query_result)
            return None

        signing_admission_data['applyId'] = query_result['apply_id']

        public.log_record('电话签约准入',
                          sys._getframe().f_lineno, signing_admission_data)

        try:
            admission_result = requests.post(url=config.wk_detail_default_url,
                                             json=signing_admission_data)

            if admission_result.json():
                public.log_record('电话签约准入结果',
                                  sys._getframe().f_lineno,
                                  admission_result.json())

            else:
                public.log_record('查询进度响应结果',
                                  sys._getframe().f_lineno,
                                  admission_result.text)
                return None

        except Exception as e:
            public.log_record('电话签约准入', sys._getframe().f_lineno, e)
            return e

        self.assertEqual(admission_result.json()['code'], '000000', '电话签约准入结果')
예제 #16
0
    def test_bind_relation(self):
        '''   获取推荐人绑定关系 '''

        #获取推荐人编码
        recommerd_info = cma_recommend()

        print('recommerd_info:',recommerd_info)
        if recommerd_info:

            #根据推荐人编码获取推荐人绑定关系请求数据
            bind_req_data = {
                'recommerderNo': recommerd_info['content']['rcmderId']
            }
            public.log_record('根据推荐人编码获取推荐人绑定关系请求数据', sys._getframe().f_lineno, bind_req_data)

            bind_res_data = requests.post(
                url=config.bms_bind_relation_default_url,
                json=bind_req_data
            )
            if bind_res_data.json()['retCode']:
                public.log_record('根据推荐人编码获取推荐人绑定关系响应数据', sys._getframe().f_lineno, bind_res_data.text)
                self.assertEqual(bind_res_data.json()['retCode'], '000000')
            else:
                public.log_record('根据推荐人编码获取推荐人绑定关系响应数据', sys._getframe().f_lineno, bind_res_data.text)
        else:
            public.log_record('推荐人编码为空,未能获取推荐人绑定关系', sys._getframe().f_lineno, recommerd_info)
            return None
예제 #17
0
    def test_get_pass_apply(self):
        '''  获取审批通过的申请单'''

        #查询条件 已放款
        apply_status = {'apply_status':'004'}

        wk = wk_db_server.ApplyToCuBaseInfoRepository()

        query_result = wk.handel_query(('cert_code'),**apply_status)

        if query_result is None:
            public.log_record('当前查询条件【%s】下无数据' % apply_status, sys._getframe().f_lineno, query_result)
            return None

        # 获取审批通过申请单的请求数据
        pass_apply_req_data = {
            'certId': query_result['cert_code']
        }
        public.log_record('获取审批通过申请单的请求数据', sys._getframe().f_lineno, pass_apply_req_data)
        pass_apply_res_data = requests.post(
            url=config.wk_pass_apply_default_url,
            json=pass_apply_req_data
        )
        if pass_apply_res_data.json()['code']:
            public.log_record('获取审批通过申请单的响应数据', sys._getframe().f_lineno, pass_apply_res_data.text)
            apply_count = len(pass_apply_res_data.json()['data']['applyIdList'])
            self.assertGreater(apply_count,0)
        else:
            public.log_record('获取审批通过申请单失败响应数据', sys._getframe().f_lineno, pass_apply_res_data.text)
            return None
예제 #18
0
    def handel_update(self,seller_id,is_scene='1'):

        cursor = self.conn.connect()

        sql = " update bms_seller set is_scene = '%s'  where seller_id = '%s';"

        new_sql = sql%(is_scene,seller_id)


        public.log_record('将营销人员是否有现调权置为【%s】(1:有现调权;0:无现调权)'%is_scene, sys._getframe().f_lineno, new_sql)

        cursor.execute(new_sql)

        self.conn.close()
예제 #19
0
    def test_real_auth(self):
        '''  实名认证'''

        AES = public.EncryptAndDecrypt(key='abcdefghij123456',iv='0102030405060708')

        time_format = public.ChangeTimeFormat()
        timestamp = time_format.change_timestamp(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))

        #实名认证请求数据
        real_auth_req_data ={
        'timeStamp':timestamp,
        'certId':get_user_info[1],
        'source':'shizuishan',
        'inputType':'NOTXD',
        'isCompany':'false'
        }
        public.log_record('实名认证请数据,加密前:', sys._getframe().f_lineno, real_auth_req_data)

        encode_data = AES.aes_encrypt(json.dumps(real_auth_req_data))
        public.log_record('实名认证请求数据,加密后:', sys._getframe().f_lineno, encode_data)

        real_auth_res_data = requests.post(
            url=config.hp_real_auth_default_url,
            json={
                'json':encode_data
            }
        )
        if real_auth_res_data.json():
            public.log_record('实名认证响应数据:',sys._getframe().f_lineno,real_auth_res_data.text)
            self.assertEqual(str(real_auth_res_data.json()['authed']).lower(), 'true')

        else:
            public.log_record('实名认证失败响应数据:', sys._getframe().f_lineno, real_auth_res_data.text)
예제 #20
0
    def handel_query(self, *args, **kwargs):
        cursor = self.conn.connect()

        if len(args) == 0:
            columns = '*'
        else:
            columns = str(args).replace('(', '').replace(')', '').replace("'", '')[:-1]

        is_null = ''
        condition = ''

        for k, v in kwargs.items():
            is_null += v

        if is_null == '':

            sql = """
           select %s from app_user t1,app_rcmd_record t2
           where t1.id = t2.rcmder  
           and t1.id != ''
           and t1.cert_no != ''
           order by t2.rcmd_time desc
           limit 1;
             """ %(columns)


        else:
            for k, v in kwargs.items():
                condition += " %s = '%s' and " % (k, v)

            sql = """
             select %s from app_user t1,app_rcmd_record t2
             where t1.id = t2.rcmder  
             and t1.id != ''
             and t1.encrypt_cert_no != ''
             and t2.status = '06' 
             and %s
                  """ % (columns,condition)

            sql = sql.strip()[:-4]
            sql = sql + ' order by t2.rcmd_time desc limit 1;'

        public.log_record('查询CMA推荐人信息:', sys._getframe().f_lineno, sql)
        cursor.execute(sql)

        result = cursor.fetchone()

        self.conn.close()

        return result
예제 #21
0
    def test_query_schedule(self):
        ''' 查询进度结果'''

        #查询进度请求参数
        query_data = {
            "operateOrgId": [config.default_operate_org_id],
            "operator": config.default_operation_name,
            "pageSize": 10,
            "pageNum": 1
        }
        public.log_record('查询进度请求数据', sys._getframe().f_lineno, query_data)

        try:
            query_result = requests.post(url=config.wk_schedule_default_url,
                                         json=query_data)

            if query_result.json()['data']:
                schedule_result = query_result.json()
                public.log_record('查询进度响应结果',
                                  sys._getframe().f_lineno, query_result.text)
                self.assertGreater(int(schedule_result['data']['count']), 0,
                                   '进度查询结果')

            else:
                public.log_record('查询进度响应结果',
                                  sys._getframe().f_lineno, query_result.text)
                return None

        except Exception as e:
            public.log_record('查询进度', sys._getframe().f_lineno, e)
예제 #22
0
    def handel_query(self, *args, **kwargs):
        cursor = self.conn.connect()

        if len(args) == 0:
            columns = '*'
        else:
            columns = str(args).replace('(', '').replace(')',
                                                         '').replace("'",
                                                                     '')[:-1]

        is_null = ''
        condition = ''

        for k, v in kwargs.items():
            is_null += v

        if is_null == '':

            sql = """
         select  %s from fatp_loan_apply t1,fatp_contract_info t2
          where t1.contract_serial_no  = t2.serial_no
          order by t2.create_time desc
          limit 1;
         """ % (columns)

        else:
            for k, v in kwargs.items():
                condition += " %s = '%s' and " % (k, v)

            sql = """
            select  %s from fatp_loan_apply t1,fatp_contract_info t2
            where t1.contract_serial_no  = t2.serial_no
            and %s
                  """ % (columns, condition)

            sql = sql.strip()[:-4]
            sql = sql + ' order by t2.create_time desc limit 1;'

            public.log_record('查询合同及借据信息', sys._getframe().f_lineno, sql)

        cursor.execute(sql)

        result = cursor.fetchone()

        self.conn.close()

        return result
예제 #23
0
    def handel_query(self,seller_id):

        cursor = self.conn.connect()

        sql = " select is_scene,user_id from bms_seller where seller_id = '%s'; "

        new_sql = sql%(seller_id)

        public.log_record('查询营销人员信息是否有现调权:', sys._getframe().f_lineno,new_sql)

        cursor.execute(new_sql)

        result = cursor.fetchone()

        self.conn.close()

        return result
예제 #24
0
    def handel_query(self, limit='', *args, **kwargs):
        cursor = self.conn.connect()

        try:
            limit = int(limit)
        except Exception:
            limit = 1

        if len(args) == 0:
            columns = '*'
        else:
            columns = str(args).replace('(', '').replace(')',
                                                         '').replace("'",
                                                                     '')[:-1]

        is_null = ''
        condition = ''

        for k, v in kwargs.items():
            is_null += v

        if is_null == '':
            sql = " select %s from fatp_loan_apply order by create_time desc limit 100; " % (
                columns)

        else:
            for k, v in kwargs.items():
                condition += " %s = '%s' and " % (k, v)

            sql = " select %s from fatp_loan_apply where %s " % (columns,
                                                                 condition)
            sql = sql.strip()[:-4]
            sql = sql + ' order by create_time desc limit 1;'

            public.log_record('查询借款申请信息', sys._getframe().f_lineno, sql)

        cursor.execute(sql)

        if limit > 1:
            results = cursor.fetchall()
        else:
            results = cursor.fetchone()

        return results

        self.conn.close()
예제 #25
0
    def test_telemarketing_query(self):
        '''  电销查询'''

        telemarketing_req_data = {
            "param": {
                "orgId": config.default_operate_org_id,
                "isDefault": 1
            },
            "pageNo": 1,
            "pageSize": 10
        }
        public.log_record('电销查询请求数据',
                          sys._getframe().f_lineno, telemarketing_req_data)

        telemarketing_res_data = requests.post(
            url=config.lcrm_telemarketing_default_url,
            json=telemarketing_req_data)
        if telemarketing_res_data.json()['retCode']:
            public.log_record('电销查询响应数据',
                              sys._getframe().f_lineno,
                              telemarketing_res_data.text)
            self.assertEqual(telemarketing_res_data.json()['retCode'],
                             '000000')

        else:
            public.log_record('电销查询失败响应数据',
                              sys._getframe().f_lineno,
                              telemarketing_res_data.text)
예제 #26
0
    def test_get_org_list(self):
        '''  获取机构列表 '''

        # 获取机构列表请求数据
        org_list_req_data = {
                    'pageNo':'1',
                    'pageSize':'100',
                    'param':{
                        'orgId':'',
                        'orgName':'',
                        'parentOrgId':'',
                        'orgLevelList':['3','5'],
                    },
        }
        public.log_record('获取机构列表请求数据', sys._getframe().f_lineno, org_list_req_data)

        org_list_res_data = requests.post(
            url=config.bms_org_list_default_list,
            json=org_list_req_data
        )
        if org_list_res_data.json()['retCode']:
            public.log_record('获取机构列表请求数据响应数据', sys._getframe().f_lineno, org_list_res_data.text)
            self.assertEqual(org_list_res_data.json()['retCode'], '000000')
        else:
            public.log_record('获取机构列表请求数据失败响应数据', sys._getframe().f_lineno, org_list_res_data.text)
            return None
예제 #27
0
    def test_get_send_info(self):
        ''' 批量获取发标信息'''

        # 未记账/未暂缓状态数据
        putout_status = {'defer_pay_status': '0', 'put_out_status': '0'}

        fatp = fatp_db_server.ApplyToContractRepository()

        query_result = fatp.handel_query(('t2.apply_serial_no'),
                                         **putout_status)

        if query_result is None:
            public.log_record('当前查询条件【%s】下未存在有效数据' % putout_status,
                              sys._getframe().f_lineno, query_result)
            return None

        public.log_record('当前查询条件【%s】下查询结果数据' % putout_status,
                          sys._getframe().f_lineno, query_result)

        #获取记账状态下的apply_id
        apply_id = query_result['apply_serial_no']

        #批量获取发标信息请求数据
        send_info_req_data = {'applyIdList': [apply_id]}
        public.log_record('批量获取发标信息请求数据',
                          sys._getframe().f_lineno, send_info_req_data)

        send_info_res_data = requests.post(url=config.wk_send_info_default_url,
                                           json=send_info_req_data)

        if send_info_res_data.json()['code']:
            public.log_record('批量获取发标信息响应数据',
                              sys._getframe().f_lineno,
                              send_info_res_data.text)
            self.assertEqual(send_info_res_data.json()['code'], '000000')
        else:
            public.log_record('批量获取发标信息失败响应数据',
                              sys._getframe().f_lineno,
                              send_info_res_data.text)
예제 #28
0
    def query_seller_depart_unit(self,org_id):

        cursor = self.conn.connect()
        sql = """
            select t.seller_name,t.user_id,t.seller_id,t.belong_team,t1.department_name,t2.unit_name 
            from bms_seller  t , bms_department_info t1,bms_business_unit t2
            where t.belong_team = t1.department_code
            and t1.unit_code = t2.unit_code
            and t.`status` = '1'
            and t2.org_id = '%s';
        """

        new_sql = sql%(org_id)

        cursor.execute(new_sql)

        result = cursor.fetchone()

        public.log_record('查询【%s】具有现调权限的营销人员信息'%result['unit_name'], sys._getframe().f_lineno, new_sql)

        cursor.close()

        return result
예제 #29
0
    def test_cancel(self):
        '''  取消任务'''

        wk = wk_db_server.ApplyRepository()

        #查询预审面签数据  visa_interview
        query_data = {
            'state': '0017',
            'apply_status': '001',
            'sub_state': '0001',
            'prev_state': '0010',
            'apply_source': 'B_PROJECT_INLET',
            'operate_org_id': config.default_operate_org_id
        }
        query_result = wk.handel_query('1', ('apply_id'), **query_data)

        if query_result is None:
            public.log_record('当前环境下不存在预审面签数据',
                              sys._getframe().f_lineno, query_result)
            return None

        #取消面签请求数据
        visa_interview_req_data = {
            'applyId': query_result['apply_id'],
            'operatorId': config.wind_control
        }
        public.log_record('取消面签请求数据',
                          sys._getframe().f_lineno, visa_interview_req_data)

        visa_interview_res_data = requests.post(
            url=config.wk_cancel_default_url, json=visa_interview_req_data)
        if visa_interview_res_data.json()['code']:
            public.log_record('取消面签响应数据',
                              sys._getframe().f_lineno,
                              visa_interview_res_data.text)
            self.assertEqual(visa_interview_res_data.json()['code'], '000000')

        else:
            public.log_record('取消面签响应数据',
                              sys._getframe().f_lineno,
                              visa_interview_res_data.text)
            return None
예제 #30
0
    def test_admission_zrb(self):
        ''' 准入真融宝'''
        public.log_record('用户信息', sys._getframe().f_lineno, get_user_info)
        admission_result = admission(config.business_type['ZRB'][0])

        if admission_result:
            is_y = admission_result['data']['isAdmission']
            public.log_record('准入真融宝响应结果:',
                              sys._getframe().f_lineno, admission_result)
            self.assertEqual(str(is_y).upper(), 'Y'.upper(), '准入真融宝')
        else:
            public.log_record('准入真融宝失败响应结果',
                              sys._getframe().f_lineno, admission_result)