Merge remote-tracking branch 'origin/cc_20230520_partner' into cc_20230520_partner

This commit is contained in:
苏竹红
2023-06-29 19:29:07 +08:00
12 changed files with 108 additions and 12 deletions

View File

@@ -187,6 +187,7 @@ public class EnterpriseSyncServiceImpl implements EnterpriseSyncService {
regionPathMap = regionList.stream().collect(Collectors.toMap(k->k.getRegionId(), v->v.getRegionPath()));
userRegionMappingDAO.batchInsertOrUpdateUserRegion(UserRegionMappingDO.convertSyncDO(departmentLists, userDetail.getUserId()));
}
userRegionMappingDAO.deleteUserRegionByUserId(userDetail.getUserId(), DataSourceEnum.SYNC, departmentLists);
String jobTitle = userDetail.getJobTitle();
if(StringUtils.isNotBlank(jobTitle)){
SysRoleDO role = sysRoleDAO.getRoleByName(jobTitle, DataSourceEnum.SYNC);

View File

@@ -125,7 +125,6 @@ public class FlowServiceImpl implements FlowService {
dataBody.setSkrName(request.getRealControlUsername());
dataBody.setSkrIDCard(request.getRealControlIdcard());
dataBody.setSkrRelship(request.getSignerRealControlRelation());
String[] split = request.getSignerRealControlRelationCert().split(",");
dataBody.setSkrRelshipOther(request.getSignerOtherRealControlRelation());
dataBody.setAmtJoin(request.getPartnerFee());
dataBody.setAmtTechSer(request.getTechnicalServiceFee());
@@ -147,7 +146,7 @@ public class FlowServiceImpl implements FlowService {
String jobNumber = investmentManager.getJobnumber();
String mobile = investmentManager.getMobile();
DingdingUserDO dingdingUserDO = dingdingUserMapper.selectDingDingUserByMobile(mobile);
if (Objects.isNull(dingdingUserDO)) {
if (Objects.isNull(dingdingUserDO) || Objects.isNull(dingdingUserDO.getUserid())) {
throw new ServiceException(ErrorCodeEnum.DINGDING_USER_NOT_EXIST);
}
rpcRequest.setDingUserId(dingdingUserDO.getUserid());
@@ -159,7 +158,7 @@ public class FlowServiceImpl implements FlowService {
if (!Objects.isNull(developmentDirector)) {
String mobile = developmentDirector.getMobile();
DingdingUserDO dingdingUserDO = dingdingUserMapper.selectDingDingUserByMobile(mobile);
if (Objects.isNull(dingdingUserDO)) {
if (Objects.isNull(dingdingUserDO) || Objects.isNull(dingdingUserDO.getUserid())) {
throw new ServiceException(ErrorCodeEnum.DINGDING_USER_NOT_EXIST);
}
rpcRequest.getData().setUserSiteDevDingUserId(dingdingUserDO.getUserid());

View File

@@ -2,14 +2,20 @@ package com.cool.store.service.impl;
import com.cool.store.constants.CommonConstants;
import com.cool.store.dao.SysMenuDAO;
import com.cool.store.dao.SysRoleMenuDAO;
import com.cool.store.entity.SysMenuDO;
import com.cool.store.entity.SysRoleMenuDO;
import com.cool.store.enums.MenuTypeEnum;
import com.cool.store.enums.PlatFormTypeEnum;
import com.cool.store.service.MenuService;
import com.cool.store.vo.menu.MenuTreeVO;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author zhangchenbiao
@@ -22,11 +28,35 @@ public class MenuServiceImpl implements MenuService {
@Resource
private SysMenuDAO sysMenuDAO;
@Resource
private SysRoleMenuDAO sysRoleMenuDAO;
@Override
public List<MenuTreeVO> getUserMenus(String userId, String roleId) {
List<SysMenuDO> menuList= sysMenuDAO.selectMenuAll(null, PlatFormTypeEnum.PC.getCode());
List<SysRoleMenuDO> roleMenuList = sysRoleMenuDAO.getRoleMenuByRoleId(roleId, PlatFormTypeEnum.PC.getCode());
List<Long> anthMenuIdList = menuList.stream().filter(o -> MenuTypeEnum.AUTH.getCode().equals(o.getMenuType())).map(SysMenuDO::getId).collect(Collectors.toList());
List<Long> roleMenuIdList = roleMenuList.stream().map(SysRoleMenuDO::getMenuId).filter(anthMenuIdList::contains).collect(Collectors.toList());
Set<Long> authMenuSet = new HashSet<>();
//1倒推菜单列表 2.转换成树`
if (CollectionUtils.isEmpty(roleMenuIdList)) {
return new ArrayList<>();
}
authMenuSet.addAll(roleMenuIdList);
Map<Long, Long> idMap = menuList.stream().filter(a -> a.getId() != null && a.getParentId() != null).collect(Collectors.toMap(SysMenuDO::getId, SysMenuDO::getParentId));
for (Long menuId : roleMenuIdList) {
getParentNode(menuId, idMap, authMenuSet);
}
menuList = menuList.stream().filter(data -> authMenuSet.contains(data.getId())).collect(Collectors.toList());
//根据角色获取菜单
return MenuTreeVO.dealMenuTree(CommonConstants.ZERO_LONG, menuList);
}
private void getParentNode(Long menuId, Map<Long, Long> idMap, Set<Long> authMenuList) {
Long parentId = idMap.get(menuId);
authMenuList.add(parentId);
if (parentId!=null&&parentId != 0) {
getParentNode(parentId, idMap, authMenuList);
}
}
}