예제 #1
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'], "交易成功")
예제 #2
0
 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'] == "交易成功"
예제 #3
0
 def test_104_repayment(self, r, env):
     """橙分期12期还款一期"""
     data = excel_table_byname(self.file, 'repayment')
     param = json.loads(data[0]['param'])
     period = 1
     param['repayment'].update({
         "projectId":
         r.get("cfq_12_periods_projectId"),
         "sourceRepaymentId":
         Common.get_random("sourceProjectId"),
         "payTime":
         Common.get_time("-"),
         "sourceCreateTime":
         Common.get_time("-"),
         "successAmount":
         float(
             GetSqlData.get_user_repayment_amount(
                 environment=env,
                 project_id=r.get("cfq_12_periods_projectId"),
                 period=period))
     })
     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_detail = GetSqlData.get_repayment_plan_date(
                     project_id=r.get("cfq_12_periods_projectId"),
                     environment=env,
                     repayment_plan_type=plan_pay_type,
                     period=period)
                 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_detail2 = GetSqlData.get_user_repayment_detail(
                     project_id=r.get("cfq_12_periods_projectId"),
                     environment=env,
                     period=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")),
                     "thisPayAmount":
                     float(plan_list_detail2.get('rest_amount')),
                     "payTime":
                     Common.get_time("-"),
                     "period":
                     period
                 })
         elif asset_plan_owner == "financePartner":
             user_repayment_detail = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("cfq_12_periods_projectId"),
                 environment=env,
                 period=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":
                 period
             })
         else:
             pass
     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_detail = GetSqlData.get_user_repayment_detail(
                 project_id=r.get("cfq_12_periods_projectId"),
                 environment=env,
                 period=period,
                 repayment_plan_type=plan_list_pay_type)
             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")),
                 "payTime":
                 Common.get_time("-"),
                 "period":
                 period
             })
         elif plan_list_asset_plan_owner == 'foundPartner':
             plan_list_detail2 = 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_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")),
                 "payTime":
                 Common.get_time("-"),
                 "period":
                 period
             })
     param['feePlanList'] = []
     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'] == "交易成功"