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 #2
0
    def test_3_repayment_one_period(self, env, r):
        """拿去花一期当天全部退货"""
        time.sleep(5)
        data = excel_table_byname(self.file, 'same_day_return')
        print("接口名称:%s" % data[0]['casename'])
        param = json.loads(data[0]['param'])
        success_amount = GetSqlData.get_all_repayment_amount(
            environment=env,
            project_id=r.get("nqh_one_period_same_day_return_projectId"))
        param['repayment'].update({
            "projectId":
            r.get("nqh_one_period_same_day_return_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.get(i['repaymentPlanType'])
            repayment_detail = GetSqlData.get_repayment_plan_date(
                project_id=r.get("nqh_one_period_same_day_return_projectId"),
                environment=env,
                repayment_plan_type=plan_pay_type,
                period=i['period'])
            i.update({
                "sourceRepaymentDetailId":
                Common.get_random("serviceSn"),
                "sourceCreateTime":
                Common.get_time("-"),
                "payTime":
                Common.get_time("-"),
                "thisPayAmount":
                float(repayment_detail.get('rest_amount')),
                "planPayDate":
                str(repayment_detail.get('plan_pay_date'))
            })
        for y in param['repaymentPlanList']:
            plan_pay_type_plan = plan_type.get(y['repaymentPlanType'])
            repayment_detail_plan = GetSqlData.get_repayment_plan_date(
                project_id=r.get("nqh_one_period_same_day_return_projectId"),
                environment=env,
                repayment_plan_type=plan_pay_type_plan,
                period=y['period'])
            if plan_pay_type_plan == '1':
                y.update({
                    "sourcePlanId":
                    repayment_detail_plan.get('source_plan_id'),
                    "curAmount":
                    float(repayment_detail_plan.get("rest_amount")),
                    "payAmount":
                    float(repayment_detail_plan.get("rest_amount")),
                    "payTime":
                    Common.get_time("-"),
                    "planPayDate":
                    str(repayment_detail_plan.get("plan_pay_date"))
                })
            elif plan_pay_type_plan == '2':
                y.update({
                    "sourcePlanId":
                    repayment_detail_plan.get('source_plan_id'),
                    "payTime":
                    Common.get_time("-"),
                    "planPayDate":
                    str(repayment_detail_plan.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=env,
                              product="pintic")
        assert rep['resultCode'] == data[0]['msgCode']
        assert rep['content']['message'] == "交易成功"
Exemple #3
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'])
Exemple #4
0
    def test_3_repayment_one_period(self):
        """拿去花多期当天部分退货"""
        time.sleep(5)
        data = excel_table_byname(self.file, 'same_day_return')
        print("接口名称:%s" % data[0]['casename'])
        param = json.loads(data[0]['param'])
        success_amount = GetSqlData.get_all_repayment_amount(
            environment=self.env,
            project_id=self.r.get(
                "nqh_periods_same_day_return_projectId")) - 600
        param['repayment'].update({
            "projectId":
            self.r.get("nqh_periods_same_day_return_projectId"),
            "sourceRepaymentId":
            Common.get_random("sourceProjectId"),
            "payTime":
            Common.get_time("-"),
            "sourceCreateTime":
            Common.get_time("-"),
            "successAmount":
            success_amount
        })
        plan_type = {"Principal": "1", "Interest": "2"}

        for detail in range(len(param['repaymentDetailList'])):
            param['repaymentDetailList'][detail].update({
                "sourceRepaymentDetailId":
                Common.get_random("serviceSn"),
                "sourceCreateTime":
                Common.get_time("-"),
                "payTime":
                Common.get_time("-"),
                "thisPayAmount":
                param['repayment']['successAmount']
            })
        for y in range(len(param['repaymentPlanList'])):
            plan_pay_type_plan = plan_type.get(
                param['repaymentPlanList'][y]['repaymentPlanType'])
            repayment_detail_plan = GetSqlData.get_repayment_plan_date(
                project_id=self.r.get("nqh_periods_same_day_return_projectId"),
                environment=self.env,
                repayment_plan_type=plan_pay_type_plan,
                period=param['repaymentPlanList'][y]['period'])
            if plan_pay_type_plan == "1":
                param['repaymentPlanList'][y].update({
                    "sourcePlanId":
                    repayment_detail_plan.get('source_plan_id'),
                    "curAmount":
                    "100.00"
                })
            elif plan_pay_type_plan == "2":
                param['repaymentPlanList'][y].update({
                    "sourcePlanId":
                    repayment_detail_plan.get('source_plan_id'),
                    "curAmount":
                    "10.00"
                })
        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(
            json.loads(rep.text)['resultCode'], data[0]['msgCode'])
        self.assertEqual(json.loads(rep.text)['content']['message'], "交易成功")