Commit 3f747a28 by 徐高华

菜单增加关联权限

parent cc03b90b
......@@ -57,6 +57,25 @@ public class HaobanMenuDTO implements Serializable {
private String routePath;
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;
......
......@@ -22,15 +22,6 @@ public interface HaobanMenuApiService {
ServiceResponse addList(List<HaobanMenuQDTO> haobanMenuDTOList);
/**
* 得到所有菜单code列表
*
* @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>>
*/
//无效接口
// ServiceResponse<List<String>> getAllMenuCodeList();
ServiceResponse<List<HaobanMenuDTO>> getAllMenuList();
......@@ -54,18 +45,6 @@ public interface HaobanMenuApiService {
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);
}
......@@ -45,8 +45,6 @@ public interface TabHaobanMenuMapper {
List<TabHaobanMenu> getAllMenuList();
// List<String> getAllMenuCodeList();
List<TabHaobanMenu> getPidMenuList();
List<TabHaobanMenu> getNotPidMenuList();
......
......@@ -53,6 +53,25 @@ public class TabHaobanMenu implements Serializable {
private Date createTime;
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() {
return menuCode;
......
......@@ -60,7 +60,25 @@ public class HaobanMenuBO implements Serializable {
private Date updateTime;
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() {
return menuCode;
}
......
......@@ -41,11 +41,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService {
return ServiceResponse.success();
}
// @Override
// public ServiceResponse<List<String>> getAllMenuCodeList() {
// List<String> allMenuList = haobanMenuService.getAllMenuCodeList();
// return ServiceResponse.success(allMenuList);
// }
@Override
public ServiceResponse<List<HaobanMenuDTO>> getAllMenuList() {
......@@ -65,17 +60,6 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService {
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
public ServiceResponse<String> getMenuNameByCode(String menuCode) {
HaobanMenuBO haobanMenuBO = haobanMenuService.getMenuByCode(menuCode);
......
......@@ -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.HaobanRoleService;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -214,8 +215,32 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
HaobanRoleBO haobanRoleBO = haobanRoleService.getByWxEnterpriseIdAndClerkType(wxEnterpriseId, clerkType, systemFlag);
if (haobanRoleBO != null) {
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);
List<HaobanMenuBO> haobanMenuList = haobanMenuService.getHaobanMenuList(menuCodes);
haobanRoleBO.setMenuList(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuList));
}
return ServiceResponse.success(EntityUtil.changeEntityNew(HaobanRoleDTO.class, haobanRoleBO));
......
......@@ -86,10 +86,7 @@ public interface HaobanMenuService {
/**
* 获取菜单列表
*
* @param menuCodes 菜单代码
* @return {@link List}<{@link HaobanMenuBO}>
* 获取有权限的菜单列表
*/
List<HaobanMenuBO> getHaobanMenuList(List<String> menuCodes);
......
......@@ -25,7 +25,6 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
@Autowired
private TabHaobanMenuMapper tabHaobanMenuMapper;
@Override
public TabHaobanMenu queryById(String menuCode) {
if (StringUtils.isBlank(menuCode)) {
......@@ -69,15 +68,10 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
return this.tabHaobanMenuMapper.update(tabHaobanMenu);
}
// @Override
// public List<String> getAllMenuCodeList() {
// return tabHaobanMenuMapper.getAllMenuCodeList();
// }
@Override
public List<HaobanMenuBO> getAllMenuList() {
List<TabHaobanMenu> allMenuList = tabHaobanMenuMapper.getAllMenuList();
return EntityUtil.changeEntityListNew(HaobanMenuBO.class,allMenuList);
return EntityUtil.changeEntityListNew(HaobanMenuBO.class, allMenuList);
}
@Override
......@@ -132,7 +126,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
return Collections.emptyList();
}
List<TabHaobanMenu> haobanMenuListByCode = tabHaobanMenuMapper.getHaobanMenuListByCode(menuCodes);
return EntityUtil.changeEntityListNew(HaobanMenuBO.class,haobanMenuListByCode);
return EntityUtil.changeEntityListNew(HaobanMenuBO.class, haobanMenuListByCode);
}
@Override
......@@ -140,7 +134,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
if (StringUtils.isBlank(menuCode)) {
return null;
}
return EntityUtil.changeEntityNew(HaobanMenuBO.class,tabHaobanMenuMapper.getMenuByCode(menuCode));
return EntityUtil.changeEntityNew(HaobanMenuBO.class, tabHaobanMenuMapper.getMenuByCode(menuCode));
}
@Override
......@@ -155,7 +149,7 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
String parentCode = haobanMenuBO.getParentCode();
if (StringUtils.isNotBlank(parentCode)) {
if (parentCode.equals(pCode)) {
//递归查询当前子菜单的子菜单
// 递归查询当前子菜单的子菜单
List<HaobanMenuBO> iterateMenu = iterateMenus(menuBOList, menuCode);
haobanMenuBO.setMenuBOList(iterateMenu);
result.add(haobanMenuBO);
......
......@@ -15,10 +15,12 @@
<result property="statusFlag" column="status_flag" jdbcType="INTEGER"/>
<result property="createTime" column="create_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>
<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
</sql>
......@@ -98,12 +100,6 @@
where status_flag = 1
</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
......@@ -116,7 +112,7 @@
select
<include refid="Base_Column_List"/>
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>
......@@ -151,6 +147,7 @@
<if test="systemFlag != null">
and b.system_flag = #{systemFlag}
</if>
and a.auth_control = 1
order by c.menu_sort
</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