增加查询获取验收列表详情接口

This commit is contained in:
shuo.wang
2024-05-11 16:20:37 +08:00
parent 9c38e50252
commit 4d4ecedd31
3 changed files with 72 additions and 6 deletions

View File

@@ -112,5 +112,10 @@ public interface DecorationService {
* @description:获取验收列表 * @description:获取验收列表
*/ */
PageInfo<fitmentCheckVO> getFitmentAcceptanceList(AcceptanceListRequest request, LoginUserInfo user); PageInfo<fitmentCheckVO> getFitmentAcceptanceList(AcceptanceListRequest request, LoginUserInfo user);
/**
* @Auther: wangshuo
* @Date: 2024/5/11
* @description:获取验收列表详情
*/
fitmentCheckVO getAcceptanceDetail(Long shopId, LoginUserInfo user);
} }

View File

@@ -97,6 +97,7 @@ public class DecorationServiceImpl implements DecorationService {
private CommonService commonService; private CommonService commonService;
@Resource @Resource
private AssessmentTemplateService assessmentTemplateService; private AssessmentTemplateService assessmentTemplateService;
@Override @Override
public DesignInfoVo DesignInfo(Long shopId) { public DesignInfoVo DesignInfo(Long shopId) {
DecorationDTO decoration = getDecorationDTO(shopId); DecorationDTO decoration = getDecorationDTO(shopId);
@@ -362,7 +363,7 @@ public class DecorationServiceImpl implements DecorationService {
List<AssessmentTemplateVO> assessmentTemplateVOS = assessmentTemplateService.listByType(AssessmentTemplateType.TRIPARTITE_ACCEPTANCE.getCode()); List<AssessmentTemplateVO> assessmentTemplateVOS = assessmentTemplateService.listByType(AssessmentTemplateType.TRIPARTITE_ACCEPTANCE.getCode());
Long max = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).max().orElse(0L); Long max = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).max().orElse(0L);
Long min = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).min().orElse(0L); Long min = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).min().orElse(0L);
List<AssessmentDataDO> assessmentDataDOList = assessmentDataDAO.selectListByShopId(request.getShopId(), min,max); List<AssessmentDataDO> assessmentDataDOList = assessmentDataDAO.selectListByShopId(request.getShopId(), min, max);
List<AssessmentDataDO> assessmentDataDOS = new ArrayList<>(); List<AssessmentDataDO> assessmentDataDOS = new ArrayList<>();
for (AssessmentDataDTO assessmentDataDTO : request.getAssessmentDataDTOS()) { for (AssessmentDataDTO assessmentDataDTO : request.getAssessmentDataDTOS()) {
AssessmentDataDO assessmentDataDO = new AssessmentDataDO(); AssessmentDataDO assessmentDataDO = new AssessmentDataDO();
@@ -380,6 +381,7 @@ public class DecorationServiceImpl implements DecorationService {
} else { } else {
assessmentDataService.batchInsertSelective(assessmentDataDOS); assessmentDataService.batchInsertSelective(assessmentDataDOS);
} }
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122);
return Boolean.TRUE; return Boolean.TRUE;
} }
@@ -388,7 +390,7 @@ public class DecorationServiceImpl implements DecorationService {
List<AssessmentTemplateVO> assessmentTemplateVOS = assessmentTemplateService.listByType(AssessmentTemplateType.TRIPARTITE_ACCEPTANCE.getCode()); List<AssessmentTemplateVO> assessmentTemplateVOS = assessmentTemplateService.listByType(AssessmentTemplateType.TRIPARTITE_ACCEPTANCE.getCode());
Long max = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).max().orElse(0L); Long max = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).max().orElse(0L);
Long min = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).min().orElse(0L); Long min = assessmentTemplateVOS.stream().mapToLong(AssessmentTemplateVO::getId).min().orElse(0L);
List<AssessmentDataDO> assessmentDataDOS = assessmentDataDAO.selectListByShopId(shopId,min,max); List<AssessmentDataDO> assessmentDataDOS = assessmentDataDAO.selectListByShopId(shopId, min, max);
if (CollectionUtils.isEmpty(assessmentDataDOS)) { if (CollectionUtils.isEmpty(assessmentDataDOS)) {
log.error("该用户门店三方验收检查项为空"); log.error("该用户门店三方验收检查项为空");
return null; return null;
@@ -466,7 +468,7 @@ public class DecorationServiceImpl implements DecorationService {
} }
Map<Long, ShopInfoDO> ShopIdmap = shopInfoDOS.stream().collect(Collectors.toMap(ShopInfoDO::getId, dto1 -> dto1)); Map<Long, ShopInfoDO> ShopIdmap = shopInfoDOS.stream().collect(Collectors.toMap(ShopInfoDO::getId, dto1 -> dto1));
//招商经理选址人员拓展经理id //招商经理选址人员拓展经理id
List<Long> lineIds = shopInfoDOS.stream().filter(o->o.getLineId()!=null) List<Long> lineIds = shopInfoDOS.stream().filter(o -> o.getLineId() != null)
.map(ShopInfoDO::getLineId).distinct().collect(Collectors.toList()); .map(ShopInfoDO::getLineId).distinct().collect(Collectors.toList());
List<LineInfoDO> lineInfos = lineInfoMapper.getByLineIds(lineIds); List<LineInfoDO> lineInfos = lineInfoMapper.getByLineIds(lineIds);
Map<Long, LineInfoDO> lineInfoDOMap = lineInfos.stream().collect(Collectors.toMap(LineInfoDO::getId, dto -> dto)); Map<Long, LineInfoDO> lineInfoDOMap = lineInfos.stream().collect(Collectors.toMap(LineInfoDO::getId, dto -> dto));
@@ -531,7 +533,7 @@ public class DecorationServiceImpl implements DecorationService {
} }
} }
if (Objects.nonNull(ShopStageInfoDOMap.get(shopId))) { if (Objects.nonNull(ShopStageInfoDOMap.get(shopId))) {
fitmentCheckVO.setShopSubStageStatus(ShopStageInfoDOMap.get(shopId).getShopSubStageStatus()); fitmentCheckVO.setShopSubStageStatus(ShopStageInfoDOMap.get(shopId).getShopSubStageStatus());
} }
fitmentCheckVOList.add(fitmentCheckVO); fitmentCheckVOList.add(fitmentCheckVO);
} }
@@ -539,6 +541,59 @@ public class DecorationServiceImpl implements DecorationService {
return pageInfo; return pageInfo;
} }
@Override
public fitmentCheckVO getAcceptanceDetail(Long shopId, LoginUserInfo user) {
fitmentCheckVO fitmentCheckVO = new fitmentCheckVO();
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
if (Objects.isNull(shopInfo)){
log.error("店铺信息不存在 shopId:{}",shopId);
return null;
}
//招商经理选址人员拓展经理id
Long lineId = shopInfo.getLineId();
LineInfoDO lineInfo = lineInfoMapper.getByLineId(lineId);
if (Objects.isNull(lineInfo)){
log.error("线索信息不存在 shopId:{}",shopId);
return null;
}
//招商name
List<String> userIds = new ArrayList<>();
userIds.add(lineInfo.getInvestmentManager());
//选址人员拓展经理name
userIds.add(lineInfo.getDevelopmentManager());
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(userIds);
//所属战区
Long regionId = shopInfo.getRegionId();
String regionName = regionService.getBelongWarRegionName(regionId);
//战区经理name
String fightMangerUserId = sysRoleService.getUserIdByRegionIdWithRolePriority(regionId, Arrays.asList(UserRoleEnum.THEATER_MANAGER));
String fightName = enterpriseUserDAO.getUserName(fightMangerUserId);
//施工计划完成时间 //施工实际完成实际//计划验收时间//验收实际时间
AcceptanceInfoDO acceptanceInfoDOS = acceptanceInfoDAO.selectByShopId(shopId);
//验收状态
ShopStageInfoDO subStage = shopStageInfoDAO.getShopSubStageInfo(shopId, ShopSubStageEnum.SHOP_STAGE_12);
fitmentCheckVO.setShopId(shopId);
fitmentCheckVO.setLineId(lineId);
fitmentCheckVO.setShopName(shopInfo.getShopName());
fitmentCheckVO.setStoreNum(shopInfo.getStoreNum());
fitmentCheckVO.setPartnerName(lineInfo.getUsername());
fitmentCheckVO.setRegionId(regionId);
fitmentCheckVO.setRegion(regionName);
fitmentCheckVO.setFightManager(fightName);
if (userNameMap != null) {
fitmentCheckVO.setInvestmentManager(userNameMap.get(lineInfo.getInvestmentManager()));
fitmentCheckVO.setSitterName(userNameMap.get(lineInfo.getDevelopmentManager()));
}
if (Objects.nonNull(acceptanceInfoDOS)) {
fitmentCheckVO.setPlanEndTime(acceptanceInfoDOS.getDecorationPlannedCompletionTime());
fitmentCheckVO.setActualEndTime(acceptanceInfoDOS.getConstructionCompletionTime());
fitmentCheckVO.setPlanAcceptanceTime(acceptanceInfoDOS.getPlanAcceptanceTime());
fitmentCheckVO.setAcceptanceTime(acceptanceInfoDOS.getActualAcceptanceTime());
}
fitmentCheckVO.setShopSubStageStatus(subStage.getShopSubStageStatus());
return fitmentCheckVO;
}
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public Boolean pcSubmitAcceptanceSign(ThreeAcceptanceRequest request) { public Boolean pcSubmitAcceptanceSign(ThreeAcceptanceRequest request) {
@@ -606,7 +661,7 @@ public class DecorationServiceImpl implements DecorationService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean bookingAcceptance(BookingAcceptanceRequest request,LoginUserInfo user) { public Boolean bookingAcceptance(BookingAcceptanceRequest request, LoginUserInfo user) {
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_121); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_121);
ShopStageInfoDO newShopStageInfoDO = new ShopStageInfoDO(); ShopStageInfoDO newShopStageInfoDO = new ShopStageInfoDO();
SimpleDateFormat sdf = new SimpleDateFormat(CoolDateUtils.DATE_FORMAT_SEC); SimpleDateFormat sdf = new SimpleDateFormat(CoolDateUtils.DATE_FORMAT_SEC);

View File

@@ -70,6 +70,12 @@ public class PCDecorationController {
LoginUserInfo user = CurrentUserHolder.getUser(); LoginUserInfo user = CurrentUserHolder.getUser();
return ResponseResult.success(decorationService.getFitmentAcceptanceList(request,user)); return ResponseResult.success(decorationService.getFitmentAcceptanceList(request,user));
} }
@ApiOperation("获取验收列表详情")
@GetMapping("/getAcceptanceDetail")
public ResponseResult<fitmentCheckVO> getAcceptanceDetail(@RequestParam("shopId") Long shopId){
LoginUserInfo user = CurrentUserHolder.getUser();
return ResponseResult.success(decorationService.getAcceptanceDetail(shopId,user));
}
@ApiOperation("预约验收") @ApiOperation("预约验收")
@PostMapping("/bookingAcceptance") @PostMapping("/bookingAcceptance")
public ResponseResult<Boolean> submitBookingAcceptance(@RequestBody BookingAcceptanceRequest response){ public ResponseResult<Boolean> submitBookingAcceptance(@RequestBody BookingAcceptanceRequest response){