Commit 1ae2695f by 墨竹

feat:权限初始化调整

parent d73d9b93
package com.gic.haoban.manage.web.vo; package com.gic.haoban.manage.api.dto;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
public class ClerkEditInfoVO { public class ClerkEditInfoDTO {
private int editClerkFlag ; // 1 private int editClerkFlag ; // 1
private int addClerkFlag ; // 2 private int addClerkFlag ; // 2
private int delClerkFlag ; // 4 private int delClerkFlag ; // 4
public int getEditClerkFlag() { public int getEditClerkFlag() {
return editClerkFlag; return editClerkFlag;
} }
public int getAddClerkFlag() { public int getAddClerkFlag() {
return addClerkFlag; return addClerkFlag;
} }
public int getDelClerkFlag() { public int getDelClerkFlag() {
return delClerkFlag; return delClerkFlag;
} }
public void setEditClerkFlag(int editClerkFlag) { public void setEditClerkFlag(int editClerkFlag) {
this.editClerkFlag = editClerkFlag; this.editClerkFlag = editClerkFlag;
} }
public void setAddClerkFlag(int addClerkFlag) { public void setAddClerkFlag(int addClerkFlag) {
this.addClerkFlag = addClerkFlag; this.addClerkFlag = addClerkFlag;
} }
public void setDelClerkFlag(int delClerkFlag) { public void setDelClerkFlag(int delClerkFlag) {
this.delClerkFlag = delClerkFlag; this.delClerkFlag = delClerkFlag;
} }
public static ClerkEditInfoVO info(int v) { public static ClerkEditInfoDTO info(int v) {
ClerkEditInfoVO vo = new ClerkEditInfoVO(); ClerkEditInfoDTO vo = new ClerkEditInfoDTO();
vo.setEditClerkFlag(v & 1); vo.setEditClerkFlag(v & 1);
vo.setAddClerkFlag((v & 2) >> 1); vo.setAddClerkFlag((v & 2) >> 1);
vo.setDelClerkFlag((v & 4) >> 2); vo.setDelClerkFlag((v & 4) >> 2);
return vo ; return vo ;
} }
public static int getValue(ClerkEditInfoVO vo) { public static int getValue(ClerkEditInfoDTO vo) {
int editClerkFlag = vo.getEditClerkFlag() ; int editClerkFlag = vo.getEditClerkFlag() ;
int addClerkFlag = vo.getAddClerkFlag() << 1; int addClerkFlag = vo.getAddClerkFlag() << 1;
int delClerkFlag = vo.getDelClerkFlag() << 2; int delClerkFlag = vo.getDelClerkFlag() << 2;
return editClerkFlag | addClerkFlag | delClerkFlag ; return editClerkFlag | addClerkFlag | delClerkFlag ;
} }
public static void main(String[] args) { public static void main(String[] args) {
ClerkEditInfoVO vo = new ClerkEditInfoVO(); ClerkEditInfoDTO vo = new ClerkEditInfoDTO();
vo.setAddClerkFlag(1); vo.setAddClerkFlag(1);
vo.setDelClerkFlag(0); vo.setDelClerkFlag(0);
vo.setEditClerkFlag(0); vo.setEditClerkFlag(0);
System.out.println(getValue(vo)); System.out.println(getValue(vo));
System.out.println(JSON.toJSONString(info(getValue(vo)))); System.out.println(JSON.toJSONString(info(getValue(vo))));
} }
} }
...@@ -5,6 +5,7 @@ import com.gic.commons.util.EntityUtil; ...@@ -5,6 +5,7 @@ import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.UniqueIdUtils; import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.app.customer.service.api.service.ManageSettingApiService; import com.gic.haoban.app.customer.service.api.service.ManageSettingApiService;
import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO; import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.manage.api.dto.ClerkEditInfoDTO;
import com.gic.haoban.manage.api.dto.qdto.role.HaobanRoleMenuQDTO; import com.gic.haoban.manage.api.dto.qdto.role.HaobanRoleMenuQDTO;
import com.gic.haoban.manage.api.dto.qdto.role.HaobanRoleQDTO; import com.gic.haoban.manage.api.dto.qdto.role.HaobanRoleQDTO;
import com.gic.haoban.manage.api.dto.role.HaobanMenuDTO; import com.gic.haoban.manage.api.dto.role.HaobanMenuDTO;
...@@ -182,27 +183,27 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -182,27 +183,27 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
@Override @Override
public ServiceResponse<HaobanRoleDTO> getMenuByWxEnterpriseIdAndClerkType(String wxEnterpriseId, Integer clerkType,Integer systemFlag) { public ServiceResponse<HaobanRoleDTO> getMenuByWxEnterpriseIdAndClerkType(String wxEnterpriseId, Integer clerkType, Integer systemFlag) {
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());
haobanRoleBO.setMenuCodes(menuCodes); haobanRoleBO.setMenuCodes(menuCodes);
List<HaobanMenuBO> haobanMenuList = haobanMenuService.getHaobanMenuList(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));
} }
@Override @Override
public ServiceResponse addHaobanRole(String wxEnterpriseId) { public ServiceResponse addHaobanRole(String wxEnterpriseId) {
List<HaobanRoleBO> haobanRoleBOList = haobanRoleService.getListByWxEnterpriseId("-1",null); List<HaobanRoleBO> haobanRoleBOList = haobanRoleService.getListByWxEnterpriseId("-1", null);
HaobanRoleQDTO haobanRoleQDTO = new HaobanRoleQDTO(); HaobanRoleQDTO haobanRoleQDTO = new HaobanRoleQDTO();
HaobanRoleQDTO haobanRoleSystemQDTO = new HaobanRoleQDTO(); HaobanRoleQDTO haobanRoleSystemQDTO = new HaobanRoleQDTO();
int count = haobanRoleService.getCountByWxEnterpriseId(wxEnterpriseId,null); int count = haobanRoleService.getCountByWxEnterpriseId(wxEnterpriseId, null);
//清除历史权限 //清除历史权限
if (count > 0) { if (count > 0) {
haobanRoleService.deleteByWxEnterpriseId(wxEnterpriseId,null); haobanRoleService.deleteByWxEnterpriseId(wxEnterpriseId, null);
haobanRoleMenuService.deleteByWxEnterpriseId(wxEnterpriseId); haobanRoleMenuService.deleteByWxEnterpriseId(wxEnterpriseId);
} }
for (HaobanRoleBO haobanRoleBO : haobanRoleBOList) { for (HaobanRoleBO haobanRoleBO : haobanRoleBOList) {
...@@ -227,7 +228,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -227,7 +228,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
manegeClerkMenus.setMenuCodes(menuCodes); manegeClerkMenus.setMenuCodes(menuCodes);
haobanRoleQDTO.setManegeClerkMenus(manegeClerkMenus); haobanRoleQDTO.setManegeClerkMenus(manegeClerkMenus);
haobanRoleSystemQDTO.setManegeClerkMenus(manegeClerkMenus); haobanRoleSystemQDTO.setManegeClerkMenus(manegeClerkMenus);
}else if (RoleClerkTypeEnum.MANAGE.getCode().equals(clerkType)) { } else if (RoleClerkTypeEnum.MANAGE.getCode().equals(clerkType)) {
HaobanRoleMenuQDTO managerMenus = new HaobanRoleMenuQDTO(); HaobanRoleMenuQDTO managerMenus = new HaobanRoleMenuQDTO();
managerMenus.setClerkType(clerkType); managerMenus.setClerkType(clerkType);
managerMenus.setMenuCodes(menuCodes); managerMenus.setMenuCodes(menuCodes);
...@@ -253,7 +254,14 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -253,7 +254,14 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
boolean searchFlag = false; boolean searchFlag = false;
//离职继承 //离职继承
boolean handoverFlag = false; boolean handoverFlag = false;
boolean addClerkFlag = false;
boolean editClerkFlag = false;
boolean delClerkFlag = false;
for (TabHaobanWxEnterpriseRelated enterpriseRelated : enterpriseRelateds) { for (TabHaobanWxEnterpriseRelated enterpriseRelated : enterpriseRelateds) {
ClerkEditInfoDTO clerkEditInfoDTO = ClerkEditInfoDTO.info(enterpriseRelated.getClerkEditFlag());
addClerkFlag = clerkEditInfoDTO.getAddClerkFlag() == 1 ? true : false;
editClerkFlag = clerkEditInfoDTO.getEditClerkFlag() == 1 ? true : false;
delClerkFlag = clerkEditInfoDTO.getDelClerkFlag() == 1 ? true : false;
boolean searchFlagEnterpriseId = manageSettingApiService.getEnterpriseIdByFlag(enterpriseRelated.getEnterpriseId(), 1, null); boolean searchFlagEnterpriseId = manageSettingApiService.getEnterpriseIdByFlag(enterpriseRelated.getEnterpriseId(), 1, null);
if (searchFlagEnterpriseId) { if (searchFlagEnterpriseId) {
searchFlag = true; searchFlag = true;
...@@ -269,7 +277,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -269,7 +277,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
} }
} }
List<HaobanRoleBO> haobanRoleBOList = haobanRoleService.getListByWxEnterpriseId("-1",null); List<HaobanRoleBO> haobanRoleBOList = haobanRoleService.getListByWxEnterpriseId("-1", null);
//导购店长 //导购店长
List<String> menuCodes = new ArrayList<>(); List<String> menuCodes = new ArrayList<>();
//区经 //区经
...@@ -281,18 +289,29 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -281,18 +289,29 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
if (handoverFlag) { if (handoverFlag) {
menuCodes.add("customerList_inheritCustomer"); menuCodes.add("customerList_inheritCustomer");
} }
// TODO: 2022/9/21 我的
if (addClerkFlag) {
menuCodes.add("userCenter_addClerk");
}
if (editClerkFlag) {
menuCodes.add("userCenter_editClerk");
}
if (delClerkFlag) {
menuCodes.add("userCenter_delClerk");
}
menuCodes.add("workbench"); menuCodes.add("workbench");
menuCodes.add("userCenter");
//导购和店长初始化权限以好办web为准 //导购和店长初始化权限以好办web为准
List<String> menuCodesOld = applicationSettingApiService.findMenuCodes(wxEnterpriseId); List<String> menuCodesOld = applicationSettingApiService.findMenuCodes(wxEnterpriseId);
List<String> clerkMenuCodes = haobanMenuService.getHaobanMenuByPid(menuCodesOld); List<String> clerkMenuCodes = haobanMenuService.getHaobanMenuByPid(menuCodesOld);
menuCodes.addAll(clerkMenuCodes); menuCodes.addAll(clerkMenuCodes);
HaobanRoleQDTO haobanRoleQDTO = new HaobanRoleQDTO(); HaobanRoleQDTO haobanRoleQDTO = new HaobanRoleQDTO();
HaobanRoleQDTO haobanRoleSystemQDTO = new HaobanRoleQDTO(); HaobanRoleQDTO haobanRoleSystemQDTO = new HaobanRoleQDTO();
int count = haobanRoleService.getCountByWxEnterpriseId(wxEnterpriseId,null); int count = haobanRoleService.getCountByWxEnterpriseId(wxEnterpriseId, null);
//清除历史权限 //清除历史权限
if (count > 0) { if (count > 0) {
haobanRoleService.deleteByWxEnterpriseId(wxEnterpriseId,null); haobanRoleService.deleteByWxEnterpriseId(wxEnterpriseId, null);
haobanRoleMenuService.deleteByWxEnterpriseId(wxEnterpriseId); haobanRoleMenuService.deleteByWxEnterpriseId(wxEnterpriseId);
} }
for (HaobanRoleBO haobanRoleBO : haobanRoleBOList) { for (HaobanRoleBO haobanRoleBO : haobanRoleBOList) {
...@@ -316,7 +335,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService { ...@@ -316,7 +335,7 @@ public class HaobanRoleApiServiceImpl implements HaobanRoleApiService {
manegeClerkMenus.setMenuCodes(menuCodes); manegeClerkMenus.setMenuCodes(menuCodes);
haobanRoleQDTO.setManegeClerkMenus(manegeClerkMenus); haobanRoleQDTO.setManegeClerkMenus(manegeClerkMenus);
haobanRoleSystemQDTO.setManegeClerkMenus(manegeClerkMenus); haobanRoleSystemQDTO.setManegeClerkMenus(manegeClerkMenus);
}else if (RoleClerkTypeEnum.MANAGE.getCode().equals(clerkType)) { } else if (RoleClerkTypeEnum.MANAGE.getCode().equals(clerkType)) {
List<String> manageCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId("-1", roleId); List<String> manageCodes = haobanRoleMenuService.getByWxEnterpriseIdAndRoleId("-1", roleId);
menuManageCodes.addAll(manageCodes); menuManageCodes.addAll(manageCodes);
......
...@@ -177,6 +177,7 @@ ...@@ -177,6 +177,7 @@
<foreach collection="menuCodes" open="(" close=")" separator="," item="item"> <foreach collection="menuCodes" open="(" close=")" separator="," item="item">
#{item} #{item}
</foreach> </foreach>
and menu_code not in ('customerList_allSearch','customerList_allSearch','userCenter_addClerk','userCenter_delClerk','userCenter_editClerk');
</select> </select>
<select id="getHaobanMenuListByCode" resultMap="TabHaobanMenuMap"> <select id="getHaobanMenuListByCode" resultMap="TabHaobanMenuMap">
......
package com.gic.haoban.manage.web.controller; package com.gic.haoban.manage.web.controller;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletResponse;
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;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
...@@ -27,27 +8,26 @@ import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO; ...@@ -27,27 +8,26 @@ import com.gic.haoban.base.api.common.pojo.dto.WebLoginDTO;
import com.gic.haoban.common.anno.IgnoreLogin; import com.gic.haoban.common.anno.IgnoreLogin;
import com.gic.haoban.common.utils.AuthWebRequestUtil; import com.gic.haoban.common.utils.AuthWebRequestUtil;
import com.gic.haoban.common.utils.HaobanResponse; import com.gic.haoban.common.utils.HaobanResponse;
import com.gic.haoban.manage.api.dto.ApplicationDTO; import com.gic.haoban.manage.api.dto.*;
import com.gic.haoban.manage.api.dto.ApplicationSettingDTO;
import com.gic.haoban.manage.api.dto.EnterpriseDetailDTO;
import com.gic.haoban.manage.api.dto.QywxCorpInfoDTO;
import com.gic.haoban.manage.api.dto.SecretSettingDTO;
import com.gic.haoban.manage.api.dto.WxApplicationDTO;
import com.gic.haoban.manage.api.dto.WxEnterpriseDTO;
import com.gic.haoban.manage.api.enums.SecretTypeEnum; import com.gic.haoban.manage.api.enums.SecretTypeEnum;
import com.gic.haoban.manage.api.service.ApplicationApiService; import com.gic.haoban.manage.api.service.*;
import com.gic.haoban.manage.api.service.ApplicationSettingApiService;
import com.gic.haoban.manage.api.service.DealSyncOperationApiService;
import com.gic.haoban.manage.api.service.DepartmentApiService;
import com.gic.haoban.manage.api.service.WxApplicationApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseApiService;
import com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService;
import com.gic.haoban.manage.web.config.Config; import com.gic.haoban.manage.web.config.Config;
import com.gic.haoban.manage.web.errCode.HaoBanErrCode; import com.gic.haoban.manage.web.errCode.HaoBanErrCode;
import com.gic.haoban.manage.web.vo.ApplicationVO; import com.gic.haoban.manage.web.vo.ApplicationVO;
import com.gic.haoban.manage.web.vo.ClerkEditInfoVO;
import com.gic.wechat.api.service.qywx.QywxSuiteApiService; import com.gic.wechat.api.service.qywx.QywxSuiteApiService;
import com.gic.wechat.api.service.qywx.QywxUserApiService; import com.gic.wechat.api.service.qywx.QywxUserApiService;
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;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.*;
import java.util.stream.Collectors;
@RestController @RestController
public class ApplicationController extends WebBaseController { public class ApplicationController extends WebBaseController {
...@@ -139,7 +119,7 @@ public class ApplicationController extends WebBaseController { ...@@ -139,7 +119,7 @@ public class ApplicationController extends WebBaseController {
String enterpriseId = loginUser.getEnterpriseId() ; String enterpriseId = loginUser.getEnterpriseId() ;
EnterpriseDetailDTO dto = this.wxEnterpriseRelatedApiService.getByEnterpriseId(wxEnterpriseId, enterpriseId) ; EnterpriseDetailDTO dto = this.wxEnterpriseRelatedApiService.getByEnterpriseId(wxEnterpriseId, enterpriseId) ;
Integer clerkEditInfo = dto.getClerkEditFlag() ; Integer clerkEditInfo = dto.getClerkEditFlag() ;
map.put("clerkEditInfo", ClerkEditInfoVO.info(clerkEditInfo)) ; map.put("clerkEditInfo", ClerkEditInfoDTO.info(clerkEditInfo)) ;
} }
return resultResponse(HaoBanErrCode.ERR_1, map); return resultResponse(HaoBanErrCode.ERR_1, map);
} }
...@@ -161,11 +141,11 @@ public class ApplicationController extends WebBaseController { ...@@ -161,11 +141,11 @@ public class ApplicationController extends WebBaseController {
} }
@RequestMapping("save-clerk-edit-flag") @RequestMapping("save-clerk-edit-flag")
public HaobanResponse saveClerkEditFlag(ClerkEditInfoVO clerkEditInfo) { public HaobanResponse saveClerkEditFlag(ClerkEditInfoDTO clerkEditInfo) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser(); WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
String wxEnterpriseId = login.getWxEnterpriseId(); String wxEnterpriseId = login.getWxEnterpriseId();
String enterpriseId = login.getEnterpriseId(); String enterpriseId = login.getEnterpriseId();
this.wxEnterpriseRelatedApiService.saveClerkEditFlag(wxEnterpriseId, enterpriseId, ClerkEditInfoVO.getValue(clerkEditInfo)); this.wxEnterpriseRelatedApiService.saveClerkEditFlag(wxEnterpriseId, enterpriseId, ClerkEditInfoDTO.getValue(clerkEditInfo));
return resultResponse(HaoBanErrCode.ERR_1); return resultResponse(HaoBanErrCode.ERR_1);
} }
......
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