|
|
|
@ -19,14 +19,14 @@ import java.util.stream.Collectors; |
|
|
|
|
|
|
|
/** |
|
|
|
* 样品完成周期报表服务实现类 |
|
|
|
* |
|
|
|
* |
|
|
|
* <p><b>核心功能:</b></p> |
|
|
|
* <ul> |
|
|
|
* <li>对比期望完成时间和实际完成时间</li> |
|
|
|
* <li>计算周期差异(提前/准时/延期)</li> |
|
|
|
* <li>统计样品状态和数量</li> |
|
|
|
* </ul> |
|
|
|
* |
|
|
|
* |
|
|
|
* @author System |
|
|
|
* @since 2026-02-12 |
|
|
|
*/ |
|
|
|
@ -72,7 +72,7 @@ public class ErfSampleCycleReportServiceImpl implements ErfSampleCycleReportServ |
|
|
|
|
|
|
|
/** |
|
|
|
* 转换为报表DTO |
|
|
|
* |
|
|
|
* |
|
|
|
* @param data 试验单数据 |
|
|
|
* @return 报表DTO |
|
|
|
*/ |
|
|
|
@ -85,7 +85,7 @@ public class ErfSampleCycleReportServiceImpl implements ErfSampleCycleReportServ |
|
|
|
dto.setExperimentType(data.getExperimentType()); |
|
|
|
dto.setBuNo(data.getBuNo()); |
|
|
|
dto.setBuName(data.getBuDesc()); |
|
|
|
dto.setCreatorName(data.getCreatorName()); |
|
|
|
dto.setProjectLeader(data.getProjectLeader()); |
|
|
|
dto.setStatus(data.getStatus()); |
|
|
|
dto.setCreateTime(data.getCreateTime()); |
|
|
|
|
|
|
|
@ -97,11 +97,11 @@ public class ErfSampleCycleReportServiceImpl implements ErfSampleCycleReportServ |
|
|
|
if (data.getExpectedFinishDate() != null && data.getActualFinishDate() != null) { |
|
|
|
LocalDate expectedDate = convertToLocalDate(data.getExpectedFinishDate()); |
|
|
|
LocalDate actualDate = convertToLocalDate(data.getActualFinishDate()); |
|
|
|
|
|
|
|
|
|
|
|
// 计算天数差异(实际 - 期望) |
|
|
|
long daysDiff = ChronoUnit.DAYS.between(expectedDate, actualDate); |
|
|
|
dto.setCycleDifference((int) daysDiff); |
|
|
|
|
|
|
|
|
|
|
|
// 判断是否延期 |
|
|
|
dto.setIsDelayed(daysDiff > 0); |
|
|
|
} |
|
|
|
@ -109,7 +109,7 @@ public class ErfSampleCycleReportServiceImpl implements ErfSampleCycleReportServ |
|
|
|
// 样品状态和数量 |
|
|
|
dto.setFinalStatus(data.getFinalStatus()); |
|
|
|
dto.setFinalQuantity(data.getFinalQuantity()); |
|
|
|
|
|
|
|
|
|
|
|
// 样品状态描述 |
|
|
|
if ("NORMAL".equals(data.getFinalStatus())) { |
|
|
|
dto.setFinalStatusDesc("正常入库"); |
|
|
|
@ -124,7 +124,7 @@ public class ErfSampleCycleReportServiceImpl implements ErfSampleCycleReportServ |
|
|
|
|
|
|
|
/** |
|
|
|
* 将Date转换为LocalDate |
|
|
|
* |
|
|
|
* |
|
|
|
* @param date Date对象 |
|
|
|
* @return LocalDate对象 |
|
|
|
*/ |
|
|
|
|