From aa3476e8ff45d168f0bb9376ed3a114610a65f12 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期三, 25 十二月 2024 08:39:12 +0800
Subject: [PATCH] 添加工厂判断逻辑及优化库位查找

---
 src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java |   30 +++++++++++++++++++++++++++++-
 1 files changed, 29 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
index 7523098..71d1aa4 100644
--- a/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/AgvLocDetlMapper.java
@@ -2,6 +2,7 @@
 
 import com.baomidou.mybatisplus.mapper.BaseMapper;
 import com.zy.asrs.entity.AgvLocDetl;
+import com.zy.asrs.entity.LocDetl;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 import org.apache.ibatis.annotations.Select;
@@ -22,24 +23,51 @@
 
     Integer getStockStatisCount(Map<String, Object> map);
 
+    @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr} AND a.three_code = #{threeCode}")
+    Double selectSumAnfmeByMatnr(@Param("matnr") String matnr,@Param("threeCode") String threeCode);
+
+    @Select("select * from agv_loc_detl where 1=1 and loc_no = #{locNo} and matnr = #{matnr} and three_code = #{csocode}")
+    AgvLocDetl selectItemByOrderNo(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
+
+    @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr} AND a.three_code = #{threeCode} AND a.process_sts = 1")
+    Double selectSumAnfmeByMatnrProcess(@Param("matnr") String matnr,@Param("threeCode") String threeCode);
+
+    @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where b.loc_sts = 'F' and a.matnr = #{matnr} AND a.three_code = #{threeCode} AND a.process_sts != 1 AND b.floor != 1")
+    Double selectSumAnfmeByMatnrProcessed(@Param("matnr") String matnr,@Param("threeCode") String threeCode);
+
+    @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where (b.loc_sts = 'F' or b.loc_sts = 'R') and b.floor = #{floor} and a.matnr = #{matnr} AND a.three_code = #{threeCode} AND a.process_sts != 1")
+    Double selectSumAnfmeByMatnr2(@Param("matnr") String matnr,@Param("threeCode") String threeCode,@Param("floor") Integer floor);
+
+    @Select("select sum(a.anfme) as sum from agv_loc_detl a left join agv_loc_mast b on a.loc_no = b.loc_no where (b.loc_sts = 'F' or b.loc_sts = 'R') and b.floor != #{floor} and a.matnr = #{matnr} AND a.three_code = #{threeCode} AND a.process_sts != 1")
+    Double getSumAnfmeback(@Param("matnr") String matnr,@Param("threeCode") String threeCode,@Param("floor") Integer floor);
+
     @Select("SELECT SUM(anfme) FROM agv_loc_detl")
     Integer sum();
 
     @Select("select\n" +
             "        ROW_NUMBER() over (order by sum(a.anfme) desc) as row\n" +
             "        , a.matnr\n" +
+            "        , a.maktx, a.specs, a.model\n "  +
             "        , sum(a.anfme) as anfme\n" +
             "        from agv_loc_detl a\n" +
             "        where 1=1\n" +
-            "        group by a.matnr")
+            "        group by a.matnr, a.maktx, a.specs, a.model")
     List<AgvLocDetl> getStockStatisExcel();
 
     @Select("SELECT SUM(anfme) FROM agv_loc_detl WHERE loc_no = #{locNo}")
     Double sumByLocNo(@Param("locNo")String locNo);
 
+    @Select("SELECT SUM(anfme) FROM agv_loc_detl WHERE matnr = #{matnr}")
+    Double sumByMatnr(@Param("matnr")String matnr);
+
     int updateAnfme(@Param("locNo")String locNo, @Param("anfme")Double anfme, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
+
+    int updateAnfmeProcess(@Param("locNo")String locNo, @Param("anfme")Double anfme, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode, @Param("process")Integer process);
 
     int deleteLocDetl(@Param("locNo")String locNo, @Param("anfme")Double anfme, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
 
     AgvLocDetl selectLocdetl(@Param("locNo")String locNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("csocode")String csocode, @Param("isocode")String isocode);
+
+    @Update("update agv_loc_detl set loc_no = '${targetLoc}' where loc_no = '${sourceLoc}' and supp_code = '${containerCode}'")
+    void updateLocNo(@Param("targetLoc")String targetLoc, @Param("sourceLoc")String sourceLoc, @Param("containerCode")String containerCode);
 }

--
Gitblit v1.9.1