From 844e3ced6971665b4208a106f96174dd05a33511 Mon Sep 17 00:00:00 2001 From: lideqin <694785430@qq.com> Date: Thu, 4 Jul 2024 09:59:19 +0800 Subject: [PATCH] =?UTF-8?q?[update]=20=E5=B8=82=E5=9C=BA=E6=B3=95=E8=A7=84?= =?UTF-8?q?=E6=B8=85=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MarketRegulationsFormPage.vue | 68 ++++++++++++------- 1 file changed, 43 insertions(+), 25 deletions(-) diff --git a/src/views/standardRegulationLibrary/marketRegulationsList/MarketRegulationsFormPage.vue b/src/views/standardRegulationLibrary/marketRegulationsList/MarketRegulationsFormPage.vue index 4501052..f4a1128 100644 --- a/src/views/standardRegulationLibrary/marketRegulationsList/MarketRegulationsFormPage.vue +++ b/src/views/standardRegulationLibrary/marketRegulationsList/MarketRegulationsFormPage.vue @@ -17,7 +17,8 @@ :getPopupContainer="triggerNode=> triggerNode.parentNode" style="width: 100%" :tree-data="countryOptions" - :label-in-value="false" + tree-checkable + treeCheckStrictly :placeholder="$t('pleaseSelect')+$t('standardRegulationLibrary.marketRegulationsList.countryRegion')" /> @@ -47,9 +48,12 @@ - + + + + @@ -838,32 +842,46 @@ export default { // 提交 handleSubmit () { if (this.loading) return - const requiredField = [ - 'standardNumber', // 标准编号 - 'standardName', // 标准名称 - 'newProductImplDate', // 新生产车实施日期 - 'newAuthImplDate', // 新认证车实施日期 - 'registrationDate', // 注册日期 - 'applicableCountryRegion', // 适用国家/地区 - 'authenticationObject', // 认证对象 - 'mainDept', // 主控部门 - 'mainDeptProfMode', // 主控部门专业模块 - 'applicableVehicle', // 适用车型 - 'dynamicType' // 动力类型 - ] - for (const item of this.dataList) { - for (const filed of requiredField) { - if (!item[filed]) { - this.$message.warning(this.$t('pleaseCompleteTableInfo')) - return + this.form.validateFields((err, values) => { + if (err) { + return + } + let tableErr = false + // 校验表格是否至少有一条数据 + if (this.dataList.length <= 0) { + this.$message.warning(this.$t('addAtLeastOneRowOfData')) + tableErr = true + return + } + // 校验表格必填项是否都填写了 + const requiredField = [ + 'standardNumber', // 标准编号 + 'standardName', // 标准名称 + 'newProductImplDate', // 新生产车实施日期 + 'newAuthImplDate', // 新认证车实施日期 + 'registrationDate', // 注册日期 + 'applicableCountryRegion', // 适用国家/地区 + 'authenticationObject', // 认证对象 + 'mainDept', // 主控部门 + 'mainDeptProfMode', // 主控部门专业模块 + 'applicableVehicle', // 适用车型 + 'dynamicType' // 动力类型 + ] + for (const item of this.dataList) { + for (const filed of requiredField) { + if (!item[filed]) { + this.$message.warning(this.$t('pleaseCompleteTableInfo')) + tableErr = true + return + } } } - } - this.form.validateFields((err, values) => { - if (!err) { + if (!err && !tableErr) { this.loading = true const param = {} param.manifest = Object.assign({}, values) + // 国家/地区是树选择,需要处理格式 + param.manifest.country = param.manifest.country.map(item => item.value).join(',') let func if (this.model.manifest.id) { param.manifest.id = this.model.manifest.id