diff --git a/src/api/customer/sampleList.ts b/src/api/customer/sampleList.ts index 3ac7392..2610494 100644 --- a/src/api/customer/sampleList.ts +++ b/src/api/customer/sampleList.ts @@ -26,7 +26,7 @@ // 导出列表 export function exportSapmleList(data: Omit) { return request({ - url: `${prefix}/sample/listExport`, + url: `${prefix}/sample/export`, method: 'post', responseType: 'blob', data, @@ -36,7 +36,7 @@ // 新增数据 export function addSample(data: object) { return request({ - url: `${prefix}/sample/submit`, + url: `${prefix}/sample/add`, method: 'post', data, }) diff --git a/src/api/customer/sampleList.ts b/src/api/customer/sampleList.ts index 3ac7392..2610494 100644 --- a/src/api/customer/sampleList.ts +++ b/src/api/customer/sampleList.ts @@ -26,7 +26,7 @@ // 导出列表 export function exportSapmleList(data: Omit) { return request({ - url: `${prefix}/sample/listExport`, + url: `${prefix}/sample/export`, method: 'post', responseType: 'blob', data, @@ -36,7 +36,7 @@ // 新增数据 export function addSample(data: object) { return request({ - url: `${prefix}/sample/submit`, + url: `${prefix}/sample/add`, method: 'post', data, }) diff --git a/src/views/customer/sample/list/edit.vue b/src/views/customer/sample/list/edit.vue index 8e58690..e7d1acb 100644 --- a/src/views/customer/sample/list/edit.vue +++ b/src/views/customer/sample/list/edit.vue @@ -4,16 +4,13 @@ import { ElMessage, ElMessageBox } from 'element-plus' import type { FormInstance, UploadUserFile } from 'element-plus' import { ref } from 'vue' -import { Calendar, Search } from '@element-plus/icons-vue' import type { ISampleEdit, Menu, SimpleCertification, SimpleMeasureRecord } from './sample_list_interface' import selectCustomer from './selectCustomer.vue' import showPhoto from '@/views/system/tool/showPhoto.vue' -import { SCHEDULE } from '@/utils/scheduleDict' import TemplateTable from '@/views/customer/customerInfo/templateTable.vue' import { addSample, getSapmleDetail, updateSample } from '@/api/customer/sampleList' import countries from '@/components/AddressSelect/country-code.json' import { UploadFile } from '@/api/measure/file' -import type { TableColumn } from '@/components/NormalTable/table_interface' import type { ICustomer } from '@/views/customer/customerInfo/customer_interface' const textMap: { [key: string]: string } = { @@ -26,88 +23,44 @@ const loading = ref(false) // 表单加载状态 const infoId = ref('') // id const visible = ref(false) // 控制对话框显隐 -const mesureCategoryMap: { [key: string]: string } = { - edit: '编辑', - add: '新建', - detail: '详情', -}// 字典 const mesureCategoryList = [ { label: '检定', - value: 'jd', + value: '1', }, { label: '检测', - value: 'jc', + value: '2', }, { label: '验收检定', - value: 'ysjd', + value: '3', }, { label: '抽检', - value: 'cj', + value: '4', }, { label: '校准', - value: 'jz', + value: '5', }, { label: '测试', - value: 'cs', + value: '6', }, { label: '验收校准', - value: 'ysjz', + value: '7', }, ]// 校检类别 -const mesureResultList = [ - { - label: '合格', - value: 'hg', - }, - { - label: '修后合格', - value: 'xhhg', - }, - { - label: '限用', - value: 'xy', - }, - { - label: '准用', - value: 'zy', - }, - { - label: '不合格', - value: 'bhg', - }, - { - label: '漏检', - value: 'lj', - }, - { - label: '逾期未检定', - value: 'yqwjd', - }, -]// 检定结果 -const mesureResultMap = { - hg: '合格', - xhhg: '修后合格', - xy: '限用', - zy: '准用', - bhg: '不合格', - lj: '漏检', - yqwjd: '逾期未检定', -}// 检定结果字典 const mesureTypeList = [ { label: '自检', - value: 'zj', + value: '2', }, { label: '外包', - value: 'wb', + value: '1', }, ]// 检定方式 const dataForm: Ref = ref({ @@ -120,25 +73,38 @@ customerName: '', // 委托方名称 phone: '', // 委托方电话 postalCode: '', // 委托方邮编 - companyAddress: '', // 委托方地址 - mesureCategory: '', // 检校类别 + customerAddress: '', // 委托方地址 + measureCategory: '', // 检校类别 manufacturer: '', // 生产厂家 manufacturerCountry: '', // 厂家国别 manufacturingDate: '', // 出厂年月 ABC: '', // ABC // deliverer: '', // 送检人 // delivererTel: '', // 送检人联系方式 - mesureContent: '', // 检定项目 - mesurePeriod: '', // 检定周期 + measureContent: '', // 检定项目 + measurePeriod: '', // 检定周期 remark: '', // 备注 minioFileName: '', // 说明书 labelBind: '', // 标签绑定 - mesureType: '', // 检定方式 + measureType: '2', // 检定方式 1外包、2自检 + measureLastTime: '', // 检定日期 + validDeadline: '', // 有效日期 + powerVoltage: '', // 电源电压 }) +const powerVoltageMap = [ + { + label: '110V', + value: '110V', + }, + { + label: '220V', + value: '220V', + }, +]// 电源电压 const ruleFormRef = ref() // 自定义校验规则--检定周期为正整数 -const validateMesurePeriod = (rule: any, value: any, callback: any) => { +const validateMesurePeriod = (rule: any, value: string, callback: Function) => { if (value === '') { callback() } @@ -152,16 +118,17 @@ // 校验规则 const rules = ref({ - sampleName: [{ required: true, message: '样品名称不能为空', trigger: 'blur' }], - sampleModel: [{ required: true, message: '样品型号不能为空', trigger: 'blur' }], - manufacturingNo: [{ required: true, message: '出厂编号不能为空', trigger: 'blur' }], - customerNo: [{ required: true, message: '委托方代码不能为空', trigger: 'change' }], - customerName: [{ required: true, message: '委托方名称不能为空', trigger: 'blur' }], - phone: [{ required: true, message: '委托方电话不能为空', trigger: 'blur' }], - postalCode: [{ required: true, message: '委托方邮编不能为空', trigger: 'blur' }], - companyAddress: [{ required: true, message: '委托方地址不能为空', trigger: 'blur' }], - mesureContent: [{ required: true, message: '检定项目不能为空', trigger: 'blur' }], - mesurePeriod: [{ validator: validateMesurePeriod, trigger: 'blur' }], + sampleName: [{ required: true, message: '要求样品名称不能为空', trigger: 'blur' }], + sampleModel: [{ required: true, message: '要求样品型号不能为空', trigger: 'blur' }], + manufacturingNo: [{ required: true, message: '要求出厂编号不能为空', trigger: 'blur' }], + customerNo: [{ required: true, message: '要求委托方代码不能为空', trigger: 'change' }], + customerName: [{ required: true, message: '要求委托方名称不能为空', trigger: 'change' }], + phone: [{ required: true, message: '要求委托方电话不能为空', trigger: 'change' }], + postalCode: [{ required: true, message: '要求委托方邮编不能为空', trigger: 'change' }], + customerAddress: [{ required: true, message: '要求委托方地址不能为空', trigger: 'change' }], + measureContent: [{ required: true, message: '要求检定项目不能为空', trigger: 'blur' }], + measurePeriod: [{ validator: validateMesurePeriod, trigger: 'blur' }], + powerVoltage: [{ required: true, message: '要求电源电压不能为空', trigger: 'change' }], }) // 表单验证规则 // 其他关联数据列表 @@ -277,7 +244,7 @@ dataForm.value.customerName = getValue.customerName dataForm.value.phone = getValue.phone dataForm.value.postalCode = getValue.postalCode - dataForm.value.companyAddress = getValue.briefName + dataForm.value.customerAddress = getValue.briefName } } @@ -325,54 +292,13 @@ }) } -// 提交表单 -function submitForm() { - if (dataForm.value.id) { - const params = { - id: dataForm.value.id, - formId: SCHEDULE.SUPPLIER_APPROVAL, // 表单id - } - addSample(params).then((res) => { - ElMessage.success('提交成功') - close() - }) - } - else { - ElMessage.info('请先保存再提交!') - } -} - +// 获取详细信息 const getInfo = () => { getSapmleDetail({ id: infoId.value }).then((res) => { - res.data = { - ABC: 'A', - companyAddress: '北京/北京市', - customerName: '京东集团', - customerNo: 'sygf202211290001', - id: '', - labelBind: '11222', - manufacturer: '北京某厂家', - manufacturerCountry: 'CN', - manufacturingDate: '2023-03', - manufacturingNo: '123121', - mesureCategory: 'jd', - mesureContent: '项目1', - mesurePeriod: '1', - mesureType: 'zj', - minioFileName: '小程序工期表-1117_1674961769128.xlsx', - phone: '950618', - postalCode: 'test', - remark: '无备注', - sampleModel: '型号1', - sampleName: '样品1', - sampleNo: '', - measureResultCode: 'bhg', + dataForm.value = res.data + for (const item of menu) { + item.searchFunc() } - // dataForm.value = res.data - // dataForm.value.measureResult = mesureResultMap[dataForm.value.measureResultCode] - // for (const item of menu) { - // item.searchFunc() - // } }) } @@ -448,15 +374,14 @@ -