Browse Source

申请人-》试验负责人

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

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

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

Loading…
Cancel
Save