Browse Source

Merge remote-tracking branch 'origin/master' into test

Michael 8 years ago
parent
commit
b1c17899b7

+ 2 - 0
src/main/java/com/goafanti/common/dao/PermissionMapper.java

@@ -62,4 +62,6 @@ public interface PermissionMapper {
 	String selectAutNoByNamei(String name);
 	
 	String selectIdByName(String name);
+	
+	int selectCountByid(String id);
 }

+ 4 - 0
src/main/java/com/goafanti/common/dao/RoleMapper.java

@@ -34,4 +34,8 @@ public interface RoleMapper {
 	List<RolePermissionBo> selectRolePList(String id);
 	
 	int selectCountByRoleId(List<String> records);
+	
+	String selectIdByName(String roleName);
+	
+	String selectNameById(String id);
 }

+ 7 - 0
src/main/java/com/goafanti/common/mapper/PermissionMapper.xml

@@ -274,4 +274,11 @@
 		where
 		name=#{name,jdbcType=VARCHAR}
   </select>
+  <select id="selectCountByid" parameterType="java.lang.String" resultType="java.lang.Integer" >
+  		select
+  		count(0)
+  		from role_permission
+  		where
+  		pid=#{id,jdbcType=VARCHAR} 
+  </select>
 </mapper>

+ 15 - 1
src/main/java/com/goafanti/common/mapper/RoleMapper.xml

@@ -144,5 +144,19 @@
     <foreach item="item" index="index" collection="list" open="(" separator="," close=")">  
 	  #{item,jdbcType=VARCHAR}  
     </foreach>  
-  </select>  
+  </select>
+  <select id="selectIdByName" parameterType="java.lang.String" resultType="java.lang.String">
+  	select
+  	id
+  	from role
+  	where
+  	role_name=#{roleName,jdbcType=VARCHAR}
+  </select>
+  <select id="selectNameById" parameterType="java.lang.String" resultType="java.lang.String">
+  	select
+  	role_name as roleName
+  	from role
+  	where
+  	id=#{id,jdbcType=VARCHAR}
+  </select>   
 </mapper>

+ 5 - 0
src/main/java/com/goafanti/permission/controller/NewPermissionApiController.java

@@ -90,6 +90,11 @@ public class NewPermissionApiController extends BaseApiController {
 			res.getError().add(buildError("","存在下级权限不能删除"));
 			return res;
 		}
+		int role_permission=permissionMapper.selectCountByid(id);
+		if(role_permission>0){
+			res.getError().add(buildError("","权限被分配不能删除"));
+			return res;
+		}
 		res.setData(permissionService.deleteById(id));
 		return res;
 	}

+ 8 - 0
src/main/java/com/goafanti/permission/controller/NewRoleApiController.java

@@ -54,6 +54,14 @@ public class NewRoleApiController extends BaseApiController{
 					permisionIds.add(pid);
 			}
 			Role records = jo.toJavaObject(Role.class);
+			String newName=roleMapper.selectNameById(records.getId());
+			if(newName==null){
+				String newid=roleMapper.selectIdByName(records.getRoleName());
+				if(newid!=null){
+					res.getError().add(buildError("","角色已存在"));
+					return res;
+				}
+			}			
 			res.setData(newRoleService.insert(records, permisionIds));
 		} else {
 			res.getError().add(buildError("", "参数格式不正确"));