diff --git a/sub-government-affairs-service/src/apis/inputSuppliesApi/enterpriseDealerCheck.js b/sub-government-affairs-service/src/apis/inputSuppliesApi/enterpriseDealerCheck.js index 4d6ea63..2ec9905 100644 --- a/sub-government-affairs-service/src/apis/inputSuppliesApi/enterpriseDealerCheck.js +++ b/sub-government-affairs-service/src/apis/inputSuppliesApi/enterpriseDealerCheck.js @@ -6,17 +6,23 @@ export function getEnterpriseDealerCheck(params) { }); } export function addEnterpriseDealerCheck(data) { - return request('/inputGoods/distributorCheck/page', { + return request('/inputGoods/distributorCheck/save', { method: 'POST', data, }); } export function delEnterpriseDealerCheck(ids) { - return request(`/inputGoods/distributorCheck/page/${ids}`); + return request(`/inputGoods/distributorCheck/delete/${ids}`); } export function editEnterpriseDealerCheck(data) { - return request('/inputGoods/distributorCheck/page', { - method: 'POST', + return request('/inputGoods/distributorCheck/edit', { + method: 'PUT', + data, + }); +} +export function enterpriseDealerCheckRegister(data) { + return request('/inputGoods/distributorCheck/register', { + method: 'PUT', data, }); } diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/enterpriseDealerCheck/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/enterpriseDealerCheck/index.vue index 4d03dd8..b8cda1f 100644 --- a/sub-government-affairs-service/src/views/inputSuppliesManage/enterpriseDealerCheck/index.vue +++ b/sub-government-affairs-service/src/views/inputSuppliesManage/enterpriseDealerCheck/index.vue @@ -3,11 +3,13 @@

企业经销商抽检


import { ref, reactive, onMounted } from 'vue'; -import { CRUD_OPTIONS, pageData } from '@/config'; +import { CRUD_OPTIONS, pageData, customRules } from '@/config'; import inputSuppliesApi from '@/apis/inputSuppliesApi'; +import { ElMessage } from 'element-plus'; +import { add, get } from 'lodash'; -const { getEnterpriseDealerCheck, addEnterpriseDealerCheck, delEnterpriseDealerCheck, editEnterpriseDealerCheck } = inputSuppliesApi; +const { getEnterpriseDealerCheck, addEnterpriseDealerCheck, delEnterpriseDealerCheck, editEnterpriseDealerCheck, enterpriseDealerCheckRegister } = + inputSuppliesApi; onMounted(getData); /* --------------- data --------------- */ // #region - +const crudRef = ref(); const _loading = ref(false); const searchCondition = ref({ keywords: '', + riskId: '', }); +const basicInfo = ref(true); const tableData = ref([]); const option = reactive({ ...CRUD_OPTIONS, selection: false, - refreshBtn: false, + updateBtnText: '确定', + addTitle: '新增巡查任务', + editTitle: '编辑巡查任务', + showOverflowTooltip: true, column: [ { hide: true, @@ -54,84 +65,158 @@ const option = reactive({ label: '关键字', prop: 'keywords', addDisplay: false, + editDisplay: false, viewDisplay: false, }, { + _groupKey: 'basicInfo', + _change: -1, label: '任务编号', - prop: 'taskNum', - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, - ], + prop: 'riskId', + editDisabled: true, + rules: customRules({ msg: '请输入任务编号' }), }, { + _groupKey: 'basicInfo', + label: '创建时间', + _change: -1, + prop: 'createTime', + addDisplay: false, + editDisplay: false, + editDisabled: true, + width: 120, + }, + { + _groupKey: 'basicInfo', + label: '企业名称', + prop: 'companyName', + rules: customRules({ msg: '请输入企业名称' }), + }, + { + hide: true, + _groupKey: 'basicInfo', + label: '地址', + prop: 'address', + rules: customRules({ mag: '请输入地址' }), + }, + { + _groupKey: 'basicInfo', + label: '企业法人', + prop: 'enterPerson', + rules: customRules({ msg: '请输入企业法人名称' }), + }, + { + _groupKey: 'basicInfo', + label: '联系电话', + prop: 'phone', + width: 120, + rules: customRules({ msg: '请输入联系电话' }), + }, + { + _groupKey: 'basicInfo', label: '任务类型', - prop: 'taskType', + prop: 'riskType', type: 'select', + clearable: false, + width: 120, render: ({ row }) => { - return row.taskType == '0' ? '直接创建' : '民众投诉'; + return row.riskType == '0' ? '直接创建' : '民众投诉'; }, + value: '0', dicData: [ { label: '直接创建', value: '0' }, { label: '民众投诉', value: '1' }, ], - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, - ], + rules: customRules({ msg: '请选择任务类型' }), }, { - label: '企业名称', - prop: 'enterpriseName', - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, - ], - }, - { - label: '企业法人', - prop: 'enterpriseOwner', - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, - ], - }, - { - label: '联系电话', - prop: 'phone', - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, - ], + hide: true, + _groupKey: 'basicInfo', + label: '投诉信息', + prop: 'complaintInfo', + span: 24, + type: 'textarea', }, { label: '状态', prop: 'status', - render: ({ row }) => { - return row.status == '0' ? '未完成' : '已完成'; - }, - rules: [ - { - required: true, - message: '请选择任务类型', - trigger: 'change', - }, + addDisplay: false, + editDisplay: false, + viewDisplay: false, + render: ({ row }) => (row.status == '0' ? '进行中' : '结束'), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '巡查单位', + prop: 'inspectUnit', + rules: customRules({ msg: '请输入巡查单位' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '巡查部门', + prop: 'inspectDept', + rules: customRules({ msg: '请输入巡查部门' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '巡查人', + prop: 'inspector', + rules: customRules({ msg: '请输入巡查人' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '巡查时间', + type: 'date', + format: 'YYYY-MM-DD', + valueFormat: 'YYYY-MM-DD', + prop: 'inspectTime', + rules: customRules({ msg: '请输入巡查时间' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '抽样产品', + prop: 'checkProducts', + rules: customRules({ msg: '请输入抽样产品' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '是否违规', + type: 'select', + prop: 'isViolation', + dicData: [ + { label: '否', value: '0' }, + { label: '是', value: '1' }, ], + value: '0', + rules: customRules({ msg: '请输入任务编号' }), + }, + { + _groupKey: 'checkInfo', + hide: true, + addDisplay: false, + editDisplay: false, + label: '备注', + prop: 'remark', + type: 'textarea', + span: 24, }, ], }); @@ -139,12 +224,29 @@ const actions = reactive([ { name: '详情', icon: 'view', - event: ({ row }) => row, + event: ({ row }) => { + handleCheckRegister(0); + crudRef.value.rowView(row); + }, }, { name: '编辑', icon: 'edit', - event: ({ row }) => row, + event: ({ row }) => { + basicInfo.value = true; + crudRef.value.rowEdit(row); + }, + }, + { + auth: ({ row }) => row.status == 0, + name: '检查登记', + icon: 'check', + event: ({ row }) => { + option.editTitle = '巡查登记'; + basicInfo.value = false; + handleCheckRegister(2); + crudRef.value.rowEdit(row); + }, }, { type: 'danger', @@ -173,21 +275,56 @@ async function getData(resetPage) { pageData.value.total = res.data.total; } _loading.value = false; - console.log('params', params); - pageData.value.total = tableData.value.length; } - -function handleRowSave(row, done, loading) { - console.log('row', row); +function handleData(row = {}) { + let _data = {}; + let basic = ['riskId', 'enterPerson', 'companyName', 'address', 'phone', 'riskType', 'complaintInfo']; + let check = ['riskId', 'inspectUnit', 'inspectDept', 'inspector', 'inspectTime', 'isViolation', 'remark']; + (basicInfo.value ? basic : check).forEach((v) => (_data[v] = row[v] ?? null)); + console.log('_data here', _data); + return _data; +} +async function handleRowSave(row, done, loading) { + let res = await addEnterpriseDealerCheck(handleData(row)); loading(); + if (res.code == 200) { + ElMessage.success('保存成功'); + getData(); + } done(); } -function handleRowUpdate(row, index, done, loading) { - console.log('row', row); +async function handleRowUpdate(row, index, done, loading) { + let data = handleData(row); + let res; + if (basicInfo.value) { + res = await editEnterpriseDealerCheck(data); + } else { + res = await enterpriseDealerCheckRegister(data); + } loading(); + if (res.code == 200) { + ElMessage.success(`${basicInfo.value ? '修改' : '登记'}成功`); + getData(); + } done(); } +function handleCloseDialog(done) { + basicInfo.value = true; + option.editTitle = '编辑巡查任务'; + handleCheckRegister(1); + done(); +} +function handleCheckRegister(t = 0) { + option.column.forEach((v) => { + if (v._groupKey == 'basicInfo') { + v.viewDisplay = t < 2 ? true : false; + v.editDisplay = t == 1; + } + if (v._groupKey == 'checkInfo') { + v.editDisplay = t == 2; + v.viewDisplay = t == 0; + } + }); +} // #endregion - - diff --git a/sub-government-affairs-service/src/views/inputSuppliesManage/leaseSupervise/index.vue b/sub-government-affairs-service/src/views/inputSuppliesManage/leaseSupervise/index.vue index ba50382..58f8293 100644 --- a/sub-government-affairs-service/src/views/inputSuppliesManage/leaseSupervise/index.vue +++ b/sub-government-affairs-service/src/views/inputSuppliesManage/leaseSupervise/index.vue @@ -17,6 +17,7 @@ } " @search-reset="() => getData(1)" + @refresh-change="getData" @current-change="getData" @size-change="getData" @row-save="handleRowSave" @@ -59,7 +60,6 @@ const tableData = ref([]); const option = reactive({ ...CRUD_OPTIONS, selection: false, - refreshBtn: false, dialogWidth: '50%', column: [ {