|
|
|
|
@ -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<DeptVO> 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<DeptVO> 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<DeptVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> dept, BladeUser bladeUser) { |
|
|
|
|
QueryWrapper<Dept> queryWrapper = Condition.getQueryWrapper(dept, Dept.class); |
|
|
|
|
List<Dept> 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<DeptVO>> list(@Parameter(hidden = true) @RequestParam Map<String, Object> dept, BladeUser bladeUser) { |
|
|
|
|
QueryWrapper<Dept> queryWrapper = Condition.getQueryWrapper(dept, Dept.class); |
|
|
|
|
List<Dept> 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<List<DeptVO>> lazyList(@Parameter(hidden = true) @RequestParam Map<String, Object> dept, Long parentId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> 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<List<DeptVO>> lazyList(@Parameter(hidden = true) @RequestParam Map<String, Object> dept, Long parentId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> list = deptService.lazyList(bladeUser.getTenantId(), parentId, dept); |
|
|
|
|
return R.data(DeptWrapper.build().listNodeLazyVO(list)); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 获取部门树形结构 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/tree") |
|
|
|
|
@ApiOperationSupport(order = 4) |
|
|
|
|
@Operation(summary = "树形结构", description = "树形结构") |
|
|
|
|
public R<List<DeptVO>> tree(String tenantId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> tree = deptService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId())); |
|
|
|
|
return R.data(tree); |
|
|
|
|
} |
|
|
|
|
/** |
|
|
|
|
* 获取部门树形结构 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/tree") |
|
|
|
|
@ApiOperationSupport(order = 4) |
|
|
|
|
@Operation(summary = "树形结构", description = "树形结构") |
|
|
|
|
public R<List<DeptVO>> tree(String tenantId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> tree = deptService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId())); |
|
|
|
|
return R.data(tree); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 懒加载获取部门树形结构 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/lazy-tree") |
|
|
|
|
@ApiOperationSupport(order = 5) |
|
|
|
|
@Operation(summary = "懒加载树形结构", description = "树形结构") |
|
|
|
|
public R<List<DeptVO>> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); |
|
|
|
|
return R.data(tree); |
|
|
|
|
} |
|
|
|
|
/** |
|
|
|
|
* 懒加载获取部门树形结构 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/lazy-tree") |
|
|
|
|
@ApiOperationSupport(order = 5) |
|
|
|
|
@Operation(summary = "懒加载树形结构", description = "树形结构") |
|
|
|
|
public R<List<DeptVO>> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) { |
|
|
|
|
List<DeptVO> 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<List<Dept>> select(Long userId, String deptId) { |
|
|
|
|
if (Func.isNotEmpty(userId)) { |
|
|
|
|
User user = UserCache.getUser(userId); |
|
|
|
|
deptId = user.getDeptId(); |
|
|
|
|
} |
|
|
|
|
List<Dept> list = deptService.list(Wrappers.<Dept>lambdaQuery().in(Dept::getId, Func.toLongList(deptId))); |
|
|
|
|
return R.data(list); |
|
|
|
|
} |
|
|
|
|
/** |
|
|
|
|
* 下拉数据源 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/select") |
|
|
|
|
@ApiOperationSupport(order = 8) |
|
|
|
|
@Operation(summary = "下拉数据源", description = "传入id集合") |
|
|
|
|
public R<List<Dept>> select(Long userId, String deptId) { |
|
|
|
|
if (Func.isNotEmpty(userId)) { |
|
|
|
|
User user = UserCache.getUser(userId); |
|
|
|
|
deptId = user.getDeptId(); |
|
|
|
|
} |
|
|
|
|
List<Dept> list = deptService.list(Wrappers.<Dept>lambdaQuery().in(Dept::getId, Func.toLongList(deptId))); |
|
|
|
|
return R.data(list); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
/** |
|
|
|
|
* 实验室下拉 |
|
|
|
|
*/ |
|
|
|
|
@GetMapping("/limsTree") |
|
|
|
|
public R<List<DeptVO>> limsTree(String tenantId) { |
|
|
|
|
List<DeptVO> tree = deptService.limsTree(Func.toStrWithEmpty(tenantId, "000000")); |
|
|
|
|
return R.data(tree); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
} |
|
|
|
|
|