[update] 市场法规清单

This commit is contained in:
lideqin
2024-07-04 18:10:39 +08:00
parent 3e28fc9655
commit e50f7c8760
3 changed files with 78 additions and 28 deletions
@@ -382,7 +382,7 @@ export default {
title: this.$t('standardRegulationLibrary.marketListField.applicableCountryRegion'), title: this.$t('standardRegulationLibrary.marketListField.applicableCountryRegion'),
align: 'center', align: 'center',
width: 180, width: 180,
dataIndex: 'applicableCountryRegion_dictText', dataIndex: 'country_dictText',
scopedSlots: { customRender: 'text' } scopedSlots: { customRender: 'text' }
}, },
{ // 适用车型 { // 适用车型
@@ -410,7 +410,7 @@ export default {
title: this.$t('standardRegulationLibrary.marketListField.type'), title: this.$t('standardRegulationLibrary.marketListField.type'),
align: 'center', align: 'center',
width: 180, width: 180,
dataIndex: 'stanardClass_dictText', dataIndex: 'type_dictText',
scopedSlots: { customRender: 'text' } scopedSlots: { customRender: 'text' }
}, },
{ // 动力类型 { // 动力类型
@@ -755,13 +755,13 @@ export default {
form.standardNumber = result.standard_number // 标准编号 form.standardNumber = result.standard_number // 标准编号
form.standardName = result.standard_name // 标准名称 form.standardName = result.standard_name // 标准名称
form.standardEnglishName = result.standard_english_name // 标准英文名称 form.standardEnglishName = result.standard_english_name // 标准英文名称
form.stanardClass = result.standard_class // 标准类型 form.type = result.type // 标准类型
form.stanardClass_dictText = result.standard_class_dictText // 标准类型 form.type_dictText = result.type_dictText // 标准类型
form.newProductImplDate = result.new_product_impl_date // 新生产车实施日期 form.newProductImplDate = result.new_product_impl_date // 新生产车实施日期
form.newAuthImplDate = result.new_auth_impl_date // 新认证车实施日期 form.newAuthImplDate = result.new_auth_impl_date // 新认证车实施日期
form.registrationDate = result.registration_date // 注册日期 form.registrationDate = result.registration_date // 注册日期
form.applicableCountryRegion = result.applicable_market // 适用国家/地区 form.country = result.applicable_market // 适用国家/地区
form.applicableCountryRegion_dictText = result.applicable_market_dictText // 适用国家/地区 form.country_dictText = result.applicable_market_dictText // 适用国家/地区
form.mainDept = result.main_dept // 主控部门 form.mainDept = result.main_dept // 主控部门
form.mainDept_dictText = result.main_dept_dictText // 主控部门 form.mainDept_dictText = result.main_dept_dictText // 主控部门
form.mainDeptProfMode = result.main_dept_prof_mode || undefined // 主控部门专业模块 form.mainDeptProfMode = result.main_dept_prof_mode || undefined // 主控部门专业模块
@@ -873,7 +873,7 @@ export default {
'newProductImplDate', // 新生产车实施日期 'newProductImplDate', // 新生产车实施日期
'newAuthImplDate', // 新认证车实施日期 'newAuthImplDate', // 新认证车实施日期
'registrationDate', // 注册日期 'registrationDate', // 注册日期
'applicableCountryRegion', // 适用国家/地区 'country', // 适用国家/地区
'authenticationObject', // 认证对象 'authenticationObject', // 认证对象
'mainDept', // 主控部门 'mainDept', // 主控部门
'mainDeptProfMode', // 主控部门专业模块 'mainDeptProfMode', // 主控部门专业模块
@@ -243,7 +243,7 @@ export default {
url: { url: {
list: '/laws/marketStandard/page', list: '/laws/marketStandard/page',
exportXlsUrl: '/laws/marketStandard/exportXls', exportXlsUrl: '/laws/marketStandard/exportXls',
delete: '' delete: '/laws/marketStandard/delete'
} }
} }
}, },
@@ -38,7 +38,7 @@
<j-dict-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.type')" <j-dict-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.type')"
disabled disabled
dict-code="type" dict-code="type"
v-decorator.trim="[ 'stanardClass', validatorRules.stanardClass ]" /> v-decorator.trim="[ 'type', validatorRules.type ]" />
</a-form-item> </a-form-item>
<!-- 新生产车实施日期 --> <!-- 新生产车实施日期 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.newProductionVehicleImplementationDate')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.newProductionVehicleImplementationDate')">
@@ -61,11 +61,11 @@
<!-- 适用国家/地区 --> <!-- 适用国家/地区 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.applicableCountryRegion')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.applicableCountryRegion')">
<s-tree-select <s-tree-select
v-decorator.trim="[ 'applicableCountryRegion', validatorRules.applicableCountryRegion ]" v-decorator.trim="[ 'country', validatorRules.country ]"
:tree-data="countryOptions" :tree-data="countryOptions"
tree-checkable tree-checkable
treeCheckStrictly treeCheckStrictly
@change="applicableCountryRegionChange" @change="countryChange"
:placeholder="$t('pleaseSelect')+$t('standardRegulationLibrary.marketListField.applicableCountryRegion')" /> :placeholder="$t('pleaseSelect')+$t('standardRegulationLibrary.marketListField.applicableCountryRegion')" />
</a-form-item> </a-form-item>
<!-- 认证对象 --> <!-- 认证对象 -->
@@ -86,36 +86,46 @@
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.mainControlDepartment')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.mainControlDepartment')">
<j-select-depart :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.mainControlDepartment')" <j-select-depart :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.mainControlDepartment')"
:backDepart="true" :backDepart="true"
@back="mainDeptBack"
v-decorator.trim="[ 'mainDept', validatorRules.mainDept ]" /> v-decorator.trim="[ 'mainDept', validatorRules.mainDept ]" />
</a-form-item> </a-form-item>
<!-- 主控部门专业模块 --> <!-- 主控部门专业模块 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.masterControlDepartmentProfessionalModule')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.masterControlDepartmentProfessionalModule')">
<j-multi-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.masterControlDepartmentProfessionalModule')" <j-multi-select-tag ref="mainDeptProfMode"
:placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.masterControlDepartmentProfessionalModule')"
dict-code="professional_module" dict-code="professional_module"
@change="mainDeptProfModeChange"
v-decorator.trim="[ 'mainDeptProfMode', validatorRules.mainDeptProfMode ]" /> v-decorator.trim="[ 'mainDeptProfMode', validatorRules.mainDeptProfMode ]" />
</a-form-item> </a-form-item>
<!-- 关联部门 --> <!-- 关联部门 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.relatedDepartment')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.relatedDepartment')">
<j-select-depart :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.relatedDepartment')" <j-select-depart :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.relatedDepartment')"
:backDepart="true" :backDepart="true"
@back="associateDeptBack"
v-decorator.trim="[ 'associateDept', validatorRules.associateDept ]" /> v-decorator.trim="[ 'associateDept', validatorRules.associateDept ]" />
</a-form-item> </a-form-item>
<!-- 关联部门专业模块 --> <!-- 关联部门专业模块 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.associateDepartmentSpecializedModules')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.associateDepartmentSpecializedModules')">
<j-multi-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.associateDepartmentSpecializedModules')" <j-multi-select-tag ref="associateDeptProfMode"
:placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.associateDepartmentSpecializedModules')"
dict-code="professional_module" dict-code="professional_module"
@change="associateDeptProfModeChange"
v-decorator.trim="[ 'associateDeptProfMode', validatorRules.associateDeptProfMode ]" /> v-decorator.trim="[ 'associateDeptProfMode', validatorRules.associateDeptProfMode ]" />
</a-form-item> </a-form-item>
<!-- 适用车型 --> <!-- 适用车型 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.applicableVehicleType')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.applicableVehicleType')">
<j-multi-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.applicableVehicleType')" <j-multi-select-tag ref="applicableVehicle"
:placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.applicableVehicleType')"
dict-code="applicable_vehicle_type" dict-code="applicable_vehicle_type"
@change="applicableVehicleChange"
v-decorator.trim="[ 'applicableVehicle', validatorRules.applicableVehicle ]" /> v-decorator.trim="[ 'applicableVehicle', validatorRules.applicableVehicle ]" />
</a-form-item> </a-form-item>
<!-- 动力类型 --> <!-- 动力类型 -->
<a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.dynamicType')"> <a-form-item :labelCol="labelCol" :wrapperCol="wrapperCol" :label="$t('standardRegulationLibrary.marketListField.dynamicType')">
<j-multi-select-tag :placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.dynamicType')" <j-multi-select-tag ref="dynamicType"
:placeholder="$t('pleaseSelect') + $t('standardRegulationLibrary.marketListField.dynamicType')"
dict-code="dynamic_type" dict-code="dynamic_type"
@change="dynamicTypeChange"
v-decorator.trim="[ 'dynamicType', validatorRules.dynamicType ]" /> v-decorator.trim="[ 'dynamicType', validatorRules.dynamicType ]" />
</a-form-item> </a-form-item>
<!-- 批量限制 --> <!-- 批量限制 -->
@@ -225,7 +235,7 @@ export default {
validateTrigger: 'change' validateTrigger: 'change'
}, },
// 适用国家/地区 // 适用国家/地区
applicableCountryRegion: { country: {
rules: [{ rules: [{
required: true, required: true,
message: this.$t('pleaseSelect') + this.$t('standardRegulationLibrary.marketListField.applicableCountryRegion') message: this.$t('pleaseSelect') + this.$t('standardRegulationLibrary.marketListField.applicableCountryRegion')
@@ -287,16 +297,16 @@ export default {
this.visible = true this.visible = true
this.model = Object.assign({}, record) this.model = Object.assign({}, record)
// 处理适用国家/地区格式 // 处理适用国家/地区格式
if (this.model.applicableCountryRegion) { if (this.model.country) {
this.model.applicableCountryRegion = this.model.applicableCountryRegion.split(',').map(item => { this.model.country = this.model.country.split(',').map(item => {
return { value: item } return { value: item }
}) })
} else { } else {
this.model.applicableCountryRegion = [] this.model.country = []
} }
this.$nextTick(() => { this.$nextTick(() => {
this.form.setFieldsValue(pick(this.model, 'standardNumber', 'standardName', 'standardEnglishName', this.form.setFieldsValue(pick(this.model, 'standardNumber', 'standardName', 'standardEnglishName',
'stanardClass', 'newProductImplDate', 'newAuthImplDate', 'registrationDate', 'applicableCountryRegion', 'type', 'newProductImplDate', 'newAuthImplDate', 'registrationDate', 'country',
'authenticationObject', 'certifyTheDeliverables', 'mainDept', 'mainDeptProfMode', 'associateDept', 'authenticationObject', 'certifyTheDeliverables', 'mainDept', 'mainDeptProfMode', 'associateDept',
'associateDeptProfMode', 'applicableVehicle', 'dynamicType', 'batchLimit', 'autopilotLevel', 'requireType')) 'associateDeptProfMode', 'applicableVehicle', 'dynamicType', 'batchLimit', 'autopilotLevel', 'requireType'))
}) })
@@ -319,15 +329,15 @@ export default {
form.standardId = result.id form.standardId = result.id
form.standardName = result.standard_name // 标准名称 form.standardName = result.standard_name // 标准名称
form.standardEnglishName = result.standard_english_name // 标准英文名称 form.standardEnglishName = result.standard_english_name // 标准英文名称
form.stanardClass = result.standard_class // 标准类型 form.type = result.type // 标准类型
form.stanardClass_dictText = result.standard_class_dictText // 标准类型 form.type_dictText = result.type_dictText // 标准类型
form.newProductImplDate = result.new_product_impl_date // 新生产车实施日期 form.newProductImplDate = result.new_product_impl_date // 新生产车实施日期
form.newAuthImplDate = result.new_auth_impl_date // 新认证车实施日期 form.newAuthImplDate = result.new_auth_impl_date // 新认证车实施日期
form.registrationDate = result.registration_date // 注册日期 form.registrationDate = result.registration_date // 注册日期
form.applicableCountryRegion = result.applicable_market ? (result.applicable_market.split(',').map(item => { form.country = result.applicable_market ? (result.applicable_market.split(',').map(item => {
return { value: item } return { value: item }
})) : [] // 适用国家/地区 })) : [] // 适用国家/地区
form.applicableCountryRegion_dictText = result.applicable_market_dictText // 适用国家/地区 form.country_dictText = result.applicable_market_dictText // 适用国家/地区
form.mainDept = result.main_dept // 主控部门 form.mainDept = result.main_dept // 主控部门
form.mainDept_dictText = result.main_dept_dictText // 主控部门 form.mainDept_dictText = result.main_dept_dictText // 主控部门
form.mainDeptProfMode = result.main_dept_prof_mode || undefined // 主控部门专业模块 form.mainDeptProfMode = result.main_dept_prof_mode || undefined // 主控部门专业模块
@@ -343,7 +353,7 @@ export default {
this.model = Object.assign({}, form) this.model = Object.assign({}, form)
this.$nextTick(() => { this.$nextTick(() => {
this.form.setFieldsValue(pick(form, 'standardName', 'standardEnglishName', this.form.setFieldsValue(pick(form, 'standardName', 'standardEnglishName',
'stanardClass', 'newProductImplDate', 'newAuthImplDate', 'registrationDate', 'applicableCountryRegion', 'type', 'newProductImplDate', 'newAuthImplDate', 'registrationDate', 'country',
'mainDept', 'mainDeptProfMode', 'associateDept', 'associateDeptProfMode', 'applicableVehicle', 'dynamicType')) 'mainDept', 'mainDeptProfMode', 'associateDept', 'associateDeptProfMode', 'applicableVehicle', 'dynamicType'))
}) })
} }
@@ -351,9 +361,49 @@ export default {
this.confirmLoading = false this.confirmLoading = false
}) })
}, },
// 主控部门回调
mainDeptBack (value) {
if (value && value.length > 0) {
this.model.mainDept_dictText = value.map(item => item.text).join(',')
} else {
this.model.mainDept_dictText = ''
}
},
// 关联部门回调
associateDeptBack (value) {
if (value && value.length > 0) {
this.model.associateDept_dictText = value.map(item => item.text).join(',')
} else {
this.model.associateDept_dictText = ''
}
},
// 主控部门专业模块改变
mainDeptProfModeChange (value) {
const valueArr = value.split(this.$refs.mainDeptProfMode.spliter)
const arr = this.$refs.mainDeptProfMode.dictOptions.filter(item => valueArr.includes(item.value))
this.model.mainDeptProfMode_dictText = arr.map(item => item.title).join(',')
},
// 关联部门专业模块改变
associateDeptProfModeChange (value) {
const valueArr = value.split(this.$refs.associateDeptProfMode.spliter)
const arr = this.$refs.associateDeptProfMode.dictOptions.filter(item => valueArr.includes(item.value))
this.model.associateDeptProfMode_dictText = arr.map(item => item.title).join(',')
},
// 适用车型改变
applicableVehicleChange (value) {
const valueArr = value.split(this.$refs.applicableVehicle.spliter)
const arr = this.$refs.applicableVehicle.dictOptions.filter(item => valueArr.includes(item.value))
this.model.applicableVehicle_dictText = arr.map(item => item.title).join(',')
},
// 动力类型改变
dynamicTypeChange (value) {
const valueArr = value.split(this.$refs.dynamicType.spliter)
const arr = this.$refs.dynamicType.dictOptions.filter(item => valueArr.includes(item.value))
this.model.dynamicType_dictText = arr.map(item => item.title).join(',')
},
// 适用国家/地区改变 // 适用国家/地区改变
applicableCountryRegionChange (value) { countryChange (value) {
this.model.applicableCountryRegion_dictText = value.map(item => item.label).join(',') this.model.country_dictText = value.map(item => item.label).join(',')
}, },
// 认证对象改变 // 认证对象改变
authenticationObjectChange (value) { authenticationObjectChange (value) {
@@ -384,7 +434,7 @@ export default {
this.confirmLoading = true this.confirmLoading = true
const param = Object.assign({}, values) const param = Object.assign({}, values)
// 处理适用国家/地区格式 // 处理适用国家/地区格式
param.applicableCountryRegion = param.applicableCountryRegion.map(item => item.value).join(',') param.country = param.country.map(item => item.value).join(',')
this.$emit('ok', { ...this.model, ...param }) this.$emit('ok', { ...this.model, ...param })
this.close() this.close()
this.confirmLoading = false this.confirmLoading = false