Browse Source

申请人-》试验负责人

ecss-tx
han\hanst 3 months ago
parent
commit
35e0351976
  1. 2
      src/main/java/com/xujie/sys/modules/erf/data/ErfApprovalCycleQueryData.java
  2. 2
      src/main/java/com/xujie/sys/modules/erf/dto/ErfApprovalCycleReportDto.java
  3. 6
      src/main/java/com/xujie/sys/modules/erf/dto/ErfSampleCycleReportDto.java
  4. 16
      src/main/java/com/xujie/sys/modules/erf/service/impl/ErfSampleCycleReportServiceImpl.java
  5. 8
      src/main/resources/mapper/erf/ErfExpApplyMapper.xml

2
src/main/java/com/xujie/sys/modules/erf/data/ErfApprovalCycleQueryData.java

@ -35,7 +35,7 @@ public class ErfApprovalCycleQueryData implements Serializable {
/**
* 创建人姓名模糊查询
*/
private String creatorName;
private String projectLeader;
/**
* 发起日开始日期

2
src/main/java/com/xujie/sys/modules/erf/dto/ErfApprovalCycleReportDto.java

@ -57,7 +57,7 @@ public class ErfApprovalCycleReportDto implements Serializable {
/**
* 创建人姓名
*/
private String creatorName;
private String projectLeader;
/**
* 当前状态

6
src/main/java/com/xujie/sys/modules/erf/dto/ErfSampleCycleReportDto.java

@ -10,9 +10,9 @@ import java.util.Date;
/**
* 样品完成周期报表DTO
*
*
* <p><b>用途</b>对比期望完成时间和实际完成时间统计样品生产周期</p>
*
*
* @author System
* @since 2026-02-12
*/
@ -48,7 +48,7 @@ public class ErfSampleCycleReportDto implements Serializable {
/**
* 创建人姓名
*/
private String creatorName;
private String projectLeader;
/**
* 期望完成日期第一步工程师填写

16
src/main/java/com/xujie/sys/modules/erf/service/impl/ErfSampleCycleReportServiceImpl.java

@ -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对象
*/

8
src/main/resources/mapper/erf/ErfExpApplyMapper.xml

@ -301,7 +301,7 @@
<result column="buDesc" property="buName"/>
<result column="experiment_type" property="experimentType"/>
<result column="title" property="title"/>
<result column="creator_name" property="creatorName"/>
<result column="project_leader" property="projectLeader"/>
<result column="status" property="status"/>
<result column="create_time" property="createTime"/>
<result column="submit_time" property="submitTime"/>
@ -322,7 +322,7 @@
dbo.get_bu_desc(a.site, a.bu_no) AS buDesc,
a.experiment_type,
a.title,
a.creator_name,
a.project_leader,
a.status,
a.create_time,
a.submit_time,
@ -420,8 +420,8 @@
<if test="data.experimentType != null and data.experimentType != ''">
AND a.experiment_type = #{data.experimentType}
</if>
<if test="data.creatorName != null and data.creatorName != ''">
AND a.creator_name LIKE '%' + #{data.creatorName} + '%'
<if test="data.projectLeader != null and data.projectLeader != ''">
AND a.project_leader LIKE '%' + #{data.projectLeader} + '%'
</if>
<if test="data.submitStartDate != null">
AND CAST(a.submit_time AS DATE) &gt;= #{data.submitStartDate}

Loading…
Cancel
Save