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'])
 def test_3_repayment_settle_in_advance(self, r, env):
     """翼支付提前结清"""
     data = excel_table_byname(self.file, 'repayment')
     print("接口名称:%s" % data[0]['casename'])
     param = Common().get_json_data('data', 'yzf_settle_in_advance.json')
     param['repayment'].update({
         "projectId":
         r.get("yzf_repayment_advance_projectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "payTime":
         Common.get_time("-"),
         "sourceCreateTime":
         Common.get_time("-"),
         "successAmount":
         103.36
     })
     plan_type = {"Principal": "1", "Interest": "2"}
     for i in param['repaymentDetailList']:
         i.update({
             "sourceRepaymentDetailId":
             Common.get_random("transactionId"),
             "relatedPlanId":
             Common.get_random("sourceProjectId"),
             "payTime":
             Common.get_time("-"),
             "sourceCreateTime":
             Common.get_time("-")
         })
         if i['repaymentPlanType'] == 'Principal':
             this_pay_amount = GetSqlData.get_all_repayment_amount(
                 environment=env,
                 project_id=r.get("yzf_repayment_advance_projectId"))
             i.update({"thisPayAmount": this_pay_amount})
     for i in param['repaymentPlanList']:
         i.update({
             "sourcePlanId": Common.get_random("sourceProjectId"),
             "payTime": Common.get_time("-"),
             "sourceCreateTime": Common.get_time("-")
         })
         if i['repaymentStatus'] == 'repayment_done':
             i.update({
                 "curAmount":
                 GetSqlData.get_all_repayment_amount(
                     environment=env,
                     project_id=r.get("yzf_repayment_advance_projectId")),
                 "payAmount":
                 GetSqlData.get_all_repayment_amount(
                     environment=env,
                     project_id=r.get("yzf_repayment_advance_projectId"))
             })
         else:
             if i['assetPlanOwner'] == 'financePartner':
                 plan_list_detail = GetSqlData.get_user_repayment_detail(
                     project_id=r.get("yzf_repayment_advance_projectId"),
                     environment=env,
                     period=i['period'],
                     repayment_plan_type=plan_type[i['repaymentPlanType']])
                 i.update({
                     "sourcePlanId":
                     plan_list_detail.get('source_plan_id'),
                     "planPayDate":
                     str(plan_list_detail.get("plan_pay_date")),
                     "curAmount":
                     float(plan_list_detail.get("rest_amount")),
                     "payAmount":
                     float(plan_list_detail.get("rest_amount")),
                 })
             elif i['assetPlanOwner'] == 'foundPartner':
                 plan_list_detail = GetSqlData.get_repayment_plan_date(
                     project_id=r.get("yzf_repayment_advance_projectId"),
                     environment=env,
                     repayment_plan_type=plan_type[i['repaymentPlanType']],
                     period=i['period'])
                 i.update({
                     "sourcePlanId":
                     plan_list_detail.get('source_plan_id'),
                     "planPayDate":
                     str(plan_list_detail.get("plan_pay_date")),
                     "curAmount":
                     float(plan_list_detail.get("rest_amount")),
                     "payAmount":
                     float(plan_list_detail.get("rest_amount")),
                 })
     for i in param['feePlanList']:
         i.update({
             "planPayDate": Common.get_time("-"),
             "payTime": 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=env,
                           product="pintic")
     assert rep['resultCode'] == data[0]['msgCode']
     assert rep['content']['message'] == "交易成功"
     assert rep['resultCode'] == int(data[0]['msgCode'])
Exemple #3
0
	def test_4_after_comp_repay(self, r, env):
		"""借去花代偿后还款"""
		# noinspection PyGlobalUndefined
		global period, plan_pay_type, plan_list_detail
		data = excel_table_byname(self.file, 'after_comp_repay')
		print("接口名称:%s" % data[0]['casename'])
		param = json.loads(data[0]['param'])
		period = 1
		param['repayment'].update(
			{
				"projectId": r.get("jqh_projectId"),
				"sourceRepaymentId": Common.get_random("sourceProjectId"),
				"payTime": Common.get_time("-"),
				"sourceCreateTime": Common.get_time("-"),
			}
		)
		plan_type = {
			"Principal": "1",
			"Interest": "2",
			"Fee": "3"
		}
		for i in range(0, len(param['repaymentDetailList'])):
			plan_pay_type = plan_type[param['repaymentDetailList'][i]['repaymentPlanType']]
			plan_catecory = param['repaymentDetailList'][i]['planCategory']
			asset_plan_owner = param['repaymentDetailList'][i]['assetPlanOwner']
			if asset_plan_owner == "foundPartner":
				if plan_catecory == 1 or plan_catecory == 2:
					repayment_detail = GetSqlData.get_repayment_plan_date(project_id=r.get("jqh_projectId"),
																		  environment=env,
																		  repayment_plan_type=plan_pay_type,
																		  period=period)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(repayment_detail.get('plan_pay_date')),
							"thisPayAmount": float(repayment_detail.get('rest_amount')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
				else:
					plan_list_detail = GetSqlData.get_user_repayment_detail(
						project_id=r.get("jqh_projectId"),
						environment=env,
						period=period,
						repayment_plan_type=3,
						feecategory=param['repaymentDetailList'][i]['planCategory']
					)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(plan_list_detail.get("plan_pay_date")),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
			elif asset_plan_owner == "financePartner":
				if plan_catecory == 1 or plan_catecory == 2:
					user_repayment_detail = GetSqlData.get_user_repayment_detail(
						project_id=r.get("jqh_projectId"),
						environment=env,
						period=period,
						repayment_plan_type=plan_pay_type
					)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(user_repayment_detail.get('plan_pay_date')),
							"thisPayAmount": float(user_repayment_detail.get('rest_amount')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
			else:
				plan_list_detail = GetSqlData.get_user_repayment_detail(
					project_id=r.get("jqh_projectId"),
					environment=env,
					period=period,
					repayment_plan_type=3,
					feecategory=param['repaymentDetailList'][i]['planCategory']
				)
				param['repaymentDetailList'][i].update(
					{
						"sourceRepaymentDetailId": Common.get_random("serviceSn"),
						"sourceCreateTime": Common.get_time("-"),
						"planPayDate": str(plan_list_detail.get("plan_pay_date")),
						"payTime": Common.get_time("-"),
						"period": period
					}
				)
		for i in range(0, len(param['repaymentPlanList'])):
			plan_list_pay_type = plan_type[param['repaymentPlanList'][i]['repaymentPlanType']]
			plan_list_asset_plan_owner = param['repaymentPlanList'][i]['assetPlanOwner']
			if plan_list_asset_plan_owner == 'financePartner':
				plan_list_detail = GetSqlData.get_user_repayment_detail(
					project_id=r.get("jqh_projectId"),
					environment=env,
					period=period,
					repayment_plan_type=plan_list_pay_type
				)
				param['repaymentPlanList'][i].update(
					{
						"sourcePlanId": plan_list_detail.get('source_plan_id'),
						"planPayDate": Common.get_time("-"),
						"curAmount": float(plan_list_detail.get('cur_amount')),
						"payAmount": float(plan_list_detail.get('rest_amount')),
						"payTime": Common.get_time("-"),
						"period": period
					}
				)
			elif plan_list_asset_plan_owner == 'foundPartner':
				plan_list_detail = GetSqlData.get_repayment_plan_date(project_id=r.get("jqh_projectId"),
																	  environment=env,
																	  repayment_plan_type=plan_list_pay_type,
																	  period=param['repaymentPlanList'][i]['period'])
				param['repaymentPlanList'][i].update(
					{
						"sourcePlanId": plan_list_detail.get('source_plan_id'),
						"planPayDate": Common.get_time("-"),
						"curAmount": float(plan_list_detail.get('cur_amount')),
						"payAmount": float(plan_list_detail.get('rest_amount')),
						"payTime": Common.get_time("-"),
						"period": period
					}
				)
		for i in range(0, len(param['feePlanList'])):
			plan_list_detail = GetSqlData.get_user_repayment_detail(
				project_id=r.get("jqh_projectId"),
				environment=env,
				period=param['feePlanList'][i]['period'],
				repayment_plan_type=3,
				feecategory=param['feePlanList'][i]['feeCategory']
			)
			param['feePlanList'][i].update(
				{
					"sourcePlanId": plan_list_detail.get('source_plan_id'),
					"planPayDate": Common.get_time("-"),
					"payTime": 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=env,
			product="pintic"
		)
		assert (rep['resultCode'], data[0]['msgCode'])
		assert (rep['content']['message'], "交易成功")
Exemple #4
0
	def test_3_compensation(self, r, env):
		"""借去花代偿一期"""
		data = excel_table_byname(self.file, 'compensation')
		print("接口名称:%s" % data[0]['casename'])
		param = json.loads(data[0]['param'])
		param['assetSwapInfo'].update(
			{
				"projectId": r.get("jqh_projectId"),
				"sourceApplyId": Common.get_random("serviceSn"),
				"actionTime": Common.get_time("-"),
				"sourceCreateTime": Common.get_time("-")
			}
		)
		for i in param['assetSwapDetailList']:
			i.update(
				{
					"projectId": r['jqh_sourceProjectId'],
					"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=r.get("jqh_projectId"),
																	  environment=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=r.get("jqh_projectId"),
					environment=env,
					period=i['period'],
					repayment_plan_type=plan_pay_type.get(i['repaymentPlanType'])
				)
			i.update(
				{
					"sourcePlanId": plan_list_detail.get("source_plan_id"),
					"planPayDate": str(plan_list_detail.get("plan_pay_date"))
				}
			)
		for i in param['feePlanList']:
			i.update(
				{
					"sourcePlanId": Common.get_random("serviceSn"),
					"planPayDate": Common.get_time("-"),
					"sourceRepaymentDetailId": Common.get_random("serviceSn"),
					"relatedPlanId": Common.get_random("serviceSn"),
					"sourceCreateTime": 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=env,
			product="pintic"
		)
		assert (rep['resultCode'], data[0]['msgCode'])
Exemple #5
0
 def test_3_repayment_one_period(self, env, r):
     """拿去花全部结清"""
     time.sleep(3)
     data = excel_table_byname(self.file, 'repayment')
     print("接口名称:%s" % data[0]['casename'])
     param = json.loads(data[0]['param'])
     for per in range(1, 7):
         plan_type = {"Principal": "1", "Interest": "2"}
         repayment = GetSqlData.get_repayment_plan_date(
             project_id=r.get("nqh_repayment_normal_settle_projectId"),
             environment=env,
             repayment_plan_type="1",
             period=per)
         success_amount = GetSqlData.get_repayment_amount(
             environment=env,
             project_id=r.get("nqh_repayment_normal_settle_projectId"),
             period=per)
         param['repayment'].update({
             "projectId":
             r.get("nqh_repayment_normal_settle_projectId"),
             "sourceRepaymentId":
             Common.get_random("sourceProjectId"),
             "payTime":
             Common.get_time("-"),
             "sourceCreateTime":
             str(repayment.get('plan_pay_date')),
             "successAmount":
             success_amount
         })
         for i in param['repaymentDetailList']:
             plan_pay_type = plan_type.get(i['repaymentPlanType'])
             repayment_detail = GetSqlData.get_repayment_plan_date(
                 project_id=r.get("nqh_repayment_normal_settle_projectId"),
                 environment=env,
                 repayment_plan_type=plan_pay_type,
                 period=per)
             i.update({
                 "sourceRepaymentDetailId":
                 Common.get_random("serviceSn"),
                 "sourceCreateTime":
                 str(repayment_detail.get('plan_pay_date')),
                 "period":
                 per,
                 "planPayDate":
                 str(repayment_detail.get('plan_pay_date')),
                 "thisPayAmount":
                 float(repayment_detail.get('rest_amount')),
                 "payTime":
                 Common.get_time("-")
             })
         for y in param['repaymentPlanList']:
             plan_pay_type_plan = plan_type.get(y['repaymentPlanType'])
             if y['assetPlanOwner'] == 'foundPartner':
                 repayment_detail_plan = GetSqlData.get_repayment_plan_date(
                     project_id=r.get(
                         "nqh_repayment_normal_settle_projectId"),
                     environment=env,
                     repayment_plan_type=plan_pay_type_plan,
                     period=per)
                 y.update({
                     "sourcePlanId":
                     repayment_detail_plan.get('source_plan_id'),
                     "planPayDate":
                     str(repayment_detail_plan.get('plan_pay_date')),
                     "curAmount":
                     float(repayment_detail_plan.get("rest_amount")),
                     "payAmount":
                     float(repayment_detail_plan.get("rest_amount")),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     per
                 })
             else:
                 repayment_detail_plan = GetSqlData.get_user_repayment_detail(
                     project_id=r.get(
                         "nqh_repayment_normal_settle_projectId"),
                     environment=env,
                     period=per,
                     repayment_plan_type=plan_pay_type_plan)
                 y.update({
                     "sourcePlanId":
                     repayment_detail_plan.get('source_plan_id'),
                     "planPayDate":
                     str(repayment_detail_plan.get('plan_pay_date')),
                     "curAmount":
                     float(repayment_detail_plan.get("rest_amount")),
                     "payAmount":
                     float(repayment_detail_plan.get("rest_amount")),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     per
                 })
         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'] == data[0]['msgCode']
         assert rep['content']['message'] == "交易成功"
         assert rep['resultCode'] == int(data[0]['msgCode'])
 def test_3_repayment_one_period(self, env, r):
     """翼支付还款一期"""
     time.sleep(5)
     data = excel_table_byname(self.file, 'repayment')
     print("接口名称:%s" % data[0]['casename'])
     param = json.loads(data[0]['param'])
     success_amount = GetSqlData.get_user_repayment_amount(
         environment=env,
         project_id=r.get("yzf_repayment_projectId"),
         period=param['repaymentDetailList'][0]['period'])
     param['repayment'].update({
         "projectId":
         r.get("yzf_repayment_projectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "payTime":
         Common.get_time("-"),
         "sourceCreateTime":
         Common.get_time("-"),
         "successAmount":
         success_amount
     })
     plan_type = {"Principal": "1", "Interest": "2", "Fee": "3"}
     repaydate = Common.get_repaydate(24)
     for i in range(len(param['repaymentDetailList'])):
         plan_pay_type = plan_type[param['repaymentDetailList'][i]
                                   ['repaymentPlanType']]
         plan_catecory = param['repaymentDetailList'][i]['planCategory']
         asset_plan_owner = param['repaymentDetailList'][i][
             'assetPlanOwner']
         if asset_plan_owner == "foundPartner":
             if plan_catecory == 1 or plan_catecory == 2:
                 repayment_detail = GetSqlData.get_repayment_plan_date(
                     project_id=r.get("yzf_repayment_projectId"),
                     environment=env,
                     repayment_plan_type=plan_pay_type,
                     period=param['repaymentDetailList'][i]['period'])
                 param['repaymentDetailList'][i].update({
                     "sourceRepaymentDetailId":
                     Common.get_random("serviceSn"),
                     "sourceCreateTime":
                     Common.get_time("-"),
                     "planPayDate":
                     str(repayment_detail.get('plan_pay_date')),
                     "thisPayAmount":
                     float(repayment_detail.get('rest_amount')),
                     "payTime":
                     Common.get_time("-")
                 })
             else:
                 plan_list_detail = GetSqlData.get_user_repayment_detail(
                     project_id=r.get("yzf_repayment_projectId"),
                     environment=env,
                     period=param['repaymentDetailList'][i]['period'],
                     repayment_plan_type=3,
                     feecategory=param['repaymentDetailList'][i]
                     ['planCategory'])
                 param['repaymentDetailList'][i].update({
                     "sourceRepaymentDetailId":
                     Common.get_random("serviceSn"),
                     "sourceCreateTime":
                     Common.get_time("-"),
                     "planPayDate":
                     repaydate[0].split(" ")[0],
                     "thisPayAmount":
                     float(plan_list_detail.get('rest_amount')),
                     "payTime":
                     Common.get_time("-")
                 })
         elif asset_plan_owner == "financePartner":
             user_repayment_detail = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("yzf_repayment_projectId"),
                 environment=env,
                 period=param['repaymentDetailList'][i]['period'],
                 repayment_plan_type=plan_pay_type)
             param['repaymentDetailList'][i].update({
                 "sourceRepaymentDetailId":
                 Common.get_random("serviceSn"),
                 "sourceCreateTime":
                 Common.get_time("-"),
                 "planPayDate":
                 str(user_repayment_detail.get('plan_pay_date')),
                 "thisPayAmount":
                 float(user_repayment_detail.get('rest_amount')),
                 "payTime":
                 Common.get_time("-")
             })
         else:
             pass
     for i in range(len(param['repaymentPlanList'])):
         plan_list_pay_type = plan_type[param['repaymentPlanList'][i]
                                        ['repaymentPlanType']]
         plan_list_asset_plan_owner = param['repaymentPlanList'][i][
             'assetPlanOwner']
         if plan_list_asset_plan_owner == 'financePartner':
             plan_list_detail = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("yzf_repayment_projectId"),
                 environment=env,
                 period=param['repaymentPlanList'][i]['period'],
                 repayment_plan_type=plan_list_pay_type)
             param['repaymentPlanList'][i].update({
                 "sourcePlanId":
                 plan_list_detail.get('source_plan_id'),
                 "planPayDate":
                 Common.get_time("-"),
                 "curAmount":
                 float(plan_list_detail.get("rest_amount")),
                 "payAmount":
                 float(plan_list_detail.get("rest_amount")),
                 "payTime":
                 Common.get_time("-")
             })
         elif plan_list_asset_plan_owner == 'foundPartner':
             plan_list_detail = GetSqlData.get_repayment_plan_date(
                 project_id=r.get("yzf_repayment_projectId"),
                 environment=env,
                 repayment_plan_type=plan_list_pay_type,
                 period=param['repaymentPlanList'][i]['period'])
             param['repaymentPlanList'][i].update({
                 "sourcePlanId":
                 plan_list_detail.get('source_plan_id'),
                 "planPayDate":
                 Common.get_time("-"),
                 "curAmount":
                 float(plan_list_detail.get("rest_amount")),
                 "payAmount":
                 float(plan_list_detail.get("rest_amount")),
                 "payTime":
                 Common.get_time("-")
             })
     for i in range(len(param['feePlanList'])):
         plan_list_detail = GetSqlData.get_user_repayment_detail(
             project_id=r.get("yzf_repayment_projectId"),
             environment=env,
             period=param['feePlanList'][i]['period'],
             repayment_plan_type=3,
             feecategory=param['feePlanList'][i]['feeCategory'])
         param['feePlanList'][i].update({
             "sourcePlanId":
             plan_list_detail.get('source_plan_id'),
             "planPayDate":
             Common.get_time("-"),
             "payTime":
             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=env,
                           product="pintic")
     assert rep['resultCode'] == data[0]['msgCode']
     assert rep['content']['message'] == "交易成功"
Exemple #7
0
    def test_3_repayment_one_period(self):
        """翼支付全部结清"""
        time.sleep(5)
        data = excel_table_byname(self.file, 'repayment')
        print("接口名称:%s" % data[0]['casename'])
        param = json.loads(data[0]['param'])
        for per in range(1, 25):
            success_amount = GetSqlData.get_user_repayment_amount(
                environment=self.env,
                project_id=self.r.get("yzf_repayment_normal_settle_projectId"),
                period=per)
            param['repayment'].update({
                "projectId":
                self.r.get("yzf_repayment_normal_settle_projectId"),
                "sourceRepaymentId":
                Common.get_random("sourceProjectId"),
                "payTime":
                Common.get_time("-"),
                "sourceCreateTime":
                Common.get_time("-"),
                "successAmount":
                success_amount
            })
            plan_type = {"Principal": "1", "Interest": "2"}
            for i in param['repaymentDetailList']:
                plan_pay_type = plan_type[i['repaymentPlanType']]
                plan_catecory = i['planCategory']
                asset_plan_owner = i['assetPlanOwner']
                if asset_plan_owner == "foundPartner":
                    if plan_catecory == 1 or plan_catecory == 2:
                        repayment_detail = GetSqlData.get_repayment_plan_date(
                            project_id=self.r.get(
                                "yzf_repayment_normal_settle_projectId"),
                            environment=self.env,
                            repayment_plan_type=plan_pay_type,
                            period=per)
                        i.update({
                            "sourceRepaymentDetailId":
                            Common.get_random("serviceSn"),
                            "sourceCreateTime":
                            Common.get_time("-"),
                            "planPayDate":
                            str(repayment_detail.get('plan_pay_date')),
                            "thisPayAmount":
                            float(repayment_detail.get('rest_amount')),
                            "payTime":
                            Common.get_time("-"),
                            "period":
                            per
                        })
                    else:
                        if per == 24:
                            if plan_catecory == 2002:
                                repayment_detail = GetSqlData.get_repayment_plan_date(
                                    project_id=self.r.get(
                                        "yzf_repayment_normal_settle_projectId"
                                    ),
                                    environment=self.env,
                                    repayment_plan_type=2,
                                    period=24)
                                user_repayment_detail = GetSqlData.get_user_repayment_detail(
                                    project_id=self.r.get(
                                        "yzf_repayment_normal_settle_projectId"
                                    ),
                                    environment=self.env,
                                    period=24,
                                    repayment_plan_type=2)
                                i.update({
                                    "sourceRepaymentDetailId":
                                    Common.get_random("serviceSn"),
                                    "sourceCreateTime":
                                    Common.get_time("-"),
                                    "planPayDate":
                                    Common.get_repaydate("1")[0].split(" ")[0],
                                    "thisPayAmount":
                                    float(
                                        Decimal(user_repayment_detail[
                                            'rest_amount']) -
                                        Decimal(
                                            repayment_detail['rest_amount']) -
                                        2),
                                    "payTime":
                                    Common.get_time("-"),
                                    "period":
                                    per
                                })
                            elif plan_catecory == 2003:
                                i.update({
                                    "sourceRepaymentDetailId":
                                    Common.get_random("serviceSn"),
                                    "sourceCreateTime":
                                    Common.get_time("-"),
                                    "planPayDate":
                                    Common.get_repaydate("1")[0].split(" ")[0],
                                    "thisPayAmount":
                                    2.00,
                                    "payTime":
                                    Common.get_time("-"),
                                    "period":
                                    per
                                })
                        else:
                            i.update({
                                "sourceRepaymentDetailId":
                                Common.get_random("serviceSn"),
                                "sourceCreateTime":
                                Common.get_time("-"),
                                "planPayDate":
                                Common.get_repaydate("1")[0].split(" ")[0],
                                "payTime":
                                Common.get_time("-"),
                                "period":
                                per
                            })
                elif asset_plan_owner == "financePartner":
                    user_repayment_detail = GetSqlData.get_user_repayment_detail(
                        project_id=self.r.get(
                            "yzf_repayment_normal_settle_projectId"),
                        environment=self.env,
                        period=per,
                        repayment_plan_type=plan_pay_type)
                    i.update({
                        "sourceRepaymentDetailId":
                        Common.get_random("serviceSn"),
                        "sourceCreateTime":
                        Common.get_time("-"),
                        "planPayDate":
                        str(user_repayment_detail.get('plan_pay_date')),
                        "thisPayAmount":
                        float(user_repayment_detail.get('rest_amount')),
                        "payTime":
                        Common.get_time("-"),
                        "period":
                        per
                    })
                else:
                    pass
            for p in param['repaymentPlanList']:
                plan_list_pay_type = plan_type[p['repaymentPlanType']]
                plan_list_asset_plan_owner = p['assetPlanOwner']
                if plan_list_asset_plan_owner == 'financePartner':
                    plan_list_detail = GetSqlData.get_user_repayment_detail(
                        project_id=self.r.get(
                            "yzf_repayment_normal_settle_projectId"),
                        environment=self.env,
                        period=per,
                        repayment_plan_type=plan_list_pay_type)
                    p.update({
                        "sourcePlanId":
                        plan_list_detail.get('source_plan_id'),
                        "planPayDate":
                        Common.get_time("-"),
                        "curAmount":
                        float(plan_list_detail.get("rest_amount")),
                        "payAmount":
                        float(plan_list_detail.get("rest_amount")),
                        "payTime":
                        Common.get_time("-"),
                        "period":
                        per
                    })
                elif plan_list_asset_plan_owner == 'foundPartner':
                    plan_list_detail = GetSqlData.get_repayment_plan_date(
                        project_id=self.r.get(
                            "yzf_repayment_normal_settle_projectId"),
                        environment=self.env,
                        repayment_plan_type=plan_list_pay_type,
                        period=per)
                    p.update({
                        "sourcePlanId":
                        plan_list_detail.get('source_plan_id'),
                        "planPayDate":
                        Common.get_time("-"),
                        "curAmount":
                        float(plan_list_detail.get("rest_amount")),
                        "payAmount":
                        float(plan_list_detail.get("rest_amount")),
                        "payTime":
                        Common.get_time("-"),
                        "period":
                        per
                    })
            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="pintic")

            self.assertEqual(rep['resultCode'], data[0]['msgCode'])
            self.assertEqual(rep['content']['message'], "交易成功")
Exemple #8
0
 def test_repay_two_periods(self, r, env):
     """橙分期一次还款2期"""
     data = excel_table_byname(self.file, 'repay_two_periods')
     param = json.loads(data[0]['param'])
     param['repayment'].update({
         "projectId":
         r.get("cfq_12_periods_projectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "payTime":
         Common.get_time("-"),
         "sourceCreateTime":
         Common.get_time("-"),
     })
     plan_type = {"Principal": "1", "Interest": "2", "Fee": "3"}
     for i in param['repaymentDetailList']:
         plan_pay_type = plan_type[i['repaymentPlanType']]
         plan_catecory = i['planCategory']
         asset_plan_owner = i['assetPlanOwner']
         if asset_plan_owner == "foundPartner":
             if plan_catecory == 1 or plan_catecory == 2:
                 repayment_detail1 = GetSqlData.get_repayment_plan_date(
                     project_id=r.get("cfq_12_periods_projectId"),
                     environment=env,
                     repayment_plan_type=plan_pay_type,
                     period=i['period'])
                 i.update({
                     "sourceRepaymentDetailId":
                     Common.get_random("serviceSn"),
                     "sourceCreateTime":
                     Common.get_time("-"),
                     "planPayDate":
                     str(repayment_detail1.get('plan_pay_date')),
                     "thisPayAmount":
                     float(repayment_detail1.get('rest_amount')),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     i['period']
                 })
             else:
                 plan_list_detail2 = GetSqlData.get_user_repayment_detail(
                     project_id=r.get("cfq_12_periods_projectId"),
                     environment=env,
                     period=i['period'],
                     repayment_plan_type=3,
                     feecategory=i['planCategory'])
                 i.update({
                     "sourceRepaymentDetailId":
                     Common.get_random("serviceSn"),
                     "sourceCreateTime":
                     Common.get_time("-"),
                     "planPayDate":
                     str(plan_list_detail2.get("plan_pay_date")),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     i['period']
                 })
         elif asset_plan_owner == "financePartner":
             if plan_catecory == 1 or plan_catecory == 2:
                 user_repayment_detail = GetSqlData.get_user_repayment_detail(
                     project_id=r.get("cfq_12_periods_projectId"),
                     environment=env,
                     period=i['period'],
                     repayment_plan_type=plan_pay_type)
                 i.update({
                     "sourceRepaymentDetailId":
                     Common.get_random("serviceSn"),
                     "sourceCreateTime":
                     Common.get_time("-"),
                     "planPayDate":
                     str(user_repayment_detail.get('plan_pay_date')),
                     "thisPayAmount":
                     float(user_repayment_detail.get('rest_amount')),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     i['period']
                 })
         else:
             plan_list_detail3 = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("cfq_12_periods_projectId"),
                 environment=env,
                 period=i['period'],
                 repayment_plan_type=3,
                 feecategory=i['planCategory'])
             i.update({
                 "sourceRepaymentDetailId":
                 Common.get_random("serviceSn"),
                 "sourceCreateTime":
                 Common.get_time("-"),
                 "planPayDate":
                 str(plan_list_detail3.get("plan_pay_date")),
                 "payTime":
                 Common.get_time("-"),
                 "period":
                 i['period']
             })
     for i in param['repaymentPlanList']:
         plan_list_pay_type = plan_type[i['repaymentPlanType']]
         plan_list_asset_plan_owner = i['assetPlanOwner']
         if plan_list_asset_plan_owner == 'financePartner':
             plan_list_detail4 = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("cfq_12_periods_projectId"),
                 environment=env,
                 period=i['period'],
                 repayment_plan_type=plan_list_pay_type)
             i.update({
                 "sourcePlanId":
                 plan_list_detail4.get('source_plan_id'),
                 "planPayDate":
                 Common.get_time("-"),
                 "curAmount":
                 float(plan_list_detail4.get('cur_amount')),
                 "payAmount":
                 float(plan_list_detail4.get('rest_amount')),
                 "payTime":
                 Common.get_time("-"),
                 "period":
                 i['period']
             })
         elif plan_list_asset_plan_owner == 'foundPartner':
             plan_list_detail5 = GetSqlData.get_repayment_plan_date(
                 project_id=r.get("cfq_12_periods_projectId"),
                 environment=env,
                 repayment_plan_type=plan_list_pay_type,
                 period=i['period'])
             i.update({
                 "sourcePlanId":
                 plan_list_detail5.get('source_plan_id'),
                 "planPayDate":
                 Common.get_time("-"),
                 "curAmount":
                 float(plan_list_detail5.get('cur_amount')),
                 "payAmount":
                 float(plan_list_detail5.get('rest_amount')),
                 "payTime":
                 Common.get_time("-"),
                 "period":
                 i['period']
             })
     for i in param['feePlanList']:
         plan_list_detail6 = GetSqlData.get_user_repayment_detail(
             project_id=r.get("cfq_12_periods_projectId"),
             environment=env,
             period=i['period'],
             repayment_plan_type=3,
             feecategory=i['feeCategory'])
         i.update({
             "sourcePlanId": plan_list_detail6.get('source_plan_id'),
             "planPayDate": Common.get_time("-"),
             "payTime": 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=env,
                           product="pintec")
     assert rep['resultCode'] == data[0]['msgCode']
     assert rep['content']['message'] == "交易成功"
Exemple #9
0
    def test_105_settle_in_advance_phase_one(self, r, env):
        """橙分期在第一期提前结清"""
        data = excel_table_byname(self.file, 'settle_in_advance')
        param = Common().get_json_data(
            'data', 'cfq_12_periods_settle_in_advance_phase_one.json')
        period = GetSqlData.get_current_period(
            r.get("cfq_12_periods_projectId"), env)
        # 剩余在贷本金
        debt_amount = float(
            GetSqlData.get_debt_amount(r.get("cfq_12_periods_projectId"), env))
        # 当期利息
        rest_interest = float(
            GetSqlData.get_user_repayment_detail(
                project_id=r.get("cfq_12_periods_projectId"),
                environment=env,
                period=period,
                repayment_plan_type="2").get("rest_amount"))
        param['repayment'].update({
            "projectId":
            r.get("cfq_12_periods_projectId"),
            "sourceRepaymentId":
            Common.get_random("sourceProjectId"),
            "payTime":
            Common.get_time("-"),
            "sourceCreateTime":
            Common.get_time("-"),
        })
        plan_type = {"Principal": "1", "Interest": "2", "Fee": '3'}
        for i in param['repaymentDetailList']:
            i.update({
                "sourceRepaymentDetailId":
                Common.get_random("transactionId"),
                "relatedPlanId":
                Common.get_random("sourceProjectId"),
                "payTime":
                Common.get_time("-"),
                "sourceCreateTime":
                Common.get_time("-"),
                "period":
                period
            })
            if i['repaymentPlanType'] == 'Principal':
                i.update({
                    "thisPayAmount":
                    GetSqlData.get_all_repayment_amount(
                        environment=env,
                        project_id=r.get("cfq_12_periods_projectId"))
                })
        for i in param['repaymentPlanList']:
            i.update({
                "sourcePlanId": Common.get_random("sourceProjectId"),
                "payTime": "1970-01-01 00:00:00",
                "sourceCreateTime": Common.get_time("-"),
            })
            if i['repaymentStatus'] == 'repayment_done':
                if i['repaymentPlanType'] == 'Principal':
                    i.update({
                        "curAmount": debt_amount,
                        "payAmount": debt_amount,
                        "planPayDate": Common.get_time("-"),
                        "payTime": Common.get_time("-")
                    })
                elif i['repaymentPlanType'] == 'Interest':
                    i.update({
                        "curAmount": rest_interest,
                        "payAmount": rest_interest,
                        "planPayDate": Common.get_time("-"),
                        "payTime": Common.get_time("-")
                    })
            else:
                if i['assetPlanOwner'] == 'financePartner':
                    plan_list_detail1 = GetSqlData.get_user_repayment_detail(
                        project_id=r.get("cfq_12_periods_projectId"),
                        environment=env,
                        period=i['period'],
                        repayment_plan_type=plan_type[i['repaymentPlanType']])
                    i.update({
                        "sourcePlanId":
                        plan_list_detail1.get('source_plan_id'),
                        "planPayDate":
                        str(plan_list_detail1.get("plan_pay_date")),
                        "curAmount":
                        float(plan_list_detail1.get("rest_amount")),
                        "payAmount":
                        float(plan_list_detail1.get("rest_amount")),
                    })
                elif i['assetPlanOwner'] == 'foundPartner':
                    plan_list_detail2 = GetSqlData.get_repayment_plan_date(
                        project_id=r.get("cfq_12_periods_projectId"),
                        environment=env,
                        repayment_plan_type=plan_type[i['repaymentPlanType']],
                        period=i['period'])
                    i.update({
                        "sourcePlanId":
                        plan_list_detail2.get('source_plan_id'),
                        "planPayDate":
                        str(plan_list_detail2.get("plan_pay_date")),
                        "curAmount":
                        float(plan_list_detail2.get("rest_amount")),
                        "payAmount":
                        float(plan_list_detail2.get("rest_amount")),
                    })
        for i in param['feePlanList']:
            i.update({
                "sourcePlanId": Common.get_random('serviceSn'),
                "planPayDate": Common.get_time('-'),
                'payTime': 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=env,
                                  product="pintec")

            assert rep['resultCode'] == data[0]['msgCode']
            assert rep['content']['message'] == "交易成功"
            assert rep['resultCode'], int(data[0]['msgCode'])
	def test_104_repayment(self):
		"""橙分期24期还款一期"""
		global period, plan_pay_type, plan_list_detail
		data = excel_table_byname(self.file, 'repayment')
		param = json.loads(data[0]['param'])
		period = 1
		param['repayment'].update(
			{
				"projectId": self.r.get("cfq_24_periods_projectId"),
				"sourceRepaymentId": Common.get_random("sourceProjectId"),
				"payTime": Common.get_time("-"),
				"sourceCreateTime": Common.get_time("-")
			}
		)
		plan_type = {
			"Principal": "1",
			"Interest": "2",
			"Fee": "3"
		}
		for i in range(0, len(param['repaymentDetailList'])):
			plan_pay_type = plan_type[param['repaymentDetailList'][i]['repaymentPlanType']]
			plan_catecory = param['repaymentDetailList'][i]['planCategory']
			asset_plan_owner = param['repaymentDetailList'][i]['assetPlanOwner']
			if asset_plan_owner == "foundPartner":
				if plan_catecory == 1 or plan_catecory == 2:
					repayment_detail = GetSqlData.get_repayment_plan_date(
						project_id=self.r.get("cfq_24_periods_projectId"), environment=self.env,
						repayment_plan_type=plan_pay_type, period=period)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(repayment_detail.get('plan_pay_date')),
							"thisPayAmount": float(repayment_detail.get('rest_amount')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
				else:
					repayment_detail = GetSqlData.get_repayment_plan_date(
						project_id=self.r.get("cfq_24_periods_projectId"), environment=self.env,
						repayment_plan_type="1", period=period)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(repayment_detail.get('plan_pay_date')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
			elif asset_plan_owner == "financePartner":
				if plan_catecory == 1 or plan_catecory == 2:
					user_repayment_detail = GetSqlData.get_user_repayment_detail(
						project_id=self.r.get("cfq_24_periods_projectId"),
						environment=self.env,
						period=period,
						repayment_plan_type=plan_pay_type
					)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(user_repayment_detail.get('plan_pay_date')),
							"thisPayAmount": float(user_repayment_detail.get('rest_amount')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
				else:
					user_repayment_detail = GetSqlData.get_user_repayment_detail(
						project_id=self.r.get("cfq_24_periods_projectId"),
						environment=self.env,
						period=period,
						repayment_plan_type="1"
					)
					param['repaymentDetailList'][i].update(
						{
							"sourceRepaymentDetailId": Common.get_random("serviceSn"),
							"sourceCreateTime": Common.get_time("-"),
							"planPayDate": str(user_repayment_detail.get('plan_pay_date')),
							"payTime": Common.get_time("-"),
							"period": period
						}
					)
		for i in range(0, len(param['repaymentPlanList'])):
			plan_list_pay_type = plan_type[param['repaymentPlanList'][i]['repaymentPlanType']]
			plan_list_asset_plan_owner = param['repaymentPlanList'][i]['assetPlanOwner']
			if plan_list_asset_plan_owner == 'financePartner':
				plan_list_detail = GetSqlData.get_user_repayment_detail(
					project_id=self.r.get("cfq_24_periods_projectId"),
					environment=self.env,
					period=period,
					repayment_plan_type=plan_list_pay_type
				)
				param['repaymentPlanList'][i].update(
					{
						"sourcePlanId": plan_list_detail.get('source_plan_id'),
						"planPayDate": Common.get_time("-"),
						"curAmount": float(plan_list_detail.get("rest_amount")),
						"payAmount": float(plan_list_detail.get("rest_amount")),
						"payTime": Common.get_time("-"),
						"period": period
					}
				)
			elif plan_list_asset_plan_owner == '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_list_pay_type,
																	  period=param['repaymentPlanList'][i]['period'])
				param['repaymentPlanList'][i].update(
					{
						"sourcePlanId": plan_list_detail.get('source_plan_id'),
						"planPayDate": Common.get_time("-"),
						"curAmount": float(plan_list_detail.get("rest_amount")),
						"payAmount": float(plan_list_detail.get("rest_amount")),
						"payTime": Common.get_time("-"),
						"period": period
					}
				)
		for i in range(0, len(param['feePlanList'])):
			plan_list_detail = GetSqlData.get_user_repayment_detail(
				project_id=self.r.get("cfq_24_periods_projectId"),
				environment=self.env,
				period=param['feePlanList'][i]['period'],
				repayment_plan_type="1",
				feecategory=1
			)
			param['feePlanList'][i].update(
				{
					"sourcePlanId": Common.get_random("sourceProjectId"),
					"planPayDate": str(plan_list_detail.get("plan_pay_date")),
					"payTime": 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'], data[0]['msgCode'])
		self.assertEqual(rep['content']['message'], "交易成功")