From bddd819a6efc0731f2ec55cbb86f7fb97e47a262 Mon Sep 17 00:00:00 2001 From: winLsy <18332763730@163.com> Date: Sat, 24 Mar 2018 14:34:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9D=83=E9=99=90=E7=AE=A1=E7=90=86=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../micro/fast/gateway/config/WebConfig.java | 2 ++ .../micro/fast/upms/dao/UpmsRoleMapper.java | 4 +-- .../micro/fast/upms/dao/UpmsSystemMapper.java | 9 +++++++ .../micro/fast/upms/mapper/UpmsRoleMapper.xml | 4 +-- .../fast/upms/service/UpmsSystemService.java | 8 +++++- .../fast/upms/service/UpmsUserService.java | 9 +++++++ .../service/impl/UpmsRoleServiceImpl.java | 4 +-- .../service/impl/UpmsSystemServiceImpl.java | 7 ++++++ .../service/impl/UpmsUserServiceImpl.java | 25 +++++++++++++++++++ .../upms/controller/UpmsSystemController.java | 8 ++++++ .../upms/controller/UpmsUserController.java | 10 ++++++++ 11 files changed, 83 insertions(+), 7 deletions(-) diff --git a/ms/gateway/src/main/java/com/micro/fast/gateway/config/WebConfig.java b/ms/gateway/src/main/java/com/micro/fast/gateway/config/WebConfig.java index dbda521..cd7c0f4 100644 --- a/ms/gateway/src/main/java/com/micro/fast/gateway/config/WebConfig.java +++ b/ms/gateway/src/main/java/com/micro/fast/gateway/config/WebConfig.java @@ -7,6 +7,8 @@ import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; +import java.util.concurrent.atomic.AtomicInteger; + /** * 网关web配置类 * @author lsy diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRoleMapper.java b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRoleMapper.java index 817b5cc..64b5863 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRoleMapper.java +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRoleMapper.java @@ -37,7 +37,7 @@ public interface UpmsRoleMapper extends SsmMapper { * @param userId 根据用户id查询已拥有的角色 * @return */ - List selectRoleJoinWithUserId(@Param("userId") Integer userId); + List selectRoleJoinWithUserId(@Param("userId") Integer userId); /** * 根据角色名称查询用户未拥有的角色 @@ -45,6 +45,6 @@ public interface UpmsRoleMapper extends SsmMapper { * @param roleName 角色的名称 * @return */ - List selectRolesUserNotHaveByConditionPage(@Param("userId") Integer userId, @Param("roleName") String roleName); + List selectRolesUserNotHaveByConditionPage(@Param("userId") Integer userId, @Param("roleName") String roleName); } \ No newline at end of file diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java index ac61a6d..d8d13ca 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsSystemMapper.java @@ -2,6 +2,7 @@ package com.micro.fast.upms.dao; import com.micro.fast.common.dao.SsmMapper; import com.micro.fast.upms.pojo.UpmsSystem; +import org.apache.ibatis.annotations.Select; import java.util.List; @@ -30,4 +31,12 @@ public interface UpmsSystemMapper extends SsmMapper { @Override int deleteByPrimaryKeys(List ids); + + /** + * 查询某个系统的状态,必要时对系统进行关闭 + * @param id 系统的id + * @return + */ + @Select("select status from upms_system where id = #{id}") + int selectSystemStatus(Integer id); } \ No newline at end of file diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRoleMapper.xml b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRoleMapper.xml index 4a9e609..a3ba2a0 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRoleMapper.xml +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRoleMapper.xml @@ -136,12 +136,12 @@ - SELECT FROM upms_role WHERE id IN (SELECT role_id from upms_user_role WHERE user_id = #{userId}) - SELECT FROM upms_role WHERE id not in (select role_id from upms_user_role WHERE upms_user_role.user_id = #{userId}) and name like #{roleName} diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java index dac7a75..c595b51 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsSystemService.java @@ -1,5 +1,6 @@ package com.micro.fast.upms.service; +import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.common.service.SsmService; /** @@ -7,5 +8,10 @@ import com.micro.fast.common.service.SsmService; * @author lsy */ public interface UpmsSystemService extends SsmService{ - + /** + * 查询系统的状态 + * @param id + * @return + */ + ServerResponse getSystemStatus(Integer id); } diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsUserService.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsUserService.java index 5f8ee46..e9b4a00 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsUserService.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsUserService.java @@ -38,4 +38,13 @@ public interface UpmsUserService extends SsmService { */ ServerResponse getUsersByOrgId(UpmsUser upmsUser, Integer orgId, int pageNum, int pageSize, String order_by); + /** + * 根据权限的类型获取所有的权限 + * @param userId 用户的id + * @param type 权限的类型 + * @return + */ + ServerResponse getAllPermissionByType(Integer userId,Integer type); + + } diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsRoleServiceImpl.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsRoleServiceImpl.java index 37ba684..65c3a89 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsRoleServiceImpl.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsRoleServiceImpl.java @@ -34,14 +34,14 @@ implements UpmsRoleService,InitializingBean { @Override public ServerResponse getRolesByUserId(Integer useId) { - List roles = mapper.selectRoleJoinWithUserId(useId); + List roles = mapper.selectRoleJoinWithUserId(useId); return ServerResponse.successMsgData("根据用户id查询角色成功",roles); } @Override public ServerResponse selectRolesUserNotHaveByConditionPage(Integer userId, String roleName, int pageSize, int pageNum) { PageHelper.startPage(pageNum,pageSize,"ctime_desc"); - List roles = mapper.selectRolesUserNotHaveByConditionPage(userId, roleName); + List roles = mapper.selectRolesUserNotHaveByConditionPage(userId, roleName); PageInfo pageInfo = new PageInfo(roles); return ServerResponse.successData(pageInfo); } diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsSystemServiceImpl.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsSystemServiceImpl.java index ede72f7..72c8b55 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsSystemServiceImpl.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsSystemServiceImpl.java @@ -1,5 +1,6 @@ package com.micro.fast.upms.service.impl; +import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.common.service.impl.SsmServiceImpl; import com.micro.fast.upms.dao.UpmsSystemMapper; import com.micro.fast.upms.pojo.UpmsSystem; @@ -25,4 +26,10 @@ implements UpmsSystemService,InitializingBean { public void afterPropertiesSet() throws Exception { super.setMapper(this.mapper); } + + @Override + public ServerResponse getSystemStatus(Integer id) { + int systemStatus = mapper.selectSystemStatus(id); + return ServerResponse.successMsgData("获取系统状态成功",systemStatus); + } } diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java index 35629af..8b5d69a 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/impl/UpmsUserServiceImpl.java @@ -9,7 +9,11 @@ import com.micro.fast.boot.starter.common.response.BaseConst.SystemResponse; import com.micro.fast.boot.starter.common.response.BaseConst.UserResponse; import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.common.service.impl.SsmServiceImpl; +import com.micro.fast.upms.dao.UpmsPermissionMapper; +import com.micro.fast.upms.dao.UpmsRoleMapper; import com.micro.fast.upms.dao.UpmsUserMapper; +import com.micro.fast.upms.pojo.UpmsPermission; +import com.micro.fast.upms.pojo.UpmsRole; import com.micro.fast.upms.pojo.UpmsUser; import com.micro.fast.upms.service.UpmsUserService; import org.springframework.beans.factory.InitializingBean; @@ -17,7 +21,10 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.stereotype.Service; +import javax.management.relation.Role; +import java.util.HashSet; import java.util.List; +import java.util.Set; /** * @author lsy @@ -33,6 +40,12 @@ public class UpmsUserServiceImpl extends SsmServiceImpl register(UpmsUser upmsUser, String repeatPassword){ ServerResponse checkUsername = checkUsername(upmsUser.getUsername()); @@ -96,6 +109,18 @@ public class UpmsUserServiceImpl extends SsmServiceImpl roles = upmsRoleMapper.selectRoleJoinWithUserId(userId); + Set permissions = new HashSet<>(16); + roles.forEach((role) -> { + List upmsPermissions = upmsPermissionMapper.selectByRoleIdAndType(role.getId(), type); + permissions.addAll(upmsPermissions); + }); + return ServerResponse.successData(permissions); + } + @Override public void afterPropertiesSet() throws Exception { super.setMapper(this.upmsUserMapper); diff --git a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java index b489c34..e377211 100644 --- a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java +++ b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsSystemController.java @@ -13,6 +13,7 @@ import org.springframework.validation.BindException; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; +import javax.validation.constraints.NotNull; import java.util.ArrayList; /** @@ -67,4 +68,11 @@ public class UpmsSystemController { @NotEmpty(message = BaseConst.BASEMSG_PREFIX+"请传入id") @RequestParam("ids") ArrayList ids){ return upmsSystemService.deleteByIds(ids); } + + @ApiOperation("根据id查询系统的状态") + @GetMapping("/getSystemIdBySystemId") + public ServerResponse getSystemIdBySystemId( + @NotNull(message = BaseConst.BASEMSG_PREFIX + "请传入系统的id") @RequestParam("systemId") Integer systemId){ + return upmsSystemService.getSystemStatus(systemId); + } } diff --git a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsUserController.java b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsUserController.java index 8af41a3..1539cb5 100644 --- a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsUserController.java +++ b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsUserController.java @@ -8,11 +8,13 @@ import com.micro.fast.upms.pojo.UpmsUser; import com.micro.fast.upms.service.UpmsUserService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.apache.ibatis.annotations.Param; import org.hibernate.validator.constraints.NotBlank; import org.hibernate.validator.constraints.NotEmpty; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import javax.servlet.http.HttpServletRequest; import javax.validation.Valid; import javax.validation.constraints.NotNull; import java.util.ArrayList; @@ -104,4 +106,12 @@ public class UpmsUserController { @RequestParam(value = "organizationId",required = false) Integer orgId ) { return upmsUserService.getUsersByOrgId(upmsUser, orgId, pageNum, pageSize, orderBy); } + + @ApiOperation("根据权限的类型和用户的id查询除用户的所有的权限") + @GetMapping("/allPermissionByType") + public ServerResponse getAllPermissionByRolesAndPermissionType(@RequestParam("pType") @NotNull Integer pType, + @RequestParam("userId") @NotNull Integer userId){ + + return upmsUserService.getAllPermissionByType(userId,pType); + } }