Commit 31706fdd by 徐高华

群主群数量

parent 40a774c2
...@@ -43,7 +43,7 @@ public interface HaobanMenuApiService { ...@@ -43,7 +43,7 @@ public interface HaobanMenuApiService {
* @param clerkType 职员类型 * @param clerkType 职员类型
* @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>> * @return {@link ServiceResponse}<{@link List}<{@link HaobanMenuDTO}>>
*/ */
ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId,Integer clerkType); ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId, String enterpriseId , Integer clerkType);
ServiceResponse<String> getMenuNameByCode(String menuCode); ServiceResponse<String> getMenuNameByCode(String menuCode);
......
...@@ -57,13 +57,6 @@ public interface HaobanRoleApiService { ...@@ -57,13 +57,6 @@ public interface HaobanRoleApiService {
*/ */
ServiceResponse addHaobanRole(String wxEnterpriseId); ServiceResponse addHaobanRole(String wxEnterpriseId);
/**
* 角色初始化
* @param wxEnterpriseId wx企业标识
* @return {@link ServiceResponse}
*/
ServiceResponse addHaobanRoleInit(String wxEnterpriseId);
/** /**
* 查询菜单权限 * 查询菜单权限
......
...@@ -59,8 +59,8 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService { ...@@ -59,8 +59,8 @@ public class HaobanMenuApiServiceImpl implements HaobanMenuApiService {
} }
@Override @Override
public ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId, Integer clerkType) { public ServiceResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(String wxEnterpriseId, String enterpriseId ,Integer clerkType) {
List<HaobanMenuBO> haobanMenuBOList = haobanMenuService.getHaobanMenuTreeList(wxEnterpriseId, clerkType); List<HaobanMenuBO> haobanMenuBOList = haobanMenuService.getHaobanMenuTreeList(wxEnterpriseId, enterpriseId,clerkType);
return ServiceResponse.success(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuBOList)); return ServiceResponse.success(EntityUtil.changeEntityListNew(HaobanMenuDTO.class, haobanMenuBOList));
} }
......
...@@ -63,7 +63,7 @@ public interface HaobanMenuService { ...@@ -63,7 +63,7 @@ public interface HaobanMenuService {
* @param clerkType 职员类型 * @param clerkType 职员类型
* @return {@link List}<{@link HaobanMenuBO}> * @return {@link List}<{@link HaobanMenuBO}>
*/ */
List<HaobanMenuBO> getHaobanMenuTreeList(String wxEnterpriseId, Integer clerkType); List<HaobanMenuBO> getHaobanMenuTreeList(String wxEnterpriseId, String enterpriseId, Integer clerkType);
/** /**
......
...@@ -2,9 +2,12 @@ package com.gic.haoban.manage.service.service.role.impl; ...@@ -2,9 +2,12 @@ package com.gic.haoban.manage.service.service.role.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.gic.api.base.commons.ServiceResponse; import com.gic.api.base.commons.ServiceResponse;
import com.gic.clerk.api.dto.right.EnterpriseSuperAdminRightMenuQDTO;
import com.gic.clerk.api.dto.right.MenuDTO; import com.gic.clerk.api.dto.right.MenuDTO;
import com.gic.clerk.api.dto.right.MenuListQDTO; import com.gic.clerk.api.dto.right.MenuListQDTO;
import com.gic.clerk.api.dto.right.RightMenuDTO;
import com.gic.clerk.api.service.MenuApiService; import com.gic.clerk.api.service.MenuApiService;
import com.gic.clerk.api.service.RightService;
import com.gic.commons.util.EntityUtil; import com.gic.commons.util.EntityUtil;
import com.gic.commons.util.UniqueIdUtils; import com.gic.commons.util.UniqueIdUtils;
import com.gic.haoban.manage.service.dao.mapper.WxEnterpriseRelatedMapper; import com.gic.haoban.manage.service.dao.mapper.WxEnterpriseRelatedMapper;
...@@ -26,6 +29,8 @@ import org.springframework.beans.factory.annotation.Autowired; ...@@ -26,6 +29,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.*; import java.util.*;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/** /**
* @author mozhu * @author mozhu
...@@ -45,6 +50,8 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -45,6 +50,8 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
private TabHaobanRoleMenuMapper roleMenuMapper ; private TabHaobanRoleMenuMapper roleMenuMapper ;
@Autowired @Autowired
private MenuApiService menuApiService ; private MenuApiService menuApiService ;
@Autowired
private RightService rightService ;
@Override @Override
public TabHaobanMenu queryById(String menuCode) { public TabHaobanMenu queryById(String menuCode) {
...@@ -109,14 +116,36 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -109,14 +116,36 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
} }
@Override @Override
public List<HaobanMenuBO> getHaobanMenuTreeList(String wxEnterpriseId, Integer clerkType) { public List<HaobanMenuBO> getHaobanMenuTreeList(String wxEnterpriseId, String enterpriseId ,Integer clerkType) {
List<TabHaobanMenu> pidMenuList = tabHaobanMenuMapper.getHaobanPidMenuList(wxEnterpriseId, clerkType, 0); List<TabHaobanMenu> pidMenuList = tabHaobanMenuMapper.getHaobanPidMenuList(wxEnterpriseId, clerkType, 0);
List<TabHaobanMenu> notPidMenuList = tabHaobanMenuMapper.getHaobanNotPidMenuList(wxEnterpriseId, clerkType, 0); List<TabHaobanMenu> notPidMenuList = tabHaobanMenuMapper.getHaobanNotPidMenuList(wxEnterpriseId, clerkType, 0);
List<HaobanMenuBO> pidMenuBOList = EntityUtil.changeEntityListNew(HaobanMenuBO.class, pidMenuList); List<HaobanMenuBO> pidMenuBOList = EntityUtil.changeEntityListNew(HaobanMenuBO.class, pidMenuList);
List<HaobanMenuBO> notPidMenuBOList = EntityUtil.changeEntityListNew(HaobanMenuBO.class, notPidMenuList); List<HaobanMenuBO> notPidMenuBOList = EntityUtil.changeEntityListNew(HaobanMenuBO.class, notPidMenuList);
// 查询gic默认带的
// this.rightService.listSuperAdminRightMenu()
EnterpriseSuperAdminRightMenuQDTO qdto = new EnterpriseSuperAdminRightMenuQDTO() ;
qdto.setEnterpriseId(enterpriseId);
qdto.setNamespace("haoban-wxa");
List<RightMenuDTO> list = this.rightService.listSuperAdminRightMenu(qdto) ;
if(CollectionUtils.isNotEmpty(list)) {
List<HaobanMenuBO> allMenuList = this.getAllMenuList();
Map<String,HaobanMenuBO> map = allMenuList.stream().collect(Collectors.toMap(HaobanMenuBO::getMenuCode,o->o,(k1,k2)->k1)) ;
for(RightMenuDTO gicMenu : list) {
String menuCode = gicMenu.getMenuCode() ;
if(null != map.get(menuCode)) {
if (menuCode.equals(map.get(menuCode).getParentCode())) {
notPidMenuBOList.add(map.get(menuCode)) ;
}else {
pidMenuBOList.add(map.get(menuCode)) ;
}
}
}
}
if (CollectionUtils.isEmpty(pidMenuBOList)) { if (CollectionUtils.isEmpty(pidMenuBOList)) {
return new ArrayList<>(); return new ArrayList<>();
} }
pidMenuBOList = pidMenuBOList.stream().distinct().collect(Collectors.toList());
notPidMenuBOList = notPidMenuBOList.stream().distinct().collect(Collectors.toList());
for (HaobanMenuBO haobanMenuBO : pidMenuBOList) { for (HaobanMenuBO haobanMenuBO : pidMenuBOList) {
if (CollectionUtils.isNotEmpty(notPidMenuBOList)) { if (CollectionUtils.isNotEmpty(notPidMenuBOList)) {
List<HaobanMenuBO> menus = iterateMenus(notPidMenuBOList, haobanMenuBO.getMenuCode()); List<HaobanMenuBO> menus = iterateMenus(notPidMenuBOList, haobanMenuBO.getMenuCode());
...@@ -192,18 +221,19 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -192,18 +221,19 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
String serviceCode = json.getString("serviceCode") ; String serviceCode = json.getString("serviceCode") ;
String enterpriseId = json.getString("enterpriseId") ; String enterpriseId = json.getString("enterpriseId") ;
String operationType = json.getString("operationType") ; String operationType = json.getString("operationType") ;
Boolean addOrDel = null ; Integer packageCode = json.getInteger("packageCode") ;
// 进行授权 auth 取消授权 cancel // 进行授权 auth 取消授权 cancel
if("auth".equals(operationType)) {
addOrDel = true;
}
if("cancel".equals(operationType)) { if("cancel".equals(operationType)) {
addOrDel = false ; logger.info("取消不处理");
return ;
} }
MenuListQDTO qdto = new MenuListQDTO() ; MenuListQDTO qdto = new MenuListQDTO() ;
qdto.setNamespace("haoban-wxa");
qdto.setServiceCode(serviceCode);
qdto.setPackageCode(packageCode);
ServiceResponse<List<MenuDTO>> resp = this.menuApiService.listMenu(qdto) ; ServiceResponse<List<MenuDTO>> resp = this.menuApiService.listMenu(qdto) ;
logger.info("查询gic权限={},{}",JSONObject.toJSONString(qdto),JSONObject.toJSONString(resp));
if(!resp.isSuccess()) { if(!resp.isSuccess()) {
logger.info("失败={}",JSONObject.toJSONString(resp));
return; return;
} }
List<TabHaobanWxEnterpriseRelated> wxEnterpriseList = this.wxEnterpriseRelatedMapper.listByEnterpriseId(enterpriseId) ; List<TabHaobanWxEnterpriseRelated> wxEnterpriseList = this.wxEnterpriseRelatedMapper.listByEnterpriseId(enterpriseId) ;
...@@ -218,14 +248,27 @@ public class HaobanMenuServiceImpl implements HaobanMenuService { ...@@ -218,14 +248,27 @@ public class HaobanMenuServiceImpl implements HaobanMenuService {
return ; return ;
} }
for(MenuDTO gicMenu : menuDTOList) { for(MenuDTO gicMenu : menuDTOList) {
List<String> menuCodeList = Arrays.asList(gicMenu.getMenuCode()) ; // 授权方式,是否自动授权给子管理员 0,不做处理 1:自动授权子管理员
List<Integer> addRoleTypeList = Arrays.asList(0,1,2); Integer authType = gicMenu.getAuthType() ;
String gicMenuCode = gicMenu.getMenuCode();
if(null == authType || authType == 0) {
logger.info("authType=0 {}",gicMenuCode);
continue;
}
List<String> menuCodeList = Arrays.asList(gicMenuCode) ;
String haobanRoles = gicMenu.getHaobanRoles() ;
if(StringUtils.isBlank(haobanRoles)) {
logger.info("haobanRoles null {}",gicMenuCode);
continue;
}
String[] arr = haobanRoles.split(",") ;
List<Integer> addRoleTypeList = Arrays.stream(arr).map(o->Integer.valueOf(o)).collect(Collectors.toList());
Date now = new Date() ; Date now = new Date() ;
for(int i=0;i<wxEnterpriseList.size();i++) { for(int i=0;i<wxEnterpriseList.size();i++) {
TabHaobanWxEnterpriseRelated item = wxEnterpriseList.get(i) ; TabHaobanWxEnterpriseRelated item = wxEnterpriseList.get(i) ;
String wxEnterpriseId = item.getWxEnterpriseId() ; String wxEnterpriseId = item.getWxEnterpriseId() ;
List<TabHaobanRoleMenu> insertMenuList = new ArrayList<>() ; List<TabHaobanRoleMenu> insertMenuList = new ArrayList<>() ;
List<TabHaobanRole> list = this.roleMapper.getListByWxEnterpriseId(wxEnterpriseId,null) ; List<TabHaobanRole> list = this.roleMapper.getListByWxEnterpriseId(wxEnterpriseId,1) ;
TabHaobanRoleMenu menu = null ; TabHaobanRoleMenu menu = null ;
for(TabHaobanRole role : list) { for(TabHaobanRole role : list) {
int roleType = role.getClerkType() ; int roleType = role.getClerkType() ;
......
...@@ -133,7 +133,7 @@ public class HaobanRoleController extends WebBaseController { ...@@ -133,7 +133,7 @@ public class HaobanRoleController extends WebBaseController {
@RequestMapping(value = "/getHaobanMenuTreeList", method = RequestMethod.GET) @RequestMapping(value = "/getHaobanMenuTreeList", method = RequestMethod.GET)
public RestResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(Integer clerkType) { public RestResponse<List<HaobanMenuDTO>> getHaobanMenuTreeList(Integer clerkType) {
WebLoginDTO login = AuthWebRequestUtil.getLoginUser(); WebLoginDTO login = AuthWebRequestUtil.getLoginUser();
ServiceResponse<List<HaobanMenuDTO>> serviceResponse = haobanMenuApiService.getHaobanMenuTreeList(login.getWxEnterpriseId(), clerkType); ServiceResponse<List<HaobanMenuDTO>> serviceResponse = haobanMenuApiService.getHaobanMenuTreeList(login.getWxEnterpriseId(),login.getEnterpriseId(), clerkType);
return RestResponse.successResult(serviceResponse.getResult()); return RestResponse.successResult(serviceResponse.getResult());
} }
......
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