Browse Source

权限管理模块逻辑修复

Michael 8 years ago
parent
commit
5e94aceffb

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

@@ -58,4 +58,8 @@ public interface PermissionMapper {
 	String selectNameById(String id);
 	
 	List<PermissionBo> selectAllBySuperId (String superId);
+	
+	String selectAutNoByNamei(String name);
+	
+	String selectIdByName(String name);
 }

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

@@ -147,7 +147,7 @@
 		aut_No as AutNo
 		from permission
 		where
-		name=#{name,jdbcType=VARCHAR}
+		id=#{name,jdbcType=VARCHAR}
   </select>
   <select id="selectSuperIdById" parameterType="java.lang.String" resultType="com.goafanti.common.model.Permission">
   		select
@@ -259,4 +259,18 @@
 		where
 		super_id=#{superId,jdbcType=VARCHAR}
   </select>
+  <select id="selectAutNoByNamei" resultType="java.lang.String">
+		select
+		aut_No as AutNo
+		from permission
+		where
+		name=#{name,jdbcType=VARCHAR}
+  </select>
+  <select id="selectIdByName" resultType="java.lang.String">
+		select
+		id
+		from permission
+		where
+		name=#{name,jdbcType=VARCHAR}
+  </select>
 </mapper>

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

@@ -13,7 +13,6 @@ import com.goafanti.common.controller.BaseApiController;
 import com.goafanti.common.dao.PermissionMapper;
 import com.goafanti.common.model.Permission;
 import com.goafanti.common.utils.StringUtils;
-import com.goafanti.permission.bo.PermissionBo;
 import com.goafanti.permission.service.PermissionService;
 
 @RestController
@@ -39,7 +38,7 @@ public class NewPermissionApiController extends BaseApiController {
 			res.getError().add(buildError("","权限名不能为空"));
 			return res;
 		}
-		String aut=permissionMapper.selectAutNoByName(record.getName());
+		String aut=permissionMapper.selectAutNoByNamei(record.getName());
 		if(aut!=null){
 			res.getError().add(buildError("","权限已存在"));
 			return res;
@@ -62,12 +61,12 @@ public class NewPermissionApiController extends BaseApiController {
 			res.getError().add(buildError("","名称、路径、上级不能为空"));
 			return res;
 		}
-		String aut=permissionMapper.selectAutNoByName(record.getName());
+		String aut=permissionMapper.selectAutNoByNamei(record.getName());
 		if(aut!=null){
 			res.getError().add(buildError("","权限已存在"));
 			return res;
 		}
-		String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
+		String supaut=permissionMapper.selectAutNoByName(permissionMapper.selectIdByName(record.getSuperId()));
 		if(supaut.length()>=7){
 			res.getError().add(buildError("","权限层级超限"));
 			return res;
@@ -120,12 +119,12 @@ public class NewPermissionApiController extends BaseApiController {
 			res.getError().add(buildError("","名称、路径、上级不能为空"));
 			return res;
 		}
-		String pname=permissionMapper.selectAutNoByName(record.getSuperId());
+		String pname=permissionMapper.selectAutNoByNamei(record.getSuperId());
 		if(StringUtils.isBlank(pname)){
 			res.getError().add(buildError("","上级权限不匹配"));
 			return res;
 		}
-		String supaut=permissionMapper.selectAutNoByName(record.getSuperId());
+		String supaut=permissionMapper.selectAutNoByNamei(record.getSuperId());
 		if(supaut.length()>=7){
 			res.getError().add(buildError("","权限层级超限"));
 			return res;

+ 15 - 17
src/main/java/com/goafanti/permission/service/impl/PermissionServiceImpl.java

@@ -93,7 +93,7 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 		record.setHierarchies("1");//1第一层
 		record.setStatus("0");//0正常 1解除
 		record.setShowOrder("0");//0
-		record.setSuperId("PM");//顶级为PM	
+		record.setSuperId(permissionMapper.selectIdByName("平台超级模块"));//顶级为PM	
 		permissionMapper.insertn(record);
 		return 1;
 	}
@@ -115,7 +115,7 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 		record.setCreateTime(now);
 		record.setUpdateTime(now);
 		record.setDeletedSign("0");
-		String autNo=permissionMapper.selectAutNoByName(record.getSuperId());
+		String autNo=permissionMapper.selectAutNoByNamei(record.getSuperId());
 		int Count=permissionMapper.selectAutNoCount(record.getSuperId());
 		if(Count<10){
 			String aut=autNo+"0"+Count;
@@ -144,7 +144,7 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 		record.setHierarchies("0");//0下层
 		record.setStatus("0");//0正常 1解除
 		record.setShowOrder("0");//正常
-		record.setSuperId(record.getSuperId());//上级名称	
+		record.setSuperId(permissionMapper.selectIdByName(record.getSuperId()));//上级名称	
 		permissionMapper.insertn(record);
 		return 1;
 	}
@@ -157,7 +157,8 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 
 	@Override
 	public Permission selectAllById(String id) {
-		
+		Permission permission=permissionMapper.selectAllById(id);
+		permission.setSuperId(permissionMapper.selectNameById(permission.getSuperId()));
 		return permissionMapper.selectAllById(id);
 	}
 
@@ -170,6 +171,12 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 	public int updateById(Permission record) {
 		Date now=new Date();
 		record.setUpdateTime(now);
+		if(record.getSuperId().equals("平台超级模块")){
+			record.setHierarchies("1");
+		}else{
+			record.setHierarchies("0");
+		}
+		record.setSuperId(permissionMapper.selectIdByName(record.getSuperId()));
 		String autNo=permissionMapper.selectAutNoByName(record.getSuperId());
 		int Count=permissionMapper.selectAutNoCount(record.getSuperId());
 		if(Count<10){
@@ -196,12 +203,6 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 			}
 			record.setAutNo(aut);
 		}
-		if(record.getSuperId().equals("平台超级模块")){
-			record.setHierarchies("1");
-		}else{
-			record.setHierarchies("0");
-		}
-			System.out.println("name修改:"+record.getName());
 		permissionMapper.updateById(record);
 		//*******下级编号修改
 		int n=0;
@@ -279,17 +280,14 @@ public class PermissionServiceImpl extends BaseMybatisDao<PermissionMapper> impl
 		Map<String,Object> params = new HashMap<String, Object>();
 		List<PermissionBo> one=permissionMapper.selectOneAll();	
 		for (PermissionBo i:one){
-			String name=permissionMapper.selectNameById(i.getId());	
 			i.setKey(i.getId());
-			List<PermissionBo> two=permissionMapper.selectAllBySuperId(name);
+			List<PermissionBo> two=permissionMapper.selectAllBySuperId(i.getId());
 			for(PermissionBo o:two){
-				String name2=permissionMapper.selectNameById(o.getId());
-				o.setChildren(permissionMapper.selectAllBySuperId(name2));
+				o.setChildren(permissionMapper.selectAllBySuperId(o.getId()));
 				o.setKey(o.getId());
-				List<PermissionBo> three=permissionMapper.selectAllBySuperId(name2);
+				List<PermissionBo> three=permissionMapper.selectAllBySuperId(o.getId());
 				for(PermissionBo p:three){
-					String name3=permissionMapper.selectNameById(p.getId());
-					p.setChildren(permissionMapper.selectAllBySuperId(name3));
+					p.setChildren(permissionMapper.selectAllBySuperId(p.getId()));
 					p.setKey(p.getId());					
 				}
 				o.setChildren(three);