From 2bf97ebc3361878fdb5373b870a3c0c2c604175d Mon Sep 17 00:00:00 2001 From: yunuo970428 <405378304@qq.com> Date: Thu, 5 Sep 2024 09:31:06 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8D=95=E8=BD=A6=E8=BF=94?= =?UTF-8?q?=E5=88=A9=E6=A0=B8=E5=AF=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../bicyclerebatetobechecked.vue | 268 +++++++++--------- 1 file changed, 128 insertions(+), 140 deletions(-) diff --git a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue index a228679a9d..9fff9326f5 100644 --- a/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue +++ b/anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue @@ -48,8 +48,10 @@
单车返利待核对列表
- 导入 - 导出 + 一次导出 + 一次导入 + 二次导出 + 二次导入
@@ -113,12 +115,12 @@ @@ -133,17 +135,17 @@ @@ -155,13 +157,13 @@ - + @@ -172,8 +174,11 @@
+ + +
@@ -201,13 +206,13 @@ 其中含费用 - + 其中含返利 - + {{ formobj.firstRebate }}
@@ -243,13 +248,13 @@ 其中含费用 - + 其中含返利 - + {{ formobj.secondRebate }} @@ -257,7 +262,7 @@ 调整金额合计 - {{ adjustmentMoneyAdd() }} + {{ formobj.adjustmentMoney }}
@@ -295,13 +300,6 @@ export default { btnKey: 'toAdd', btnLabel: '核对审核申请' }, - { - type: 'primary', - size: 'small', - icon: '', - btnKey: 'toClick', - btnLabel: '调整' - }, { type: 'info', size: 'small', @@ -373,7 +371,8 @@ export default { secondaryUploadMoney: '', secondCost: '', secondRebate: '', - adjustmentMoney: '' + adjustmentMoney: '', + cost: '' } } }, @@ -451,7 +450,7 @@ export default { req.listPage(this.listQuery).then((response) => { console.log('列表查询结果:', response) this.listLoading = false - if (response.success && response.data && response.data.total > 0) { + if (response.success) { this.list = response.data.records this.listQuery.total = response.data.total } else { @@ -486,43 +485,112 @@ export default { } this.init() }, - UpNumber(e) { - e.target.value = e.target.value.replace(/[^\d]/g, '') // 清除“数字”和“.”"-"以外的字符 - e.target.value = e.target.value.replace(/^00/, '0') // 开头不能有两个0 - if (e.target.value.indexOf('.') < 0 && e.target.value !== '' && e.target.value !== '-') { - // 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额 - console.log(e.target.value) - e.target.value = parseFloat(e.target.value) + getNumber(val, limit) { + val = val.replace(/[^0-9.]/g, '') // 保留数字 + val = val.replace(/^00/, '0.') // 开头不能有两个0 + val = val.replace(/^\./g, '0.') // 开头为小数点转换为0. + val = val.replace(/\.{2,}/g, '.') // 两个以上的小数点转换成一个 + val = val.replace('.', '$#$').replace(/\./g, '').replace('$#$', '.'); // 只保留一个小数点 + /^0\d+/.test(val) ? val = val.slice(1) : '' // 两位以上数字开头不能为0 + const str = '^(\\d+)\\.(\\d{' + limit + '}).*$' + const reg = new RegExp(str) + if (limit === 0) { + // 不需要小数点 + val = val.replace(reg, '$1') + } else { + // 通过正则保留小数点后指定的位数 + val = val.replace(reg, '$1.$2') } + return val }, - changeIsAdjustment(row) { - if (row.isAdjustment === '是') { - if (row.uploadMoney === '') { - row.isAdjustment = '' - this.$message({ showClose: true, type: 'error', message: '上传金额不能为空' }) - return - } - if (row.money === '') { - row.isAdjustment = '' - this.$message({ showClose: true, type: 'error', message: '费用不能为空' }) - return - } - if (row.stayDetermineMoney === '') { - row.isAdjustment = '' - this.$message({ showClose: true, type: 'error', message: '待确定金额不能为空' }) - return - } - if (row.uploadMoney !== '' && row.money !== '' && row.stayDetermineMoney !== '') { - row.adjustmentMoney = parseInt(row.uploadMoney) - parseInt(row.money) - parseInt(row.stayDetermineMoney) - parseInt(row.estimateRebate) + isAdjustmentInput(row) { + let money = '0' + // 上传金额 - 费用 - 待确定金额 - 预提返利 + money = parseFloat(row.uploadMoney !== '' ? row.uploadMoney : 0) - parseFloat(row.money !== '' ? row.money : 0) - parseFloat(row.stayDetermineMoney !== '' ? row.stayDetermineMoney : 0) - parseFloat(row.estimateRebate !== '' ? row.estimateRebate : 0) + if (row.stayDetermineMoney === '0') { + if (parseFloat(money) > 0) { + row.isAdjustment = '是' + row.adjustmentMoney = parseFloat(money) + row.adjustOrNot = true + } else if (parseFloat(money) === 0) { + row.isAdjustment = '是' + row.adjustmentMoney = parseFloat(money) + row.adjustOrNot = false + } else { + row.isAdjustment = '否' + row.adjustmentMoney = '0' + row.adjustmentRemarks = '' + row.adjustOrNot = true } - } else if (row.isAdjustment === '否') { - row.adjustmentMoney = 0 + } else { + row.isAdjustment = '否' + row.adjustmentMoney = '0' row.adjustmentRemarks = '' + row.adjustOrNot = false + } + }, + handleClick() { + this.viewState = 2 + }, + // 新增核对审核申请 + toAdd() { + this.viewState = 3 + this.$refs['divCheckAdd'].showAdd(this.listQuery.params.createOrgSid) + }, + // 保存 + toSave(row) { + if (row.uploadDate === '') { + this.$message({ showClose: true, type: 'error', message: '上传日期不能为空' }) + return + } + if (row.uploadMoney === '') { + this.$message({ showClose: true, type: 'error', message: '上传金额不能为空' }) + return } + if (row.stayDetermineMoney === '') { + this.$message({ showClose: true, type: 'error', message: '待确定金额不能为空' }) + return + } + if (row.money === '') { + this.$message({ showClose: true, type: 'error', message: '费用不能为空' }) + return + } + req.updateDate(row).then((resp) => { + if (resp.success) { + this.$message({ showClose: true, type: 'success', message: '保存成功' }) + this.getList() + } + }) + }, + // 二次调整 + toAdjust(row) { + this.dialogVisible = true + this.formobj.stayDetermineMoney = row.stayDetermineMoney + this.formobj.sid = row.sid + this.formobj.firstCost = 0 + this.formobj.firstRebate = 0 + this.formobj.secondCost = 0 + this.formobj.secondRebate = 0 + this.formobj.secondaryUploadMoney = 0 + this.formobj.cost = row.money + this.formobj.surplusRebate = parseFloat(row.estimateRebate !== '' ? row.estimateRebate : 0) - parseFloat(row.uploadMoney !== '' ? row.uploadMoney : 0) }, + // 二次调整页面--待确定金额模块 + firstCostInput() { + // 其中含返利 = 待确定金额 - 其中含费用 + this.formobj.firstRebate = parseFloat(this.formobj.stayDetermineMoney !== '' ? this.formobj.stayDetermineMoney : 0) - parseFloat(this.formobj.firstCost !== '' ? this.formobj.firstCost : 0) + this.adjustmentMoneyAdd() + }, + // 二次调整页面--返利二次上传模块 + secondCostInput() { + // 其中含返利 = 二次上传金额 - 其中含费用 + this.formobj.secondRebate = parseFloat(this.formobj.secondaryUploadMoney !== '' ? this.formobj.secondaryUploadMoney : 0) - parseFloat(this.formobj.secondCost !== '' ? this.formobj.secondCost : 0) + this.adjustmentMoneyAdd() + }, + // 二次调整页面--返利二次上传模块 adjustmentMoneyAdd() { - this.formobj.adjustmentMoney = parseInt(this.formobj.firstRebate - 0) + parseInt(this.formobj.secondRebate - 0) - parseInt(this.formobj.surplusRebate - 0) - return this.formobj.adjustmentMoney + // 调整金额合计 = 其中含返利之和 - 剩余预提返利 + this.formobj.adjustmentMoney = parseFloat(this.formobj.firstRebate !== '' ? this.formobj.firstRebate : 0) + parseFloat(this.formobj.secondRebate !== '' ? this.formobj.secondRebate : 0) - parseFloat(this.formobj.surplusRebate !== '' ? this.formobj.surplusRebate : 0) }, handleSave() { let aa = null @@ -530,16 +598,16 @@ export default { aa = { sid: this.formobj.sid, stayDetermineMoney: 0, - cost: this.formobj.firstCost, + cost: parseFloat(this.formobj.cost !== '' ? this.formobj.cost : 0) + parseFloat(this.formobj.firstCost !== '' ? this.formobj.firstCost : 0), secondaryUploadDate: '', secondaryUploadMoney: 0, - adjustmentMoney: this.formobj.firstRebate + adjustmentMoney: this.formobj.adjustmentMoney } } else { aa = { sid: this.formobj.sid, stayDetermineMoney: 0, - cost: parseInt(this.formobj.firstCost) + parseInt(this.formobj.secondCost), + cost: parseFloat(this.formobj.cost !== '' ? this.formobj.cost : 0) + parseFloat(this.formobj.firstCost !== '' ? this.formobj.firstCost : 0) + parseFloat(this.formobj.secondCost !== '' ? this.formobj.secondCost : 0), secondaryUploadDate: this.formobj.secondaryUploadDate, secondaryUploadMoney: this.formobj.secondaryUploadMoney, adjustmentMoney: this.formobj.adjustmentMoney @@ -565,91 +633,11 @@ export default { secondaryUploadMoney: '', secondCost: '', secondRebate: '', - adjustmentMoney: '' + adjustmentMoney: '', + cost: '' } this.checked = false }, - handleClick() { - this.viewState = 2 - }, - toAdd() { - this.viewState = 3 - this.$refs['divCheckAdd'].showAdd(this.listQuery.params.createOrgSid) - }, - toSave(row) { - if (row.uploadDate === '') { - this.$message({ showClose: true, type: 'error', message: '上传日期不能为空' }) - return - } - if (row.uploadMoney === '') { - this.$message({ showClose: true, type: 'error', message: '上传金额不能为空' }) - return - } - if (row.stayDetermineMoney === '') { - this.$message({ showClose: true, type: 'error', message: '待确定金额不能为空' }) - return - } - if (row.money === '') { - this.$message({ showClose: true, type: 'error', message: '费用不能为空' }) - return - } - if (row.stayDetermineMoney !== '0') { - if (row.isAdjustment === '是') { - this.$message({ showClose: true, type: 'error', message: '因待确定金额大于0,是否调整选项需选择否' }) - return - } - } else if (row.stayDetermineMoney === '0') { - if (row.adjustmentMoney.toString().indexOf('-') !== -1) { - if (row.isAdjustment === '是') { - this.$message({ showClose: true, type: 'error', message: '因待确定金额等于0且调整金额小于0,是否调整选项需选择否' }) - return - } - } else if (row.adjustmentMoney !== '0') { - if (row.isAdjustment === '否') { - if ((parseInt(row.uploadMoney) - parseInt(row.estimateRebate)) > 0) { - this.$message({ showClose: true, type: 'error', message: '因待确定金额等于0且调整金额大于0,是否调整选项需选择是' }) - return - } - } - } else if (row.adjustmentMoney === '0') { - if (row.isAdjustment === '否') { - this.$message({ showClose: true, type: 'error', message: '因待确定金额等于0且调整金额等于0,是否调整选项需选择是' }) - return - } - } - } - if (row.isAdjustment === '是') { - if (row.adjustmentMoney === '') { - this.$message({ showClose: true, type: 'error', message: '调整金额不能为空' }) - return - } - if (row.adjustmentRemarks === '') { - this.$message({ showClose: true, type: 'error', message: '调整说明不能为空' }) - return - } - } - req.updateDate(row).then((resp) => { - if (resp.success) { - this.$message({ showClose: true, type: 'success', message: '保存成功' }) - this.getList() - } - }) - }, - toInfo(row) { - this.viewState = 4 - this.$refs['divInfo'].showInfo(row) - }, - toAdjust(row) { - this.dialogVisible = true - this.formobj.stayDetermineMoney = row.stayDetermineMoney - this.formobj.sid = row.sid - this.formobj.firstCost = 0 - this.formobj.firstRebate = 0 - this.formobj.secondCost = 0 - this.formobj.secondRebate = 0 - this.formobj.secondaryUploadMoney = 0 - this.formobj.surplusRebate = parseInt(row.estimateRebate) - parseInt(row.uploadMoney) - }, resetState() { this.viewState = 1 },