部门管理:增删改查、用户部门显示
This commit is contained in:
@@ -168,12 +168,11 @@
|
|||||||
<param name="ids"></param>
|
<param name="ids"></param>
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Yi.Framework.ApiMicroservice.Controllers.DeptController.PageList(Yi.Framework.Model.Models.DeptEntity,Yi.Framework.Common.Models.PageParModel)">
|
<member name="M:Yi.Framework.ApiMicroservice.Controllers.DeptController.SelctGetList(Yi.Framework.Model.Models.DeptEntity)">
|
||||||
<summary>
|
<summary>
|
||||||
动态条件分页查询
|
动态条件查询
|
||||||
</summary>
|
</summary>
|
||||||
<param name="dept"></param>
|
<param name="dept"></param>
|
||||||
<param name="page"></param>
|
|
||||||
<returns></returns>
|
<returns></returns>
|
||||||
</member>
|
</member>
|
||||||
<member name="M:Yi.Framework.ApiMicroservice.Controllers.DictionaryController.PageList(Yi.Framework.Model.Models.DictionaryEntity,Yi.Framework.Common.Models.PageParModel)">
|
<member name="M:Yi.Framework.ApiMicroservice.Controllers.DictionaryController.PageList(Yi.Framework.Model.Models.DictionaryEntity,Yi.Framework.Common.Models.PageParModel)">
|
||||||
|
|||||||
@@ -26,15 +26,14 @@ namespace Yi.Framework.ApiMicroservice.Controllers
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 动态条件分页查询
|
/// 动态条件查询
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="dept"></param>
|
/// <param name="dept"></param>
|
||||||
/// <param name="page"></param>
|
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
[HttpGet]
|
[HttpGet]
|
||||||
public async Task<Result> PageList([FromQuery] DeptEntity dept, [FromQuery] PageParModel page)
|
public async Task<Result> SelctGetList([FromQuery] DeptEntity dept)
|
||||||
{
|
{
|
||||||
return Result.Success().SetData(await _iDeptService.SelctPageList(dept, page));
|
return Result.Success().SetData(await _iDeptService.SelctGetList(dept));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Binary file not shown.
@@ -9,11 +9,10 @@ namespace Yi.Framework.Interface
|
|||||||
public partial interface IDeptService:IBaseService<DeptEntity>
|
public partial interface IDeptService:IBaseService<DeptEntity>
|
||||||
{
|
{
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 动态条件分页查询
|
/// 动态条件查询
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <param name="dept"></param>
|
/// <param name="dept"></param>
|
||||||
/// <param name="page"></param>
|
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
Task<PageModel<List<DeptEntity>>> SelctPageList(DeptEntity dept, PageParModel page);
|
Task<List<DeptEntity>> SelctGetList(DeptEntity dept);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,18 +9,17 @@ using Yi.Framework.Repository;
|
|||||||
|
|
||||||
namespace Yi.Framework.Service
|
namespace Yi.Framework.Service
|
||||||
{
|
{
|
||||||
public partial class DeptService : BaseService<DeptEntity>, IDeptService
|
public partial class DeptService
|
||||||
{
|
{
|
||||||
public async Task<PageModel<List<DeptEntity>>> SelctPageList(DeptEntity dept, PageParModel page)
|
public async Task<List<DeptEntity>> SelctGetList(DeptEntity dept)
|
||||||
{
|
{
|
||||||
RefAsync<int> total = 0;
|
|
||||||
var data = await _repository._DbQueryable
|
var data = await _repository._DbQueryable
|
||||||
.WhereIF(!string.IsNullOrEmpty(dept.DeptName), u => u.DeptName.Contains(dept.DeptName))
|
.WhereIF(!string.IsNullOrEmpty(dept.DeptName), u => u.DeptName.Contains(dept.DeptName))
|
||||||
.WhereIF(dept.IsDeleted.IsNotNull(), u => u.IsDeleted == dept.IsDeleted)
|
.WhereIF(dept.IsDeleted.IsNotNull(), u => u.IsDeleted == dept.IsDeleted)
|
||||||
.OrderBy(u => u.OrderNum, OrderByType.Desc)
|
.OrderBy(u => u.OrderNum, OrderByType.Desc)
|
||||||
.ToPageListAsync(page.PageNum, page.PageSize, total);
|
.ToListAsync();
|
||||||
|
|
||||||
return new PageModel<List<DeptEntity>>(data, total);
|
return data;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,19 +3,19 @@ import request from '@/utils/request'
|
|||||||
// 查询部门列表
|
// 查询部门列表
|
||||||
export function listDept(query) {
|
export function listDept(query) {
|
||||||
return request({
|
return request({
|
||||||
url: '/dept/pageList',
|
url: '/dept/SelctGetList',
|
||||||
method: 'get',
|
method: 'get',
|
||||||
params: query
|
params: query
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询部门列表(排除节点)
|
// // 查询部门列表(排除节点)
|
||||||
export function listDeptExcludeChild(deptId) {
|
// export function listDeptExcludeChild(deptId) {
|
||||||
return request({
|
// return request({
|
||||||
url: '/system/dept/list/exclude/' + deptId,
|
// url: '/system/dept/list/exclude/' + deptId,
|
||||||
method: 'get'
|
// method: 'get'
|
||||||
})
|
// })
|
||||||
}
|
// }
|
||||||
|
|
||||||
// 查询部门详细
|
// 查询部门详细
|
||||||
export function getDept(deptId) {
|
export function getDept(deptId) {
|
||||||
@@ -52,6 +52,6 @@ export function delDept(deptId) {
|
|||||||
return request({
|
return request({
|
||||||
url: '/dept/delList',
|
url: '/dept/delList',
|
||||||
method: 'delete',
|
method: 'delete',
|
||||||
data:postId
|
data:deptId
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
@@ -128,10 +128,10 @@ export function updateAuthRole(data) {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
// 查询部门下拉树结构
|
// // 查询部门下拉树结构
|
||||||
export function deptTreeSelect() {
|
// export function deptTreeSelect() {
|
||||||
return request({
|
// return request({
|
||||||
url: '/system/user/deptTree',
|
// url: '/system/user/deptTree',
|
||||||
method: 'get'
|
// method: 'get'
|
||||||
})
|
// })
|
||||||
}
|
// }
|
||||||
|
|||||||
@@ -9,8 +9,8 @@
|
|||||||
@keyup.enter="handleQuery"
|
@keyup.enter="handleQuery"
|
||||||
/>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="状态" prop="status">
|
<el-form-item label="状态" prop="isDeleted">
|
||||||
<el-select v-model="queryParams.status" placeholder="部门状态" clearable>
|
<el-select v-model="queryParams.isDeleted" placeholder="部门状态" clearable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="dict in sys_normal_disable"
|
v-for="dict in sys_normal_disable"
|
||||||
:key="dict.value"
|
:key="dict.value"
|
||||||
@@ -50,15 +50,15 @@
|
|||||||
v-if="refreshTable"
|
v-if="refreshTable"
|
||||||
v-loading="loading"
|
v-loading="loading"
|
||||||
:data="deptList"
|
:data="deptList"
|
||||||
row-key="deptId"
|
row-key="id"
|
||||||
:default-expand-all="isExpandAll"
|
:default-expand-all="isExpandAll"
|
||||||
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
:tree-props="{ children: 'children', hasChildren: 'hasChildren' }"
|
||||||
>
|
>
|
||||||
<el-table-column prop="deptName" label="部门名称" width="260"></el-table-column>
|
<el-table-column prop="deptName" label="部门名称" width="260"></el-table-column>
|
||||||
<el-table-column prop="orderNum" label="排序" width="200"></el-table-column>
|
<el-table-column prop="orderNum" label="排序" width="200"></el-table-column>
|
||||||
<el-table-column prop="status" label="状态" width="100">
|
<el-table-column prop="isDeleted" label="状态" width="100">
|
||||||
<template #default="scope">
|
<template #default="scope">
|
||||||
<dict-tag :options="sys_normal_disable" :value="scope.row.status" />
|
<dict-tag :options="sys_normal_disable" :value="scope.row.isDeleted" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="创建时间" align="center" prop="createTime" width="200">
|
<el-table-column label="创建时间" align="center" prop="createTime" width="200">
|
||||||
@@ -100,8 +100,8 @@
|
|||||||
<el-tree-select
|
<el-tree-select
|
||||||
v-model="form.parentId"
|
v-model="form.parentId"
|
||||||
:data="deptOptions"
|
:data="deptOptions"
|
||||||
:props="{ value: 'deptId', label: 'deptName', children: 'children' }"
|
:props="{ value: 'id', label: 'deptName', children: 'children' }"
|
||||||
value-key="deptId"
|
value-key="id"
|
||||||
placeholder="选择上级部门"
|
placeholder="选择上级部门"
|
||||||
check-strictly
|
check-strictly
|
||||||
/>
|
/>
|
||||||
@@ -134,7 +134,7 @@
|
|||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="部门状态">
|
<el-form-item label="部门状态">
|
||||||
<el-radio-group v-model="form.status">
|
<el-radio-group v-model="form.isDeleted">
|
||||||
<el-radio
|
<el-radio
|
||||||
v-for="dict in sys_normal_disable"
|
v-for="dict in sys_normal_disable"
|
||||||
:key="dict.value"
|
:key="dict.value"
|
||||||
@@ -156,7 +156,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup name="Dept">
|
<script setup name="Dept">
|
||||||
import { listDept, getDept, delDept, addDept, updateDept, listDeptExcludeChild } from "@/api/system/dept";
|
import { listDept, getDept, delDept, addDept, updateDept} from "@/api/system/dept";
|
||||||
|
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { sys_normal_disable } = proxy.useDict("sys_normal_disable");
|
const { sys_normal_disable } = proxy.useDict("sys_normal_disable");
|
||||||
@@ -174,7 +174,7 @@ const data = reactive({
|
|||||||
form: {},
|
form: {},
|
||||||
queryParams: {
|
queryParams: {
|
||||||
deptName: undefined,
|
deptName: undefined,
|
||||||
status: undefined
|
isDeleted: undefined
|
||||||
},
|
},
|
||||||
rules: {
|
rules: {
|
||||||
parentId: [{ required: true, message: "上级部门不能为空", trigger: "blur" }],
|
parentId: [{ required: true, message: "上级部门不能为空", trigger: "blur" }],
|
||||||
@@ -191,7 +191,7 @@ const { queryParams, form, rules } = toRefs(data);
|
|||||||
function getList() {
|
function getList() {
|
||||||
loading.value = true;
|
loading.value = true;
|
||||||
listDept(queryParams.value).then(response => {
|
listDept(queryParams.value).then(response => {
|
||||||
deptList.value = proxy.handleTree(response.data, "deptId");
|
deptList.value = proxy.handleTree(response.data, "id");
|
||||||
loading.value = false;
|
loading.value = false;
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@@ -203,14 +203,14 @@ function cancel() {
|
|||||||
/** 表单重置 */
|
/** 表单重置 */
|
||||||
function reset() {
|
function reset() {
|
||||||
form.value = {
|
form.value = {
|
||||||
deptId: undefined,
|
id: undefined,
|
||||||
parentId: undefined,
|
parentId: undefined,
|
||||||
deptName: undefined,
|
deptName: undefined,
|
||||||
orderNum: 0,
|
orderNum: 0,
|
||||||
leader: undefined,
|
leader: undefined,
|
||||||
phone: undefined,
|
phone: undefined,
|
||||||
email: undefined,
|
email: undefined,
|
||||||
status: "0"
|
isDeleted: false
|
||||||
};
|
};
|
||||||
proxy.resetForm("deptRef");
|
proxy.resetForm("deptRef");
|
||||||
}
|
}
|
||||||
@@ -227,10 +227,10 @@ function resetQuery() {
|
|||||||
function handleAdd(row) {
|
function handleAdd(row) {
|
||||||
reset();
|
reset();
|
||||||
listDept().then(response => {
|
listDept().then(response => {
|
||||||
deptOptions.value = proxy.handleTree(response.data, "deptId");
|
deptOptions.value = proxy.handleTree(response.data, "id");
|
||||||
});
|
});
|
||||||
if (row != undefined) {
|
if (row != undefined) {
|
||||||
form.value.parentId = row.deptId;
|
form.value.parentId = row.id;
|
||||||
}
|
}
|
||||||
open.value = true;
|
open.value = true;
|
||||||
title.value = "添加部门";
|
title.value = "添加部门";
|
||||||
@@ -246,10 +246,16 @@ function toggleExpandAll() {
|
|||||||
/** 修改按钮操作 */
|
/** 修改按钮操作 */
|
||||||
function handleUpdate(row) {
|
function handleUpdate(row) {
|
||||||
reset();
|
reset();
|
||||||
listDeptExcludeChild(row.deptId).then(response => {
|
// listDeptExcludeChild(row.id).then(response => {
|
||||||
deptOptions.value = proxy.handleTree(response.data, "deptId");
|
// deptOptions.value = proxy.handleTree(response.data, "id");
|
||||||
|
// });
|
||||||
|
listDept().then(response => {
|
||||||
|
//前端排除自己
|
||||||
|
|
||||||
|
deptOptions.value = proxy.handleTree(response.data.filter(i=>i.id!=row.id), "id");
|
||||||
});
|
});
|
||||||
getDept(row.deptId).then(response => {
|
|
||||||
|
getDept(row.id).then(response => {
|
||||||
form.value = response.data;
|
form.value = response.data;
|
||||||
open.value = true;
|
open.value = true;
|
||||||
title.value = "修改部门";
|
title.value = "修改部门";
|
||||||
@@ -259,7 +265,7 @@ function handleUpdate(row) {
|
|||||||
function submitForm() {
|
function submitForm() {
|
||||||
proxy.$refs["deptRef"].validate(valid => {
|
proxy.$refs["deptRef"].validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
if (form.value.deptId != undefined) {
|
if (form.value.id != undefined) {
|
||||||
updateDept(form.value).then(response => {
|
updateDept(form.value).then(response => {
|
||||||
proxy.$modal.msgSuccess("修改成功");
|
proxy.$modal.msgSuccess("修改成功");
|
||||||
open.value = false;
|
open.value = false;
|
||||||
@@ -278,7 +284,7 @@ function submitForm() {
|
|||||||
/** 删除按钮操作 */
|
/** 删除按钮操作 */
|
||||||
function handleDelete(row) {
|
function handleDelete(row) {
|
||||||
proxy.$modal.confirm('是否确认删除名称为"' + row.deptName + '"的数据项?').then(function() {
|
proxy.$modal.confirm('是否确认删除名称为"' + row.deptName + '"的数据项?').then(function() {
|
||||||
return delDept(row.deptId);
|
return delDept(row.id);
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
getList();
|
getList();
|
||||||
proxy.$modal.msgSuccess("删除成功");
|
proxy.$modal.msgSuccess("删除成功");
|
||||||
|
|||||||
@@ -238,8 +238,9 @@
|
|||||||
|
|
||||||
<script setup name="User">
|
<script setup name="User">
|
||||||
import { getToken } from "@/utils/auth";
|
import { getToken } from "@/utils/auth";
|
||||||
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser, deptTreeSelect } from "@/api/system/user";
|
import { changeUserStatus, listUser, resetUserPwd, delUser, getUser, updateUser, addUser } from "@/api/system/user";
|
||||||
import { roleOptionselect } from "@/api/system/role";
|
import { roleOptionselect } from "@/api/system/role";
|
||||||
|
import { listDept} from "@/api/system/dept";
|
||||||
const router = useRouter();
|
const router = useRouter();
|
||||||
const { proxy } = getCurrentInstance();
|
const { proxy } = getCurrentInstance();
|
||||||
const { sys_normal_disable, sys_user_sex } = proxy.useDict("sys_normal_disable", "sys_user_sex");
|
const { sys_normal_disable, sys_user_sex } = proxy.useDict("sys_normal_disable", "sys_user_sex");
|
||||||
@@ -317,8 +318,14 @@ watch(deptName, val => {
|
|||||||
});
|
});
|
||||||
/** 查询部门下拉树结构 */
|
/** 查询部门下拉树结构 */
|
||||||
function getDeptTree() {
|
function getDeptTree() {
|
||||||
deptTreeSelect().then(response => {
|
listDept().then(response => {
|
||||||
deptOptions.value = response.data;
|
const selectList=[];
|
||||||
|
response.data.forEach(res=>{
|
||||||
|
selectList.push({id:res.id,label:res.deptName,parentId:res.parentId,orderNum:res.orderNum, children:[]})
|
||||||
|
}
|
||||||
|
|
||||||
|
)
|
||||||
|
deptOptions.value = proxy.handleTree(selectList, "id");;
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
/** 查询用户列表 */
|
/** 查询用户列表 */
|
||||||
|
|||||||
Reference in New Issue
Block a user