Commit f79565f8 authored by 祁正's avatar 祁正

通知单管理-新增表单验证

parent d37ca124
import request from '@/utils/request'
// 获取所有事业部列表
export function getUnitList() {
return request({
url: '/control/unit/getAllBusinessUnitName',
method: 'get'
})
}
// 查询国内品牌数据列表
export function brandData() {
return request({
url: '/control/brandData/list?type=国内',
method: 'get'
})
}
// 获取所有制造商数据-生产地址
export function getALLManufacturerList() {
return request({
url: '/control/notificationManagement/getALLManufacturerList',
method: 'get'
})
}
...@@ -26,9 +26,9 @@ ...@@ -26,9 +26,9 @@
style="width: 120px" style="width: 120px"
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in unitList"
:label="dict" :label="dict.businessUnitName"
:value="dict" :value="dict.id"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -142,14 +142,14 @@ ...@@ -142,14 +142,14 @@
<!-- 抽屉--> <!-- 抽屉-->
<el-drawer v-model="drawer"> <el-drawer @close="drawerColse" v-model="drawer">
<template #header> <template #header>
<div style="font-weight: bold;font-size: 14px"> <div style="font-weight: bold;font-size: 14px">
新增通知单 新增通知单
</div> </div>
</template> </template>
<template #default> <template #default>
<el-form class="drawer-form" :rules="rules" v-model="drawerQueryParams" label-width="100px" ref="drawerQueryRef" > <el-form class="drawer-form" :rules="rules" :model="drawerQueryParams" label-width="100px" ref="drawerQueryRef" >
<el-row > <el-row >
<el-col :offset="1" :span="22"> <el-col :offset="1" :span="22">
<el-form-item label="认证机构" prop="certificationBody"> <el-form-item label="认证机构" prop="certificationBody">
...@@ -157,12 +157,11 @@ ...@@ -157,12 +157,11 @@
v-model="drawerQueryParams.certificationBody" v-model="drawerQueryParams.certificationBody"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in certification_body"
:label="dict" :label="dict.label"
:value="dict" :value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -173,15 +172,16 @@ ...@@ -173,15 +172,16 @@
<el-col :offset="1" :span="11"> <el-col :offset="1" :span="11">
<el-form-item label="事业部" prop="businessDivisionId"> <el-form-item label="事业部" prop="businessDivisionId">
<el-select <el-select
@change="onChange"
v-model="drawerQueryParams.businessDivisionId" v-model="drawerQueryParams.businessDivisionId"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in unitList"
:label="dict" :label="dict.businessUnitName"
:value="dict" :value="dict.id"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -195,9 +195,9 @@ ...@@ -195,9 +195,9 @@
clearable clearable
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in brandList"
:label="dict" :label="dict.brand"
:value="dict" :value="dict.id"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -213,7 +213,7 @@ ...@@ -213,7 +213,7 @@
clearable clearable
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in modelCodeList"
:label="dict" :label="dict"
:value="dict" :value="dict"
/> />
...@@ -226,14 +226,16 @@ ...@@ -226,14 +226,16 @@
<el-col :offset="1" :span="22"> <el-col :offset="1" :span="22">
<el-form-item label="车型系列" prop="vehicleSeries"> <el-form-item label="车型系列" prop="vehicleSeries">
<el-select <el-select
v-model="drawerQueryParams.groupName" :disabled="!drawerQueryParams.businessDivisionId"
v-model="drawerQueryParams.vehicleSeries"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
<el-option <el-option
v-for="dict in 4"
:label="dict" v-for="dict in vehicleModelSeriesList"
:value="dict" :label="dict.label"
:value="dict.value"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -244,14 +246,15 @@ ...@@ -244,14 +246,15 @@
<el-col :offset="1" :span="22"> <el-col :offset="1" :span="22">
<el-form-item label="生产地址" prop="productionAddress"> <el-form-item label="生产地址" prop="productionAddress">
<el-select <el-select
placement="bottom"
v-model="drawerQueryParams.productionAddress" v-model="drawerQueryParams.productionAddress"
placeholder="请选择" placeholder="请选择"
clearable clearable
> >
<el-option <el-option
v-for="dict in 4" v-for="dict in addressList"
:label="dict" :label="dict.productionAddress"
:value="dict" :value="dict.id"
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
...@@ -287,18 +290,36 @@ ...@@ -287,18 +290,36 @@
<template #footer> <template #footer>
<div style="flex: auto"> <div style="flex: auto">
<el-button class="btn-B" @click="cancelClick">取消</el-button> <el-button class="btn-B" @click="cancelClick">取消</el-button>
<el-button class="btn-A" type="primary" @click="confirmClick">保存</el-button> <el-button class="btn-A" type="primary" @click="confirmClick(drawerQueryRef)">保存</el-button>
</div> </div>
</template> </template>
</el-drawer> </el-drawer>
</div> </div>
</template> </template>
<script setup> <script setup>
import {getUnitList,brandData,getALLManufacturerList} from "@/api/notificationManagement/list.js"
import { ref } from "vue"; import { ref } from "vue";
const { proxy } = getCurrentInstance();
const { certification_body } = proxy.useDict('certification_body')
//车型系列-事业部icar才能选这个
const { vehicle_model_series_icar } = proxy.useDict('vehicle_model_series_icar')
//车型系列-除了事业部icar选这个
const {vehicle_model_series } = proxy.useDict('vehicle_model_series')
const tableList =ref([]) const tableList =ref([])
const vehicleModelSeriesList = ref([])
const addressList = ref([])
const drawer = ref(false) const drawer = ref(false)
const drawerQueryParams = ref({}) const modelCodeList = ref([
'T19C',
'T18'
])
const unitList = ref([])
const brandList = ref([])
const drawerQueryParams = ref({
//暂时写死等接口
approvalPerson:"2",
certificationResponsiblePerson:"2,100,101"
})
const queryParams = ref({ const queryParams = ref({
pageNum: 1, pageNum: 1,
pageSize: 10, pageSize: 10,
...@@ -312,58 +333,88 @@ function addNotifiction(){ ...@@ -312,58 +333,88 @@ function addNotifiction(){
const rules = ref({ const rules = ref({
certificationBody: [ certificationBody: [
{ required: true, message: '请选择认证机构', trigger: 'blur' } { required: true, message: '请选择认证机构', trigger: 'change' }
], ],
businessDivisionId: [ businessDivisionId: [
{ required: true, message: '请选择事业部', trigger: 'blur' } { required: true, message: '请选择事业部', trigger: 'change' }
], ],
brandId: [ brandId: [
{ required: true, message: '请选择品牌', trigger: 'blur' } { required: true, message: '请选择品牌', trigger: 'change' }
], ],
vehicleModelCode: [ vehicleModelCode: [
{ required: true, message: '请输入车型代码', trigger: 'blur' } { required: true, message: '请输入车型代码', trigger: 'change' }
], ],
vehicleSeries: [ vehicleSeries: [
{ required: true, message: '请选择车型系列', trigger: 'blur' } { required: true, message: '请选择车型系列', trigger: 'change' }
], ],
productionAddress: [ productionAddress: [
{ required: true, message: '请选择生产地址', trigger: 'blur' } { required: true, message: '请选择生产地址', trigger: 'change' }
], ],
approvalPerson: [ approvalPerson: [
{ required: true, message: '请选择批准人', trigger: 'blur' } { required: true, message: '请选择批准人', trigger: 'change' }
], ],
certificationResponsiblePerson: [ certificationResponsiblePerson: [
{ required: true, message: '请选择认证负责人', trigger: 'blur' } { required: true, message: '请选择认证负责人', trigger: 'change' }
] ]
}); });
function confirmClick(){ function confirmClick(formRef) {
drawerQueryRef.value.validate((v)=>{ drawerQueryRef.value.validate((valid) => {
if(v){ if (valid) {
console.log(drawerQueryParams) console.log(drawerQueryParams.value);
} else {
console.log('表单验证失败');
return false;
} }
});
}
//获取事业部列表
function getUnitDataList(){
getUnitList().then(res=>{
unitList.value = res.data
}) })
} }
//获取品牌列表
function getBrandDataList(){
brandData().then(res=>{
brandList.value = res.rows
})
}
function onChange(){
console.log(drawerQueryParams.value.businessDivisionId)
let id = drawerQueryParams.value.businessDivisionId
drawerQueryParams.value.vehicleSeries = null
//icak的id(暂时)
if(id === "1911691206111260672"){
vehicleModelSeriesList.value = toValue(vehicle_model_series_icar)
}else {
vehicleModelSeriesList.value =toValue(vehicle_model_series)
}
console.log(vehicleModelSeriesList.value)
}
//获取所有制造商数据-生产地址
function getALLManufacturerDataList(){
getALLManufacturerList().then(res=>{
console.log(res)
addressList.value = res.data
})
}
function drawerColse(){
drawerQueryRef.value.resetFields()
}
getALLManufacturerDataList()
getUnitDataList()
getBrandDataList()
</script> </script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment