|
|
|
|
@ -89,8 +89,8 @@ public class ApmConfigServiceImpl extends ServiceImpl<ApmConfigMapper, ApmConfig |
|
|
|
|
// 根据(医院, 项目 配置天)获取配置详细
|
|
|
|
|
List<ApmConfig> configList = baseMapper.selectConfigList(vo.getCreateDept(), DateUtil.format(vo.getApmDay(), DateUtil.PATTERN_DATETIME), vo.getProject()); |
|
|
|
|
|
|
|
|
|
// 获取该天的所有预约统计
|
|
|
|
|
List<ApmRecordCountDTO> apmCountList = recordService.countAmpNum(createDept, DateUtil.format(vo.getApmDay(), DateUtil.PATTERN_DATETIME)); |
|
|
|
|
// 获取该天的所有已预约统计
|
|
|
|
|
List<ApmRecordCountDTO> recordCountList = recordService.countAmpNum(createDept, DateUtil.format(vo.getApmDay(), DateUtil.PATTERN_DATETIME)); |
|
|
|
|
|
|
|
|
|
List<Map<String, Object>> detailList = new ArrayList<>(); |
|
|
|
|
for (ApmConfig config : configList) { |
|
|
|
|
@ -100,11 +100,11 @@ public class ApmConfigServiceImpl extends ServiceImpl<ApmConfigMapper, ApmConfig |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_NUMBER_NUM, config.getNumberNum()); |
|
|
|
|
|
|
|
|
|
int apmNum = 0; |
|
|
|
|
for (ApmRecordCountDTO dto : apmCountList) { |
|
|
|
|
if (dto.getApmDay() == DateUtil.format(config.getApmDay(), DateUtil.PATTERN_DATE) |
|
|
|
|
&& dto.getProject() == config.getProject() |
|
|
|
|
&& dto.getPeriod() == config.getPeriod() |
|
|
|
|
&& dto.getTimeFrame() == config.getTimeFrame()) { |
|
|
|
|
for (ApmRecordCountDTO dto : recordCountList) { |
|
|
|
|
if (dto.getApmDay().equals(DateUtil.format(config.getApmDay(), DateUtil.PATTERN_DATE)) |
|
|
|
|
&& dto.getProject().equals(config.getProject()) |
|
|
|
|
&& dto.getPeriod().equals(config.getPeriod()) |
|
|
|
|
&& dto.getTimeFrame().equals(config.getTimeFrame()) ) { |
|
|
|
|
apmNum = dto.getApmNum(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
@ -139,6 +139,7 @@ public class ApmConfigServiceImpl extends ServiceImpl<ApmConfigMapper, ApmConfig |
|
|
|
|
// 获取用户在该天预约记录
|
|
|
|
|
List<ApmRecord> currentApmList = recordService.list(Wrappers.<ApmRecord>lambdaQuery() |
|
|
|
|
.eq(ApmRecord::getCupCardNo, cupCardNo) |
|
|
|
|
.eq(ApmRecord::getApmStatus, BusinessConstant.RECORD_STATUS_UNREGISTER) |
|
|
|
|
.eq(ApmRecord::getApmDay, apmDay)); |
|
|
|
|
Map<String, ApmRecord> cupApmMap = currentApmList.stream().collect(Collectors.toMap(ApmRecord::getProject, Function.identity())); |
|
|
|
|
|
|
|
|
|
@ -159,19 +160,19 @@ public class ApmConfigServiceImpl extends ServiceImpl<ApmConfigMapper, ApmConfig |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_TIME_FRAME, config.getTimeFrame()); |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_NUMBER_NUM, config.getNumberNum()); |
|
|
|
|
|
|
|
|
|
int apmNum = 0; |
|
|
|
|
int cupApm = 0; |
|
|
|
|
for (ApmRecordCountDTO dto : apmCountList) { |
|
|
|
|
if (dto.getApmDay() == DateUtil.format(config.getApmDay(), DateUtil.PATTERN_DATE) |
|
|
|
|
&& dto.getProject() == config.getProject() |
|
|
|
|
&& dto.getPeriod() == config.getPeriod() |
|
|
|
|
&& dto.getTimeFrame() == config.getTimeFrame()) { |
|
|
|
|
apmNum = dto.getApmNum(); |
|
|
|
|
if (dto.getApmDay().equals(DateUtil.format(config.getApmDay(), DateUtil.PATTERN_DATE)) |
|
|
|
|
&& dto.getProject().equals(config.getProject()) |
|
|
|
|
&& dto.getPeriod().equals(config.getPeriod()) |
|
|
|
|
&& dto.getTimeFrame().equals(config.getTimeFrame()) ) { |
|
|
|
|
cupApm = dto.getApmNum(); |
|
|
|
|
} |
|
|
|
|
} |
|
|
|
|
totalApmNum += apmNum; |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_APM_NUM, apmNum); |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_RESIDUE_NUM, config.getNumberNum() - apmNum); |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_ENABLE_APM, !cupApmMap.containsKey(project) && config.getNumberNum() > apmNum ? BusinessConstant.BOOLEAN_INT_TRUE : BusinessConstant.BOOLEAN_INT_FALSE); |
|
|
|
|
totalApmNum += cupApm; |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_APM_NUM, cupApm); |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_RESIDUE_NUM, config.getNumberNum() - cupApm); |
|
|
|
|
detail.put(BusinessConstant.MAP_KEY_APM_CONFIG_LIST_ENABLE_APM, !cupApmMap.containsKey(project) && config.getNumberNum() > cupApm ? BusinessConstant.BOOLEAN_INT_TRUE : BusinessConstant.BOOLEAN_INT_FALSE); |
|
|
|
|
detailList.add(detail); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|