feat:处理人数据

This commit is contained in:
苏竹红
2025-05-16 14:40:40 +08:00
parent 0acb2dbea1
commit eb9c69f82e
2 changed files with 115 additions and 3 deletions

View File

@@ -123,4 +123,13 @@ public interface ShopService {
* @return
*/
List<UserDTO> getIntendSubStageHandle(Long lineId,Integer subStage);
/**
* 获取子阶段处理人数据
* @param shopId
* @param subStage
* @return
*/
List<UserDTO> getSubStageHandle(Long shopId,Integer subStage);
}

View File

@@ -45,7 +45,8 @@ import java.util.*;
import java.util.function.Function;
import java.util.stream.Collectors;
import static com.cool.store.enums.ErrorCodeEnum.UPDATE_INVESTMENT_MANAGER_FAIL;
import static com.cool.store.enums.ErrorCodeEnum.*;
import static com.cool.store.enums.UserRoleEnum.*;
import static com.cool.store.enums.WorkflowSubStageStatusEnum.*;
/**
@@ -702,9 +703,111 @@ public class ShopServiceImpl implements ShopService {
}
return userList;
}
@Resource
DecorationMeasureDAO decorationMeasureDAO;
@Resource
DecorationDesignInfoDAO decorationDesignInfoDAO;
@Override
public List<UserDTO> getSubStageHandle(Long shopId, Integer subStage) {
if (shopId==null||subStage==null){
throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED);
}
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
LineInfoDO lineInfo = lineInfoDAO.getLineInfo(shopInfo.getLineId());
DecorationMeasureDO measureDO = decorationMeasureDAO.getByShopId(shopId);
DecorationDesignInfoDO decoration = decorationDesignInfoDAO.getByShopId(shopId);
ShopStageInfoDO stage = shopStageInfoDAO.getByShopIdAndSubStage(shopId, subStage);
ShopSubStageStatusEnum shopSubStageStatusEnum = ShopSubStageStatusEnum.getShopSubStageStatusEnum(stage.getShopSubStageStatus());
List<UserDTO> userList = new ArrayList<>();
switch (shopSubStageStatusEnum){
case SHOP_SUB_STAGE_STATUS_10:
case SHOP_SUB_STAGE_STATUS_20:
case SHOP_SUB_STAGE_STATUS_22:
case SHOP_SUB_STAGE_STATUS_30:
case SHOP_SUB_STAGE_STATUS_40:
case SHOP_SUB_STAGE_STATUS_50:
case SHOP_SUB_STAGE_STATUS_71:
case SHOP_SUB_STAGE_STATUS_74:
case SHOP_SUB_STAGE_STATUS_905:
case SHOP_SUB_STAGE_STATUS_121:
userList.add(new UserDTO(lineInfo.getUsername(), lineInfo.getMobile()));
return userList;
case SHOP_SUB_STAGE_STATUS_11:
case SHOP_SUB_STAGE_STATUS_21:
case SHOP_SUB_STAGE_STATUS_110:
case SHOP_SUB_STAGE_STATUS_111:
case SHOP_SUB_STAGE_STATUS_122:
EnterpriseUserDO userInfo = enterpriseUserDAO.getUserInfoById(lineInfo.getInvestmentManager());
if (Objects.nonNull(userInfo)){
userList.add(new UserDTO(userInfo.getName(), userInfo.getMobile()));
}
return userList;
case SHOP_SUB_STAGE_STATUS_70:
case SHOP_SUB_STAGE_STATUS_80:
case SHOP_SUB_STAGE_STATUS_85:
List<EnterpriseUserDO> userDOList1 = userAuthMappingService.getUserIdByRoleEnumAndRegionId(Arrays.asList(REGION_OFFICE, JOIN_OFFICE), shopInfo.getRegionId());
userDOList1.forEach(x->{
userList.add(new UserDTO(x.getName(), x.getMobile()));
});
case SHOP_SUB_STAGE_STATUS_72:
case SHOP_SUB_STAGE_STATUS_83:
List<EnterpriseUserDO> userDOList2 = userAuthMappingService.getUserIdByRoleEnumAndRegionId(Arrays.asList(REGION_OFFICE, BRANCH_OFFICE), shopInfo.getRegionId());
userDOList2.forEach(x->{
userList.add(new UserDTO(x.getName(), x.getMobile()));
});
case SHOP_SUB_STAGE_STATUS_85_1:
//财务
SysRoleRequest sysRoleRequest = new SysRoleRequest();
sysRoleRequest.setRoleName(FINANCE.getDesc());
List<EnterpriseUserDO> userListByRole = userAuthMappingService.findUserListByRole(sysRoleRequest);
userListByRole.forEach(x->{
userList.add(new UserDTO(x.getName(), x.getMobile()));
});
case SHOP_SUB_STAGE_STATUS_861:
//财务
SysRoleRequest req = new SysRoleRequest();
req.setRoleName(CONSTRUCTION_CUSTOMER.getDesc());
List<EnterpriseUserDO> userListByRole1 = userAuthMappingService.findUserListByRole(req);
userListByRole1.forEach(x->{
userList.add(new UserDTO(x.getName(), x.getMobile()));
});
case SHOP_SUB_STAGE_STATUS_862:
EnterpriseUserDO measureUser = enterpriseUserDAO.getUserInfoById(measureDO.getMeasureUserId());
if (Objects.nonNull(measureUser)){
userList.add(new UserDTO(measureUser.getName(), measureUser.getMobile()));
}
return userList;
case SHOP_SUB_STAGE_STATUS_90:
EnterpriseUserDO designLeaderUser = enterpriseUserDAO.getUserInfoById(decoration.getDesignLeaderId());
if (Objects.nonNull(designLeaderUser)){
userList.add(new UserDTO(designLeaderUser.getName(), designLeaderUser.getMobile()));
}
return userList;
case SHOP_SUB_STAGE_STATUS_901:
EnterpriseUserDO designUser = enterpriseUserDAO.getUserInfoById(decoration.getDesignUserId());
if (Objects.nonNull(designUser)){
userList.add(new UserDTO(designUser.getName(), designUser.getMobile()));
}
return userList;
case SHOP_SUB_STAGE_STATUS_902:
SysRoleRequest quotationReq = new SysRoleRequest();
quotationReq.setRoleName(QUOTATION_OFFICE.getDesc());
List<EnterpriseUserDO> userListByRole2 = userAuthMappingService.findUserListByRole(quotationReq);
userListByRole2.forEach(x->{
userList.add(new UserDTO(x.getName(), x.getMobile()));
});
return userList;
case SHOP_SUB_STAGE_STATUS_903:
EnterpriseUserDO quotationDesignUser = enterpriseUserDAO.getUserInfoById(decoration.getQuotationUserId());
if (Objects.nonNull(quotationDesignUser)){
userList.add(new UserDTO(quotationDesignUser.getName(), quotationDesignUser.getMobile()));
}
return userList;
default:
return userList;
}
}
}