diff --git a/src/views/admin/employeesapply/EmployeesApply.api.ts b/src/views/admin/employeesapply/EmployeesApply.api.ts index 0539f2f..7acc796 100644 --- a/src/views/admin/employeesapply/EmployeesApply.api.ts +++ b/src/views/admin/employeesapply/EmployeesApply.api.ts @@ -5,6 +5,7 @@ const { createConfirm } = useMessage(); enum Api { list = '/admin/employeesapply/list', + listPage = '/admin/employeesapply/listPage', getModifyInfo = '/admin/employeesapply/getModifyInfo', save = '/admin/employeesapply/add', edit = '/admin/employeesapply/edit', @@ -14,6 +15,7 @@ enum Api { exportXls = '/admin/employeesapply/exportXls', invide = '/admin/employeesapply/invide', audit = '/admin/employeesapply/audit', + getModifyHistoryInfo = '/admin/employeesapply/getModifyHistoryInfo', } /** @@ -32,6 +34,7 @@ export const getImportUrl = Api.importExcel; * @param params */ export const list = (params) => defHttp.get({ url: Api.list, params }); +export const listPage = (params) => defHttp.get({ url: Api.listPage, params }); /** @@ -98,4 +101,8 @@ export const getModifyInfo = (params) => { */ export const auditSubmit = (params) => { return defHttp.post({ url: Api.audit, params }); -}; \ No newline at end of file +}; + +export const getModifyHistoryInfo = (params) => { + return defHttp.post({ url: Api.getModifyHistoryInfo, params }); +}; diff --git a/src/views/admin/employeesapply/EmployeesApply.data.ts b/src/views/admin/employeesapply/EmployeesApply.data.ts index bb7289e..b82cdce 100644 --- a/src/views/admin/employeesapply/EmployeesApply.data.ts +++ b/src/views/admin/employeesapply/EmployeesApply.data.ts @@ -124,14 +124,14 @@ export const applyObj = { qualification: '资质证', noCrimeCertificate: '无犯罪证明', regional: '区域', - delFlag: '是否删除 0未删除 1删除', + delFlag: '是否删除', createTime: '申请日期', updateBy: '更新人', updateTime: '更新日期', - status: '申请状态 1申请中 2通过 3驳回', + status: '申请状态', auditContent: '审核备注', izHistory: '是否历史数据', - applyType: '申请类型 0被邀请 1主动申请 2信息变更', + applyType: '申请类型', startTime: '有效开始日期', endTime: '有效结束日期', currentAddress: '现住址', diff --git a/src/views/admin/employeesapply/EmployeesApplyList.vue b/src/views/admin/employeesapply/EmployeesApplyList.vue index 3cde0b8..8c5ad6d 100644 --- a/src/views/admin/employeesapply/EmployeesApplyList.vue +++ b/src/views/admin/employeesapply/EmployeesApplyList.vue @@ -12,19 +12,18 @@ - - - + + + - 待确认 - 申请通过 - 申请驳回 + 待审核 + 审核通过 + 审核驳回 @@ -56,14 +55,15 @@ + @@ -72,9 +72,10 @@ import { ref, reactive } from 'vue'; import { BasicTable, useTable, TableAction } from '/@/components/Table'; import { useListPage } from '/@/hooks/system/useListPage'; import { columns, superQuerySchema } from './EmployeesApply.data'; -import { list, deleteOne, batchDelete, getImportUrl, getExportUrl } from './EmployeesApply.api'; +import { listPage, deleteOne, batchDelete, getImportUrl, getExportUrl } from './EmployeesApply.api'; import { downloadFile } from '/@/utils/common/renderUtils'; import EmployeesApplyModal from './components/EmployeesApplyModal.vue' +import EmployeesAuditHistoryModal from './EmployeesAuditHistoryModal.vue' import { useUserStore } from '/@/store/modules/user'; import JInput from "/@/components/Form/src/jeecg/components/JInput.vue"; @@ -82,17 +83,18 @@ const formRef = ref(); const queryParam = reactive({}); const toggleSearchStatus = ref(false); const registerModal = ref(); +const registerHistoryModal = ref(); const userStore = useUserStore(); //注册table数据 const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({ tableProps: { - title: '员工申请', - api: list, + title: '员工审批', + api: listPage, columns, canResize: false, useSearchForm: false, actionColumn: { - width: 140, + width: 240, fixed: 'right', }, scroll: { y: '58vh' }, @@ -102,7 +104,6 @@ const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({ pageSizeOptions: ['15', '50', '70', '100'], }, beforeFetch: async (params) => { - queryParam.applyType = '1,2' return Object.assign(params, queryParam); }, }, @@ -160,6 +161,14 @@ function handleDetail(record: Recordable) { registerModal.value.edit(record); } +/** + * 审核历史详情 + */ +function handleHistoryList(record: Recordable) { + registerHistoryModal.value.disableSubmit = true; + registerHistoryModal.value.edit(record); +} + /** * 成功回调 */ @@ -177,15 +186,19 @@ function getTableAction(record) { onClick: handleDetail.bind(null, record), }, { - label: '入驻审核', + label: '员工入驻审核', onClick: handleEdit.bind(null, record), ifShow: record.status == 1 && (record.modifyStatus == null || record.modifyStatus == undefined) && record.izHistory == 'N' }, { - label: '变更审核', + label: '信息变更审核', onClick: handleUpEdit.bind(null, record), ifShow: record.status == 1 && record.modifyStatus == 1 && record.izHistory == 'N' }, + { + label: '审核历史', + onClick: handleHistoryList.bind(null, record), + }, ]; } diff --git a/src/views/admin/employeesapply/EmployeesAuditHistoryList.vue b/src/views/admin/employeesapply/EmployeesAuditHistoryList.vue new file mode 100644 index 0000000..8612bf9 --- /dev/null +++ b/src/views/admin/employeesapply/EmployeesAuditHistoryList.vue @@ -0,0 +1,259 @@ + + + + + diff --git a/src/views/admin/employeesapply/EmployeesAuditHistoryModal.vue b/src/views/admin/employeesapply/EmployeesAuditHistoryModal.vue new file mode 100644 index 0000000..137d2d7 --- /dev/null +++ b/src/views/admin/employeesapply/EmployeesAuditHistoryModal.vue @@ -0,0 +1,94 @@ + + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyDetailForm.vue b/src/views/admin/employeesapply/components/EmployeesApplyDetailForm.vue new file mode 100644 index 0000000..ad0e60b --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyDetailForm.vue @@ -0,0 +1,507 @@ + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyForm.vue b/src/views/admin/employeesapply/components/EmployeesApplyForm.vue index ee33ca1..253db4c 100644 --- a/src/views/admin/employeesapply/components/EmployeesApplyForm.vue +++ b/src/views/admin/employeesapply/components/EmployeesApplyForm.vue @@ -261,54 +261,25 @@
- +
- - -
- - - - -
- - - -
-
- - 申请通过 - 申请驳回 + + + + + 审核通过 + 审核驳回 - - -
- -
- -
- - - - - -
+ + + +
@@ -378,7 +349,6 @@ const formData = reactive>({ endTime: '', currentAddress: '', }); -const statusVal = ref('') const { createMessage } = useMessage(); const labelCol = ref({ xs: { span: 24 }, sm: { span: 8 } }); const wrapperCol = ref({ xs: { span: 24 }, sm: { span: 16 } }); @@ -388,10 +358,11 @@ const labelCol3 = ref({ xs: { span: 24 }, sm: { span: 3 } }); const confirmLoading = ref(false); //表单验证 const validatorRules = reactive({ + status: [{ required: true, message: '请选择审核状态!' },], auditContent: [ { validator: async (_rule, value) => { - if (statusVal.value === 'auditFaild' && !value) { + if (formData.status === '3' && !value) { return Promise.reject('请输入驳回原因!'); } return Promise.resolve(); @@ -412,10 +383,6 @@ const disabled = computed(() => { } return props.formDisabled; }); -setInterval(() => { - console.log("🌊 ~ disabled:", disabled) -}, 2000) - /** * 新增 @@ -438,14 +405,9 @@ function edit(record) { tmpData[key] = record[key] } }) + tmpData.status = null; //赋值 Object.assign(formData, tmpData); - if (formData.status == '2') { - statusVal.value = 'auditPass' - } - if (formData.status == '3') { - statusVal.value = 'auditFaild' - } }); } @@ -453,7 +415,14 @@ function edit(record) { * 提交数据 */ async function submitForm() { + let model = formData; try { + if (!model.status || model.status == '1') { + createMessage.warning('请选择审核状态'); + } + if (model.status == '3' && !model.auditContent) { + createMessage.warning('请填写驳回原因'); + } // 触发表单验证 await validate(); } catch ({ errorFields }) { @@ -465,9 +434,10 @@ async function submitForm() { } return Promise.reject(errorFields); } + confirmLoading.value = true; const isUpdate = ref(false); //时间格式化 - let model = formData; + if (model.id) { isUpdate.value = true; } @@ -482,13 +452,7 @@ async function submitForm() { } } } - model.statusVal = statusVal.value - if (!disabled.value) { - if (!statusVal.value) { - createMessage.warning('请选择审批意见'); - return; - } - } + confirmLoading.value = true; await saveOrUpdate(model, isUpdate.value) .then((res) => { diff --git a/src/views/admin/employeesapply/components/EmployeesApplyHistoryForm.vue b/src/views/admin/employeesapply/components/EmployeesApplyHistoryForm.vue new file mode 100644 index 0000000..eb92c0f --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyHistoryForm.vue @@ -0,0 +1,294 @@ + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyHistoryModal.vue b/src/views/admin/employeesapply/components/EmployeesApplyHistoryModal.vue new file mode 100644 index 0000000..dff626b --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyHistoryModal.vue @@ -0,0 +1,110 @@ + + + + + +