diff --git a/src/router/routes.ts b/src/router/routes.ts index 4153ab5..5210ea6 100644 --- a/src/router/routes.ts +++ b/src/router/routes.ts @@ -5,6 +5,7 @@ import systemRoute from './modules/system' import measureRoute from './modules/measure' import deviceRoute from './modules/device' +import customerRoute from './modules/customer' import type { Route } from '@/global' import useSettingsStore from '@/store/modules/settings' @@ -164,12 +165,10 @@ meta: { title: '客户资源', icon: '', - // auth: 'khzy', - auth: '/well', + auth: '/customer', }, children: [ - MultilevelMenuExample, - BreadcrumbExample, + ...customerRoute, ], }, { diff --git a/src/router/routes.ts b/src/router/routes.ts index 4153ab5..5210ea6 100644 --- a/src/router/routes.ts +++ b/src/router/routes.ts @@ -5,6 +5,7 @@ import systemRoute from './modules/system' import measureRoute from './modules/measure' import deviceRoute from './modules/device' +import customerRoute from './modules/customer' import type { Route } from '@/global' import useSettingsStore from '@/store/modules/settings' @@ -164,12 +165,10 @@ meta: { title: '客户资源', icon: '', - // auth: 'khzy', - auth: '/well', + auth: '/customer', }, children: [ - MultilevelMenuExample, - BreadcrumbExample, + ...customerRoute, ], }, { diff --git a/src/views/customer/customerInfo/customerAdd.vue b/src/views/customer/customerInfo/customerAdd.vue index a2d1d87..e4132cf 100644 --- a/src/views/customer/customerInfo/customerAdd.vue +++ b/src/views/customer/customerInfo/customerAdd.vue @@ -6,7 +6,7 @@ import { ElMessage, ElMessageBox } from 'element-plus' import type { FormInstance, UploadUserFile } from 'element-plus' import baseInfoDetail from './components/baseInfoDetail.vue' -import type { ISupplier, traceSupplierPerson } from './list_interface' +import type { ICustomer, customerPerson } from './customer_interface' import showPhoto from '@/views/system/tool/showPhoto.vue' import { UploadFile } from '@/api/measure/file' import { getSoucreListDetail, getSoucreListlevelType, sourceSave, sourceSubmit } from '@/api/measure/source' @@ -30,11 +30,11 @@ infoId.value = $route.params.id as string } } -const formInline: Ref = ref({ +const dataForm: Ref = ref({ id: '', businessContent: '', - supplierName: '', - supplierNo: '', + customerName: '', + customerNo: '', bankAccount: '', bankAccountNumber: '', bankName: '', @@ -68,11 +68,11 @@ remark: '', taxNumber: '', website: '', - traceSupplierPersonList: [], + customerPersonList: [], }) const companyAddress = ref([]) // 公司地址 const invoiceAddress = ref([]) // 开票地址 -const traceSupplierPersonList: Ref = ref([]) // 人员列表 +const customerPersonList: Ref = ref([]) // 人员列表 const columns = ref([ { text: '人员编号', value: 'personNo', required: false }, { text: '姓名', value: 'name', required: true }, @@ -82,7 +82,7 @@ ]) const ruleFormRef = ref() // 人员对象 -const addPersonObj: traceSupplierPerson = { +const addPersonObj: customerPerson = { id: '', personNo: '', name: '', @@ -91,10 +91,10 @@ phone: '', editable: true, } -const SelectionList: Ref = ref([]) +const SelectionList: Ref = ref([]) // 校验规则 const rules = ref({ - supplierName: [{ required: true, message: '公司名称不能为空', trigger: 'blur' }], + customerName: [{ required: true, message: '公司名称不能为空', trigger: 'blur' }], businessContent: [{ required: true, message: '业务内容不能为空', trigger: 'blur' }], taxNumber: [{ required: true, message: '税号不能为空', trigger: 'blur' }], }) // 表单验证规则 @@ -106,52 +106,52 @@ } const getInfo = () => { getSoucreListDetail({ id: infoId.value }).then((res) => { - formInline.value = res.data - companyAddress.value = [formInline.value.companyCountry, formInline.value.companyProvince, formInline.value.companyCity, formInline.value.companyArea, formInline.value.companyAddress] - invoiceAddress.value = [formInline.value.invoiceCountry, formInline.value.invoiceProvince, formInline.value.invoiceCity, formInline.value.invoiceArea, formInline.value.invoiceAddress] + dataForm.value = res.data + companyAddress.value = [dataForm.value.companyCountry, dataForm.value.companyProvince, dataForm.value.companyCity, dataForm.value.companyArea, dataForm.value.companyAddress] + invoiceAddress.value = [dataForm.value.invoiceCountry, dataForm.value.invoiceProvince, dataForm.value.invoiceCity, dataForm.value.invoiceArea, dataForm.value.invoiceAddress] }) } // 表格选中 -const handleSelectionChange = (e: traceSupplierPerson[]) => { +const handleSelectionChange = (e: customerPerson[]) => { SelectionList.value = e } // 公司地址变化后给对象赋值 function companyAddressChange(addressObj: IAddress) { - formInline.value.companyCountry = addressObj.country - formInline.value.companyProvince = addressObj.province - formInline.value.companyCity = addressObj.city - formInline.value.companyArea = addressObj.area - formInline.value.companyAddress = addressObj.address - formInline.value.companyCountryName = addressObj.countryName - formInline.value.companyProvinceName = addressObj.provinceName - formInline.value.companyCityName = addressObj.cityName - formInline.value.companyAreaName = addressObj.areaName + dataForm.value.companyCountry = addressObj.country + dataForm.value.companyProvince = addressObj.province + dataForm.value.companyCity = addressObj.city + dataForm.value.companyArea = addressObj.area + dataForm.value.companyAddress = addressObj.address + dataForm.value.companyCountryName = addressObj.countryName + dataForm.value.companyProvinceName = addressObj.provinceName + dataForm.value.companyCityName = addressObj.cityName + dataForm.value.companyAreaName = addressObj.areaName } function invoiceAddressChange(addressObj: IAddress) { - formInline.value.invoiceCountry = addressObj.country - formInline.value.invoiceProvince = addressObj.province - formInline.value.invoiceCity = addressObj.city - formInline.value.invoiceArea = addressObj.area - formInline.value.invoiceAddress = addressObj.address - formInline.value.invoiceCountryName = addressObj.countryName - formInline.value.invoiceProvinceName = addressObj.provinceName - formInline.value.invoiceCityName = addressObj.cityName - formInline.value.invoiceAreaName = addressObj.areaName + dataForm.value.invoiceCountry = addressObj.country + dataForm.value.invoiceProvince = addressObj.province + dataForm.value.invoiceCity = addressObj.city + dataForm.value.invoiceArea = addressObj.area + dataForm.value.invoiceAddress = addressObj.address + dataForm.value.invoiceCountryName = addressObj.countryName + dataForm.value.invoiceProvinceName = addressObj.provinceName + dataForm.value.invoiceCityName = addressObj.cityName + dataForm.value.invoiceAreaName = addressObj.areaName } // 点击增加行 const addRow = () => { // 检查上一行必填项 if (checkPersonList()) { setAllRowReadable() - traceSupplierPersonList.value.push({ ...addPersonObj }) + customerPersonList.value.push({ ...addPersonObj }) } } // 检查人员列表 function checkPersonList() { - for (let index = 0; index < traceSupplierPersonList.value.length; index++) { - const item = traceSupplierPersonList.value[index] + for (let index = 0; index < customerPersonList.value.length; index++) { + const item = customerPersonList.value[index] for (const prop of columns.value) { // 检查必填 if (prop.required && !item[prop.value]) { @@ -172,7 +172,7 @@ // 删除行 const deleteList = () => { - traceSupplierPersonList.value = traceSupplierPersonList.value.filter((item: traceSupplierPerson) => { + customerPersonList.value = customerPersonList.value.filter((item: customerPerson) => { return !SelectionList.value.includes(item) }) } @@ -186,7 +186,7 @@ extarCss: '', }) -// 保存至草稿箱 +// 保存 function saveForm(formEl: FormInstance | undefined) { if (!formEl) { return } formEl.validate((valid, fields) => { @@ -200,10 +200,10 @@ type: 'warning', }, ).then(() => { - sourceSave(formInline.value).then((res) => { + sourceSave(dataForm.value).then((res) => { if (res.code === 200) { - formInline.value.id = res.data.id - formInline.value.supplierNo = res.data.supplierNo + dataForm.value.id = res.data.id + dataForm.value.customerNo = res.data.customerNo ElMessage.success('已保存') } }) @@ -214,9 +214,9 @@ // 提交表单 function submitForm() { - if (formInline.value.id) { + if (dataForm.value.id) { const params = { - id: formInline.value.id, + id: dataForm.value.id, formId: SCHEDULE.SUPPLIER_APPROVAL, // 表单id } sourceSubmit(params).then((res) => { @@ -243,7 +243,7 @@ fd.append('multipartFile', event.target.files[0]) UploadFile(fd).then((res) => { if (res.code === 200) { - formInline.value.minioFileName = res.data[0] + dataForm.value.minioFileName = res.data[0] // 重置当前验证 ElMessage.success('文件上传成功') } @@ -257,13 +257,13 @@ fileRef.value.click() } // 双击行显示输入框 -const dblclickRow = (row: traceSupplierPerson) => { +const dblclickRow = (row: customerPerson) => { setAllRowReadable() row.editable = true } // 将所有人员信息列表置为不可编辑状态 function setAllRowReadable() { - for (const item of traceSupplierPersonList.value) { + for (const item of customerPersonList.value) { item.editable = false } } @@ -280,7 +280,7 @@ 打印 - + 提交 @@ -293,16 +293,16 @@
- + - + - + - - {{ formInline.minioFileName === '' ? '上传' : '更换附件' }} + + {{ dataForm.minioFileName === '' ? '上传' : '更换附件' }}
- + = ref({ +const dataForm: Ref = ref({ id: '', businessContent: '', - supplierName: '', - supplierNo: '', + customerName: '', + customerNo: '', bankAccount: '', bankAccountNumber: '', bankName: '', @@ -68,11 +68,11 @@ remark: '', taxNumber: '', website: '', - traceSupplierPersonList: [], + customerPersonList: [], }) const companyAddress = ref([]) // 公司地址 const invoiceAddress = ref([]) // 开票地址 -const traceSupplierPersonList: Ref = ref([]) // 人员列表 +const customerPersonList: Ref = ref([]) // 人员列表 const columns = ref([ { text: '人员编号', value: 'personNo', required: false }, { text: '姓名', value: 'name', required: true }, @@ -82,7 +82,7 @@ ]) const ruleFormRef = ref() // 人员对象 -const addPersonObj: traceSupplierPerson = { +const addPersonObj: customerPerson = { id: '', personNo: '', name: '', @@ -91,10 +91,10 @@ phone: '', editable: true, } -const SelectionList: Ref = ref([]) +const SelectionList: Ref = ref([]) // 校验规则 const rules = ref({ - supplierName: [{ required: true, message: '公司名称不能为空', trigger: 'blur' }], + customerName: [{ required: true, message: '公司名称不能为空', trigger: 'blur' }], businessContent: [{ required: true, message: '业务内容不能为空', trigger: 'blur' }], taxNumber: [{ required: true, message: '税号不能为空', trigger: 'blur' }], }) // 表单验证规则 @@ -106,52 +106,52 @@ } const getInfo = () => { getSoucreListDetail({ id: infoId.value }).then((res) => { - formInline.value = res.data - companyAddress.value = [formInline.value.companyCountry, formInline.value.companyProvince, formInline.value.companyCity, formInline.value.companyArea, formInline.value.companyAddress] - invoiceAddress.value = [formInline.value.invoiceCountry, formInline.value.invoiceProvince, formInline.value.invoiceCity, formInline.value.invoiceArea, formInline.value.invoiceAddress] + dataForm.value = res.data + companyAddress.value = [dataForm.value.companyCountry, dataForm.value.companyProvince, dataForm.value.companyCity, dataForm.value.companyArea, dataForm.value.companyAddress] + invoiceAddress.value = [dataForm.value.invoiceCountry, dataForm.value.invoiceProvince, dataForm.value.invoiceCity, dataForm.value.invoiceArea, dataForm.value.invoiceAddress] }) } // 表格选中 -const handleSelectionChange = (e: traceSupplierPerson[]) => { +const handleSelectionChange = (e: customerPerson[]) => { SelectionList.value = e } // 公司地址变化后给对象赋值 function companyAddressChange(addressObj: IAddress) { - formInline.value.companyCountry = addressObj.country - formInline.value.companyProvince = addressObj.province - formInline.value.companyCity = addressObj.city - formInline.value.companyArea = addressObj.area - formInline.value.companyAddress = addressObj.address - formInline.value.companyCountryName = addressObj.countryName - formInline.value.companyProvinceName = addressObj.provinceName - formInline.value.companyCityName = addressObj.cityName - formInline.value.companyAreaName = addressObj.areaName + dataForm.value.companyCountry = addressObj.country + dataForm.value.companyProvince = addressObj.province + dataForm.value.companyCity = addressObj.city + dataForm.value.companyArea = addressObj.area + dataForm.value.companyAddress = addressObj.address + dataForm.value.companyCountryName = addressObj.countryName + dataForm.value.companyProvinceName = addressObj.provinceName + dataForm.value.companyCityName = addressObj.cityName + dataForm.value.companyAreaName = addressObj.areaName } function invoiceAddressChange(addressObj: IAddress) { - formInline.value.invoiceCountry = addressObj.country - formInline.value.invoiceProvince = addressObj.province - formInline.value.invoiceCity = addressObj.city - formInline.value.invoiceArea = addressObj.area - formInline.value.invoiceAddress = addressObj.address - formInline.value.invoiceCountryName = addressObj.countryName - formInline.value.invoiceProvinceName = addressObj.provinceName - formInline.value.invoiceCityName = addressObj.cityName - formInline.value.invoiceAreaName = addressObj.areaName + dataForm.value.invoiceCountry = addressObj.country + dataForm.value.invoiceProvince = addressObj.province + dataForm.value.invoiceCity = addressObj.city + dataForm.value.invoiceArea = addressObj.area + dataForm.value.invoiceAddress = addressObj.address + dataForm.value.invoiceCountryName = addressObj.countryName + dataForm.value.invoiceProvinceName = addressObj.provinceName + dataForm.value.invoiceCityName = addressObj.cityName + dataForm.value.invoiceAreaName = addressObj.areaName } // 点击增加行 const addRow = () => { // 检查上一行必填项 if (checkPersonList()) { setAllRowReadable() - traceSupplierPersonList.value.push({ ...addPersonObj }) + customerPersonList.value.push({ ...addPersonObj }) } } // 检查人员列表 function checkPersonList() { - for (let index = 0; index < traceSupplierPersonList.value.length; index++) { - const item = traceSupplierPersonList.value[index] + for (let index = 0; index < customerPersonList.value.length; index++) { + const item = customerPersonList.value[index] for (const prop of columns.value) { // 检查必填 if (prop.required && !item[prop.value]) { @@ -172,7 +172,7 @@ // 删除行 const deleteList = () => { - traceSupplierPersonList.value = traceSupplierPersonList.value.filter((item: traceSupplierPerson) => { + customerPersonList.value = customerPersonList.value.filter((item: customerPerson) => { return !SelectionList.value.includes(item) }) } @@ -186,7 +186,7 @@ extarCss: '', }) -// 保存至草稿箱 +// 保存 function saveForm(formEl: FormInstance | undefined) { if (!formEl) { return } formEl.validate((valid, fields) => { @@ -200,10 +200,10 @@ type: 'warning', }, ).then(() => { - sourceSave(formInline.value).then((res) => { + sourceSave(dataForm.value).then((res) => { if (res.code === 200) { - formInline.value.id = res.data.id - formInline.value.supplierNo = res.data.supplierNo + dataForm.value.id = res.data.id + dataForm.value.customerNo = res.data.customerNo ElMessage.success('已保存') } }) @@ -214,9 +214,9 @@ // 提交表单 function submitForm() { - if (formInline.value.id) { + if (dataForm.value.id) { const params = { - id: formInline.value.id, + id: dataForm.value.id, formId: SCHEDULE.SUPPLIER_APPROVAL, // 表单id } sourceSubmit(params).then((res) => { @@ -243,7 +243,7 @@ fd.append('multipartFile', event.target.files[0]) UploadFile(fd).then((res) => { if (res.code === 200) { - formInline.value.minioFileName = res.data[0] + dataForm.value.minioFileName = res.data[0] // 重置当前验证 ElMessage.success('文件上传成功') } @@ -257,13 +257,13 @@ fileRef.value.click() } // 双击行显示输入框 -const dblclickRow = (row: traceSupplierPerson) => { +const dblclickRow = (row: customerPerson) => { setAllRowReadable() row.editable = true } // 将所有人员信息列表置为不可编辑状态 function setAllRowReadable() { - for (const item of traceSupplierPersonList.value) { + for (const item of customerPersonList.value) { item.editable = false } } @@ -280,7 +280,7 @@ 打印 - + 提交 @@ -293,16 +293,16 @@
- + - + - + - - {{ formInline.minioFileName === '' ? '上传' : '更换附件' }} + + {{ dataForm.minioFileName === '' ? '上传' : '更换附件' }}
- + { - if (res.code === 200) { - ElMessage.success('上传成功') - } - else { - ElMessage.error(res.message) - } - }) + // const fd = new FormData() + // fd.append('multipartFile', event.target.files[0]) + // uploadApi(fd).then((res) => { + // if (res.code === 200) { + // ElMessage.success('上传成功') + // } + // else { + // ElMessage.error(res.message) + // } + // }) } } else { @@ -195,7 +195,7 @@ } // 添加客户 const add = () => { - $router.push('/source/add') + $router.push('/customer/add') } const exportAll = () => { const loading = ElLoading.service({ @@ -210,10 +210,10 @@ businessContent: '', // 客户编号 ids: checkoutList.value, } - exportSourceList(params).then((res) => { - const blob = new Blob([res.data]) - exportFile(blob, '客户列表.xlsx') - }) + // exportSourceList(params).then((res) => { + // const blob = new Blob([res.data]) + // exportFile(blob, '客户列表.xlsx') + // }) } else { ElMessage.warning('无数据可导出数据') @@ -260,14 +260,7 @@ - - -