diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsPermissionMapper.java b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsPermissionMapper.java index 2e7de8c..e969009 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsPermissionMapper.java +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsPermissionMapper.java @@ -2,6 +2,7 @@ package com.micro.fast.upms.dao; import com.micro.fast.common.dao.SsmMapper; import com.micro.fast.upms.pojo.UpmsPermission; +import com.micro.fast.upms.pojo.UpmsSystem; import io.swagger.models.auth.In; import org.apache.ibatis.annotations.Param; @@ -33,8 +34,30 @@ public interface UpmsPermissionMapper extends SsmMapper int deleteByPrimaryKeys(List integers); + @Deprecated List selectByUserIdAndType(@Param("userId") Integer userId, @Param("pType") Integer pType, @Param("type") Integer type); + /** + * 查询角色已拥有的角色 + * + * @param roleId + * @param type + * @return + */ List selectByRoleIdAndType(@Param("roleId") Integer roleId, @Param("type") Integer type); + /** + * 分页查询角色未拥有的角色 + * + * @param roleId 角色id + * @param type 权限的类型 + * @param systemId 系统的id + * @param name 权限的名称 + * @return + */ + List selectPageRoleUnHavePermissionByCondition(@Param("roleId") Integer roleId, + @Param("type") Integer type, + @Param("systemId") Integer systemId, + @Param("name") String name); } + diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRolePermissionMapper.java b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRolePermissionMapper.java index bc533f3..bcf4ce6 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRolePermissionMapper.java +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/dao/UpmsRolePermissionMapper.java @@ -2,26 +2,25 @@ package com.micro.fast.upms.dao; import com.micro.fast.common.dao.SsmMapper; import com.micro.fast.upms.pojo.UpmsRolePermission; +import org.apache.ibatis.annotations.Param; import java.util.List; public interface UpmsRolePermissionMapper extends SsmMapper { - @Override - int deleteByPrimaryKey(Integer rolePermissionId); + /** + * 批量增加角色的权限 + * @param roleId + * @param permissionIds + * @return + */ + int batchInsert(@Param("roleId") Integer roleId,@Param("permissionIds") List permissionIds); - @Override - int insert(UpmsRolePermission record); - - @Override - int insertSelective(UpmsRolePermission record); - - @Override - UpmsRolePermission selectByPrimaryKey(Integer rolePermissionId); - - @Override - int updateByPrimaryKeySelective(UpmsRolePermission record); - - @Override - int updateByPrimaryKey(UpmsRolePermission record); + /** + * 批量删除角色的权限 + * @param roleId + * @param permissionIds + * @return + */ + int batchDelete(@Param("roleId") Integer roleId,@Param("permissionIds") List permissionIds); } \ No newline at end of file diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsPermissionMapper.xml b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsPermissionMapper.xml index d1e1bbd..c089bd8 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsPermissionMapper.xml +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsPermissionMapper.xml @@ -1,238 +1,259 @@ - - - - - - - - - - - - - - - - - - - - id, system_id, pid, name, description, type, permission_value, uri, icon, status, - orders, ctime, uptime, version - - - update upms_permission - - - system_id = #{systemId,jdbcType=INTEGER}, - - - pid = #{pid,jdbcType=INTEGER}, - - - name = #{name,jdbcType=VARCHAR}, - - - description = #{description,jdbcType=VARCHAR}, - - - type = #{type,jdbcType=TINYINT}, - - - permission_value = #{permissionValue,jdbcType=VARCHAR}, - - - uri = #{uri,jdbcType=VARCHAR}, - - - icon = #{icon,jdbcType=VARCHAR}, - - - status = #{status,jdbcType=TINYINT}, - - - orders = #{orders,jdbcType=BIGINT}, - - - ctime = #{ctime,jdbcType=BIGINT}, - - - uptime = #{uptime,jdbcType=BIGINT}, - - - version = #{version,jdbcType=INTEGER}, - - - where id = #{id,jdbcType=INTEGER} - - - update upms_permission - set system_id = #{systemId,jdbcType=INTEGER}, - pid = #{pid,jdbcType=INTEGER}, - name = #{name,jdbcType=VARCHAR}, - description = #{description,jdbcType=VARCHAR}, - type = #{type,jdbcType=TINYINT}, - permission_value = #{permissionValue,jdbcType=VARCHAR}, - uri = #{uri,jdbcType=VARCHAR}, - icon = #{icon,jdbcType=VARCHAR}, - status = #{status,jdbcType=TINYINT}, - orders = #{orders,jdbcType=BIGINT}, - ctime = #{ctime,jdbcType=BIGINT}, - uptime = #{uptime,jdbcType=BIGINT}, - version = #{version,jdbcType=INTEGER} - where id = #{id,jdbcType=INTEGER} - + + + + + + + + + + + + + + + + + + + + id, system_id, pid, name, description, type, permission_value, uri, icon, status, + orders, ctime, uptime, version + + + update upms_permission + + + system_id = #{systemId,jdbcType=INTEGER}, + + + pid = #{pid,jdbcType=INTEGER}, + + + name = #{name,jdbcType=VARCHAR}, + + + description = #{description,jdbcType=VARCHAR}, + + + type = #{type,jdbcType=TINYINT}, + + + permission_value = #{permissionValue,jdbcType=VARCHAR}, + + + uri = #{uri,jdbcType=VARCHAR}, + + + icon = #{icon,jdbcType=VARCHAR}, + + + status = #{status,jdbcType=TINYINT}, + + + orders = #{orders,jdbcType=BIGINT}, + + + ctime = #{ctime,jdbcType=BIGINT}, + + + uptime = #{uptime,jdbcType=BIGINT}, + + + version = #{version,jdbcType=INTEGER}, + + + where id = #{id,jdbcType=INTEGER} + + + UPDATE upms_permission + SET system_id = #{systemId,jdbcType=INTEGER}, + pid = #{pid,jdbcType=INTEGER}, + name = #{name,jdbcType=VARCHAR}, + description = #{description,jdbcType=VARCHAR}, + type = #{type,jdbcType=TINYINT}, + permission_value = #{permissionValue,jdbcType=VARCHAR}, + uri = #{uri,jdbcType=VARCHAR}, + icon = #{icon,jdbcType=VARCHAR}, + status = #{status,jdbcType=TINYINT}, + orders = #{orders,jdbcType=BIGINT}, + ctime = #{ctime,jdbcType=BIGINT}, + uptime = #{uptime,jdbcType=BIGINT}, + version = #{version,jdbcType=INTEGER} + WHERE id = #{id,jdbcType=INTEGER} + - - - delete from upms_permission - where id = #{id,jdbcType=INTEGER} - - - insert into upms_permission (id, system_id, pid, - name, description, type, - permission_value, uri, icon, - status, orders, ctime, - uptime, version) - values (#{id,jdbcType=INTEGER}, #{systemId,jdbcType=INTEGER}, #{pid,jdbcType=INTEGER}, - #{name,jdbcType=VARCHAR}, #{description,jdbcType=VARCHAR}, #{type,jdbcType=TINYINT}, - #{permissionValue,jdbcType=VARCHAR}, #{uri,jdbcType=VARCHAR}, #{icon,jdbcType=VARCHAR}, - #{status,jdbcType=TINYINT}, #{orders,jdbcType=BIGINT}, #{ctime,jdbcType=BIGINT}, - #{uptime,jdbcType=BIGINT}, #{version,jdbcType=INTEGER}) - - - insert into upms_permission - - - id, - - - system_id, - - - pid, - - - name, - - - description, - - - type, - - - permission_value, - - - uri, - - - icon, - - - status, - - - orders, - - - ctime, - - - uptime, - - - version, - - - - - #{id,jdbcType=INTEGER}, - - - #{systemId,jdbcType=INTEGER}, - - - #{pid,jdbcType=INTEGER}, - - - #{name,jdbcType=VARCHAR}, - - - #{description,jdbcType=VARCHAR}, - - - #{type,jdbcType=TINYINT}, - - - #{permissionValue,jdbcType=VARCHAR}, - - - #{uri,jdbcType=VARCHAR}, - - - #{icon,jdbcType=VARCHAR}, - - - #{status,jdbcType=TINYINT}, - - - #{orders,jdbcType=BIGINT}, - - - #{ctime,jdbcType=BIGINT}, - - - #{uptime,jdbcType=BIGINT}, - - - #{version,jdbcType=INTEGER}, - - - + + + DELETE FROM upms_permission + WHERE id = #{id,jdbcType=INTEGER} + + + INSERT INTO upms_permission (id, system_id, pid, + name, description, type, + permission_value, uri, icon, + status, orders, ctime, + uptime, version) + VALUES (#{id,jdbcType=INTEGER}, #{systemId,jdbcType=INTEGER}, #{pid,jdbcType=INTEGER}, + #{name,jdbcType=VARCHAR}, #{description,jdbcType=VARCHAR}, + #{type,jdbcType=TINYINT}, + #{permissionValue,jdbcType=VARCHAR}, #{uri,jdbcType=VARCHAR}, + #{icon,jdbcType=VARCHAR}, + #{status,jdbcType=TINYINT}, #{orders,jdbcType=BIGINT}, #{ctime,jdbcType=BIGINT}, + #{uptime,jdbcType=BIGINT}, #{version,jdbcType=INTEGER}) + + + insert into upms_permission + + + id, + + + system_id, + + + pid, + + + name, + + + description, + + + type, + + + permission_value, + + + uri, + + + icon, + + + status, + + + orders, + + + ctime, + + + uptime, + + + version, + + + + + #{id,jdbcType=INTEGER}, + + + #{systemId,jdbcType=INTEGER}, + + + #{pid,jdbcType=INTEGER}, + + + #{name,jdbcType=VARCHAR}, + + + #{description,jdbcType=VARCHAR}, + + + #{type,jdbcType=TINYINT}, + + + #{permissionValue,jdbcType=VARCHAR}, + + + #{uri,jdbcType=VARCHAR}, + + + #{icon,jdbcType=VARCHAR}, + + + #{status,jdbcType=TINYINT}, + + + #{orders,jdbcType=BIGINT}, + + + #{ctime,jdbcType=BIGINT}, + + + #{uptime,jdbcType=BIGINT}, + + + #{version,jdbcType=INTEGER}, + + + - - - - - - DELETE FROM upms_permission WHERE id IN - - #{item} - - + + + + + + + DELETE FROM upms_permission WHERE id IN + + #{item} + + \ No newline at end of file diff --git a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRolePermissionMapper.xml b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRolePermissionMapper.xml index eae5e37..0d2673c 100644 --- a/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRolePermissionMapper.xml +++ b/ms/upms/ms-upms-dao/src/main/java/com/micro/fast/upms/mapper/UpmsRolePermissionMapper.xml @@ -1,6 +1,7 @@ + @@ -14,95 +15,18 @@ id, role_id, permission_id, ctime, uptime, version - - - delete from upms_role_permission - where id = #{id,jdbcType=INTEGER} + + + INSERT INTO upms_role_permission (role_id,permission_id,ctime,version) VALUES + + (#{roleId},#{permissionId},unix_timestamp(now()),0) + + + + + DELETE FROM upms_role_permission WHERE role_id = #{roleId} and permission_id in + + #{permissionId} + - - insert into upms_role_permission (id, role_id, permission_id, - ctime, uptime, version - ) - values (#{id,jdbcType=INTEGER}, #{roleId,jdbcType=INTEGER}, #{permissionId,jdbcType=INTEGER}, - #{ctime,jdbcType=BIGINT}, #{uptime,jdbcType=BIGINT}, #{version,jdbcType=INTEGER} - ) - - - insert into upms_role_permission - - - id, - - - role_id, - - - permission_id, - - - ctime, - - - uptime, - - - version, - - - - - #{id,jdbcType=INTEGER}, - - - #{roleId,jdbcType=INTEGER}, - - - #{permissionId,jdbcType=INTEGER}, - - - #{ctime,jdbcType=BIGINT}, - - - #{uptime,jdbcType=BIGINT}, - - - #{version,jdbcType=INTEGER}, - - - - - update upms_role_permission - - - role_id = #{roleId,jdbcType=INTEGER}, - - - permission_id = #{permissionId,jdbcType=INTEGER}, - - - ctime = #{ctime,jdbcType=BIGINT}, - - - uptime = #{uptime,jdbcType=BIGINT}, - - - version = #{version,jdbcType=INTEGER}, - - - where id = #{id,jdbcType=INTEGER} - - - update upms_role_permission - set role_id = #{roleId,jdbcType=INTEGER}, - permission_id = #{permissionId,jdbcType=INTEGER}, - ctime = #{ctime,jdbcType=BIGINT}, - uptime = #{uptime,jdbcType=BIGINT}, - version = #{version,jdbcType=INTEGER} - where id = #{id,jdbcType=INTEGER} - \ No newline at end of file diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsPermissionService.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsPermissionService.java index 4937102..358c409 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsPermissionService.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsPermissionService.java @@ -2,7 +2,6 @@ package com.micro.fast.upms.service; import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.common.service.SsmService; -import org.springframework.web.bind.annotation.RequestParam; /** * @author lsy @@ -22,6 +21,12 @@ public interface UpmsPermissionService extends SsmService{ ServerResponse getPermissionByRoleAndType(Integer type,Integer roleId); /** - * 按照类型 + * 根据权限的类型,权限所属系统,权限的名称查询角色未拥有的权限 + * @param roleId 角色的id + * @param type 权限的类型 + * @param systemId 系统的id + * @param name 权限的名称 + * @return */ + ServerResponse getUnHavePermissionByRoleIdAndTypeOrSystemIdOrPermissionName(Integer roleId, Integer type, Integer systemId, String name, Integer pageNum, Integer pageSzie); } \ No newline at end of file diff --git a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsRolePermissionService.java b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsRolePermissionService.java index c01a709..77e3172 100644 --- a/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsRolePermissionService.java +++ b/ms/upms/ms-upms-service/src/main/java/com/micro/fast/upms/service/UpmsRolePermissionService.java @@ -1,8 +1,28 @@ package com.micro.fast.upms.service; +import com.micro.fast.boot.starter.common.response.ServerResponse; + +import java.util.List; + /** + * 角色权限管理接口 * @author lsy */ public interface UpmsRolePermissionService{ + /** + * 批量增加角色权限 + * @param roleId + * @param permissionIds + * @return + */ + ServerResponse batchAddRolePermission(Integer roleId,List permissionIds); + + /** + * 批量删除角色权限 + * @param roleId + * @param permissionIds + * @return + */ + ServerResponse batchDeleteRolePermission(Integer roleId,List permissionIds); } \ No newline at end of file diff --git a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsRolePermissionController.java b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsRolePermissionController.java index 0c17645..c7a2355 100644 --- a/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsRolePermissionController.java +++ b/ms/upms/ms-upms-web/src/main/java/com/micro/fast/upms/controller/UpmsRolePermissionController.java @@ -5,6 +5,7 @@ import com.micro.fast.boot.starter.common.response.ServerResponse; import com.micro.fast.upms.service.UpmsRolePermissionService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.hibernate.validator.constraints.NotEmpty; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -15,10 +16,10 @@ import javax.validation.constraints.NotNull; import java.util.ArrayList; /** -* + * 角色权限管理 * @author lsy */ -@Api("upmsRolePermission") +@Api("角色权限管理") @RestController @RequestMapping("/upmsRolePermission") public class UpmsRolePermissionController { @@ -29,15 +30,13 @@ public class UpmsRolePermissionController { @ApiOperation("给角色批量添加权限") @PostMapping("/addRolePermission") public ServerResponse addRolePermission(@RequestParam("roleId") @NotNull(message = BaseConst.BASEMSG_PREFIX+"请传入角色id") Integer roleId, - @RequestParam("permissionIds") @NotNull(message = BaseConst.BASEMSG_PREFIX+"请传入权限id的集合") ArrayList permissionIds){ - // todo - return null; + @RequestParam("permissionIds") @NotEmpty(message = BaseConst.BASEMSG_PREFIX+"请传入权限id的集合") ArrayList permissionIds){ + return upmsRolePermissionService.batchAddRolePermission(roleId,permissionIds); } @ApiOperation("给角色批量删除权限") @PostMapping("/deleteRolePermission") public ServerResponse deleteRolePermission(@RequestParam("roleId") @NotNull(message = BaseConst.BASEMSG_PREFIX+"请传入角色id") Integer roleId, - @RequestParam("permissionIds") @NotNull(message = BaseConst.BASEMSG_PREFIX+"请传入权限id的集合") ArrayList permissionIds){ - // todo - return null; + @RequestParam("permissionIds") @NotEmpty ArrayList permissionIds){ + return upmsRolePermissionService.batchDeleteRolePermission(roleId,permissionIds); } }