Commit 3f747a28 by 徐高华

菜单增加关联权限

parent cc03b90b
...@@ -58,6 +58,25 @@ public class HaobanMenuDTO implements Serializable { ...@@ -58,6 +58,25 @@ public class HaobanMenuDTO implements Serializable {
private String routePath; private String routePath;
private String ownerShip; private String ownerShip;
private int authControl ;
private String btnCodeRel ;
public int getAuthControl() {
return authControl;
}
public String getBtnCodeRel() {
return btnCodeRel;
}
public void setAuthControl(int authControl) {
this.authControl = authControl;
}
public void setBtnCodeRel(String btnCodeRel) {
this.btnCodeRel = btnCodeRel;
}
private List<HaobanMenuDTO> menuBOList; private List<HaobanMenuDTO> menuBOList;
public String getMenuCode() { public String getMenuCode() {
......
...@@ -22,15 +22,6 @@ public interface HaobanMenuApiService { ...@@ -22,15 +22,6 @@ public interface HaobanMenuApiService {
ServiceResponse addList(List<HaobanMenuQDTO> haobanMenuDTOList); ServiceResponse addList(List<HaobanMenuQDTO> haobanMenuDTOList);
/**
* 得到所有菜单code列表
*
* @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>>
*/
//无效接口
// ServiceResponse<List<String>> getAllMenuCodeList();
ServiceResponse<List<HaobanMenuDTO>> getAllMenuList(); ServiceResponse<List<HaobanMenuDTO>> getAllMenuList();
...@@ -54,18 +45,6 @@ public interface HaobanMenuApiService { ...@@ -54,18 +45,6 @@ public interface HaobanMenuApiService {
ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId,Integer clerkType); ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId,Integer clerkType);
/**
* 得到haoban菜单列表
*
* @param wxEnterpriseId wx企业标识
* @param clerkType 职员类型
* @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>>
*/
//无效接口
// ServiceResponse<List<String>> getHaobanMenuList(String wxEnterpriseId, Integer clerkType);
// ServiceResponse<HaobanMenuDTO> getMenuByCode(String menuCode);
ServiceResponse<String> getMenuNameByCode(String menuCode); ServiceResponse<String> getMenuNameByCode(String menuCode);
} }
...@@ -45,8 +45,6 @@ public interface TabHaobanMenuMapper { ...@@ -45,8 +45,6 @@ public interface TabHaobanMenuMapper {
List<TabHaobanMenu> getAllMenuList(); List<TabHaobanMenu> getAllMenuList();
// List<String> getAllMenuCodeList();
List<TabHaobanMenu> getPidMenuList(); List<TabHaobanMenu> getPidMenuList();
List<TabHaobanMenu> getNotPidMenuList(); List<TabHaobanMenu> getNotPidMenuList();
......
...@@ -54,6 +54,25 @@ public class TabHaobanMenu implements Serializable { ...@@ -54,6 +54,25 @@ public class TabHaobanMenu implements Serializable {
private Date updateTime; private Date updateTime;
private int authControl ;
private String btnCodeRel ;
public int getAuthControl() {
return authControl;
}
public String getBtnCodeRel() {
return btnCodeRel;
}
public void setAuthControl(int authControl) {
this.authControl = authControl;
}
public void setBtnCodeRel(String btnCodeRel) {
this.btnCodeRel = btnCodeRel;
}
public String getMenuCode() { public String getMenuCode() {
return menuCode; return menuCode;
} }
......
...@@ -61,6 +61,24 @@ public class HaobanMenuBO implements Serializable { ...@@ -61,6 +61,24 @@ public class HaobanMenuBO implements Serializable {
private List<HaobanMenuBO> menuBOList; private List<HaobanMenuBO> menuBOList;
private int authControl ;
private String btnCodeRel ;
public int getAuthControl() {
return authControl;
}
public String getBtnCodeRel() {
return btnCodeRel;
}
public void setAuthControl(int authControl) {
this.authControl = authControl;
}
public void setBtnCodeRel(String btnCodeRel) {
this.btnCodeRel = btnCodeRel;
}
public String getMenuCode() { public String getMenuCode() {
return menuCode; return menuCode;
} }
......
...@@ -41,11 +41,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService { ...@@ -41,11 +41,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService {
return ServiceResponse.success(); return ServiceResponse.success();
} }
// @Override
// public ServiceResponse<List<String>> getAllMenuCodeList() {
// List<String> allMenuList = haobanMenuService.getAllMenuCodeList();
// return ServiceResponse.success(allMenuList);
// }
@Override @Override
public ServiceResponse<List<HaobanMenuDTO>> getAllMenuList() { public ServiceResponse<List<HaobanMenuDTO>> getAllMenuList() {
...@@ -65,17 +60,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService { ...@@ -65,17 +60,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService {
return ServiceResponse.success(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuBOList)); return ServiceResponse.success(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuBOList));
} }
// @Override
// public ServiceResponse<List<String>> getHaobanMenuList(String wxEnterpriseId, Integer clerkType) {
// List<String> haobanMenuList = haobanMenuService.getHaobanMenuList(wxEnterpriseId, clerkType);
// return ServiceResponse.success(haobanMenuList);
// }
// @Override
// public ServiceResponse<HaobanMenuDTO> getMenuByCode(String menuCode) {
// return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanMenuDTO.class, haobanMenuService.getMenuByCode(menuCode)));
// }
@Override @Override
public ServiceResponse<String> getMenuNameByCode(String menuCode) { public ServiceResponse<String> getMenuNameByCode(String menuCode) {
HaobanMenuBO haobanMenuBO = haobanMenuService.getMenuByCode(menuCode); HaobanMenuBO haobanMenuBO = haobanMenuService.getMenuByCode(menuCode);
......
...@@ -28,6 +28,7 @@ import com.gic.haoban.manage.service.service.role.HaobanMenuService; ...@@ -28,6 +28,7 @@ import com.gic.haoban.manage.service.service.role.HaobanMenuService;
import com.gic.haoban.manage.service.service.role.HaobanRoleMenuService; import com.gic.haoban.manage.service.service.role.HaobanRoleMenuService;
import com.gic.haoban.manage.service.service.role.HaobanRoleService; import com.gic.haoban.manage.service.service.role.HaobanRoleService;
import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger; import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -214,8 +215,32 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -214,8 +215,32 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
HaobanRoleBO haobanRoleBO = haobanRoleService.getByWxEnterpriseIdAndClerkType(wxEnterpriseId, clerkType, systemFlag); HaobanRoleBO haobanRoleBO = haobanRoleService.getByWxEnterpriseIdAndClerkType(wxEnterpriseId, clerkType, systemFlag);
if (haobanRoleBO != null) { if (haobanRoleBO != null) {
List<String> menuCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId(wxEnterpriseId, haobanRoleBO.getRoleId()); List<String> menuCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId(wxEnterpriseId, haobanRoleBO.getRoleId());
List<HaobanMenuBO> allMenuList = haobanMenuService.getAllMenuList();
// 添加关联的权限
List<HaobanMenuBO> haobanMenuList = new ArrayList<>() ;
for(HaobanMenuBO item : allMenuList) {
String code = item.getMenuCode() ;
// 开启的权限
if(menuCodes.contains(code)) {
haobanMenuList.add(item) ;
continue ;
}
// 无需授权的权限
if(0==item.getAuthControl() && StringUtils.isEmpty(item.getBtnCodeRel())) {
haobanMenuList.add(item) ;
menuCodes.add(code) ;
continue ;
}
}
for(HaobanMenuBO item : allMenuList) {
String code = item.getMenuCode() ;
if(0==item.getAuthControl() && StringUtils.isNotEmpty(item.getBtnCodeRel()) && menuCodes.contains(code)) {
haobanMenuList.add(item) ;
menuCodes.add(code) ;
continue ;
}
}
haobanRoleBO.setMenuCodes(menuCodes); haobanRoleBO.setMenuCodes(menuCodes);
List<HaobanMenuBO> haobanMenuList = haobanMenuService.getHaobanMenuList(menuCodes);
haobanRoleBO.setMenuList(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuList)); haobanRoleBO.setMenuList(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuList));
} }
return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanRoleDTO.class, haobanRoleBO)); return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanRoleDTO.class, haobanRoleBO));
......
...@@ -86,10 +86,7 @@ public interface HaobanMenuService { ...@@ -86,10 +86,7 @@ public interface HaobanMenuService {
/** /**
* 获取菜单列表 * 获取有权限的菜单列表
*
* @param menuCodes 菜单代码
* @return {@link List}<{@link HaobanMenuBO}>
*/ */
List<HaobanMenuBO> getHaobanMenuList(List<String> menuCodes); List<HaobanMenuBO> getHaobanMenuList(List<String> menuCodes);
......
...@@ -25,7 +25,6 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -25,7 +25,6 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
@Autowired @Autowired
private TabHaobanMenuMapper tabHaobanMenuMapper; private TabHaobanMenuMapper tabHaobanMenuMapper;
@Override @Override
public TabHaobanMenu queryById(String menuCode) { public TabHaobanMenu queryById(String menuCode) {
if (StringUtils.isBlank(menuCode)) { if (StringUtils.isBlank(menuCode)) {
...@@ -69,15 +68,10 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -69,15 +68,10 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
return this.tabHaobanMenuMapper.update(tabHaobanMenu); return this.tabHaobanMenuMapper.update(tabHaobanMenu);
} }
// @Override
// public List<String> getAllMenuCodeList() {
// return tabHaobanMenuMapper.getAllMenuCodeList();
// }
@Override @Override
public List<HaobanMenuBO> getAllMenuList() { public List<HaobanMenuBO> getAllMenuList() {
List<TabHaobanMenu> allMenuList = tabHaobanMenuMapper.getAllMenuList(); List<TabHaobanMenu> allMenuList = tabHaobanMenuMapper.getAllMenuList();
return EntityUtil.changeEntityListNew(HaobanMenuBO.class,allMenuList); return EntityUtil.changeEntityListNew(HaobanMenuBO.class, allMenuList);
} }
@Override @Override
...@@ -132,7 +126,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -132,7 +126,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
return Collections.emptyList(); return Collections.emptyList();
} }
List<TabHaobanMenu> haobanMenuListByCode = tabHaobanMenuMapper.getHaobanMenuListByCode(menuCodes); List<TabHaobanMenu> haobanMenuListByCode = tabHaobanMenuMapper.getHaobanMenuListByCode(menuCodes);
return EntityUtil.changeEntityListNew(HaobanMenuBO.class,haobanMenuListByCode); return EntityUtil.changeEntityListNew(HaobanMenuBO.class, haobanMenuListByCode);
} }
@Override @Override
...@@ -140,7 +134,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -140,7 +134,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
if (StringUtils.isBlank(menuCode)) { if (StringUtils.isBlank(menuCode)) {
return null; return null;
} }
return EntityUtil.changeEntityNew(HaobanMenuBO.class,tabHaobanMenuMapper.getMenuByCode(menuCode)); return EntityUtil.changeEntityNew(HaobanMenuBO.class, tabHaobanMenuMapper.getMenuByCode(menuCode));
} }
@Override @Override
...@@ -155,7 +149,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -155,7 +149,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
String parentCode = haobanMenuBO.getParentCode(); String parentCode = haobanMenuBO.getParentCode();
if (StringUtils.isNotBlank(parentCode)) { if (StringUtils.isNotBlank(parentCode)) {
if (parentCode.equals(pCode)) { if (parentCode.equals(pCode)) {
//递归查询当前子菜单的子菜单 // 递归查询当前子菜单的子菜单
List<HaobanMenuBO> iterateMenu = iterateMenus(menuBOList, menuCode); List<HaobanMenuBO> iterateMenu = iterateMenus(menuBOList, menuCode);
haobanMenuBO.setMenuBOList(iterateMenu); haobanMenuBO.setMenuBOList(iterateMenu);
result.add(haobanMenuBO); result.add(haobanMenuBO);
......
...@@ -15,10 +15,12 @@ ...@@ -15,10 +15,12 @@
<result property="statusFlag" column="status_flag" jdbcType="INTEGER"/> <result property="statusFlag" column="status_flag" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/> <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/> <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<result property="auth_control" column="authControl"/>
<result property="btn_code_rel" column="btnCodeRel"/>
</resultMap> </resultMap>
<sql id="Base_Column_List"> <sql id="Base_Column_List">
menu_code menu_code , auth_control , btn_code_rel
, menu_name, menu_url, icon_url, menu_type, menu_sort, parent_code, status_flag,route_path,owner_ship, create_time, update_time , menu_name, menu_url, icon_url, menu_type, menu_sort, parent_code, status_flag,route_path,owner_ship, create_time, update_time
</sql> </sql>
...@@ -98,12 +100,6 @@ ...@@ -98,12 +100,6 @@
where status_flag = 1 where status_flag = 1
</select> </select>
<!-- <select id="getAllMenuCodeList" resultType="java.lang.String">-->
<!-- select menu_code-->
<!-- from tab_haoban_menu-->
<!-- where status_flag = 1-->
<!-- order by menu_sort-->
<!-- </select>-->
<select id="getPidMenuList" resultMap="TabHaobanMenuMap"> <select id="getPidMenuList" resultMap="TabHaobanMenuMap">
select select
...@@ -116,7 +112,7 @@ ...@@ -116,7 +112,7 @@
select select
<include refid="Base_Column_List"/> <include refid="Base_Column_List"/>
from tab_haoban_menu from tab_haoban_menu
where status_flag = 1 and menu_code != parent_code order by menu_sort where status_flag = 1 and menu_code != parent_code and auth_control = 1 order by menu_sort
</select> </select>
...@@ -151,6 +147,7 @@ ...@@ -151,6 +147,7 @@
<if test="systemFlag != null"> <if test="systemFlag != null">
and b.system_flag = #{systemFlag} and b.system_flag = #{systemFlag}
</if> </if>
and a.auth_control = 1
order by c.menu_sort order by c.menu_sort
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment