From df811c83699496a5517dcf19ef20e7768ccbe723 Mon Sep 17 00:00:00 2001 From: fengachen <373943794@qq.com> Date: Thu, 10 Nov 2022 17:01:16 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E4=BF=AE=E6=94=B9=E3=80=91=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E5=8F=82=E4=BC=9A=E4=BA=BA=E5=A2=9E=E5=8A=A0=E5=BA=94?= =?UTF-8?q?=E6=94=B6=E9=87=91=E9=A2=9D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../meetManage/OtherMeetingForm.vue | 101 +++++++++++++++++- 1 file changed, 99 insertions(+), 2 deletions(-) diff --git a/src/views/incomePayments/meetManage/OtherMeetingForm.vue b/src/views/incomePayments/meetManage/OtherMeetingForm.vue index 39e38c3..684f41d 100644 --- a/src/views/incomePayments/meetManage/OtherMeetingForm.vue +++ b/src/views/incomePayments/meetManage/OtherMeetingForm.vue @@ -53,6 +53,52 @@ + + + @@ -105,6 +151,8 @@ import pick from 'lodash.pick' import JDictSelectTag from '@comp/dict/JDictSelectTag' import moment from 'moment' import {getContactsById} from '@api/api' +import {money} from '@/utils/validate' +import {CalcAmountMixin} from '@/mixins/CalcAmountMixin' export default { name: 'OtherMeetingForm', @@ -113,6 +161,7 @@ export default { SelectContacts, JDictSelectTag }, + mixins:[CalcAmountMixin], props: { selectedCompany: { type: Object @@ -143,6 +192,7 @@ export default { data() { return { desription: '其他会议的参会情况的表单', + ysjeKey:'amountReceivable', form: this.$form.createForm(this), labelCol: { xs: {span: 24}, @@ -167,6 +217,22 @@ export default { // 回显的邮寄联系人 selectPostPerson: null, validatorRules: { + amountReceivable: { + rules: [{ required: true, validator: this.checkMoney }], + validateTrigger: 'blur' + }, + taxRate: { + rules: [{ required: true,message: '请选择税率' }], + validateTrigger: 'change',initialValue:'0.06' + }, + noTaxAmount: { + rules: [{required: false, validator: this.checkNoTaxMoney}], + validateTrigger: 'blur' + }, + tax: { + rules: [{required: false, validator: this.checkTaxMoney}], + validateTrigger: 'blur' + }, postContactId: { rules: [{required: true, message: '请选择邮寄联系人'}], validateTrigger: 'change' @@ -215,6 +281,33 @@ export default { }, methods: { moment, + /** + * 校验金额格式 + * @param rules + * @param value + * @param callback + * @param name --校验字段的名字 + * + */ + checkMoneyTemplate(rules, value, callback, name) { + if (value) { + if (money(value)) { + callback() + } + callback('请输入合法的金额数字,最多2位小数,10位整数') + } + callback(`请输入${name}`) + }, + // 校验金额格式 + checkMoney(rules, value, callback) { + this.checkMoneyTemplate(rules, value, callback, '应收金额') + }, + checkNoTaxMoney(rules, value, callback) { + this.checkMoneyTemplate(rules, value, callback, '未税金额') + }, + checkTaxMoney(rules, value, callback) { + this.checkMoneyTemplate(rules, value, callback, '税额') + }, handleOk() { this.form.validateFields((err, values) => { if (!err) { @@ -280,7 +373,7 @@ export default { * */ changePayMode(e) { if (e.target.value === 3) { - this.payModeBool = false + this.payModeBool = true } else { this.payModeBool = false } @@ -317,7 +410,11 @@ export default { 'needInvoice', 'paymentRecord', 'orderCode', - 'postCode' + 'postCode', + 'amountReceivable', + 'taxRate', + 'tax', + 'noTaxAmount' )) })