From 44406ead30d465099d5c5fe0a42c9271925afd48 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期三, 08 一月 2025 13:30:23 +0800
Subject: [PATCH] 订单历史档

---
 src/main/resources/mapper/WrkDetlMapper.xml                    |   15 +++++++++++++++
 src/main/java/com/zy/asrs/entity/result/WrkTraceVo.java        |   33 +++++++++++++++++++++++++++++++++
 src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java            |    2 ++
 src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java |    5 +++++
 src/main/java/com/zy/asrs/service/WrkDetlService.java          |    1 +
 5 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/result/WrkTraceVo.java b/src/main/java/com/zy/asrs/entity/result/WrkTraceVo.java
new file mode 100644
index 0000000..a435599
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/result/WrkTraceVo.java
@@ -0,0 +1,33 @@
+package com.zy.asrs.entity.result;
+
+import com.zy.asrs.entity.WrkDetl;
+import com.zy.asrs.entity.WrkMast;
+import com.zy.common.model.DetlDto;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Created by vincent on 2022/7/22
+ */
+@Data
+public class WrkTraceVo {
+
+    private Integer wrkNo;
+
+    private String ioTimeStr;
+
+    private WrkMast wrkMast;
+
+    private List<WrkDetl> wrkDetls = new ArrayList<>();
+
+    private List<DetlDto> detlDtos = new ArrayList<>();
+
+    public WrkTraceVo(Integer wrkNo, String ioTimeStr, WrkMast wrkMast, WrkDetl wrkDetl) {
+        this.wrkNo = wrkNo;
+        this.ioTimeStr = ioTimeStr;
+        this.wrkMast = wrkMast;
+        this.wrkDetls.add(wrkDetl);
+    }
+}
diff --git a/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java b/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
index e94b8a6..8b3ba72 100644
--- a/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/WrkDetlMapper.java
@@ -25,4 +25,6 @@
     List<WrkDetl> selectPakoutQuery(@Param("staNo")Integer staNo, @Param("matnr")String matnr);
 
     Double getBomQty(String bomCode,String matnr);
+
+    List<WrkDetl> selectAndLogByOrderNoGroupByMatnrOfSum(String orderNo);
 }
diff --git a/src/main/java/com/zy/asrs/service/WrkDetlService.java b/src/main/java/com/zy/asrs/service/WrkDetlService.java
index f3f1278..1f82706 100644
--- a/src/main/java/com/zy/asrs/service/WrkDetlService.java
+++ b/src/main/java/com/zy/asrs/service/WrkDetlService.java
@@ -26,4 +26,5 @@
 
     Double getBomQty(String bomCode,String matnr);
 
+    List<WrkDetl> selectAndLogByOrderNoGroupByMatnrOfSum(String orderNo);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
index b542e65..723b858 100644
--- a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java
@@ -116,4 +116,9 @@
     public Double getBomQty(String bomCode,String matnr) {
         return this.baseMapper.getBomQty(bomCode,matnr);
     }
+
+    @Override
+    public List<WrkDetl> selectAndLogByOrderNoGroupByMatnrOfSum(String orderNo) {
+        return this.baseMapper.selectAndLogByOrderNoGroupByMatnrOfSum(orderNo);
+    }
 }
diff --git a/src/main/resources/mapper/WrkDetlMapper.xml b/src/main/resources/mapper/WrkDetlMapper.xml
index d9691ed..879c7c5 100644
--- a/src/main/resources/mapper/WrkDetlMapper.xml
+++ b/src/main/resources/mapper/WrkDetlMapper.xml
@@ -119,4 +119,19 @@
         and awd.matnr = #{matnr}
     </select>
 
+
+    <select id="selectAndLogByOrderNoGroupByMatnrOfSum" resultMap="BaseResultMap">
+        select awd.wrk_no, awd.io_time, awd.matnr, sum(awd.anfme) as anfme
+        from asr_wrk_detl awd
+                 left join asr_wrk_mast awm on awd.wrk_no = awm.wrk_no and awd.io_time = awm.io_time
+        where order_no = #{orderNo}
+        group by awd.wrk_no, awd.io_time, awd.matnr
+        union
+        select distinct awdl.wrk_no, awdl.io_time, awdl.matnr, sum(awdl.anfme) as anfme
+        from asr_wrk_detl_log awdl
+                 left join asr_wrk_mast_log awml on awdl.wrk_no = awml.wrk_no and awdl.io_time = awml.io_time
+        where awdl.order_no = #{orderNo}
+          and (awml.manu_type is null or awml.manu_type != '鎵嬪姩鍙栨秷')
+        group by awdl.wrk_no, awdl.io_time, awdl.matnr
+    </select>
 </mapper>

--
Gitblit v1.9.1