Browse Source

2026-07-21

优化
master
fengyuan_yang 2 weeks ago
parent
commit
19b63ce80e
  1. 11
      src/main/java/com/gaotao/modules/shopOrder/entity/SearchWorkOrderDetailsAlloc.java
  2. 26
      src/main/java/com/gaotao/modules/shopOrder/service/Impl/WorkOrderDetailsAllocServiceImpl.java
  3. 42
      src/main/resources/mapper/shopOrder/WorkOrderDetailsAllocMapper.xml

11
src/main/java/com/gaotao/modules/shopOrder/entity/SearchWorkOrderDetailsAlloc.java

@ -18,9 +18,12 @@ public class SearchWorkOrderDetailsAlloc extends QueryPage {
private String site; private String site;
private String orderNo; private String orderNo;
private String orderStatus;
private String status;
private String orderType; private String orderType;
private String seqNo; private String seqNo;
private String partNo; private String partNo;
private String partDesc;
private String partDescription; private String partDescription;
private String batchNo; private String batchNo;
private String userName; private String userName;
@ -59,6 +62,14 @@ public class SearchWorkOrderDetailsAlloc extends QueryPage {
@JsonFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd")
private Date reportDate2; private Date reportDate2;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date reportStartDate;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date reportEndDate;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createDate; private Date createDate;

26
src/main/java/com/gaotao/modules/shopOrder/service/Impl/WorkOrderDetailsAllocServiceImpl.java

@ -82,17 +82,12 @@ public class WorkOrderDetailsAllocServiceImpl implements WorkOrderDetailsAllocSe
List<Object> params = new ArrayList<>(); List<Object> params = new ArrayList<>();
params.add(defaultString(query.getSite())); params.add(defaultString(query.getSite()));
params.add(defaultString(query.getOrderNo())); params.add(defaultString(query.getOrderNo()));
params.add(defaultString(query.getSeqNo()));
params.add(formatDateParam(query.getDate1()));
params.add(formatDateParam(query.getDate2()));
params.add(formatDateParam(query.getDate3()));
params.add(formatDateParam(query.getDate4()));
params.add(formatDateParam(query.getFinishDate1()));
params.add(formatDateParam(query.getFinishDate2()));
params.add(formatDateParam(query.getReportDate1()));
params.add(formatDateParam(query.getReportDate2()));
params.add(defaultString(firstNonBlank(query.getOrderStatus(), query.getStatus())));
params.add(defaultString(query.getPartNo()));
params.add(defaultString(firstNonBlank(query.getPartDesc(), query.getPartDescription())));
params.add(formatDateParam(firstNonNull(query.getReportStartDate(), query.getReportDate1())));
params.add(formatDateParam(firstNonNull(query.getReportEndDate(), query.getReportDate2())));
params.add(defaultString(query.getUserName())); params.add(defaultString(query.getUserName()));
params.add(defaultString(query.getWorkCenterNo()));
List<Map<String, Object>> resultList = procedureDao.getProcedureData("UspInsertWorkOrderDetailsAlloc", params); List<Map<String, Object>> resultList = procedureDao.getProcedureData("UspInsertWorkOrderDetailsAlloc", params);
@ -314,4 +309,15 @@ public class WorkOrderDetailsAllocServiceImpl implements WorkOrderDetailsAllocSe
private String defaultString(String value) { private String defaultString(String value) {
return value == null ? "" : value; return value == null ? "" : value;
} }
private String firstNonBlank(String primary, String fallback) {
if (primary != null && !primary.trim().isEmpty()) {
return primary;
}
return fallback;
}
private Date firstNonNull(Date primary, Date fallback) {
return primary != null ? primary : fallback;
}
} }

42
src/main/resources/mapper/shopOrder/WorkOrderDetailsAllocMapper.xml

@ -10,46 +10,34 @@
<if test="query.orderNo != null and query.orderNo != ''"> <if test="query.orderNo != null and query.orderNo != ''">
AND A.OrderNo like '%' + #{query.orderNo} + '%' AND A.OrderNo like '%' + #{query.orderNo} + '%'
</if> </if>
<if test="query.orderType != null and query.orderType != ''">
AND A.OrderType like '%' + #{query.orderType} + '%'
<if test="query.orderStatus != null and query.orderStatus != ''">
AND A.Status = #{query.orderStatus}
</if> </if>
<if test="query.seqNo != null and query.seqNo != ''">
AND B.SeqNo like '%' + #{query.seqNo} + '%'
<if test="(query.orderStatus == null or query.orderStatus == '') and query.status != null and query.status != ''">
AND A.Status = #{query.status}
</if> </if>
<if test="query.partNo != null and query.partNo != ''"> <if test="query.partNo != null and query.partNo != ''">
AND A.PartNo like '%' + #{query.partNo} + '%' AND A.PartNo like '%' + #{query.partNo} + '%'
</if> </if>
<if test="query.partDescription != null and query.partDescription != ''">
<if test="query.partDesc != null and query.partDesc != ''">
AND P.PartDescription like '%' + #{query.partDesc} + '%'
</if>
<if test="(query.partDesc == null or query.partDesc == '') and query.partDescription != null and query.partDescription != ''">
AND P.PartDescription like '%' + #{query.partDescription} + '%' AND P.PartDescription like '%' + #{query.partDescription} + '%'
</if> </if>
<if test="query.userName != null and query.userName != ''"> <if test="query.userName != null and query.userName != ''">
AND C.OperatorID like '%' + #{query.userName} + '%' AND C.OperatorID like '%' + #{query.userName} + '%'
</if> </if>
<if test="query.workCenterNo != null and query.workCenterNo != ''">
AND C.WorkCenterNo like '%' + #{query.workCenterNo} + '%'
</if>
<if test="query.date1 != null">
AND A.create_date >= #{query.date1}
</if>
<if test="query.date2 != null">
AND dateadd(DAY, 1, #{query.date2}) > A.create_date
</if>
<if test="query.date3 != null">
AND B.PlanFinishTime >= #{query.date3}
<if test="query.reportStartDate != null">
AND C.ReportDate >= #{query.reportStartDate}
</if> </if>
<if test="query.date4 != null">
AND dateadd(DAY, 1, #{query.date4}) > B.PlanFinishTime
</if>
<if test="query.finishDate1 != null">
AND B.finishtime >= #{query.finishDate1}
</if>
<if test="query.finishDate2 != null">
AND dateadd(DAY, 1, #{query.finishDate2}) > B.finishtime
</if>
<if test="query.reportDate1 != null">
<if test="(query.reportStartDate == null) and query.reportDate1 != null">
AND C.ReportDate >= #{query.reportDate1} AND C.ReportDate >= #{query.reportDate1}
</if> </if>
<if test="query.reportDate2 != null">
<if test="query.reportEndDate != null">
AND dateadd(DAY, 1, #{query.reportEndDate}) > C.ReportDate
</if>
<if test="(query.reportEndDate == null) and query.reportDate2 != null">
AND dateadd(DAY, 1, #{query.reportDate2}) > C.ReportDate AND dateadd(DAY, 1, #{query.reportDate2}) > C.ReportDate
</if> </if>
</sql> </sql>

Loading…
Cancel
Save