zouxuan 5 years ago
parent
commit
8386480990

+ 6 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/dal/dao/SysRoleMenuDao.java

@@ -20,4 +20,10 @@ public interface SysRoleMenuDao extends BaseDAO<Integer, SysRoleMenu> {
 	 * @return
 	 * @return
 	 */
 	 */
 	int delete(SysRoleMenu sysRoleMenu);
 	int delete(SysRoleMenu sysRoleMenu);
+
+	/**
+	 * 删除角色所有的菜单权限
+	 * @param id
+	 */
+	void deleteAllMenu(Integer id);
 }
 }

+ 12 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/SysRoleService.java

@@ -26,4 +26,16 @@ public interface SysRoleService extends BaseService<Integer, SysRole> {
      * @param sysRole
      * @param sysRole
      */
      */
     void addRole(SysRole sysRole);
     void addRole(SysRole sysRole);
+
+    /**
+     * 修改角色信息
+     * @param sysRole
+     */
+    void updateRole(SysRole sysRole);
+
+    /**
+     * 删除角色
+     * @param id
+     */
+    void delRole(Integer id);
 }
 }

+ 21 - 0
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/service/impl/SysRoleServiceImpl.java

@@ -11,6 +11,7 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.transaction.annotation.Transactional;
 
 
+import java.util.Date;
 import java.util.List;
 import java.util.List;
 
 
 @Service
 @Service
@@ -40,6 +41,26 @@ public class SysRoleServiceImpl extends BaseServiceImpl<Integer, SysRole>  imple
 	@Transactional(rollbackFor = Exception.class)
 	@Transactional(rollbackFor = Exception.class)
 	public void addRole(SysRole sysRole) {
 	public void addRole(SysRole sysRole) {
 		sysRoleDao.insert(sysRole);
 		sysRoleDao.insert(sysRole);
+		batchSave(sysRole);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void updateRole(SysRole sysRole) {
+		sysRole.setUpdateTime(new Date());
+		sysRoleDao.update(sysRole);
+		sysRoleMenuDao.deleteAllMenu(sysRole.getId());
+		batchSave(sysRole);
+	}
+
+	@Override
+	@Transactional(rollbackFor = Exception.class)
+	public void delRole(Integer id) {
+		sysRoleDao.delete(id);
+		sysRoleMenuDao.deleteAllMenu(id);
+	}
+
+	private void batchSave(SysRole sysRole){
 		List<Integer> menuIds = sysRole.getMenuIds();
 		List<Integer> menuIds = sysRole.getMenuIds();
 		if(menuIds != null && menuIds.size() > 0){
 		if(menuIds != null && menuIds.size() > 0){
 			SysRoleMenu sysRoleMenu = new SysRoleMenu(sysRole.getId(),null);
 			SysRoleMenu sysRoleMenu = new SysRoleMenu(sysRole.getId(),null);

+ 5 - 8
mec-auth/mec-auth-server/src/main/java/com/ym/mec/auth/web/controller/RoleController.java

@@ -34,20 +34,17 @@ public class RoleController extends BaseController {
     }
     }
 
 
     @ApiOperation("删除角色")
     @ApiOperation("删除角色")
-    @PostMapping(value = "/del/{id}")
-    public Object delRole(@ApiParam(value = "权限编号", required = true) @PathVariable("id") Integer id) {
-        return succeed(sysRoleService.delete(id));
+    @PostMapping(value = "/del")
+    public Object delRole(Integer id) {
+        sysRoleService.delRole(id);
+        return succeed();
     }
     }
 
 
     @ApiOperation("修改角色")
     @ApiOperation("修改角色")
     @PostMapping(value = "/update",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
     @PostMapping(value = "/update",consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE)
     public Object updateRole(SysRole sysRole) {
     public Object updateRole(SysRole sysRole) {
-        SysRole roleByCode = sysRoleService.findRoleByCode(sysRole.getRoleCode());
-        if(roleByCode != null && !roleByCode.getId().equals(sysRole.getId())){
-            return failed("权限标识已存在");
-        }
         sysRole.setUpdateTime(new Date());
         sysRole.setUpdateTime(new Date());
-        sysRoleService.update(sysRole);
+        sysRoleService.updateRole(sysRole);
         return succeed();
         return succeed();
     }
     }
 
 

+ 1 - 1
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysRoleMapper.xml

@@ -36,7 +36,7 @@
         </selectKey>
         </selectKey>
         -->
         -->
         INSERT INTO sys_role (id_,role_name_,role_code_,role_desc_,create_time_,update_time_,organ_id_)
         INSERT INTO sys_role (id_,role_name_,role_code_,role_desc_,create_time_,update_time_,organ_id_)
-        VALUES(#{id},#{roleName},#{roleCode},#{roleDesc},now(),now(),,#{organId})
+        VALUES(#{id},#{roleName},#{roleCode},#{roleDesc},now(),now(),#{organId})
     </insert>
     </insert>
 
 
     <!-- 根据主键查询一条记录 -->
     <!-- 根据主键查询一条记录 -->

+ 5 - 2
mec-auth/mec-auth-server/src/main/resources/config/mybatis/SysRoleMenuMapper.xml

@@ -35,8 +35,11 @@
 	<delete id="delete" parameterType="java.util.Map">
 	<delete id="delete" parameterType="java.util.Map">
 		DELETE FROM sys_role_menu WHERE role_id_ = #{roleId} AND menu_id_ = #{menuId}
 		DELETE FROM sys_role_menu WHERE role_id_ = #{roleId} AND menu_id_ = #{menuId}
 	</delete>
 	</delete>
-	
-	<!-- 分页查询 -->
+    <delete id="deleteAllMenu">
+		DELETE FROM sys_role_menu WHERE role_id_ = #{roleId}
+	</delete>
+
+    <!-- 分页查询 -->
 	<select id="queryPage" resultMap="SysRoleMenu" parameterType="map">
 	<select id="queryPage" resultMap="SysRoleMenu" parameterType="map">
 		SELECT * FROM sys_role_menu ORDER BY role_id_,menu_id_ <include refid="global.limit"/>
 		SELECT * FROM sys_role_menu ORDER BY role_id_,menu_id_ <include refid="global.limit"/>
 	</select>
 	</select>