diff --git a/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue b/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue index 0fdf51a0d0..730b533284 100644 --- a/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue +++ b/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesAdd.vue @@ -178,6 +178,11 @@ {{ formobj.loanSecondarySalesCost.vehicleEvaluation }} + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -280,10 +285,16 @@ + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 - {{ lossPrice() }} + {{ lossPrice }} @@ -410,6 +421,84 @@ export default { rules: {} } }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + }, + // 计算预计亏损金额 = 欠款合计 - 贷款保证金 - 车辆售价 + 催收费用 + 承担方为公司的各项费用 + lossPrice() { + let money = '0' + money = Math.round((parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)) * 100) / 100 + // 车辆售价不等于空 + if (this.formobj.loanSecondarySalesCost.vehPrice !== '') { + money = Math.round((parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)) * 100) / 100 + } + // 催收费用不等于空 + if (this.formobj.loanSecondarySalesCost.collectionCost !== '') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)) * 100) / 100 + } + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { UpNumber(e) { e.target.value = e.target.value.replace(/[^0-9.]/g, '') // 清除“数字”和“.”以外的字符 @@ -524,53 +613,11 @@ export default { this.formobj.loanSecondarySalesCost.otherCostAssume = '' } }, - // 计算预计亏损金额 = 欠款合计 - 贷款保证金 - 车辆售价 + 催收费用 + 承担方为公司的各项费用 - lossPrice() { - let money = '0' - money = Math.round((parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)) * 100) / 100 - // 车辆售价不等于空 - if (this.formobj.loanSecondarySalesCost.vehPrice !== '') { - money = Math.round((parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)) * 100) / 100 - } - // 催收费用不等于空 - if (this.formobj.loanSecondarySalesCost.collectionCost !== '') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)) * 100) / 100 - } - // 资方结清费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 - } - // 车辆违章费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 - } - // 年检费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 - } - // 保险费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 - } - // 过户费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 - } - // 停车费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 - } - // 其他费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 - } - this.formobj.loanSecondarySalesCost.lossPrice = money - return money - }, resetState() { this.viewState = 1 }, saveOrUpdate() { + this.formobj.loanSecondarySalesCost.lossPrice = this.lossPrice this.$refs['form_obj'].validate((valid) => { if (valid) { this.submitdisabled = true @@ -588,6 +635,7 @@ export default { }) }, submit() { + this.formobj.loanSecondarySalesCost.lossPrice = this.lossPrice this.$refs['form_obj'].validate((valid) => { if (valid) { this.submitdisabled = true diff --git a/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue b/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue index b04aa942f3..f56d9b0480 100644 --- a/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue +++ b/anrui-riskcenter-ui/src/views/secondarysales/secondarysalesInfo.vue @@ -161,6 +161,11 @@ {{ formobj.loanSecondarySalesCost.vehicleEvaluation }} + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -235,6 +240,12 @@ {{ formobj.loanSecondarySalesCost.costDescription }} + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 @@ -347,6 +358,42 @@ export default { rules: {} } }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { showInfo(row) { this.viewTitle = '交回车辆二次销售申请详情' diff --git a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue index 2fda0568ac..b1108307a9 100644 --- a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue +++ b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesByPGJ.vue @@ -164,6 +164,11 @@ + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -238,6 +243,12 @@ {{ formobj.loanSecondarySalesCost.costDescription }} + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 @@ -454,6 +465,42 @@ export default { } }, '*') }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { UpNumber(e) { e.target.value = e.target.value.replace(/[^0-9.]/g, '') // 清除“数字”和“.”以外的字符 diff --git a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue index aa4f1ab8be..e6324a0503 100644 --- a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue +++ b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesDaiBan.vue @@ -164,6 +164,11 @@ {{ formobj.loanSecondarySalesCost.vehicleEvaluation }} + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -238,6 +243,12 @@ {{ formobj.loanSecondarySalesCost.costDescription }} + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 @@ -454,6 +465,42 @@ export default { } }, '*') }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { showInfo(sid) { this.viewTitle = '交回车辆二次销售申请详情' diff --git a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue index 7a14600598..b907588e6f 100644 --- a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue +++ b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesEdit.vue @@ -177,6 +177,11 @@ {{ formobj.loanSecondarySalesCost.vehicleEvaluation }} + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -279,10 +284,16 @@ + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 - {{ lossPrice() }} + {{ lossPrice }} @@ -426,6 +437,84 @@ export default { } }, '*') }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + }, + // 计算预计亏损金额 = 欠款合计 - 贷款保证金 - 车辆售价 + 催收费用 + 承担方为公司的各项费用 + lossPrice() { + let money = '0' + money = Math.round((parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)) * 100) / 100 + // 车辆售价不等于空 + if (this.formobj.loanSecondarySalesCost.vehPrice !== '') { + money = Math.round((parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)) * 100) / 100 + } + // 催收费用不等于空 + if (this.formobj.loanSecondarySalesCost.collectionCost !== '') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)) * 100) / 100 + } + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { UpNumber(e) { e.target.value = e.target.value.replace(/[^0-9.]/g, '') // 清除“数字”和“.”以外的字符 @@ -542,49 +631,6 @@ export default { this.formobj.loanSecondarySalesCost.otherCostAssume = '' } }, - // 计算预计亏损金额 = 欠款合计 - 贷款保证金 - 车辆售价 + 催收费用 + 承担方为公司的各项费用 - lossPrice() { - let money = '0' - money = Math.round((parseFloat(this.formobj.loanSecondarySalesCost.arrearsAll) - parseFloat(this.formobj.loanSecondarySalesCost.loanDeposit)) * 100) / 100 - // 车辆售价不等于空 - if (this.formobj.loanSecondarySalesCost.vehPrice !== '') { - money = Math.round((parseFloat(money) - parseFloat(this.formobj.loanSecondarySalesCost.vehPrice)) * 100) / 100 - } - // 催收费用不等于空 - if (this.formobj.loanSecondarySalesCost.collectionCost !== '') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.collectionCost)) * 100) / 100 - } - // 资方结清费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 - } - // 车辆违章费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 - } - // 年检费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 - } - // 保险费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 - } - // 过户费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 - } - // 停车费不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 - } - // 其他费用不等于空且承担方为公司 - if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '公司') { - money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 - } - this.formobj.loanSecondarySalesCost.lossPrice = money - return money - }, resetState() { this.viewState = 1 }, diff --git a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue index 1886e47da5..404c13f642 100644 --- a/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue +++ b/anrui-riskcenter-ui/src/views/workFlow/ercixiaoshouFlow/secondarysalesYiBan.vue @@ -161,6 +161,11 @@ {{ formobj.loanSecondarySalesCost.vehicleEvaluation }} + + + 注:以下费用客户自行处理的无需录入 + + 资方结清费用 @@ -235,6 +240,12 @@ {{ formobj.loanSecondarySalesCost.costDescription }} + + + 购方应交总金额 + {{ purchaserMoney }} + + 预计亏损金额 @@ -382,6 +393,42 @@ export default { } }, '*') }, + computed: { + // 计算购方应交总金额 = 车辆售价 + 承担方为购方的各项费用 + purchaserMoney() { + let money = 0 + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehPrice !== '' ? this.formobj.loanSecondarySalesCost.vehPrice : 0)) * 100) / 100 + // 资方结清费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.bankSettleCost !== '' && this.formobj.loanSecondarySalesCost.bankSettleCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.bankSettleCost)) * 100) / 100 + } + // 车辆违章费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.vehicleViolationCost !== '' && this.formobj.loanSecondarySalesCost.vehicleViolationCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.vehicleViolationCost)) * 100) / 100 + } + // 年检费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.inspectYearCost !== '' && this.formobj.loanSecondarySalesCost.inspectYearCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.inspectYearCost)) * 100) / 100 + } + // 保险费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.insureCost !== '' && this.formobj.loanSecondarySalesCost.insureCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.insureCost)) * 100) / 100 + } + // 过户费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.ownershipCost !== '' && this.formobj.loanSecondarySalesCost.ownershipCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.ownershipCost)) * 100) / 100 + } + // 停车费不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.stopCost !== '' && this.formobj.loanSecondarySalesCost.stopCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.stopCost)) * 100) / 100 + } + // 其他费用不等于空且承担方为公司 + if (this.formobj.loanSecondarySalesCost.otherCost !== '' && this.formobj.loanSecondarySalesCost.otherCostAssume === '购方') { + money = Math.round((parseFloat(money) + parseFloat(this.formobj.loanSecondarySalesCost.otherCost)) * 100) / 100 + } + return money + } + }, methods: { showInfo(sid) { this.viewTitle = '交回车辆二次销售申请详情' diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java index 6518e25572..7488de1e3f 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateFeign.java @@ -33,6 +33,7 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; + import javax.servlet.http.HttpServletRequest; import java.io.IOException; import java.text.ParseException; @@ -65,6 +66,16 @@ public interface ScmVehRebateFeign { @ResponseBody public ResultBean> getDetail(@PathVariable("sid") String sid); + @ApiOperation("返利类型统计") + @PostMapping("/typeStatistics") + @ResponseBody + public ResultBean> typeStatistics(@RequestBody PagerQuery pq); + + @ApiOperation("返利类型明细") + @PostMapping("/getTypeDetail") + @ResponseBody + public ResultBean> getTypeDetail(@RequestParam("sid") String sid, @RequestParam("type") String type); + @ApiOperation("单车返利未预提申请选择单车返利信息") @PostMapping("/withApplyGetVehRebate") @ResponseBody @@ -87,7 +98,7 @@ public interface ScmVehRebateFeign { @ApiOperation(value = "一次导入") @PostMapping("/getExcelOneInfo") @ResponseBody - public ResultBean getExcelOneInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request,@RequestParam("userSid") String userSid,@RequestParam("orgPath") String orgPath) throws IOException, ParseException; + public ResultBean getExcelOneInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath) throws IOException, ParseException; @ApiOperation("二次导出") @PostMapping("/excelListTwo") @@ -96,7 +107,7 @@ public interface ScmVehRebateFeign { @ApiOperation(value = "二次导入") @PostMapping("/getExcelTwoInfo") @ResponseBody - public ResultBean getExcelTwoInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request,@RequestParam("userSid") String userSid,@RequestParam("orgPath") String orgPath) throws IOException, ParseException; + public ResultBean getExcelTwoInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath) throws IOException, ParseException; @ApiOperation("单车返利核对申请选择已上传单车返利信息") @PostMapping("/checkApplyGetAlreadyUploadVehRebate") @@ -136,7 +147,7 @@ public interface ScmVehRebateFeign { @ApiOperation(value = "导入") @PostMapping("/getExcelInfo") @ResponseBody - public ResultBean getExcelInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request,@RequestParam("userSid") String userSid,@RequestParam("orgPath") String orgPath) throws IOException, ParseException; + public ResultBean getExcelInfo(@RequestParam(value = "file") MultipartFile file, HttpServletRequest request, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath) throws IOException, ParseException; @ApiOperation("根据车辆sid删除记录") @DeleteMapping("/delByVehSid") @@ -146,5 +157,5 @@ public interface ScmVehRebateFeign { @ApiOperation("根据车辆sid、分公司sid、返利类型key删除单车返利记录") @DeleteMapping("/delByVehSid2") @ResponseBody - ResultBean delByVehSid2(@RequestParam("vehSid") String vehSid,@RequestParam("useOrgSid") String useOrgSid,@RequestParam("key") String key); + ResultBean delByVehSid2(@RequestParam("vehSid") String vehSid, @RequestParam("useOrgSid") String useOrgSid, @RequestParam("key") String key); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatMxVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatMxVo.java new file mode 100644 index 0000000000..5646913a5f --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatMxVo.java @@ -0,0 +1,112 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.scm.api.scmvehrebate; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +@Data +public class ScmVehRebateTypeStatMxVo implements Vo { + + private String sid; + + @ApiModelProperty("采购系统") + private String purchaseSystemName; + @ApiModelProperty("车型名称") + private String vehModelName; + @ApiModelProperty("车架号") + private String vinNo; + @ApiModelProperty("返利项目") + private String project; + @ApiModelProperty("所属年月") + private String palceGenDate; + @ApiModelProperty("返利类型") + private String rebateTypeValue; + @ApiModelProperty("返利名称") + private String rebateName; + + @ApiModelProperty("预计返利") + private BigDecimal estimateRebate; + @ApiModelProperty("上传金额") + private BigDecimal uploadMoney; + @ApiModelProperty("二次上传金额") + private BigDecimal secondaryUploadMoney; + @ApiModelProperty("待确定金额") + private BigDecimal stayDetermineMoney; + @ApiModelProperty("调整金额") + private BigDecimal adjustmentMoney; + @ApiModelProperty("未上传金额") + private BigDecimal notUploadMoney; + + @ApiModelProperty("其中预计费用") + private BigDecimal expectCost; + @ApiModelProperty("其中上传费用") + private BigDecimal money; + + @ApiModelProperty("创建日期") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTime; + @ApiModelProperty("预提日期") + private String withholdingDate; + @ApiModelProperty("上传日期") + private String uploadDate; + @ApiModelProperty("二次上传日期") + private String secondaryUploadDate; + + @ApiModelProperty("状态") + private String state; + @ApiModelProperty("一次核对状态") + private String onceCheckState; + @ApiModelProperty("二次核对状态") + private String secondCheckState; + + @ApiModelProperty("品牌名称") + private String brandName; + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("事业部") + private String division; + @ApiModelProperty("车辆入库价") + private BigDecimal manufactorSettlementPrice; + + @ApiModelProperty("运费") + private BigDecimal freight; + @ApiModelProperty("上装金额") + private BigDecimal topAmount; + + @ApiModelProperty("计算方式") + private String calculationModeValue; + @ApiModelProperty("计算标准") + private String calculationStandard; + + @ApiModelProperty("备注") + private String remarks; +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatQuery.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatQuery.java new file mode 100644 index 0000000000..55b6f2e336 --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatQuery.java @@ -0,0 +1,55 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.scm.api.scmvehrebate; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +public class ScmVehRebateTypeStatQuery implements Query { + + @ApiModelProperty("事业部") + private String division; + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("采购系统") + private String purchaseSystemName; + @ApiModelProperty("品牌名称") + private String brandName; + @ApiModelProperty("返利项目") + private String project; + @ApiModelProperty("返利类型") + private String rebateTypeValue; + @ApiModelProperty("所属年月") + private String palceGenDateStart; + private String palceGenDateEnd; + + private String userSid; + private String orgPath; + private String menuUrl; + private String menuSid; +} diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatVo.java new file mode 100644 index 0000000000..c794a8c83f --- /dev/null +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehrebate/ScmVehRebateTypeStatVo.java @@ -0,0 +1,70 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.scm.api.scmvehrebate; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +@Data +public class ScmVehRebateTypeStatVo implements Vo { + + @ApiModelProperty("采购系统") + private String purchaseSystemName; + @ApiModelProperty("返利项目") + private String project; + @ApiModelProperty("所属年月") + private String palceGenDate; + @ApiModelProperty("返利类型") + private String rebateTypeValue; + @ApiModelProperty("预计返利") + private BigDecimal estimateRebate; + @ApiModelProperty("上传金额") + private BigDecimal uploadMoney; + @ApiModelProperty("调整金额") + private BigDecimal adjustmentMoney; + @ApiModelProperty("未上传金额") + private BigDecimal notUploadMoney; + @ApiModelProperty("预计支出费用") + private BigDecimal expectItureCost; + @ApiModelProperty("预计待支付费用") + private BigDecimal expectTreatCost; + @ApiModelProperty("预计抵顶费用") + private BigDecimal expectSuppCost; + @ApiModelProperty("剩余") + private BigDecimal balance; + @ApiModelProperty("品牌名称") + private String brandName; + @ApiModelProperty("分公司") + private String useOrgName; + @ApiModelProperty("事业部") + private String division; + + private String sid;//返利管理sid +} diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java index 6829a01de4..3e52bb89dd 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.java @@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import com.yxt.anrui.scm.api.scmspecialrebate.*; +import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateTypeStatMxVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Update; @@ -75,4 +76,6 @@ public interface ScmSpecialRebateMapper extends BaseMapper { List checkApplyGetSpecialRebateAll(@Param(Constants.WRAPPER) QueryWrapper qw); List listAll(@Param(Constants.WRAPPER) QueryWrapper qw); + + List getTypeDetail(@Param("sids") List sids); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml index df803fa308..04c4d7340b 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateMapper.xml @@ -182,4 +182,47 @@ ${ew.sqlSegment} + + + SELECT + r.sid, + r.purchaseSystemName, + '专项返利' AS project, + r.rebateTypeValue, + r.rebateName, + r.palceGenDate, + r.estimateRebate, + r.uploadMoney, + r.secondaryUploadMoney, + r.stayDetermineMoney, + r.adjustmentMoney, + r.estimateRebate - IFNULL(r.uploadMoney,0) - IFNULL(r.secondaryUploadMoney,0) + IFNULL(r.adjustmentMoney,0) AS notUploadMoney, + r.expectItureCost + r.expectTreatCost + r.expectSuppCost AS expectCost, + r.onceItureCost + r.onceTreatCost + r.onceSuppCost + r.secondItureCost + r.secondTreatCost + r.secondSuppCost AS money, + r.createTime, + r.withholdingDate, + r.uploadDate, + r.secondaryUploadDate, + r.state, + r.onceCheckState, + IF(r.secondaryUploadMoney > 0 AND r.isAdjustment = '是','是','否') AS secondCheckState, + r.brandName, + r.useOrgName, + o.name AS division, + r.remarks + FROM + scm_special_rebate r + LEFT JOIN ( + SELECT o1.name,o2.sid FROM anrui_portal.sys_organization o1 + LEFT JOIN anrui_portal.sys_organization o2 + ON o1.sid = o2.psid + ) AS o + ON o.sid = r.useOrgSid + + WHERE r.sid IN + + #{item} + + + \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java index 3c319d08cf..1fa3cf2968 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmspecialrebate/ScmSpecialRebateService.java @@ -43,6 +43,7 @@ import com.yxt.anrui.scm.api.scmspecialrebate.*; import com.yxt.anrui.scm.api.scmspecialrebate.OneExcelInfo; import com.yxt.anrui.scm.api.scmspecialrebate.TwoExcelInfo; import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebate; +import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateTypeStatMxVo; import com.yxt.anrui.scm.biz.scmspecialrebatevehs.ScmSpecialrebateVehsService; import com.yxt.common.core.result.ResultBean; import org.apache.commons.lang3.StringUtils; @@ -2491,4 +2492,8 @@ public class ScmSpecialRebateService extends MybatisBaseService getTypeDetail(List sids) { + return baseMapper.getTypeDetail(sids); + } } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java index 95a6a4e4ed..7cb77f32dc 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.java @@ -42,6 +42,8 @@ public interface ScmVehRebateMapper extends BaseMapper { IPage statistics(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + IPage typeStatistics(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + IPage selectPageVoUpload(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); @Update("update scm_veh_rebate set state = #{state} where sid = #{sid}") @@ -80,4 +82,6 @@ public interface ScmVehRebateMapper extends BaseMapper { int delByVehSid2(@Param("vehSid") String vehSid, @Param("useOrgSid") String useOrgSid, @Param("key") String key); List getDetail(String vehSid); + + List getTypeDetail(@Param("sids") List sids); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml index d9f527efa8..b518f20072 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateMapper.xml @@ -26,7 +26,7 @@ r.vehSid, r.vinNo, DATE_FORMAT(v.salesDate, '%Y-%m-%d') AS saleDate, - DATE_FORMAT(v.salesDate, '%Y-%m-%d') AS acSaleDate, + DATE_FORMAT(v.solidDate, '%Y-%m-%d') AS acSaleDate, SUM(r.estimateRebate) AS estimateRebate, SUM(r.uploadMoney) AS uploadMoney, SUM(r.secondaryUploadMoney) AS secondaryUploadMoney, @@ -278,14 +278,129 @@ r.remarks FROM scm_veh_rebate r - LEFT JOIN anrui_base.base_vehicle v - ON r.vehSid = v.sid LEFT JOIN ( SELECT o1.name,o2.sid FROM anrui_portal.sys_organization o1 LEFT JOIN anrui_portal.sys_organization o2 ON o1.sid = o2.psid ) AS o ON o.sid = r.useOrgSid - WHERE vehSid = #{vehSid} + WHERE r.vehSid = #{vehSid} + + + + SELECT + GROUP_CONCAT(r.sid) AS sid, + r.purchaseSystemName, + '单车返利' AS project, + r.palceGenDate AS palceGenDate, + r.rebateTypeValue, + SUM(r.estimateRebate) AS estimateRebate, + SUM(r.uploadMoney) + SUM(r.secondaryUploadMoney) AS uploadMoney, + SUM(r.adjustmentMoney) AS adjustmentMoney, + SUM(r.estimateRebate) - IFNULL(SUM(r.uploadMoney), 0) - IFNULL(SUM(r.secondaryUploadMoney), 0) + IFNULL(SUM(r.adjustmentMoney), 0) AS notUploadMoney, + '' AS expectItureCost, + SUM(r.expectTreatCost) AS expectTreatCost, + SUM(r.expectSuppCost) AS expectSuppCost, + SUM(r.estimateRebate) - IFNULL(SUM(r.uploadMoney), 0) - IFNULL(SUM(r.secondaryUploadMoney), 0) + IFNULL(SUM(r.adjustmentMoney), 0) - SUM(r.expectTreatCost) - SUM(r.expectSuppCost) AS balance, + r.brandName, + r.useOrgName, + o.name AS division + FROM + scm_veh_rebate r + LEFT JOIN + (SELECT + o1.name, + o2.sid + FROM + anrui_portal.sys_organization o1 + LEFT JOIN anrui_portal.sys_organization o2 + ON o1.sid = o2.psid) AS o + ON o.sid = r.useOrgSid + + ${ew.sqlSegment} + + UNION ALL + SELECT + GROUP_CONCAT(r.sid) AS sid, + r.purchaseSystemName, + '专项返利' AS project, + r.palceGenDate AS palceGenDate, + r.rebateTypeValue, + SUM(r.estimateRebate) AS estimateRebate, + SUM(r.uploadMoney) + SUM(r.secondaryUploadMoney) AS uploadMoney, + SUM(r.adjustmentMoney) AS adjustmentMoney, + SUM(r.estimateRebate) - IFNULL(SUM(r.uploadMoney), 0) - IFNULL(SUM(r.secondaryUploadMoney), 0) + IFNULL(SUM(r.adjustmentMoney), 0) AS notUploadMoney, + SUM(r.expectItureCost) AS expectItureCost, + SUM(r.expectTreatCost) AS expectTreatCost, + SUM(r.expectSuppCost) AS expectSuppCost, + SUM(r.estimateRebate) - IFNULL(SUM(r.uploadMoney), 0) - IFNULL(SUM(r.secondaryUploadMoney), 0) + IFNULL(SUM(r.adjustmentMoney), 0) - SUM(r.expectItureCost) - SUM(r.expectTreatCost) - SUM(r.expectSuppCost) AS balance, + r.brandName, + r.useOrgName, + o.name AS division + FROM + scm_special_rebate r + LEFT JOIN + (SELECT + o1.name, + o2.sid + FROM + anrui_portal.sys_organization o1 + LEFT JOIN anrui_portal.sys_organization o2 + ON o1.sid = o2.psid) AS o + ON o.sid = r.useOrgSid + + ${ew.sqlSegment} + + ORDER BY palceGenDate DESC + + + + SELECT + r.sid, + r.purchaseSystemName, + r.vehModelName, + r.vinNo, + '单车返利' AS project, + r.rebateTypeValue, + r.rebateName, + r.palceGenDate, + r.estimateRebate, + r.uploadMoney, + r.secondaryUploadMoney, + r.stayDetermineMoney, + r.adjustmentMoney, + r.estimateRebate - IFNULL(r.uploadMoney,0) - IFNULL(r.secondaryUploadMoney,0) + IFNULL(r.adjustmentMoney,0) AS notUploadMoney, + r.expectTreatCost + r.expectSuppCost AS expectCost, + r.onceTreatCost + r.onceSuppCost + r.secondTreatCost + r.secondSuppCost AS money, + r.createTime, + r.withholdingDate, + r.uploadDate, + r.secondaryUploadDate, + r.state, + r.onceCheckState, + IF(r.secondaryUploadMoney > 0 AND r.isAdjustment = '是','是','否') AS secondCheckState, + r.brandName, + r.useOrgName, + o.name AS division, + r.manufactorSettlementPrice, + r.freight, + r.topAmount, + r.calculationModeValue, + r.calculationStandard, + r.remarks + FROM + scm_veh_rebate r + LEFT JOIN ( + SELECT o1.name,o2.sid FROM anrui_portal.sys_organization o1 + LEFT JOIN anrui_portal.sys_organization o2 + ON o1.sid = o2.psid + ) AS o + ON o.sid = r.useOrgSid + + WHERE r.sid IN + + #{item} + + diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java index 567f208f97..7eefa1aa8f 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateRest.java @@ -40,6 +40,7 @@ import org.apache.poi.xssf.usermodel.*; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; @@ -88,6 +89,20 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { return rb.success().setData(scmVehRebateStatMxVos); } + @Override + public ResultBean> typeStatistics(PagerQuery pq) { + ResultBean rb = ResultBean.fireFail(); + PagerVo pv = scmVehRebateService.typeStatistics(pq); + return rb.success().setData(pv); + } + + @Override + public ResultBean> getTypeDetail(String sid, String type) { + ResultBean rb = ResultBean.fireFail(); + List scmVehRebateTypeStatMxVos = scmVehRebateService.getTypeDetail(sid, type); + return rb.success().setData(scmVehRebateTypeStatMxVos); + } + @ApiOperation("导出") @PostMapping("/excelList") public void excelList(@RequestBody ScmVehRebateQuery query) { @@ -350,7 +365,7 @@ public class ScmVehRebateRest implements ScmVehRebateFeign { public ResultBean update(ScmVehRebateVehDto dto) { ResultBean rb = ResultBean.fireFail(); dto.setStayDetermineMoneyNew(dto.getStayDetermineMoney()); - if (StringUtils.isBlank(dto.getSecondaryUploadDate())){ + if (StringUtils.isBlank(dto.getSecondaryUploadDate())) { dto.setSecondaryUploadDate(""); } scmVehRebateService.updateBySid(dto, dto.getSid()); diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java index 692f74c9fc..cf26817c5a 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehrebate/ScmVehRebateService.java @@ -39,6 +39,7 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; import com.yxt.anrui.portal.api.sysuser.SysUserFeign; import com.yxt.anrui.scm.api.scmvehrebate.*; +import com.yxt.anrui.scm.biz.scmspecialrebate.ScmSpecialRebateService; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; @@ -54,6 +55,7 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.File; @@ -80,6 +82,8 @@ public class ScmVehRebateService extends MybatisBaseService listPageVo(PagerQuery pq) { ScmVehRebateQuery query = pq.getParams(); @@ -436,6 +440,84 @@ public class ScmVehRebateService extends MybatisBaseService typeStatistics(PagerQuery pq) { + ScmVehRebateTypeStatQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + //========================================数据授权开始 + if (StringUtils.isNotBlank(query.getMenuUrl())) { + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setMenuUrl(query.getMenuUrl()); + privilegeQuery.setMenuSid(query.getMenuSid()); + privilegeQuery.setUserSid(query.getUserSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("r.orgPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("r.orgPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("r.orgPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("r.orgPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("r.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } + if (StringUtils.isNotBlank(query.getDivision())) { + qw.like("o.name", query.getDivision()); + } + if (StringUtils.isNotBlank(query.getUseOrgName())) { + qw.like("r.useOrgName", query.getUseOrgName()); + } + if (StringUtils.isNotBlank(query.getPurchaseSystemName())) { + qw.like("r.purchaseSystemName", query.getPurchaseSystemName()); + } + if (StringUtils.isNotBlank(query.getBrandName())) { + qw.like("r.brandName", query.getBrandName()); + } + if (StringUtils.isNotBlank(query.getRebateTypeValue())) { + qw.like("r.rebateTypeValue", query.getRebateTypeValue()); + } + String palceGenDateStart = query.getPalceGenDateStart(); + String palceGenDateEnd = query.getPalceGenDateEnd(); + qw.apply(StringUtils.isNotBlank(palceGenDateStart), "r.palceGenDate >= '" + palceGenDateStart + "'"). + apply(StringUtils.isNotBlank(palceGenDateEnd), "r.palceGenDate <= '" + palceGenDateEnd + "'" + ); + qw.groupBy("r.purchaseSystemName"); + qw.groupBy("r.palceGenDate"); + qw.groupBy("r.rebateTypeValue"); + qw.groupBy("r.brandName"); + qw.groupBy("r.useOrgName"); + qw.groupBy("o.name"); + if (StringUtils.isNotBlank(query.getProject())) { + qw.having("project = {0}", query.getProject()); + } + IPage page = PagerUtil.queryToPage(pq); + IPage pagging = baseMapper.typeStatistics(page, qw); + PagerVo p = PagerUtil.pageToVo(pagging, null); + return p; + } + public PagerVo withApplyGetVehRebate(PagerQuery pq) { ScmVehRebateQuery query = pq.getParams(); QueryWrapper qw = new QueryWrapper<>(); @@ -1867,7 +1949,7 @@ public class ScmVehRebateService extends MybatisBaseService scmVehRebateExcelVos = baseMapper.excelList(qw); return scmVehRebateExcelVos; } + + public List getTypeDetail(String sid, String type) { + List scmVehRebateTypeStatMxVos = new ArrayList<>(); + List sids = Arrays.asList(sid.split(",")); + if ("单车返利".equals(type)) { + scmVehRebateTypeStatMxVos = baseMapper.getTypeDetail(sids); + } else if ("专项返利".equals(type)) { + scmVehRebateTypeStatMxVos = scmSpecialRebateService.getTypeDetail(sids); + } + return scmVehRebateTypeStatMxVos; + } } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-ui/src/api/statement/rebateType.js b/anrui-scm/anrui-scm-ui/src/api/statement/rebateType.js new file mode 100644 index 0000000000..fa3823c0e3 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/api/statement/rebateType.js @@ -0,0 +1,20 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function(data) { + return request({ + url: '/scm/v1/scmvehrebate/typeStatistics', + method: 'post', + data: data, + headers: { 'Content-Type': 'application/json' } + }) + }, + getTypeDetail: function(data) { + return request({ + url: '/scm/v1/scmvehrebate/getTypeDetail', + method: 'post', + params: data + }) + } +} diff --git a/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js b/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js index 4498cb421c..fb87fcf0eb 100644 --- a/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js +++ b/anrui-scm/anrui-scm-ui/src/router/modules/codemenu.js @@ -1100,6 +1100,15 @@ const codemenu = [{ title: '单车返利统计', noCache: true } + }, + { + path: '/statement/rebateType', + component: () => import('@/views/statement/rebateType/rebateTypeByDetail.vue'), + name: 'RebateTypeByDetail', + meta: { + title: '厂家返利类型', + noCache: true + } } // { // path: '/statement/rebateSummary', diff --git a/anrui-scm/anrui-scm-ui/src/views/statement/rebateSummary/rebateTypeDetails.vue b/anrui-scm/anrui-scm-ui/src/views/statement/rebateSummary/rebateTypeDetails.vue new file mode 100644 index 0000000000..01c6644d88 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/statement/rebateSummary/rebateTypeDetails.vue @@ -0,0 +1,117 @@ + + + + + + + + 厂家返利汇总统计报表 + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateNameByDetail.vue b/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateNameByDetail.vue new file mode 100644 index 0000000000..98e43ab59a --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateNameByDetail.vue @@ -0,0 +1,103 @@ + + + + {{title}} + + 关闭 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {{ scope.row.state == '0' ? '未计提' : scope.row.state == '1' ? '计提中' : scope.row.state == '2' ? '待核对' : scope.row.state == '3' ? '核对中' : scope.row.state == '4' ? '已核对' : '' }} + + + + + {{ scope.row.onceCheckState == '1' ? '是' : scope.row.onceCheckState == '0' ? '否' : scope.row.onceCheckState == '2' ? '一次核对中' : '' }} + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateTypeByDetail.vue b/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateTypeByDetail.vue new file mode 100644 index 0000000000..f5c0e86670 --- /dev/null +++ b/anrui-scm/anrui-scm-ui/src/views/statement/rebateType/rebateTypeByDetail.vue @@ -0,0 +1,246 @@ + + + + + + + + + {{ searchxianshitit }} + + + + + + + + + + + + + + + + + + + + + + + 至 + + + + + 查询 + 重置 + + + + + + 厂家返利类型明细列表 + + + + + + + + + + + + + {{ scope.row.rebateTypeValue }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +