| | |
| | | import org.springblade.core.boot.ctrl.BladeController; |
| | | import org.springblade.core.cache.utils.CacheUtil; |
| | | import org.springblade.core.launch.constant.AppConstant; |
| | | import org.springblade.core.log.annotation.ApiLog; |
| | | import org.springblade.core.mp.support.Condition; |
| | | import org.springblade.core.secure.BladeUser; |
| | | import org.springblade.core.tenant.annotation.NonDS; |
| | |
| | | import org.springblade.core.tool.constant.BladeConstant; |
| | | import org.springblade.core.tool.support.Kv; |
| | | import org.springblade.core.tool.utils.Func; |
| | | import org.springblade.modules.FTP.FtpUtil; |
| | | import org.springblade.modules.information.entity.Information; |
| | | import org.springblade.modules.information.service.IInformationService; |
| | | import org.springblade.modules.system.entity.Dept; |
| | | import org.springblade.modules.system.entity.User; |
| | | import org.springblade.modules.system.node.TreeNodes; |
| | | import org.springblade.modules.system.service.IDeptService; |
| | | import org.springblade.modules.system.service.IUserService; |
| | | import org.springblade.modules.system.service.MyAsyncService; |
| | | import org.springblade.modules.system.vo.DeptVO; |
| | | import org.springblade.modules.system.wrapper.DeptWrapper; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import springfox.documentation.annotations.ApiIgnore; |
| | | |
| | | import javax.validation.Valid; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | |
| | | public class DeptController extends BladeController { |
| | | |
| | | private final IDeptService deptService; |
| | | |
| | | private final IUserService userService; |
| | | private final IInformationService informationService; |
| | | private final MyAsyncService myAsyncService; |
| | | |
| | | /** |
| | | * 详情 |
| | |
| | | @GetMapping("/lazy-tree") |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "懒加载树形结构", notes = "树形结构") |
| | | public R<List<DeptVO>> lazyTree(String tenantId, Long parentId, BladeUser bladeUser) { |
| | | List<DeptVO> tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); |
| | | public R<List<DeptVO>> lazyTree(String tenantId, Long parentId, BladeUser bladeUser,String userId) { |
| | | List<DeptVO> tree = deptService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId,userId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构,根据辖区查询 |
| | | */ |
| | | @GetMapping("/lazy-tree-jurisdiction") |
| | | @ApiOperationSupport(order = 5) |
| | | @ApiOperation(value = "懒加载树形结构", notes = "树形结构") |
| | | public R<List<DeptVO>> lazyTreeJurisdiction(String jurisdiction, Long parentId) { |
| | | List<DeptVO> tree = deptService.lazyTreeJurisdiction(jurisdiction,parentId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据) |
| | | * @return |
| | | */ |
| | | @GetMapping("/lazy-tree-user") |
| | | public R<List<DeptVO>> lazyTreeUser(String tenantId, Long parentId, BladeUser bladeUser) { |
| | | List<DeptVO> tree = deptService.lazyTreeUser(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据),只查下一级的数据 |
| | | * @return |
| | | */ |
| | | @GetMapping("/lazy-tree-users") |
| | | public R<List<TreeNodes>> lazyTreeUsers(Integer type,Long deptId) { |
| | | List<TreeNodes> tree = deptService.lazyTreeUsers(type,deptId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 懒加载获取单位树,电子围栏用 |
| | | * @param type 1:本单位 2:分公司 3:服务单位 |
| | | * @param deptId |
| | | * @return |
| | | */ |
| | | @GetMapping("/lazy-tree-rail") |
| | | public R<List<DeptVO>> lazyTreeRail(Integer type,Long deptId) { |
| | | List<DeptVO> tree = deptService.lazyTreeRail(type,deptId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(包含用户数据)app |
| | | * @param type 1:保安对保安 2:保安向民警 3:民警向民警 |
| | | * @return |
| | | */ |
| | | @GetMapping("/lazy-tree-user-app") |
| | | public List<DeptVO> lazyTreeUser(Integer type,String userId) { |
| | | if (null!=userId && userId!=""){ |
| | | //查询用户信息 |
| | | User user = userService.getById(userId); |
| | | type = 4; |
| | | if (null!=user.getJurisdiction() && user.getJurisdiction()!="") { |
| | | return deptService.lazyTreeUserApp(type, user.getJurisdiction()); |
| | | } |
| | | return deptService.lazyTreeUserApp(type,null); |
| | | } |
| | | return deptService.lazyTreeUserApp(type,null); |
| | | } |
| | | |
| | | /** |
| | |
| | | */ |
| | | @GetMapping("/security_lazy-tree") |
| | | @ApiOperation(value = "懒加载树形结构", notes = "树形结构") |
| | | public R<List<DeptVO>> securityLazyTree(String tenantId, Long parentId, BladeUser bladeUser) { |
| | | List<DeptVO> tree = deptService.securityLazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId); |
| | | public R<List<DeptVO>> securityLazyTree(String jurisdiction, Long parentId,Long deptId) { |
| | | List<DeptVO> tree = deptService.securityLazyTree(jurisdiction, parentId,deptId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | /** |
| | | * 懒加载获取部门树形结构(按分类查询) |
| | | */ |
| | | @GetMapping("/lazy-tree-type") |
| | | @ApiOperation(value = "懒加载树形结构", notes = "树形结构") |
| | | public R<List<DeptVO>> LazyTreeType(String deptCategory, Long parentId) { |
| | | List<DeptVO> tree = deptService.lazyTreeType(deptCategory, parentId); |
| | | return R.data(tree); |
| | | } |
| | | |
| | |
| | | @ApiOperationSupport(order = 6) |
| | | @ApiOperation(value = "新增或修改", notes = "传入dept") |
| | | public R submit(@Valid @RequestBody Dept dept) { |
| | | // Information information = new Information(); |
| | | boolean type = false; |
| | | //如果为修改 |
| | | if (null!=dept.getId()){ |
| | | type = true; |
| | | } |
| | | if (deptService.submit(dept)) { |
| | | CacheUtil.clear(SYS_CACHE); |
| | | // 返回懒加载树更新节点所需字段 |
| | | Kv kv = Kv.create().set("id", String.valueOf(dept.getId())).set("tenantId", dept.getTenantId()) |
| | | .set("deptCategoryName", DictCache.getValue(DictEnum.ORG_CATEGORY, dept.getDeptCategory())); |
| | | if (!type) { |
| | | Integer isDeleted = 0; |
| | | //内网同步新增 |
| | | String ss = "insert into blade_dept(id,parent_id,tenant_id,dept_name,ancestors,dept_category,full_name,sort,remark,is_deleted) values(" |
| | | + "'" + dept.getId() + "'" + "," |
| | | + "'" + dept.getParentId() + "'" + "," |
| | | + "'" + dept.getTenantId() + "'" + |
| | | "," + "'" + dept.getDeptName() + "'" + |
| | | "," + "'" + dept.getAncestors() + "'" + |
| | | "," + "'" + dept.getDeptCategory() + "'" + |
| | | "," + "'" + dept.getFullName() + "'" + |
| | | "," + "'" + dept.getSort() + "'" + |
| | | "," + "'" + dept.getRemark() + "'" + |
| | | "," + "'" + isDeleted + "'" + ")"; |
| | | //FtpUtil.sqlFileUpload(ss); |
| | | myAsyncService.FTP(ss); |
| | | }else { |
| | | //修改 |
| | | //内网同步 |
| | | String s1 = |
| | | "update blade_dept set parent_id = " + "'" + dept.getParentId() + "'" |
| | | + ",dept_name = " + "'" + dept.getDeptName() + "'" |
| | | + ",ancestors = " + "'" + dept.getAncestors() + "'" |
| | | + ",dept_category = " + "'" + dept.getDeptCategory() + "'" |
| | | + ",full_name = " + "'" + dept.getFullName() + "'" |
| | | + ",sort = " + "'" + dept.getSort() + "'" |
| | | + ",remark = " + "'" + dept.getRemark() + "'" |
| | | + ",is_deleted = " + "'" + dept.getIsDeleted() + "'" |
| | | + " " + "where id = " + "'" + dept.getId() + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.dataSync(s1); |
| | | } |
| | | // String id = kv.get("id").toString(); |
| | | // information.setDepartmentid(id); |
| | | // information.setEnterprisename(dept.getDeptName()); |
| | | // Integer deptCategory = dept.getDeptCategory(); |
| | | // information.setStats(String.valueOf(deptCategory)); |
| | | return R.data(kv); |
| | | } |
| | | // informationService.save(information); |
| | | // String s = "insert into sys_information(id,enterpriseName,departmentid,stats) " + |
| | | // "values(" + "'" + information.getId() + "'" + |
| | | // "," + "'" + information.getEnterprisename() + "'" + |
| | | // "," + "'" + information.getDepartmentid() + "'" + |
| | | // "," + "'" + information.getStats() + "'"+ ")"; |
| | | // FtpUtil.sqlFileUpload(s); |
| | | return R.fail("操作失败"); |
| | | } |
| | | |
| | |
| | | @ApiOperation(value = "删除", notes = "传入ids") |
| | | public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) { |
| | | CacheUtil.clear(SYS_CACHE); |
| | | List<String> list = Arrays.asList(ids.split(",")); |
| | | list.forEach(id -> { |
| | | //内网同步 |
| | | String s1 = "update blade_dept set is_deleted = 1 where id = " + "'" + id + "'"; |
| | | //FtpUtil.sqlFileUpload(s1); |
| | | myAsyncService.dataSync(s1); |
| | | }); |
| | | return R.status(deptService.removeDept(ids)); |
| | | } |
| | | |
| | | @GetMapping("/selectIn") |
| | | public R selectIn() { |
| | | return R.data(deptService.selectIn()); |
| | | @ApiLog("Blog详情") |
| | | @GetMapping("/selectInfo") |
| | | public R<List<DeptVO>> selectInfo() { |
| | | List<DeptVO> tree =deptService.selectInfo(); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | |
| | | @GetMapping("/selectInfos") |
| | | public R<List<DeptVO>> selectInfos() { |
| | | List<DeptVO> tree =deptService.selectInfos(); |
| | | return R.data(tree); |
| | | } |
| | | |
| | | |
| | | } |