diff --git a/src/main/java/org/springblade/modules/system/controller/DeptController.java b/src/main/java/org/springblade/modules/system/controller/DeptController.java index a942928..fd1776f 100644 --- a/src/main/java/org/springblade/modules/system/controller/DeptController.java +++ b/src/main/java/org/springblade/modules/system/controller/DeptController.java @@ -75,118 +75,126 @@ import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE; @Tag(name = "部门", description = "部门") public class DeptController extends BladeController { - private final IDeptService deptService; + private final IDeptService deptService; - /** - * 详情 - */ - @GetMapping("/detail") - @ApiOperationSupport(order = 1) - @Operation(summary = "详情", description = "传入dept") - public R detail(Dept dept) { - Dept detail = deptService.getOne(Condition.getQueryWrapper(dept)); - return R.data(DeptWrapper.build().entityVO(detail)); - } + /** + * 详情 + */ + @GetMapping("/detail") + @ApiOperationSupport(order = 1) + @Operation(summary = "详情", description = "传入dept") + public R detail(Dept dept) { + Dept detail = deptService.getOne(Condition.getQueryWrapper(dept)); + return R.data(DeptWrapper.build().entityVO(detail)); + } - /** - * 列表 - */ - @GetMapping("/list") - @Parameters({ - @Parameter(name = "deptName", description = "部门名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")), - @Parameter(name = "fullName", description = "部门全称", in = ParameterIn.QUERY, schema = @Schema(type = "string")) - }) - @ApiOperationSupport(order = 2) - @Operation(summary = "列表", description = "传入dept") - public R> list(@Parameter(hidden = true) @RequestParam Map dept, BladeUser bladeUser) { - QueryWrapper queryWrapper = Condition.getQueryWrapper(dept, Dept.class); - List list = deptService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Dept::getTenantId, bladeUser.getTenantId()) : queryWrapper); - return R.data(DeptWrapper.build().listNodeVO(list)); - } + /** + * 列表 + */ + @GetMapping("/list") + @Parameters({ + @Parameter(name = "deptName", description = "部门名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "fullName", description = "部门全称", in = ParameterIn.QUERY, schema = @Schema(type = "string")) + }) + @ApiOperationSupport(order = 2) + @Operation(summary = "列表", description = "传入dept") + public R> list(@Parameter(hidden = true) @RequestParam Map dept, BladeUser bladeUser) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(dept, Dept.class); + List list = deptService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Dept::getTenantId, bladeUser.getTenantId()) : queryWrapper); + return R.data(DeptWrapper.build().listNodeVO(list)); + } - /** - * 懒加载列表 - */ - @GetMapping("/lazy-list") - @Parameters({ - @Parameter(name = "deptName", description = "部门名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")), - @Parameter(name = "fullName", description = "部门全称", in = ParameterIn.QUERY, schema = @Schema(type = "string")) - }) - @ApiOperationSupport(order = 3) - @Operation(summary = "懒加载列表", description = "传入dept") - public R> lazyList(@Parameter(hidden = true) @RequestParam Map dept, Long parentId, BladeUser bladeUser) { - List list = deptService.lazyList(bladeUser.getTenantId(), parentId, dept); - return R.data(DeptWrapper.build().listNodeLazyVO(list)); - } + /** + * 懒加载列表 + */ + @GetMapping("/lazy-list") + @Parameters({ + @Parameter(name = "deptName", description = "部门名称", in = ParameterIn.QUERY, schema = @Schema(type = "string")), + @Parameter(name = "fullName", description = "部门全称", in = ParameterIn.QUERY, schema = @Schema(type = "string")) + }) + @ApiOperationSupport(order = 3) + @Operation(summary = "懒加载列表", description = "传入dept") + public R> lazyList(@Parameter(hidden = true) @RequestParam Map dept, Long parentId, BladeUser bladeUser) { + List list = deptService.lazyList(bladeUser.getTenantId(), parentId, dept); + return R.data(DeptWrapper.build().listNodeLazyVO(list)); + } - /** - * 获取部门树形结构 - */ - @GetMapping("/tree") - @ApiOperationSupport(order = 4) - @Operation(summary = "树形结构", description = "树形结构") - public R> tree(String tenantId, BladeUser bladeUser) { - List tree = deptService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId())); - return R.data(tree); - } + /** + * 获取部门树形结构 + */ + @GetMapping("/tree") + @ApiOperationSupport(order = 4) + @Operation(summary = "树形结构", description = "树形结构") + public R> tree(String tenantId, BladeUser bladeUser) { + List tree = deptService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId())); + return R.data(tree); + } - /** - * 懒加载获取部门树形结构 - */ - @GetMapping("/lazy-tree") - @ApiOperationSupport(order = 5) - @Operation(summary = "懒加载树形结构", description = "树形结构") - public R> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) { - List tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); - return R.data(tree); - } + /** + * 懒加载获取部门树形结构 + */ + @GetMapping("/lazy-tree") + @ApiOperationSupport(order = 5) + @Operation(summary = "懒加载树形结构", description = "树形结构") + public R> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) { + List tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); + return R.data(tree); + } - /** - * 新增或修改 - */ - @PreAuth(RoleConstant.HAS_ROLE_ADMIN) - @PostMapping("/submit") - @ApiOperationSupport(order = 6) - @Operation(summary = "新增或修改", description = "传入dept") - public R submit(@Valid @RequestBody Dept dept) { - if (deptService.submit(dept)) { - CacheUtil.clear(SYS_CACHE); - CacheUtil.clear(SYS_CACHE, Boolean.FALSE); - // 返回懒加载树更新节点所需字段 - Kv kv = Kv.create().set("id", String.valueOf(dept.getId())).set("tenantId", dept.getTenantId()) - .set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, dept.getDeptCategory())); - return R.data(kv); - } - return R.fail("操作失败"); - } + /** + * 新增或修改 + */ + @PreAuth(RoleConstant.HAS_ROLE_ADMIN) + @PostMapping("/submit") + @ApiOperationSupport(order = 6) + @Operation(summary = "新增或修改", description = "传入dept") + public R submit(@Valid @RequestBody Dept dept) { + if (deptService.submit(dept)) { + CacheUtil.clear(SYS_CACHE); + CacheUtil.clear(SYS_CACHE, Boolean.FALSE); + // 返回懒加载树更新节点所需字段 + Kv kv = Kv.create().set("id", String.valueOf(dept.getId())).set("tenantId", dept.getTenantId()) + .set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, dept.getDeptCategory())); + return R.data(kv); + } + return R.fail("操作失败"); + } - /** - * 删除 - */ - @PreAuth(RoleConstant.HAS_ROLE_ADMIN) - @PostMapping("/remove") - @ApiOperationSupport(order = 7) - @Operation(summary = "删除", description = "传入ids") - public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { - CacheUtil.clear(SYS_CACHE); - CacheUtil.clear(SYS_CACHE, Boolean.FALSE); - return R.status(deptService.removeDept(ids)); - } + /** + * 删除 + */ + @PreAuth(RoleConstant.HAS_ROLE_ADMIN) + @PostMapping("/remove") + @ApiOperationSupport(order = 7) + @Operation(summary = "删除", description = "传入ids") + public R remove(@Parameter(description = "主键集合", required = true) @RequestParam String ids) { + CacheUtil.clear(SYS_CACHE); + CacheUtil.clear(SYS_CACHE, Boolean.FALSE); + return R.status(deptService.removeDept(ids)); + } - /** - * 下拉数据源 - */ - @GetMapping("/select") - @ApiOperationSupport(order = 8) - @Operation(summary = "下拉数据源", description = "传入id集合") - public R> select(Long userId, String deptId) { - if (Func.isNotEmpty(userId)) { - User user = UserCache.getUser(userId); - deptId = user.getDeptId(); - } - List list = deptService.list(Wrappers.lambdaQuery().in(Dept::getId, Func.toLongList(deptId))); - return R.data(list); - } + /** + * 下拉数据源 + */ + @GetMapping("/select") + @ApiOperationSupport(order = 8) + @Operation(summary = "下拉数据源", description = "传入id集合") + public R> select(Long userId, String deptId) { + if (Func.isNotEmpty(userId)) { + User user = UserCache.getUser(userId); + deptId = user.getDeptId(); + } + List list = deptService.list(Wrappers.lambdaQuery().in(Dept::getId, Func.toLongList(deptId))); + return R.data(list); + } + /** + * 实验室下拉 + */ + @GetMapping("/limsTree") + public R> limsTree(String tenantId) { + List tree = deptService.limsTree(Func.toStrWithEmpty(tenantId, "000000")); + return R.data(tree); + } } diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java index 77af2ef..d440ae2 100644 --- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java +++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.java @@ -56,6 +56,7 @@ public interface DeptMapper extends BaseMapper { * @return */ List tree(String tenantId); + List limsTree(String tenantId); /** * 懒加载获取树形节点 diff --git a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml index 35fac15..aa82be1 100644 --- a/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml +++ b/src/main/java/org/springblade/modules/system/mapper/DeptMapper.xml @@ -74,6 +74,14 @@ ORDER BY sort + +