|
@@ -3,6 +3,7 @@ package com.qmth.sop.business.service.impl;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.qmth.sop.business.bean.dto.UserDto;
|
|
|
+import com.qmth.sop.business.bean.result.CrmProjectResult;
|
|
|
import com.qmth.sop.business.bean.result.MenuResult;
|
|
|
import com.qmth.sop.business.cache.CommonCacheService;
|
|
|
import com.qmth.sop.business.entity.*;
|
|
@@ -193,6 +194,7 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
|
|
|
List<Long> sysRoleOtherList = new ArrayList<>();
|
|
|
for (SysRole s : sysRoleList) {
|
|
|
if (s.getType() == RoleTypeEnum.BUSSINESS) {
|
|
|
+ CrmProjectResult crmProjectResult = tbCrmService.findCrmProjectBySopNoOrCrmNo(sopNo, null);
|
|
|
List<TBService> tbServiceList = tbServiceService.listByIds(Arrays.asList(serviceId));
|
|
|
if (!CollectionUtils.isEmpty(tbServiceList)) {
|
|
|
List<String> serviceLeadIdList = new ArrayList<>();
|
|
@@ -204,26 +206,14 @@ public class SysUserRoleServiceImpl extends ServiceImpl<SysUserRoleMapper, SysUs
|
|
|
userIdList.addAll(serviceLeadIdList);
|
|
|
}
|
|
|
} else if (s.getType() == RoleTypeEnum.REGION_MANAGER) {
|
|
|
- List<TBCrm> tbCrmList = tbCrmService.list(new QueryWrapper<TBCrm>().lambda().eq(TBCrm::getServiceId, serviceId));
|
|
|
- if (!CollectionUtils.isEmpty(tbCrmList)) {
|
|
|
- List<String> leadIdList = new ArrayList<>();
|
|
|
- for (TBCrm t : tbCrmList) {
|
|
|
- if (Objects.nonNull(t.getLeadId())) {
|
|
|
- leadIdList.add(String.valueOf(t.getLeadId()));
|
|
|
- }
|
|
|
- }
|
|
|
- userIdList.addAll(leadIdList);
|
|
|
+ CrmProjectResult crmProjectResult = tbCrmService.findCrmProjectBySopNoOrCrmNo(sopNo, null);
|
|
|
+ if (Objects.nonNull(crmProjectResult) && Objects.nonNull(crmProjectResult.getRegionManagerId())) {
|
|
|
+ userIdList.addAll(Arrays.asList(String.valueOf(crmProjectResult.getRegionManagerId())));
|
|
|
}
|
|
|
} else if (s.getType() == RoleTypeEnum.REGION_COORDINATOR) {
|
|
|
- List<TBCrm> tbCrmList = tbCrmService.list(new QueryWrapper<TBCrm>().lambda().eq(TBCrm::getServiceId, serviceId));
|
|
|
- if (!CollectionUtils.isEmpty(tbCrmList)) {
|
|
|
- List<String> regionCoordinatorIdList = new ArrayList<>();
|
|
|
- for (TBCrm t : tbCrmList) {
|
|
|
- if (Objects.nonNull(t.getRegionCoordinatorId())) {
|
|
|
- regionCoordinatorIdList.add(String.valueOf(t.getRegionCoordinatorId()));
|
|
|
- }
|
|
|
- }
|
|
|
- userIdList.addAll(regionCoordinatorIdList);
|
|
|
+ CrmProjectResult crmProjectResult = tbCrmService.findCrmProjectBySopNoOrCrmNo(sopNo, null);
|
|
|
+ if (Objects.nonNull(crmProjectResult) && Objects.nonNull(crmProjectResult.getRegionCoordinatorId())) {
|
|
|
+ userIdList.addAll(Arrays.asList(String.valueOf(crmProjectResult.getRegionCoordinatorId())));
|
|
|
}
|
|
|
} else {
|
|
|
sysRoleOtherList.add(s.getId());
|