diff --git a/src/api/system/user.js b/src/api/system/employee.js similarity index 83% rename from src/api/system/user.js rename to src/api/system/employee.js index e1d6362..8e0cd4d 100644 --- a/src/api/system/user.js +++ b/src/api/system/employee.js @@ -33,3 +33,10 @@ export const remove = (idList) => { params: { idList }, }); }; +export const enable = (params) => { + return request({ + url: '/employee/enable', + method: 'put', + params, + }); +}; diff --git a/src/router/modules/system.js b/src/router/modules/system.js index 7a38efc..75bc277 100644 --- a/src/router/modules/system.js +++ b/src/router/modules/system.js @@ -10,30 +10,30 @@ export default [ }, children: [ { - path: 'user', - name: 'UserManagement', - component: () => import('@/views/system/user/index.vue'), + path: 'employee', + name: 'EmployeeManagement', + component: () => import('@/views/system/employee/index.vue'), meta: { - title: '用户管理', + title: '员工管理', icon: 'Avatar', }, children: [ { path: 'create', - name: 'CreateUser', - component: () => import('@/views/system/user/form.vue'), + name: 'CreateEmployee', + component: () => import('@/views/system/employee/form.vue'), meta: { - title: '创建用户', + title: '创建员工', icon: 'Avatar', hidden: true, }, }, { path: 'update/:id', - name: 'UpdateUser', - component: () => import('@/views/system/user/form.vue'), + name: 'UpdateEmployee', + component: () => import('@/views/system/employee/form.vue'), meta: { - title: '编辑用户', + title: '编辑员工', icon: 'Avatar', hidden: true, }, diff --git a/src/store/modules/system/user.js b/src/store/modules/system/employee.js similarity index 86% rename from src/store/modules/system/user.js rename to src/store/modules/system/employee.js index da5343b..848e3d9 100644 --- a/src/store/modules/system/user.js +++ b/src/store/modules/system/employee.js @@ -1,4 +1,4 @@ -import * as api from '@/api/system/user.js'; +import * as api from '@/api/system/employee.js'; import { ElMessage, ElMessageBox } from '@/plugins/element-plus'; const state = () => ({ code: 'UserManagement', @@ -72,6 +72,15 @@ const actions = { } } }, + enable: async ({ dispatch }, data) => { + let res = await api.enable(data); + if (res) { + ElMessage.success((data.isEnable ? '启用' : '禁用') + '成功'); + dispatch('search'); + } else { + ElMessage.error((data.isEnable ? '启用' : '禁用') + '失败'); + } + }, }; export default { state, diff --git a/src/views/system/user/form.vue b/src/views/system/employee/form.vue similarity index 93% rename from src/views/system/user/form.vue rename to src/views/system/employee/form.vue index 8ab9c58..5c0ab3e 100644 --- a/src/views/system/user/form.vue +++ b/src/views/system/employee/form.vue @@ -62,16 +62,16 @@ employeeName: [{ required: true, message: '员工姓名不能为空' }], employeeType: [{ required: true, message: '员工类型不能为空' }], }); - const opts = computed(() => store.state.user.opts); + const opts = computed(() => store.state.employee.opts); if (!unref(opts).init) { - store.dispatch('user/load'); + store.dispatch('employee/load'); } /* 数据 */ const handleLoad = async () => { if (route.params.id) { const id = +route.params.id; if (form.id !== id) { - let res = await store.dispatch('user/detail', id); + let res = await store.dispatch('employee/detail', id); Object.assign(form, res); } } @@ -85,7 +85,7 @@ let data = { ...unref(form) }; data.voucherClueUrls = data.voucherClueUrls || []; data.voucherClueUrl = data.voucherClueUrls.join(','); - let res = await store.dispatch('user/save', data); + let res = await store.dispatch('employee/save', data); if (res) { if (!data.id) { unref(refsForm).resetFields(); diff --git a/src/views/system/user/index.vue b/src/views/system/employee/index.vue similarity index 78% rename from src/views/system/user/index.vue rename to src/views/system/employee/index.vue index cd65c31..4659cd8 100644 --- a/src/views/system/user/index.vue +++ b/src/views/system/employee/index.vue @@ -6,7 +6,7 @@ :data="list" :operation="['create', 'search']" :reset="handleReset" - title="用户" + title="员工" :total="total" @create="handleCreate" @remove="handleRemove" @@ -14,11 +14,8 @@ > @@ -27,28 +24,27 @@