def test_6_contract_sign(self):
     """上传借款合同"""
     data = excel_table_byname(self.file, 'contract_sign')
     param = json.loads(data[0]['param'])
     param.update({
         "serviceSn":
         Common.get_random('serviceSn'),
         "sourceUserId":
         self.r.get('jfx_3_periods_sourceUserId'),
         "contractType":
         2,
         "sourceContractId":
         Common.get_random('userid'),
         "transactionId":
         self.r.get('jfx_3_periods_transactionId'),
         "associationId":
         self.r.get('jfx_3_periods_projectId'),
         "content":
         Common.get_json_data('data', 'borrow_sign.json').get("content")
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.assertEqual(int(data[0]['resultCode']), rep['resultCode'])
Beispiel #2
0
	def test_106_contact_query(self):
		"""合同结果查询:获取签章后的借款协议"""
		data = excel_table_byname(self.file, 'contract_query')
		param = json.loads(data[0]['param'])
		param.update(
			{
				"associationId": self.r.get('jfqyl_6_periods_projectId'),
				"serviceSn": Common.get_random("serviceSn"),
				"requestTime": Common.get_time("-"),
				"sourceUserId": self.r.get("jfqyl_6_periods_sourceUserId"),
				"contractId": self.r.get("jfqyl_6_periods_contractId")
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
	def test_106_contact_query(self, r, env, red):
		"""合同结果查询:获取签章后的借款协议"""
		data = excel_table_byname(self.file, 'contract_query')
		param = json.loads(data[0]['param'])
		param.update(
			{
				"associationId": r.get(red["project_id"]),
				"serviceSn": Common.get_random("serviceSn"),
				"requestTime": Common.get_time("-"),
				"sourceUserId": r.get(red["source_user_id"]),
				"contractId": r.get(red["contract_id"])
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=env
		)
		assert rep['resultCode'] == int(data[0]['resultCode'])
	def test_108_loan_pfa(self, r, env, red):
		"""放款申请"""
		data = excel_table_byname(self.file, 'loan_pfa')
		param = json.loads(data[0]['param'])
		r.setex(red["loan_service_sn"], 72000, Common.get_random("serviceSn"))
		param.update(
			{
				"sourceProjectId": r.get(red["source_project_id"]),
				"projectId": r.get(red["project_id"]),
				"sourceUserId": r.get(red["source_user_id"]),
				"serviceSn": r.get(red["loan_service_sn"]),
				"id": r.get(red["id_card"]),
				"accountName": r.get(red["user_name"]),
				"amount": 33333.33
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=env
		)
		assert rep['resultCode'] == int(data[0]['resultCode'])
		# 修改支付表中的品钛返回code
		GetSqlData.change_pay_status(
			environment=env,
			project_id=r.get(red["project_id"])
		)
Beispiel #5
0
	def test_101_loan(self, r, env):
		"""随意借V2放款接口"""
		data = excel_table_byname(self.file, 'loan')
		print("接口名称:%s" % data[0]['casename'])
		GetSqlData.project_audit_status(
			project_id=r.get('syjv2_projectId'),
			environment=env
		)
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceProjectId": r.get('syjv2_sourceProjectId'),
				"sourceUserId": r.get('syjv2_sourceUserId'),
				"projectId": r.get('syjv2_projectId'),
				"serviceSn": "SaasL-" + Common.get_random("serviceSn"),
				"id": r.get("syjv2_cardNum"),
				"bankPhone": r.get("syjv2_phone")
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			environment=env,
			product="pintic"
		)
		assert int(data[0]['msgCode']) == rep['resultCode']
		assert "交易成功" == rep['content']['message']
Beispiel #6
0
	def test_102_query_loan_status(self, r, env):
		"""随意借V2放款结果查询接口"""
		data = excel_table_byname(self.file, 'query_loan_status')
		print("接口名称:%s" % data[0]['casename'])
		time.sleep(8)
		GetSqlData.change_pay_status(
			project_id=r.get('syjv2_projectId'),
			environment=env
		)
		GetSqlData.loan_set(env, r.get('syjv2_projectId'))
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceProjectId": r.get('syjv2_sourceProjectId'),
				"sourceUserId": r.get('syjv2_sourceUserId'),
				"projectId": r.get('syjv2_projectId'),
				"serviceSn": "SaasL-" + Common.get_random("serviceSn")
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			environment=env,
			product="pintic"
		)
		assert int(data[0]['msgCode']) == rep['resultCode']
		assert "SUCCESS" == rep['content']['loanStatus']
Beispiel #7
0
 def test_1_loan_notice(self, env, r):
     """拿去花放款通知接口"""
     data = excel_table_byname(self.file, 'loan_notice')
     print("接口名称:%s" % data[0]['casename'])
     param = json.loads(data[0]['param'])
     param.update({
         "sourceProjectId": r.get("nqh_sourceProjectId"),
         "sourceUserId": r.get("nqh_sourceUserId"),
         "projectId": r.get("nqh_projectId"),
         "serviceSn": "SaasL-" + Common.get_random("serviceSn"),
         "id": r.get("nqh_cardNum"),
         "bankPhone": r.get("nqh_phone"),
         "loanTime": Common.get_time("-")
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     time.sleep(5)
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           environment=env,
                           product="pintic")
     assert rep['resultCode'] == int(data[0]['msgCode'])
	def test_111_calculate(self, r, env, red):
		"""还款计划试算:提前结清"""
		data = excel_table_byname(self.file, 'calculate')
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceUserId": r.get(red["source_user_id"]),
				"transactionId": r.get(red["transaction_id"]),
				"sourceProjectId": r.get(red["source_project_id"]),
				"projectId": r.get(red["project_id"]),
				"businessType": 2,
				"repayTime": Common.get_time("-")
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=env
		)
		assert rep['resultCode'] == int(data[0]['resultCode'])
		r.setex(red["early_settlement_repayment_plan"], 72000, json.dumps(rep['content']['repaymentPlanList']))
 def test_107_pfa(self, r, env, red):
     """放款"""
     data = excel_table_byname(self.file, 'project_loan')
     param = json.loads(data[0]['param'])
     param.update({
         "sourceProjectId": r.get(red["source_project_id"]),
         "projectId": r.get(red["project_id"]),
         "sourceUserId": r.get(red["source_user_id"]),
         "serviceSn": Common.get_random('serviceSn'),
         "accountName": r.get(red["user_name"]),
         "id": r.get(red["id_card"]),
         "bankCode": "CCB",
         "accountNo": "6227002432220410613"  # 6227003814170172872
     })
     r.set(red["loan_service_sn"], param['serviceSn'])
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=env)
     assert int(data[0]['resultCode']) == rep['resultCode']
     # 修改支付表中的品钛返回code
     GetSqlData.change_pay_status(environment=env,
                                  project_id=r.get(red["project_id"]))
Beispiel #10
0
 def test_106_sign_credit(self, r, env, red):
     """上传借款授信协议"""
     data = excel_table_byname(self.file, 'contract_sign')
     param = json.loads(data[0]['param'])
     param.update({
         "serviceSn":
         Common.get_random('serviceSn'),
         "sourceUserId":
         r.get(red["source_user_id"]),
         "contractType":
         5,
         "sourceContractId":
         Common.get_random('userid'),
         "transactionId":
         r.get(red["transaction_id"]),
         "associationId":
         r.get(red["project_id"]),
         "content":
         Common.get_json_data('data', 'credit_sign.json').get("content")
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=env)
     assert int(data[0]['resultCode']) == rep['resultCode']
 def test_D_offline_partial(self):
     """线下还款:部分还款"""
     data = excel_table_byname(self.file, 'offline_partial')
     param = json.loads(data[0]['param'])
     param.update({
         "sourceRequestId":
         Common.get_random("requestNum"),
         "sourceRepaymentId":
         Common.get_random("requestNum"),
         "projectId":
         self.r.get("jfx_3_periods_projectId"),
         "sourceProjectId":
         self.r.get("jfx_3_periods_sourceProjectId"),
         "sourceUserId":
         self.r.get("jfx_3_periods_sourceUserId"),
         "serviceSn":
         Common.get_random("serviceSn"),
         "payTime":
         Common.get_time("-"),
         "successAmount":
         50,
         "period":
         1
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
 def test_7_pfa(self):
     """放款"""
     data = excel_table_byname(self.file, 'project_loan')
     param = json.loads(data[0]['param'])
     param.update({
         "sourceProjectId":
         self.r.get('jfx_3_periods_sourceProjectId'),
         "projectId":
         self.r.get('jfx_3_periods_projectId'),
         "sourceUserId":
         self.r.get('jfx_3_periods_sourceUserId'),
         "serviceSn":
         Common.get_random('serviceSn'),
         "accountName":
         self.r.get("jfx_3_periods_corporateAccountName"),
         "bankCode":
         34,
         "accountNo":
         "6227002432220410613"  # 6227003814170172872
     })
     self.r.set("jfx_3_periods_pfa_serviceSn", param['serviceSn'])
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     headers["X-TBC-SKIP-SIGN"] = "true"
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.assertEqual(int(data[0]['resultCode']), rep['resultCode'])
     GetSqlData.change_pay_status(
         environment=self.env,
         project_id=self.r.get('jfx_3_periods_projectId'))
Beispiel #13
0
	def test_108_loan_pfa(self):
		"""放款申请"""
		data = excel_table_byname(self.file, 'loan_pfa')
		param = json.loads(data[0]['param'])
		self.r.set("jfqyl_6_periods_loan_serviceSn", Common.get_random("serviceSn"))
		param.update(
			{
				"sourceProjectId": self.r.get("jfqyl_6_periods_sourceProjectId"),
				"projectId": self.r.get("jfqyl_6_periods_projectId"),
				"sourceUserId": self.r.get("jfqyl_6_periods_sourceUserId"),
				"serviceSn": self.r.get("jfqyl_6_periods_loan_serviceSn"),
				"id": self.r.get('jfqyl_6_periods_cardNum'),
				"accountName": self.r.get("jfqyl_6_periods_custName"),
				"amount": 33333.33
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
		# 修改支付表中的品钛返回code
		GetSqlData.change_pay_status(
			environment=self.env,
			project_id=self.r.get('jfqyl_6_periods_projectId')
		)
Beispiel #14
0
	def test_115_debt_transfer(self):
		"""上传债转函"""
		data = excel_table_byname(self.file, 'contract_sign')
		param = Common.get_json_data('data', 'kkd_debt_transfer.json')
		param.update(
			{
				"serviceSn": Common.get_random('serviceSn'),
				"sourceUserId": self.r.get('jfqyl_6_periods_sourceUserId'),
				"sourceContractId": Common.get_random('userid'),
				"transactionId": self.r.get('jfqyl_6_periods_transactionId'),
				"associationId": self.r.get('jfqyl_6_periods_projectId')
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.r.set("jfqyl_6_periods_contractId", rep['content']['contractId'])
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
	def test_102_loan_notice(self):
		"""橙分期放款通知接口"""
		data = excel_table_byname(self.file, 'loan_notice')
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceProjectId": self.r.get("cfq_24_periods_sourceProjectId"),
				"sourceUserId": self.r.get("cfq_24_periods_sourceUserId"),
				"projectId": self.r.get("cfq_24_periods_projectId"),
				"serviceSn": "SaasL-" + Common.get_random("serviceSn"),
				"id": self.r.get("cfq_24_periods_cardNum"),
				"bankPhone": self.r.get("cfq_24_periods_phone"),
				"loanTime": Common.get_time("-")
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			environment=self.env,
			product="pintec",
			prod_type="pintec"
		)
		self.assertEqual(rep['resultCode'], int(data[0]['msgCode']))
Beispiel #16
0
 def test_1_loan_notice(self, env, r):
     """拿去花放款通知接口"""
     data = excel_table_byname(self.file, 'loan_notice')
     print("接口名称:%s" % data[0]['casename'])
     GetSqlData.change_project_audit_status(
         project_id=r["nqh_one_period_same_day_return_projectId"],
         environment=env)
     param = json.loads(data[0]['param'])
     r.set("nqh_one_period_same_day_return_loan_time", Common.get_time("-"))
     param.update({
         "sourceProjectId":
         r.get("nqh_one_period_same_day_return_sourceProjectId"),
         "sourceUserId":
         r.get("nqh_one_period_same_day_return_sourceUserId"),
         "projectId":
         r.get("nqh_one_period_same_day_return_projectId"),
         "serviceSn":
         "SaasL-" + Common.get_random("serviceSn"),
         "id":
         r.get("nqh_one_period_same_day_return_cardNum"),
         "bankPhone":
         r.get("nqh_one_period_same_day_return_phone"),
         'loanTime':
         r.get("nqh_one_period_same_day_return_loan_time")
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           environment=env,
                           product="pintic")
     assert rep['resultCode'] == int(data[0]['msgCode'])
Beispiel #17
0
 def loan_job():
     try:
         print(f"当前未放款成功的产品数量为:{GetSqlData.select_asset()}")
         GetSqlData.loan_sql('qa')
         Common.trigger_task("projectLoanReparationJob", "qa")
         print(f"执行完成,任务编号为{str(random.random()).split('.')[1]}")
     except Exception as e:
         print(e)
Beispiel #18
0
	def test_104_project_apply(self):
		"""进件"""
		data = excel_table_byname(self.file, 'test_project')
		param = json.loads(data[0]['param'])
		self.r.set('jfx_sourceProjectId', Common.get_random('sourceProjectId'))
		param.update(
			{
				"sourceProjectId": self.r.get('jfx_sourceProjectId'),
				"sourceUserId": self.r.get('jfx_sourceUserId'),
				"transactionId": self.r.get('jfx_transactionId')
			}
		)
		param['personalInfo'].update(
			{
				"cardNum": self.r.get('jfx_cardNum'),
				"custName": self.r.get('jfx_custName'),
				"phone": self.r.get('jfx_phone'),
				# "isDoctor": 0,
				"applicantClinicRelationship": 1
			}
		)
		param['applyInfo'].update(
			{
				"applyTime": Common.get_time(),
				"applyAmount": 500000.00
			}
		)
		param['loanInfo'].update(
			{
				"loanAmount": 500000.00,
				"assetInterestRate": 0.14,
				"userInterestRate": 0.14
			}
		)
		param['cardInfo'].update(
			{
				"bankNameSub": "建设银行",
				"bankCode": 34,
				"bankCardNo": "6227002432220410613",  # 6227002432220410613
				"unifiedSocialCreditCode": Common.get_random("businessLicenseNo")
			}
		)
		self.r.set("jfx_corporateAccountName", param['cardInfo']['corporateAccountName'])
		# param["entityInfo"]["unifiedSocialCreditCode"] = None
		# param["entityInfo"]["permitRegistrationNumber"] = None
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
		self.r.set('jfx_projectId', rep['content']['projectId'])
Beispiel #19
0
 def test_118_return(self):
     """退货"""
     data = excel_table_byname(self.file, 'offline_repay')
     param = json.loads(data[0]['param'])
     plan_pay_date = GetSqlData.get_repayment_plan_date(
         project_id=self.r.get("jfqylv2_3_periods_projectId"),
         environment=self.env,
         repayment_plan_type=1,
         period=1)
     repayment_plan_list = json.loads(
         self.r.get("jfqylv2_3_periods_return_repayment_plan"))
     success_amount = 0.00
     repayment_detail_list = []
     for i in repayment_plan_list:
         plan_detail = {
             "sourceRepaymentDetailId": Common.get_random("transactionId"),
             "payAmount": i['amount'],
             "planCategory": i['repaymentPlanType']
         }
         success_amount = round(
             success_amount + plan_detail.get("payAmount"), 2)
         repayment_detail_list.append(plan_detail)
     param.update({
         "projectId":
         self.r.get("jfqylv2_3_periods_projectId"),
         "transactionId":
         self.r.get("jfqylv2_3_periods_sourceProjectId"),
         "sourceProjectId":
         self.r.get("jfqylv2_3_periods_sourceProjectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "planPayDate":
         plan_pay_date['plan_pay_date'],
         "successAmount":
         success_amount,
         "repayType":
         3,
         "period":
         repayment_plan_list[0]['period'],
         "payTime":
         Common.get_time("-")
     })
     param['repaymentDetailList'] = repayment_detail_list
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
     Assert.check_repayment(True, self.env,
                            self.r.get("jfqylv2_3_periods_projectId"),
                            param)
	def test_104_apply(self):
		"""进件"""
		data = excel_table_byname(self.file, 'apply')
		self.r.mset(
			{
				"jk_cwshd_18_periods_transactionId": Common.get_random('transactionId'),
				"jk_cwshd_18_periods_sourceProjectId": Common.get_random('sourceProjectId'),
			}
		)
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceProjectId": self.r.get('jk_cwshd_18_periods_sourceProjectId'),
				"sourceUserId": self.r.get('jk_cwshd_18_periods_sourceUserId'),
				"transactionId": self.r.get('jk_cwshd_18_periods_transactionId')
			}
		)
		param['applyInfo'].update(
			{
				"applyTime": Common.get_time("-"),
				"applyAmount": 50000,
				"applyTerm": 18,
			}
		)
		param['loanInfo'].update(
			{
				"loanAmount": 50000,
				"loanTerm": 18,
				"assetInterestRate": 0.05,
				"userInterestRate": 0.16,
				"discountRate": 0.05
			}
		)
		param['personalInfo'].update(
			{
				"cardNum": self.r.get('jk_cwshd_18_periods_cardNum'),
				"custName": self.r.get('jk_cwshd_18_periods_custName'),
				"phone": self.r.get('jk_cwshd_18_periods_phone')
			}
		)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		# headers["X-TBC-SKIP-ENCRYPT"] = "true"
		# headers["X-TBC-SKIP-SIGN"] = "true"
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env,
			prod_type="jkjr"
		)
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
		self.r.set('jk_cwshd_18_periods_projectId', rep['content']['projectId'])
 def test_117_deduction_apply_all_periods(self):
     """主动还款:连续还款整笔结清"""
     data = excel_table_byname(self.file, 'deduction_apply')
     param = json.loads(data[0]['param'])
     repayment_plan_list = self.r.get("rmkj_9_periods_repayment_plan")
     maturity = GetSqlData.get_maturity(
         project_id=self.r.get("rmkj_9_periods_projectId"),
         environment=self.env)
     for period in range(1, maturity + 1):
         success_amount = 0.00
         repayment_detail_list = []
         for i in json.loads(repayment_plan_list):
             if i['period'] == period:
                 plan_detail = {
                     "period": i['period'],
                     "payAmount": i['restAmount'],
                     "planCategory": i['repaymentPlanType']
                 }
                 success_amount = round(
                     success_amount + plan_detail.get("payAmount"), 2)
                 repayment_detail_list.append(plan_detail)
         param.update({
             "sourceRequestId":
             Common.get_random("requestNum"),
             "projectId":
             self.r.get("rmkj_9_periods_projectId"),
             "sourceProjectId":
             self.r.get("rmkj_9_periods_sourceProjectId"),
             "sourceUserId":
             self.r.get("rmkj_9_periods_sourceUserId"),
             "serviceSn":
             Common.get_random("serviceSn"),
             "payTime":
             Common.get_time("-"),
             "successAmount":
             success_amount,
             "period":
             period
         })
         param['repaymentDetailList'] = repayment_detail_list
         if len(data[0]['headers']) == 0:
             headers = None
         else:
             headers = json.loads(data[0]['headers'])
         rep = Common.response(faceaddr=data[0]['url'],
                               headers=headers,
                               data=json.dumps(param, ensure_ascii=False),
                               product="cloudloan",
                               environment=self.env)
         self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
         Assert.check_repayment(True, self.env,
                                self.r.get("rmkj_9_periods_projectId"),
                                param)
         self.r.set("rmkj_9_periods_deductionTaskId",
                    rep['content']['deductionTaskId'])
	def test_107_repurchase(self):
		"""橙分期24期回购一期"""
		data = excel_table_byname(self.file, 'repurchase')
		param = json.loads(data[0]['param'])
		param['assetSwapInfo'].update(
			{
				"projectId": self.r.get("cfq_24_periods_projectId"),
				"sourceApplyId": Common.get_random("serviceSn"),
				"actionTime": Common.get_time("-"),
				"sourceCreateTime": Common.get_time("-")
			}
		)
		for i in param['assetSwapDetailList']:
			i.update(
				{
					"projectId": self.r.get("cfq_24_periods_projectId"),
					"sourceDetailId": Common.get_random("serviceSn"),
					"sourceSwapId": Common.get_random("serviceSn"),
					"sourceRelatedPlanId": Common.get_random("serviceSn"),
					"actionTime": Common.get_time("-"),
					"sourceCreateTime": Common.get_time("-")
				}
			)
		for i in param['repaymentPlanList']:
			global plan_list_detail, plan_pay_type
			plan_pay_type = {
				"Principal": "1",
				"Interest": "2"
			}
			if i['assetPlanOwner'] == "foundPartner":
				plan_list_detail = GetSqlData.get_repayment_plan_date(project_id=self.r.get("cfq_24_periods_projectId"),
																	  environment=self.env,
																	  repayment_plan_type=plan_pay_type.get(
																		  i['repaymentPlanType']), period=i['period'])
			elif i['assetPlanOwner'] == "financePartner":
				plan_list_detail = GetSqlData.get_user_repayment_detail(
					project_id=self.r.get("cfq_24_periods_projectId"),
					environment=self.env,
					period=i['period'],
					repayment_plan_type=plan_pay_type.get(i['repaymentPlanType'])
				)
			i.update(
				{
					"sourcePlanId": plan_list_detail.get("source_plan_id"),
					"planPayDate": plan_list_detail.get("plan_pay_date")
				}
			)
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			environment=self.env,
			product="pintec"
		)
		self.assertEqual(rep['resultCode'], data[0]['msgCode'])
Beispiel #23
0
	def test_100_credit_apply(self):
		"""额度授信"""
		data = excel_table_byname(self.file, 'credit_apply_data')
		Common.p2p_get_userinfo('jfx', self.env)
		self.r.mset(
			{
				"jfx_sourceUserId": Common.get_random('userid'),
				'jfx_transactionId': Common.get_random('transactionId'),
				"jfx_phone": Common.get_random('phone'),
				"jfx_firstCreditDate": Common.get_time()
			}
		)
		param = json.loads(data[0]['param'])
		param['personalInfo'].update(
			{
				"cardNum": self.r.get('jfx_cardNum'),
				"custName": self.r.get('jfx_custName'),
				# "isDoctor": 0,
				"applicantClinicRelationship": 1
			}
		)
		param['applyInfo'].update({"applyTime": Common.get_time()})
		param.update(
			{
				"sourceUserId": self.r.get('jfx_sourceUserId'),
				"serviceSn": Common.get_random('serviceSn'),
				"transactionId": self.r.get('jfx_transactionId')
			}
		)
		param["entityInfo"]["enterpriseCertificateNum"] = Common.get_random("transactionId")
		param["entityInfo"]["enterpriseCertificateType"] = 1
		# del param["imageInfo"]["businessLicense"] #营业执照
		# del param["imageInfo"]["medicalPracticeCertificate"] #本人医师执业证书
		# del param["imageInfo"]["medicalInstitutionLicense"] #医疗机构执业许可证
		# del param["imageInfo"]["shareholderCertificate"] #股东证明
		# del param["imageInfo"]["authorizationCertificate"] #授权证明
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.r.mset(
			{
				"jfx_creditId": rep['content']['creditId'],
				"jfx_userId": rep['content']['userId']
			}
		)
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
 def test_100_apply(self):
     """进件"""
     data = excel_table_byname(self.file, 'apply')
     Common.p2p_get_userinfo('rmkj_6_periods', self.env)
     self.r.mset({
         "rmkj_6_periods_sourceUserId":
         Common.get_random('userid'),
         "rmkj_6_periods_transactionId":
         Common.get_random('transactionId'),
         "rmkj_6_periods_phone":
         Common.get_random('phone'),
         "rmkj_6_periods_sourceProjectId":
         Common.get_random('sourceProjectId')
     })
     param = json.loads(data[0]['param'])
     param.update({
         "sourceProjectId":
         self.r.get('rmkj_6_periods_sourceProjectId'),
         "sourceUserId":
         self.r.get('rmkj_6_periods_sourceUserId'),
         "transactionId":
         self.r.get('rmkj_6_periods_transactionId')
     })
     param['personalInfo'].update({
         "cardNum":
         self.r.get('rmkj_6_periods_cardNum'),
         "custName":
         self.r.get('rmkj_6_periods_custName'),
         "phone":
         self.r.get('rmkj_6_periods_phone')
     })
     param['applyInfo'].update({
         "applyTime": Common.get_time("-"),
         "applyTerm": 6
     })
     param['loanInfo'].update({"loanTerm": 6})
     param['cardInfo'].update({
         "unifiedSocialCreditCode":
         Common.get_random("businessLicenseNo")
     })
     param['bindingCardInfo'].update({
         "bankCardNo":
         self.r.get('rmkj_6_periods_bankcard'),
         "bankPhone":
         self.r.get('rmkj_6_periods_phone'),
         # "bankCode": "PINGAN",
         # "bankNameSub": "平安银行"
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
     self.r.set('rmkj_6_periods_projectId', rep['content']['projectId'])
Beispiel #25
0
	def test_100_apply(self):
		"""进件"""
		data = excel_table_byname(self.file, 'apply')
		Common.p2p_get_userinfo('jfqyl_6_periods', self.env)
		self.r.mset(
			{
				"jfqyl_6_periods_sourceUserId": Common.get_random('userid'),
				"jfqyl_6_periods_transactionId": Common.get_random('transactionId'),
				"jfqyl_6_periods_phone": Common.get_random('phone'),
				"jfqyl_6_periods_sourceProjectId": Common.get_random('sourceProjectId'),
			}
		)
		param = json.loads(data[0]['param'])
		param.update(
			{
				"sourceProjectId": self.r.get('jfqyl_6_periods_sourceProjectId'),
				"sourceUserId": self.r.get('jfqyl_6_periods_sourceUserId'),
				"transactionId": self.r.get('jfqyl_6_periods_transactionId')
			}
		)
		param['applyInfo'].update(
			{
				"applyTime": Common.get_time("-"),
				"applyAmount": 33333.33,
				"applyTerm": 6,
				"productCode": "FQ_JK_JFQYL"
			}
		)
		param['loanInfo'].update(
			{
				"loanAmount": 33333.33,
				"loanTerm": 6,
				"assetInterestRate": 0.153,
				"userInterestRate": 0.153
			}
		)
		param['personalInfo'].update(
			{
				"cardNum": self.r.get('jfqyl_6_periods_cardNum'),
				"custName": self.r.get('jfqyl_6_periods_custName'),
				"phone": self.r.get('jfqyl_6_periods_phone')
			}
		)
		param['applyInfo'].update({"applyTime": Common.get_time("-")})
		if len(data[0]['headers']) == 0:
			headers = None
		else:
			headers = json.loads(data[0]['headers'])
		rep = Common.response(
			faceaddr=data[0]['url'],
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product="cloudloan",
			environment=self.env
		)
		self.r.set('jfqyl_6_periods_projectId', rep['content']['projectId'])
		self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
Beispiel #26
0
	def test_credit_apply(self, data):
		"""授信申请参数校验"""
		_value = None
		case = str(data['casename'])
		print(case)
		red = Common.p2p_get_userinfo(environment=self.env, frame="pytest")
		param = json.loads(self.param)
		param["personalInfo"].update(
			{
				"custName": self.r.get(red["user_name"]),
				"cardNum": self.r.get(red["id_card"])
			}
		)
		print(f"""前置条件:{data["前置条件"]}""")
		if len(data["前置条件"]) > 0:
			preconditions = data["前置条件"].split(",")
			for k in preconditions:
				key = k.split(".")[0]
				value = k.split(".")[1].split("==")[0]
				enum = k.split(".")[1].split("==")[1]
				if Common.is_number(enum):
					enum = int(enum)
				param[key][value] = enum
		if "==" in case:
			_key = case.split("围")[1].split(".")[0]
			_value = case.split("围")[1].split(".")[1].split("==")[0]
			_enum = case.split("==")[1].replace(" ", "")
			if Common.is_number(_enum):
				if _enum.isdigit():
					_enum = int(_enum)
				else:
					_enum = float(_enum)
			param[_key][_value] = _enum
		elif "." in case:
			_key = case.split("空")[1].split(".")[0]
			_value = case.split("空")[1].split(".")[1]
			if _key == _value:
				param[_key] = None
			else:
				param[_key][_value] = None
		headers = json.loads(self.headers)
		rep = Common.response(
			faceaddr=self.url,
			headers=headers,
			data=json.dumps(param, ensure_ascii=False),
			product='cloudloan',
			environment=self.env
		)
		self.assertEqual(rep['resultCode'], int(data['resultCode']))
		if rep["errMsg"] is not None:
			self.assertIn(_value, rep["errMsg"])
 def test_4_project_apply(self):
     """进件"""
     data = excel_table_byname(self.file, 'test_project')
     param = json.loads(data[0]['param'])
     self.r.set('jfx_3_periods_sourceProjectId',
                Common.get_random('sourceProjectId'))
     param.update({
         "sourceProjectId":
         self.r.get('jfx_3_periods_sourceProjectId'),
         "sourceUserId":
         self.r.get('jfx_3_periods_sourceUserId'),
         "transactionId":
         self.r.get('jfx_3_periods_transactionId')
     })
     param['personalInfo'].update({
         "cardNum":
         self.r.get('jfx_3_periods_cardNum'),
         "custName":
         self.r.get('jfx_3_periods_custName'),
         "phone":
         self.r.get('jfx_3_periods_phone')
     })
     param['applyInfo'].update({
         "applyTime": Common.get_time(),
         "applyTerm": 3,
     })
     param['loanInfo'].update({"loanTerm": 3})
     param['cardInfo'].update({
         "bankNameSub":
         "建设银行",
         "bankCode":
         34,
         "bankCardNo":
         "6227002432220410613",
         "unifiedSocialCreditCode":
         Common.get_random("businessLicenseNo")
     })
     self.r.set("jfx_3_periods_corporateAccountName",
                param['cardInfo']['corporateAccountName'])
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     headers["X-TBC-SKIP-SIGN"] = "true"
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     self.r.set('jfx_3_periods_projectId', rep['content']['projectId'])
     self.assertEqual(int(data[0]['resultCode']), rep['resultCode'])
 def test_121_offline_repay_early_settlement(self):
     """线下还款流水推送:提前全部结清"""
     data = excel_table_byname(self.file, 'offline_repay')
     param = json.loads(data[0]['param'])
     plan_pay_date = GetSqlData.get_repayment_plan_date(
         project_id=self.r.get("rmkj_12_periods_projectId"),
         environment=self.env,
         repayment_plan_type=1,
         period=1)
     repayment_plan_list = self.r.get(
         "rmkj_12_periods_early_settlement_repayment_plan")
     success_amount = 0.00
     repayment_detail_list = []
     for i in json.loads(repayment_plan_list):
         plan_detail = {
             "sourceRepaymentDetailId": Common.get_random("transactionId"),
             "payAmount": i['amount'],
             "planCategory": i['repaymentPlanType']
         }
         success_amount = round(
             success_amount + plan_detail.get("payAmount"), 2)
         repayment_detail_list.append(plan_detail)
     param.update({
         "projectId":
         self.r.get("rmkj_12_periods_projectId"),
         "transactionId":
         self.r.get("rmkj_12_periods_sourceProjectId"),
         "sourceProjectId":
         self.r.get("rmkj_12_periods_sourceProjectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "planPayDate":
         str(plan_pay_date['plan_pay_date']),
         "successAmount":
         success_amount,
         "repayType":
         2,
         "period":
         json.loads(repayment_plan_list)[0]['period']
     })
     param['repaymentDetailList'] = repayment_detail_list
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     assert rep['resultCode'], int(data[0]['resultCode'])
 def test_118_deduction_early_settlement(self):
     """主动还款:提前全部结清"""
     data = excel_table_byname(self.file, 'deduction_apply')
     print("接口名称:%s" % data[0]['casename'] + ": 提前结清")
     param = json.loads(data[0]['param'])
     repayment_plan_list = self.r.get(
         "rmkj_12_periods_early_settlement_repayment_plan")
     success_amount = 0.00
     repayment_detail_list = []
     for i in json.loads(repayment_plan_list):
         plan_detail = {
             "period": i['period'],
             "payAmount": i['amount'],
             "planCategory": i['repaymentPlanType']
         }
         success_amount = round(
             success_amount + plan_detail.get("payAmount"), 2)
         repayment_detail_list.append(plan_detail)
     param.update({
         "sourceRequestId":
         Common.get_random("requestNum"),
         "projectId":
         self.r.get("rmkj_12_periods_projectId"),
         "sourceProjectId":
         self.r.get("rmkj_12_periods_sourceProjectId"),
         "sourceUserId":
         self.r.get("rmkj_12_periods_sourceUserId"),
         "serviceSn":
         Common.get_random("serviceSn"),
         "repayType":
         2,
         "payTime":
         Common.get_time("-"),
         "successAmount":
         success_amount,
         "period":
         json.loads(repayment_plan_list)[0]['period']
     })
     param['repaymentDetailList'] = repayment_detail_list
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="cloudloan",
                           environment=self.env)
     assert rep['resultCode'], int(data[0]['resultCode'])
     self.r.set("rmkj_12_periods_deductionTaskId",
                rep['content']['deductionTaskId'])
Beispiel #30
0
 def test_100_credit_apply(self):
     """额度授信"""
     data = excel_table_byname(self.file, 'credit')
     Common.p2p_get_userinfo('jk_ckshd_12_periods', self.env)
     self.r.mset({
         "jk_ckshd_12_periods_sourceUserId":
         Common.get_random('userid'),
         'jk_ckshd_12_periods_transactionId':
         Common.get_random('transactionId'),
         "jk_ckshd_12_periods_phone":
         Common.get_random('phone'),
         "jk_ckshd_12_periods_firstCreditDate":
         Common.get_time()
     })
     param = json.loads(data[0]['param'])
     param['personalInfo'].update({
         "cardNum":
         self.r.get('jk_ckshd_12_periods_cardNum'),
         "custName":
         self.r.get('jk_ckshd_12_periods_custName'),
         "phone":
         self.r.get('jk_ckshd_12_periods_phone')
     })
     param['applyInfo'].update({"applyTime": Common.get_time()})
     param['entityInfo']['unifiedSocialCreditCode'] = Common.get_random(
         "businessLicenseNo")
     param.update({
         "sourceUserId":
         self.r.get('jk_ckshd_12_periods_sourceUserId'),
         "serviceSn":
         Common.get_random('serviceSn'),
         "transactionId":
         self.r.get('jk_ckshd_12_periods_transactionId')
     })
     if len(data[0]['headers']) == 0:
         headers = None
     else:
         headers = json.loads(data[0]['headers'])
     headers["X-TBC-SKIP-ENCRYPT"] = "true"
     headers["X-TBC-SKIP-SIGN"] = "true"
     rep = Common.response(faceaddr=data[0]['url'],
                           headers=headers,
                           data=json.dumps(param, ensure_ascii=False),
                           product="gateway",
                           environment=self.env,
                           prod_type="jkjr")
     self.assertEqual(rep['resultCode'], int(data[0]['resultCode']))
     self.r.mset({
         "jk_ckshd_12_periods_creditId": rep['content']['creditId'],
         "jk_ckshd_12_periods_userId": rep['content']['userId']
     })