部门改造

This commit is contained in:
Flow 2025-05-22 16:36:34 +08:00
parent 60530ec934
commit e43a0e6984
3 changed files with 36 additions and 16 deletions

2
.env
View File

@ -1,5 +1,5 @@
# 标题
VITE_APP_TITLE=宜家智居
VITE_APP_TITLE=全智安后台系统
# 项目本地运行端口号
VITE_PORT=8080

View File

@ -7,19 +7,28 @@
:rules="formRules"
label-width="80px"
>
<el-form-item label="上级部门" prop="parentId">
<el-form-item label="上级机构" prop="parentId" v-if="false">
<el-tree-select
v-model="formData.parentId"
:data="deptTree"
:props="defaultProps"
check-strictly
default-expand-all
placeholder="请选择上级部门"
placeholder="请选择上级机构"
value-key="deptId"
/>
</el-form-item>
<el-form-item label="部门名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入部门名称" />
<el-form-item label="机构ID" prop="orgid">
<div class="flex items-center">
<el-input v-model="formData.orgid" placeholder="请输入机构ID" class="mr-2" />
<el-button type="primary" @click="checkOrgId">查询</el-button>
</div>
</el-form-item>
<el-form-item label="机构名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入机构名称" />
</el-form-item>
<el-form-item label="机构地址" prop="orgaddress">
<el-input v-model="formData.orgaddress" placeholder="请输入机构地址" />
</el-form-item>
<el-form-item label="显示排序" prop="sort">
<el-input-number v-model="formData.sort" :min="0" controls-position="right" />
@ -77,8 +86,10 @@ const formType = ref('') // 表单的类型create - 新增update - 修改
const formData = ref({
id: undefined,
title: '',
parentId: undefined,
parentId: 0,
orgid: undefined,
name: undefined,
orgaddress: undefined,
sort: undefined,
leaderUserId: undefined,
phone: undefined,
@ -86,8 +97,9 @@ const formData = ref({
status: CommonStatusEnum.ENABLE
})
const formRules = reactive<FormRules>({
parentId: [{ required: true, message: '上级部门不能为空', trigger: 'blur' }],
name: [{ required: true, message: '部门名称不能为空', trigger: 'blur' }],
orgid: [{ required: true, message: '机构ID不能为空', trigger: 'blur' }],
name: [{ required: true, message: '机构名称不能为空', trigger: 'blur' }],
orgaddress: [{ required: true, message: '机构地址不能为空', trigger: 'blur' }],
sort: [{ required: true, message: '显示排序不能为空', trigger: 'blur' }],
email: [{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }],
phone: [
@ -152,8 +164,10 @@ const resetForm = () => {
formData.value = {
id: undefined,
title: '',
parentId: undefined,
parentId: 0,
orgid: undefined,
name: undefined,
orgaddress: undefined,
sort: undefined,
leaderUserId: undefined,
phone: undefined,
@ -167,8 +181,14 @@ const resetForm = () => {
const getTree = async () => {
deptTree.value = []
const data = await DeptApi.getSimpleDeptList()
let dept: Tree = { id: 0, name: '顶级部门', children: [] }
let dept: Tree = { id: 0, name: '顶级机构', children: [] }
dept.children = handleTree(data)
deptTree.value.push(dept)
}
/** 检查机构ID */
const checkOrgId = () => {
// TODO: ID
console.log('检查机构ID:', formData.value.orgid)
}
</script>

View File

@ -8,19 +8,19 @@
:inline="true"
label-width="68px"
>
<el-form-item label="部门名称" prop="name">
<el-form-item label="机构名称" prop="name">
<el-input
v-model="queryParams.name"
placeholder="请输入部门名称"
placeholder="请输入机构名称"
clearable
@keyup.enter="handleQuery"
class="!w-240px"
/>
</el-form-item>
<el-form-item label="部门状态" prop="status">
<el-form-item label="机构状态" prop="status">
<el-select
v-model="queryParams.status"
placeholder="请选择部门状态"
placeholder="请选择机构状态"
clearable
class="!w-240px"
>
@ -59,7 +59,7 @@
:default-expand-all="isExpandAll"
v-if="refreshTable"
>
<el-table-column prop="name" label="部门名称" />
<el-table-column prop="name" label="机构名称" />
<el-table-column prop="leader" label="负责人">
<template #default="scope">
{{ userList.find((user) => user.id === scope.row.leaderUserId)?.nickname }}
@ -130,7 +130,7 @@ const isExpandAll = ref(true) // 是否展开,默认全部展开
const refreshTable = ref(true) //
const userList = ref<UserApi.UserVO[]>([]) //
/** 查询部门列表 */
/** 查询机构列表 */
const getList = async () => {
loading.value = true
try {