From 19e83bcd49f988e77d39df81192ab116bb991b18 Mon Sep 17 00:00:00 2001
From: zjj <3272660260@qq.com>
Date: 星期三, 07 六月 2023 10:00:51 +0800
Subject: [PATCH] #组托增加重量字段

---
 src/main/java/com/zy/asrs/entity/param/CombParam.java             |    2 
 src/main/java/com/zy/asrs/mapper/LocDetlMapper.java               |    1 
 src/main/java/com/zy/asrs/service/LocDetlService.java             |    1 
 src/main/resources/mapper/LocDetlMapper.xml                       |   83 ++++++++++++++++++++
 src/main/webapp/static/js/manLocDetl/manLocDetl.js                |    2 
 src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java    |    5 +
 src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java |    4 
 src/main/java/com/zy/asrs/mapper/ManLocDetlMapper.java            |    2 
 src/main/resources/mapper/ManLocDetlMapper.xml                    |   17 ++--
 src/main/webapp/views/home/map.html                               |   30 ++-----
 src/main/java/com/zy/asrs/controller/NodeController.java          |    8 +
 src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java     |   24 +++++
 src/main/java/com/zy/asrs/service/ManLocDetlService.java          |    2 
 src/main/java/com/zy/asrs/controller/OutController.java           |    2 
 14 files changed, 144 insertions(+), 39 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/NodeController.java b/src/main/java/com/zy/asrs/controller/NodeController.java
index fa7f91c..87ee636 100644
--- a/src/main/java/com/zy/asrs/controller/NodeController.java
+++ b/src/main/java/com/zy/asrs/controller/NodeController.java
@@ -82,6 +82,7 @@
                       @RequestParam(required = false)String orderByType,
                       @RequestParam Map<String, Object> param){
         EntityWrapper<Node> wrapper = new EntityWrapper<>();
+        wrapper.ne("type",3);
         excludeTrash(param);
         convert(param, wrapper);
         hostEq(wrapper);
@@ -97,11 +98,14 @@
                   @RequestParam(required = false)String orderByType,
                   @RequestParam Map<String, Object> param){
         EntityWrapper<Node> wrapper = new EntityWrapper<>();
+        wrapper.ne("type",3);
         excludeTrash(param);
         convert(param, wrapper);
         hostEq(wrapper);
-        if (!Cools.isEmpty(orderByField)){wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));}
-        return R.parse("0-鎿嶄綔鎴愬姛").add(nodeService.selectList(wrapper));
+        if (!Cools.isEmpty(orderByField)){
+            wrapper.orderBy(humpToLine(orderByField), "asc".equals(orderByType));
+        }
+        return R.parse("0-鎴愬姛").add(nodeService.selectList(wrapper));
     }
 
     private void convert(Map<String, Object> map, EntityWrapper wrapper){
diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java
index 3c6de9a..d7cd098 100644
--- a/src/main/java/com/zy/asrs/controller/OutController.java
+++ b/src/main/java/com/zy/asrs/controller/OutController.java
@@ -67,7 +67,7 @@
         for (OrderDetl orderDetl : orderDetls) {
             double issued = Optional.of(orderDetl.getAnfme() - orderDetl.getQty()).orElse(0.0D);
             if (issued <= 0.0D) { continue; }
-            List<LocDetl> locDetls = locDetlService.queryStock(orderDetl.getMatnr(), orderDetl.getBatch(), orderDetl.getOwner());
+            List<LocDetl> locDetls = locDetlService.queryStock2(orderDetl.getMatnr(), orderDetl.getBatch(), orderDetl.getOwner());
             for (LocDetl locDetl : locDetls) {
                 if (issued > 0) {
                     LocDto locDto = new LocDto(locDetl.getLocNo(), locDetl.getMatnr(), locDetl.getMaktx(), locDetl.getBatch(), orderDetl.getOrderNo(),
diff --git a/src/main/java/com/zy/asrs/entity/param/CombParam.java b/src/main/java/com/zy/asrs/entity/param/CombParam.java
index 3693711..62ad3d5 100644
--- a/src/main/java/com/zy/asrs/entity/param/CombParam.java
+++ b/src/main/java/com/zy/asrs/entity/param/CombParam.java
@@ -39,6 +39,8 @@
         // 鐗╂枡鏁伴噺
         private Double anfme;
 
+        private Double weight;
+
     }
 
 }
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index 45d64ec..4a6440b 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -78,4 +78,5 @@
     //閫氳繃璁㈠崟鍙枫�佺墿鏂欏彿銆佺墿鏂欏悕绉般�佽鏍笺�佸簱浣嶅彿杩涜妯$硦鎼滅储
     List<LocDetl> searchByLike(String orderNo, String matnr, String maktx, String specs, String locNo);
 
+    List<LocDetl> queryStock2(String matnr, String batch, int owner);
 }
diff --git a/src/main/java/com/zy/asrs/mapper/ManLocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/ManLocDetlMapper.java
index 9114e18..f0ad47e 100644
--- a/src/main/java/com/zy/asrs/mapper/ManLocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/ManLocDetlMapper.java
@@ -88,5 +88,5 @@
 
     int deleteDatailed (String locNo, String matnr,String batch);
 
-    int increase(Double anfme,String locNo, String matnr,String batch);
+    int increase(Double anfme,String locNo, String matnr,String batch,Double weight);
 }
diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java
index 6ab9215..4214d81 100644
--- a/src/main/java/com/zy/asrs/service/LocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -48,6 +48,7 @@
     // --------------------------------------------------
 
     List<LocDetl> queryStock(String matnr, String batch,int owner);
+    List<LocDetl> queryStock2(String matnr, String batch,int owner);
 
     Double queryStockAnfme(String matnr, String batch);
 
diff --git a/src/main/java/com/zy/asrs/service/ManLocDetlService.java b/src/main/java/com/zy/asrs/service/ManLocDetlService.java
index 1170144..e20b5af 100644
--- a/src/main/java/com/zy/asrs/service/ManLocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/ManLocDetlService.java
@@ -66,6 +66,6 @@
 
     int deleteDatailed (String locNo, String matnr,String batch);
 
-    int increase(Double anfme,String locNo, String matnr,String batch);
+    int increase(Double anfme,String locNo, String matnr,String batch,Double weight);
 
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index 2ea9852..1612c09 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -92,6 +92,11 @@
     }
 
     @Override
+    public List<LocDetl> queryStock2(String matnr, String batch, int owner) {
+        return this.baseMapper.queryStock2(matnr, batch, owner);
+    }
+
+    @Override
     public List<LocDetl> queryStockViewMerge(String locNo) {
         return this.baseMapper.queryStockViewMerge(locNo);
     }
diff --git a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java
index f42392f..c27be8a 100644
--- a/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/ManLocDetlServiceImpl.java
@@ -197,8 +197,8 @@
     }
 
     @Override
-    public int increase(Double anfme,String locNo, String matnr, String batch) {
-        return baseMapper.increase(anfme,locNo,matnr,batch);
+    public int increase(Double anfme,String locNo, String matnr, String batch,Double weight) {
+        return baseMapper.increase(anfme,locNo,matnr,batch,weight);
     }
 
 
diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
index 7305239..9558c78 100644
--- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java
@@ -162,6 +162,7 @@
                 waitPakin.setModiTime(now);
                 waitPakin.setOwner(detlDto.getOwner());
                 waitPakin.setUuid(uuid);
+                waitPakin.setWeight(param.getCombMats().get(0).getWeight());
                 if (!waitPakinService.insert(waitPakin)) {
                     throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
                 }
@@ -229,6 +230,7 @@
                 waitPakin.setModiTime(now);
                 waitPakin.setOwner(detlDto.getOwner());
                 waitPakin.setUuid(uuid);
+                waitPakin.setWeight(param.getCombMats().get(0).getWeight());
                 if (!waitPakinService.insert(waitPakin)) {
                     throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
                 }
@@ -560,13 +562,23 @@
                 manLocDetl.setBatch(jsonOrderDetl.getBatch());
                 manLocDetl.setUuid(uuid);
                 manLocDetl.setOwner(orderDetl.getOwner());
+                manLocDetl.setWeight(jsonOrderDetl.getWeight());
                 if(!manLocDetlService.insert(manLocDetl)){
-                    return R.error("淇敼骞冲簱鐗╂枡澶辫触锛�");
+                    return R.error("鎻掑叆骞冲簱鐗╂枡澶辫触锛�");
                 }
             } else {
-                if(manLocDetlService.increase(checkManLocDetl.getAnfme() + jsonOrderDetl.getAnfme(), jsonOrderDetl.getOrderNo(), jsonOrderDetl.getMaktx(), jsonOrderDetl.getBatch())<=0){
+                  if (checkManLocDetl.getWeight() == null){
+                      checkManLocDetl.setWeight(0.0);
+                  }
+                if(manLocDetlService.increase(checkManLocDetl.getAnfme() + jsonOrderDetl.getAnfme(),
+                        node.getName(),
+                        jsonOrderDetl.getMatnr(),
+                        jsonOrderDetl.getBatch(),checkManLocDetl.getWeight()+jsonOrderDetl.getWeight()
+                        )<=0
+                        ){
                     return R.error("淇敼骞冲簱鐗╂枡澶辫触锛�");
                 }
+
             }
             orderDetl.setQty(orderDetl.getQty() + jsonOrderDetl.getAnfme());
             orderDetl.setWorkQty(orderDetl.getWorkQty() + jsonOrderDetl.getAnfme());
@@ -647,12 +659,18 @@
                 return R.error("鍑哄簱鏁伴噺澶т簬鍙嚭鏁伴噺");
             }
             Double finalQty = checkManLocDetl.getAnfme() - jsonOrderDetl.getAnfme();
+            Double weight = checkManLocDetl.getWeight() - jsonOrderDetl.getWeight();
+            checkManLocDetl.setAnfme(finalQty);
+            checkManLocDetl.setWeight(weight);
+            if (weight < 0){
+                return R.error("鍑哄簱閲嶉噺鏈夎锛�");
+            }
             if (finalQty < 0){
                 //  if(manLocDetlService.deleteDatailed(jsonLocNo, jsonOrderDetl.getMatnr(), jsonOrderDetl.getBatch())<=0) {
                 return R.error("鏁伴噺鏈夎锛�");
                 //   }
             }else {
-                if(manLocDetlService.increase(finalQty, jsonLocNo, jsonOrderDetl.getMatnr(), jsonOrderDetl.getBatch())<=0){
+                if(manLocDetlService.increase(finalQty, jsonLocNo, jsonOrderDetl.getMatnr(), jsonOrderDetl.getBatch(),weight)<=0){
                     return R.error("淇敼骞冲簱鐗╂枡澶辫触锛�");
                 }
             }
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 26091f2..9dae5c9 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -416,6 +416,89 @@
             and maktx like '%' + #{maktx} + '%';
         </if>
     </select>
+    <select id="queryStock2" resultMap="BaseResultMap">
+        select a.*
+        from asr_loc_detl_merge a
+        left join asr_loc_detl_F_view b on a.loc_no = b.loc_no
+        where 1=1
+        and b.loc_sts = 'F'
+        and a.matnr = #{matnr}
+        and a.payment = 1
+        <!--        <choose>-->
+        <!--            <when test="batch != null and batch != ''">-->
+        <!--                and a.batch = #{batch}-->
+        <!--            </when>-->
+        <!--            <otherwise>-->
+        <!--                and (a.batch IS NULL OR a.batch = '')-->
+        <!--            </otherwise>-->
+        <!--        </choose>-->
+
+        <choose>
+            <when test="owner != null and owner !=0">
+                and a.owner = #{owner}
+            </when>
+            <otherwise>
+                and 1!=1
+            </otherwise>
+        </choose>
+
+        order by
+        DATEPART(yyyy,a.modi_time),DATEPART(mm,a.modi_time),DATEPART(dd,a.modi_time), a.anfme
+        desc,
+        NEWID(),
+        case
+        when (left(a.loc_no, 2) = '01') then 0
+        when (left(a.loc_no, 2) = '02') then 1
+        when (left(a.loc_no, 2) = '03') then 1
+        when (left(a.loc_no, 2) = '04') then 0
+        when (left(a.loc_no, 2) = '05') then 0
+        when (left(a.loc_no, 2) = '06') then 1
+        when (left(a.loc_no, 2) = '07') then 1
+        when (left(a.loc_no, 2) = '08') then 0
+        when (left(a.loc_no, 2) = '09') then 0
+        when (left(a.loc_no, 2) = '10') then 1
+        when (left(a.loc_no, 2) = '11') then 1
+        when (left(a.loc_no, 2) = '12') then 0
+        when (left(a.loc_no, 2) = '13') then 0
+        when (left(a.loc_no, 2) = '14') then 1
+        when (left(a.loc_no, 2) = '15') then 1
+        when (left(a.loc_no, 2) = '16') then 0
+        when (left(a.loc_no, 2) = '17') then 0
+        when (left(a.loc_no, 2) = '18') then 1
+        when (left(a.loc_no, 2) = '19') then 1
+        when (left(a.loc_no, 2) = '20') then 0
+        when (left(a.loc_no, 2) = '21') then 0
+        when (left(a.loc_no, 2) = '22') then 1
+        when (left(a.loc_no, 2) = '23') then 1
+        when (left(a.loc_no, 2) = '24') then 0
+        when (left(a.loc_no, 2) = '25') then 0
+        when (left(a.loc_no, 2) = '26') then 1
+        when (left(a.loc_no, 2) = '27') then 1
+        when (left(a.loc_no, 2) = '28') then 0
+        when (left(a.loc_no, 2) = '29') then 0
+        when (left(a.loc_no, 2) = '30') then 1
+        when (left(a.loc_no, 2) = '31') then 1
+        when (left(a.loc_no, 2) = '32') then 0
+        when (left(a.loc_no, 2) = '33') then 0
+        when (left(a.loc_no, 2) = '34') then 1
+        when (left(a.loc_no, 2) = '35') then 1
+        when (left(a.loc_no, 2) = '36') then 0
+        when (left(a.loc_no, 2) = '37') then 0
+        when (left(a.loc_no, 2) = '38') then 1
+        when (left(a.loc_no, 2) = '39') then 1
+        when (left(a.loc_no, 2) = '40') then 0
+        when (left(a.loc_no, 2) = '41') then 0
+        when (left(a.loc_no, 2) = '42') then 1
+        when (left(a.loc_no, 2) = '43') then 1
+        when (left(a.loc_no, 2) = '44') then 0
+        when (left(a.loc_no, 2) = '45') then 0
+        when (left(a.loc_no, 2) = '46') then 1
+        when (left(a.loc_no, 2) = '47') then 1
+        when (left(a.loc_no, 2) = '48') then 0
+        else 0
+        end
+        desc
+    </select>
 
 
 </mapper>
diff --git a/src/main/resources/mapper/ManLocDetlMapper.xml b/src/main/resources/mapper/ManLocDetlMapper.xml
index 9f6e127..94ae591 100644
--- a/src/main/resources/mapper/ManLocDetlMapper.xml
+++ b/src/main/resources/mapper/ManLocDetlMapper.xml
@@ -359,17 +359,18 @@
         update man_loc_detl
         set  anfme= #{anfme}
         , modi_time = getdate()
+        ,weight=#{weight}
         where 1=1
         and loc_no = #{locNo}
         and matnr = #{matnr}
-        <choose>
-            <when test="batch != null and batch!=''  ">
-                and maktx = #{batch}
-            </when>
-            <otherwise>
-                and (batch IS NULL OR batch = '')
-            </otherwise>
-        </choose>
+<!--        <choose>-->
+<!--            <when test="batch != null and batch!=''  ">-->
+<!--                and batch = #{batch}-->
+<!--            </when>-->
+<!--            <otherwise>-->
+<!--                and (batch IS NULL OR batch = '')-->
+<!--            </otherwise>-->
+<!--        </choose>-->
     </update>
 
 </mapper>
diff --git a/src/main/webapp/static/js/manLocDetl/manLocDetl.js b/src/main/webapp/static/js/manLocDetl/manLocDetl.js
index 6a7c918..6e77b6f 100644
--- a/src/main/webapp/static/js/manLocDetl/manLocDetl.js
+++ b/src/main/webapp/static/js/manLocDetl/manLocDetl.js
@@ -6,7 +6,7 @@
         ,{field: 'maktx', align: 'center',title: '鍟嗗搧鍚嶇О', sort:true}
         ,{field: 'orderNo', align: 'center',title: '鍗曟嵁缂栧彿', hide: true}
         ,{field: 'specs', align: 'center',title: '瑙勬牸'}
-        ,{field: 'weight', align: 'center',title: '鍗曠鍑�閲�', hide: false}
+        ,{field: 'weight', align: 'center',title: '搴撲綅鎬婚噸閲�', hide: false}
 
         ,{field: 'batch', align: 'center',title: '鎵瑰彿', width: 300, sort:true, hide: true}
         ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
diff --git a/src/main/webapp/views/home/map.html b/src/main/webapp/views/home/map.html
index 49ffc1e..4a1c26c 100644
--- a/src/main/webapp/views/home/map.html
+++ b/src/main/webapp/views/home/map.html
@@ -102,7 +102,7 @@
         }
 
         .pointBoxDefault {
-            background: #f9f4dc;
+            background: #ffffff;
         }
 
         .pointBoxSelected {
@@ -552,20 +552,16 @@
                     <p class="text-title" style="text-align: center;">搴撳尯 {{areaName}}</p>
                     <div class="text-body" style="display: flex;">
                         <div class="floorSelect">
-                            <label for="area01">绔嬪簱</label>
+                            <label for="area01">A鍖�</label>
                             <input id="area01" type="radio" name="r" v-model="area" value="1" checked="">
-                            <label for="area03">骞冲簱B鍖�</label>
+                            <label for="area03">B鍖�</label>
                             <input id="area03" type="radio" v-model="area" name="r" value="3">
-                            <label for="area032">骞冲簱B鍖�2灞�</label>
-                            <input id="area032" type="radio" v-model="area" name="r" value="32">
-                            <label for="area04">骞冲簱C鍖�</label>
+                            <label for="area04">C鍖�</label>
                             <input id="area04" type="radio" v-model="area" name="r" value="4">
-                            <label for="area042">骞冲簱C鍖�2灞�</label>
-                            <input id="area042" type="radio" v-model="area" name="r" value="42">
-                            <label for="area05">骞冲簱D鍖�</label>
+                            <label for="area05">D鍖�</label>
                             <input id="area05" type="radio" v-model="area" name="r" value="5">
-                            <label for="area052">骞冲簱D鍖�2灞�</label>
-                            <input id="area052" type="radio" v-model="area" name="r" value="52">
+                            <label for="area06">E鍖�</label>
+                            <input id="area06" type="radio" v-model="area" name="r" value="6">
 
                         </div>
                     </div>
@@ -756,7 +752,7 @@
                 deep: true,
                 handler(val) {
                     if (val == 1){
-                        this.areaName = "绔嬪簱"
+                        this.areaName = "A鍖�"
 
                     }else if (val == 3){
                         this.areaName = "B鍖�"
@@ -767,14 +763,8 @@
                     else if (val == 5){
                         this.areaName = "D鍖�"
                     }
-                    else if (val == 32){
-                        this.areaName = "B鍖�2灞�"
-                    }
-                    else if (val == 42){
-                        this.areaName = "C鍖�2灞�"
-                    }
-                    else if (val == 52){
-                        this.areaName = "D鍖�2灞�"
+                    else if (val == 6){
+                        this.areaName = "E鍖�"
                     }
 
 

--
Gitblit v1.9.1