diff --git a/couplet-common/couplet-common-security/src/main/java/com/couplet/common/security/utils/SecurityUtils.java b/couplet-common/couplet-common-security/src/main/java/com/couplet/common/security/utils/SecurityUtils.java index bb4aee9..0c96934 100644 --- a/couplet-common/couplet-common-security/src/main/java/com/couplet/common/security/utils/SecurityUtils.java +++ b/couplet-common/couplet-common-security/src/main/java/com/couplet/common/security/utils/SecurityUtils.java @@ -49,7 +49,7 @@ public class SecurityUtils { * 获取登录企业ID */ public static Long getEnterpriseId(){ - Long enterpriseId = getLoginUser().getEnterpriseId(); + Long enterpriseId = getLoginUser().getDeptId(); Assert.notNull(enterpriseId, "该用户未绑定负责企业"); return enterpriseId; } diff --git a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/domain/LoginUser.java b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/domain/LoginUser.java index 338dcb9..e00c31e 100644 --- a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/domain/LoginUser.java +++ b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/domain/LoginUser.java @@ -61,7 +61,7 @@ public class LoginUser implements Serializable { /** * 企业ID */ - private Long enterpriseId; + private Long deptId; /** * 用户信息 diff --git a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteDeptService.java b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteDeptService.java index a05dd4f..b4fec46 100644 --- a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteDeptService.java +++ b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteDeptService.java @@ -2,16 +2,16 @@ package com.couplet.common.system.remote; import com.couplet.common.core.constant.ServiceNameConstants; import com.couplet.common.core.domain.Result; -import com.couplet.common.core.web.page.TableDataInfo; import com.couplet.common.system.domain.SysDept; -import com.couplet.common.system.domain.SysUser; import com.couplet.common.system.remote.factory.RemoteDeptFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.List; -@FeignClient(contextId = "remoteFileService" , +@FeignClient(contextId = "remoteDeptService" , value = ServiceNameConstants.SYSTEM_SERVICE, fallbackFactory = RemoteDeptFallbackFactory.class, path = "/dept" @@ -28,9 +28,70 @@ public interface RemoteDeptService { /** * 根据企业ID获取企业下部门 - * @param enterpriseId 企业ID + * + * @param deptId 企业ID * @return 企业信息,内含有部门 */ - @GetMapping("/getSysDeptByEnterpriseId/{enterpriseId}") - public Result getSysDeptByEnterpriseId(@PathVariable(value = "enterpriseId") Long enterpriseId); + @GetMapping("/getSysDeptByDeptId/{deptId}") + public Result> getSysDeptByDeptId(@PathVariable(value = "deptId") Long deptId); + + + /* + * @param dept: + * @return Result + * @author 付凡芮 + * @description 企业部门添加 + * @date + */ + @PostMapping + public Result add (@Validated @RequestBody SysDept dept); + + + + /* + * @param dept: + * @return null + * @author 付凡芮 + * @description 企业部门修改 + * @date + */ + + @PutMapping + public Result edit (@Validated @RequestBody SysDept dept); + + + /* + * @param null: + * @return null + * @author 付凡芮 + * @description 删除企业部门 + * @date + */ + @DeleteMapping("/{deptId}") + public Result remove (@PathVariable(value = "deptId") Long deptId); + + + /* + * @param deptId: + * @return Result + * @author 付凡芮 + * @description 根据deptId获取部门详情 + * @date + */ + @GetMapping(value = "/{deptId}") + public Result getInfo (@PathVariable(value = "deptId") Long deptId); + + + /* + * @param deptId: + * @return Result + * @author 付凡芮 + * @description 查询部门列表 + * @date + */ + + @GetMapping("/list/exclude/{deptId}") + public Result excludeChild (@PathVariable(value = "deptId") Long deptId); + + } diff --git a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteUserService.java b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteUserService.java index 66d5518..997f166 100644 --- a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteUserService.java +++ b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/RemoteUserService.java @@ -24,6 +24,7 @@ public interface RemoteUserService { * * @return 结果 */ + @GetMapping("/user/info/{username}") public Result getUserInfo (@PathVariable("username") String username, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); diff --git a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/factory/RemoteDeptFallbackFactory.java b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/factory/RemoteDeptFallbackFactory.java index 24ef720..e334518 100644 --- a/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/factory/RemoteDeptFallbackFactory.java +++ b/couplet-common/couplet-common-system/src/main/java/com/couplet/common/system/remote/factory/RemoteDeptFallbackFactory.java @@ -1,13 +1,13 @@ package com.couplet.common.system.remote.factory; import com.couplet.common.core.domain.Result; -import com.couplet.common.core.web.page.TableDataInfo; import com.couplet.common.system.domain.SysDept; -import com.couplet.common.system.domain.SysUser; import com.couplet.common.system.remote.RemoteDeptService; import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.openfeign.FallbackFactory; +import java.util.List; + /** * @author fufanrui * @version 1.0 @@ -20,24 +20,88 @@ public class RemoteDeptFallbackFactory implements FallbackFactory getSysDeptByEnterpriseId (Long enterpriseId) { + public Result> getSysDeptByDeptId(Long deptId) { + return Result.error("调用失败...."+cause.getMessage()); + } + /* + * @param cause: + * @return RemoteDeptService + * @author 付凡芮 + * @description 添加企业部门 + * @date + */ + + @Override + public Result add(SysDept dept) { + return Result.error("调用失败...."+cause.getMessage()); + } + + /* + * @param dept: + * @return Result + * @author 付凡芮 + * @description 修改企业部门 + * @date + */ + @Override + public Result edit(SysDept dept) { return Result.error("调用失败..."+cause.getMessage()); } + /* + * @param deptId: + * @return Result + * @author 付凡芮 + * @description 删除企业部门 + * @date + */ + @Override + public Result remove(Long deptId) { + return Result.error("调用失败...."+cause.getMessage()); + } + + /* + * @param deptId: + * @return Result + * @author 付凡芮 + * @description 根据deptId获取部门详情 + * @date + */ + @Override + public Result getInfo(Long deptId) { + return Result.error("调用失败....."+cause.getMessage()); + } + /* + * @param deptId: + * @return Result + * @author 付凡芮 + * @description 查询部门列表 + * @date + */ + @Override + public Result excludeChild(Long deptId) { + return Result.error("调用失败...."+cause.getMessage()); + } + }; + } } diff --git a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/controller/ManageController.java b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/controller/ManageController.java index d51e9b6..d260a66 100644 --- a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/controller/ManageController.java +++ b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/controller/ManageController.java @@ -1,23 +1,92 @@ package com.couplet.server.controller; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import com.couplet.common.core.domain.Result; +import com.couplet.common.log.annotation.Log; +import com.couplet.common.log.enums.BusinessType; +import com.couplet.common.security.annotation.RequiresPermissions; +import com.couplet.common.system.domain.SysDept; +import com.couplet.server.service.ManageServer; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; import java.util.List; -/** - * @author fufanrui - * @version 1.0 - * @description: TODO - * @date 2024/3/27 15:33 - */ + @RestController @RequestMapping("/manage") public class ManageController { + @Autowired + private ManageServer manageServer; + + + /* + * @param sysDept: + * @return Result + * @author 付凡芮 + * @description 登入后获取到企业下的所有部门 + * @date + */ + @GetMapping("manageList") + @RequiresPermissions("system:dept:list") + public Result> manageList() { + List sysDepts = manageServer.selectDeptList(); + return Result.success(sysDepts); + } + + + /* + * @param sysDept: + * @return Result + * @author 付凡芮 + * @description 添加企业中的部门 + * @date + */ + @RequiresPermissions("system:dept:add") + @Log(title = "部门管理", businessType = BusinessType.INSERT) + @PostMapping + public Result manageInsert(@RequestBody SysDept sysDept) { + return manageServer.insertDept(sysDept); + } + + + @RequiresPermissions("system:dept:edit") + @Log(title = "部门管理", businessType = BusinessType.UPDATE) + @PutMapping + public Result manageEdit(@RequestBody SysDept sysDept) { + return manageServer.manageEdit(sysDept); + } + + @RequiresPermissions("system:dept:remove") + @Log(title = "部门管理", businessType = BusinessType.DELETE) + @DeleteMapping("/{deptId}") + public Result manageRemove(@PathVariable Long deptId){ + return manageServer.manageRemove(deptId); + } + + +// @GetMapping("/getSysDeptByDeptId/{deptId}") +// public Result> getSysDeptByDeptId(@PathVariable(value = "deptId") Long deptId) { +// return manageServer.getSysDeptByDeptId(deptId); +// } + + @RequiresPermissions("system:dept:query") + @GetMapping(value = "/{deptId}") + public Result getInfo(@PathVariable Long deptId) { + return manageServer.getInfo(deptId); + } + + + + @RequiresPermissions("system:dept:list") + @GetMapping("/list/exclude/{deptId}") + public Result excludeChild(@PathVariable(value = "deptId") Long deptId) { + return manageServer.excludeChild(deptId); + } + + + diff --git a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/ManageServer.java b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/ManageServer.java index c6ff389..7d5be72 100644 --- a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/ManageServer.java +++ b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/ManageServer.java @@ -1,7 +1,23 @@ package com.couplet.server.service; + +import com.couplet.common.core.domain.Result; +import com.couplet.common.system.domain.SysDept; import org.springframework.beans.factory.annotation.Autowired; +import java.util.List; + public interface ManageServer { + List selectDeptList(); + + Result insertDept(SysDept sysDept); + + Result manageEdit(SysDept sysDept); + + Result manageRemove(Long deptId); + + Result getInfo(Long deptId); + + Result excludeChild(Long deptId); } diff --git a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/impl/ManageServiceImpl.java b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/impl/ManageServiceImpl.java index 233ff4d..48c8f28 100644 --- a/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/impl/ManageServiceImpl.java +++ b/couplet-modules/couplet-enterprisemanagement/couplet-enterprisemanagement-server/src/main/java/com/couplet/server/service/impl/ManageServiceImpl.java @@ -1,32 +1,72 @@ package com.couplet.server.service.impl; +import com.couplet.common.core.constant.SecurityConstants; import com.couplet.common.core.domain.Result; +import com.couplet.common.core.utils.StringUtils; import com.couplet.common.security.utils.SecurityUtils; +import com.couplet.common.system.domain.LoginUser; import com.couplet.common.system.domain.SysDept; import com.couplet.common.system.remote.RemoteDeptService; +import com.couplet.common.system.remote.RemoteUserService; import com.couplet.server.service.ManageServer; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; +import java.util.List; + /** * @author fufanrui * @version 1.0 - * @description: TODO + * @description: 管理企业业务层 * @date 2024/3/27 15:34 */ @Service -public class ManageServiceImpl implements ManageServer { +public class ManageServiceImpl implements ManageServer{ -// @Autowired -// private RemoteDeptService remoteDeptService; -// { -// Long enterpriseId = SecurityUtils.getEnterpriseId(); -// Result sysDeptByEnterpriseId = remoteDeptService.getSysDeptByEnterpriseId(enterpriseId); -// if (sysDeptByEnterpriseId.getCode() == 200){ -// SysDept sysDept = sysDeptByEnterpriseId.getData(); -// } -// } + @Autowired + private RemoteDeptService remoteDeptService; + @Autowired + private RemoteUserService remoteUserService; + + @Override + public List selectDeptList() { + LoginUser loginUser = SecurityUtils.getLoginUser(); + String username = loginUser.getUsername(); + Result userInfo = remoteUserService.getUserInfo(username, SecurityConstants.FROM_SOURCE); + LoginUser user = userInfo.getData(); + Long deptId = user.getDeptId(); + Result> sysDeptByDeptId = remoteDeptService.getSysDeptByDeptId(deptId); + List dept = sysDeptByDeptId.getData(); + return dept; + } + + @Override + public Result insertDept(SysDept sysDept) { + + return remoteDeptService.add(sysDept); + } + + @Override + public Result manageEdit(SysDept sysDept) { + return remoteDeptService.edit(sysDept); + } + + @Override + public Result manageRemove(Long deptId) { + return remoteDeptService.remove(deptId); + } + + @Override + public Result getInfo(Long deptId) { + return remoteDeptService.getInfo(deptId); + } + + @Override + public Result excludeChild(Long deptId) { + return remoteDeptService.excludeChild(deptId); + } } diff --git a/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysDeptController.java b/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysDeptController.java index 3d47e40..1e07985 100644 --- a/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysDeptController.java +++ b/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysDeptController.java @@ -11,6 +11,7 @@ import com.couplet.common.security.utils.SecurityUtils; import com.couplet.common.system.domain.SysDept; import com.couplet.system.service.SysDeptService; import org.apache.commons.lang3.ArrayUtils; +import org.apache.commons.math3.analysis.solvers.BrentSolver; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -110,12 +111,13 @@ public class SysDeptController extends BaseController { /** * 根据企业ID获取企业下部门 - * @param enterpriseId 企业ID + * @param deptId 企业ID * @return 企业信息,内含有部门 */ - @GetMapping("/getSysDeptByEnterpriseId/{enterpriseId}") - public Result getSysDeptByEnterpriseId(@PathVariable(value = "enterpriseId") Long enterpriseId){ - SysDept sysDept = deptService.getSysDeptByEnterpriseId(enterpriseId); - return Result.success(sysDept); + @GetMapping("/getSysDeptByDeptId/{deptId}") + public Result> getSysDeptByDeptId(@PathVariable(value = "deptId") Long deptId){ + List sysDept = deptService.getSysDeptByDeptId(deptId); + Result> success = Result.success(sysDept); + return success; } } diff --git a/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysUserController.java b/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysUserController.java index 493cb33..5a78769 100644 --- a/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysUserController.java +++ b/couplet-modules/couplet-system/src/main/java/com/couplet/system/controller/SysUserController.java @@ -96,7 +96,6 @@ public class SysUserController extends BaseController { /** * 获取当前用户信息 */ - @InnerAuth @GetMapping("/info/{username}") public Result info (@PathVariable("username") String username) { SysUser sysUser = userService.selectUserByUserName(username); @@ -113,10 +112,9 @@ public class SysUserController extends BaseController { sysUserVo.setSysUser(sysUser); sysUserVo.setRoles(roles); sysUserVo.setPermissions(permissions); - sysUserVo.setEnterpriseId(deptId); + sysUserVo.setDeptId(deptId); return Result.success(sysUserVo); } - /** * 注册用户信息 */ diff --git a/couplet-modules/couplet-system/src/main/java/com/couplet/system/mapper/SysDeptMapper.java b/couplet-modules/couplet-system/src/main/java/com/couplet/system/mapper/SysDeptMapper.java index 6397d36..93eaddf 100644 --- a/couplet-modules/couplet-system/src/main/java/com/couplet/system/mapper/SysDeptMapper.java +++ b/couplet-modules/couplet-system/src/main/java/com/couplet/system/mapper/SysDeptMapper.java @@ -128,4 +128,9 @@ public interface SysDeptMapper extends BaseMapper { * @return 结果 */ public int deleteDeptById (Long deptId); + + SysDept selectDeptIdByLeader(String userName); + + List getSysDeptByDeptId(Long deptId); + } diff --git a/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/SysDeptService.java b/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/SysDeptService.java index dde112b..00fb12f 100644 --- a/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/SysDeptService.java +++ b/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/SysDeptService.java @@ -138,15 +138,15 @@ public interface SysDeptService extends IService { /** * 通过负责人查询企业ID - * @param leader 负责人 + * @param userName 负责人 * @return 企业ID */ - Long selectDeptIdByLeader (String leader); + Long selectDeptIdByLeader (String userName); /** * 根据企业ID获取企业下部门 - * @param enterpriseId 企业ID + * @param deptId 企业ID * @return 企业信息,内含有部门 */ - SysDept getSysDeptByEnterpriseId (Long enterpriseId); + List getSysDeptByDeptId(Long deptId); } diff --git a/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/impl/SysDeptServiceImpl.java b/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/impl/SysDeptServiceImpl.java index 05f5ec9..89ddf0f 100644 --- a/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/impl/SysDeptServiceImpl.java +++ b/couplet-modules/couplet-system/src/main/java/com/couplet/system/service/impl/SysDeptServiceImpl.java @@ -1,6 +1,6 @@ package com.couplet.system.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; + import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.couplet.common.core.constant.UserConstants; import com.couplet.common.core.exception.ServiceException; @@ -63,7 +63,6 @@ public class SysDeptServiceImpl extends ServiceImpl impl List depts = SpringUtils.getAopProxy(this).selectDeptList(dept); return buildDeptTreeSelect(depts); } - /** * 构建前端所需要树结构 * @@ -285,31 +284,33 @@ public class SysDeptServiceImpl extends ServiceImpl impl /** * 通过负责人查询企业ID * - * @param leader 负责人 + * @param userName 负责人 * * @return 企业ID */ @Override - public Long selectDeptIdByLeader (String leader) { - SysDept sysDept = getOne(new LambdaQueryWrapper<>() {{ - eq(SysDept::getLeader, leader); - }}); + public Long selectDeptIdByLeader (String userName) { + + SysDept sysDept = deptMapper.selectDeptIdByLeader(userName); return sysDept == null ? null : sysDept.getDeptId(); } + + /** * 根据企业ID获取企业下部门 * - * @param enterpriseId 企业ID + * @param deptId 企业ID * * @return 企业信息,内含有部门 */ - @Override - public SysDept getSysDeptByEnterpriseId (Long enterpriseId) { - return null; - } + @Override + public List getSysDeptByDeptId(Long deptId) { + + return deptMapper.getSysDeptByDeptId(deptId); + } /** * 递归列表 */ diff --git a/couplet-modules/couplet-system/src/main/resources/mapper/system/SysDeptMapper.xml b/couplet-modules/couplet-system/src/main/resources/mapper/system/SysDeptMapper.xml index a680f7f..8adf7a8 100644 --- a/couplet-modules/couplet-system/src/main/resources/mapper/system/SysDeptMapper.xml +++ b/couplet-modules/couplet-system/src/main/resources/mapper/system/SysDeptMapper.xml @@ -108,6 +108,12 @@ where dept_name=#{deptName} and parent_id = #{parentId} and del_flag = '0' limit 1 + + insert into sys_dept(