From 4478d33ff79360c804f8bcad41384d5a4e040991 Mon Sep 17 00:00:00 2001
From: whycq <913841844@qq.com>
Date: 星期日, 28 四月 2024 21:52:52 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/controller/OrderController.java         |   47 +++++++++++++++
 src/main/java/com/zy/asrs/entity/AgvLocDetl.java                  |   14 ++++
 src/main/java/com/zy/asrs/controller/AgvMobileController.java     |    6 ++
 src/main/webapp/static/js/order/order.js                          |   48 ++++++++++++++++
 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java    |    2 
 src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java |    4 
 src/main/java/com/zy/asrs/service/AgvLocMastService.java          |    2 
 src/main/webapp/views/order/order.html                            |    4 +
 8 files changed, 123 insertions(+), 4 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/AgvMobileController.java b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
index b72ee5f..702995d 100644
--- a/src/main/java/com/zy/asrs/controller/AgvMobileController.java
+++ b/src/main/java/com/zy/asrs/controller/AgvMobileController.java
@@ -193,6 +193,12 @@
 
         List<AgvLocDetl> agvLocDetls = agvLocDetlService.selectList(wrapper);
 
+        for (AgvLocDetl agvLocDetl : agvLocDetls) {
+            AgvLocMast locNo = agvLocMastService.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_no", agvLocDetl.getLocNo()));
+            agvLocDetl.setLocSts(locNo.getLocSts());
+            agvLocDetl.setLocSts$(locNo.getLocSts$());
+        }
+
         return R.ok(agvLocDetls);
     }
 
diff --git a/src/main/java/com/zy/asrs/controller/OrderController.java b/src/main/java/com/zy/asrs/controller/OrderController.java
index 3648a67..cab72f4 100644
--- a/src/main/java/com/zy/asrs/controller/OrderController.java
+++ b/src/main/java/com/zy/asrs/controller/OrderController.java
@@ -596,4 +596,51 @@
         return R.ok("瀵煎叆鎴愬姛");
     }
 
+    /**
+     * excel瀵煎叆
+     */
+    @PostMapping(value = "/order/excel/import2/auth")
+    @ManagerAuth(memo = "閿�鍞崟Excel瀵煎叆")
+    @Transactional
+    public R cstmrExcelImport2(MultipartFile file) throws IOException {
+        InputStream inStream = file.getInputStream();
+        String fileMime = file.getContentType();
+        int excelVersion = 2007;
+        if ("application/vnd.ms-excel".equals(fileMime)) {
+            excelVersion = 2003;
+        }
+        Workbook book = null;
+        try {
+            if (excelVersion == 2003) {
+                book = new HSSFWorkbook(inStream);
+            }
+            else {  // 褰� excel 鏄� 2007 鏃�
+                book = new XSSFWorkbook(inStream);
+            }
+        } catch (Exception e) {
+            log.error("fail", e);
+            return R.error("瀵煎叆鏂囦欢鏍煎紡閿欒锛岃浣跨敤xls鍚庣紑鐨勬枃浠讹紒");
+        }
+
+        Sheet sheet = book.getSheetAt(0);
+        int totalRows = sheet.getLastRowNum() + 1;    // 鎬�
+        DataFormatter dataFormatter = new DataFormatter();
+        List<String> strs = new ArrayList<>();
+        for (int i = 1; i < totalRows; i++) {
+            Row row = sheet.getRow(i);
+            //鍗曟嵁绫诲瀷
+            String docName =  dataFormatter.formatCellValue(row.getCell(0));
+            //鍗曟嵁缂栧彿
+            String uuid = dataFormatter.formatCellValue(row.getCell(1));
+            //鐗╂枡鍙�
+            String matnr = dataFormatter.formatCellValue(row.getCell(2));
+            Mat mat = matService.selectByMatnr(matnr);
+            if (null == mat) {
+                strs.add(matnr);
+//                throw new CoolException(matnr + "鍟嗗搧缂栫爜鐨勫晢鍝佷笉瀛樺湪锛岃妫�鏌ワ紒");
+            }
+        }
+        return R.ok("瀵煎叆鎴愬姛").add(strs);
+    }
+
 }
diff --git a/src/main/java/com/zy/asrs/entity/AgvLocDetl.java b/src/main/java/com/zy/asrs/entity/AgvLocDetl.java
index d130781..54d1993 100644
--- a/src/main/java/com/zy/asrs/entity/AgvLocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/AgvLocDetl.java
@@ -168,6 +168,20 @@
     @TableField(exist = false)
     private Double stock;
 
+    /**
+     * 搴撳瓨鏁伴噺
+     */
+    @ApiModelProperty(value= "鍙嚭鏁伴噺")
+    @TableField(exist = false)
+    private String locSts;
+
+    /**
+     * 搴撳瓨鏁伴噺
+     */
+    @ApiModelProperty(value= "鍙嚭鏁伴噺")
+    @TableField(exist = false)
+    private String locSts$;
+
     public String getLocNo$(){
         LocMastService service = SpringUtils.getBean(LocMastService.class);
         LocMast locMast = service.selectById(this.locNo);
diff --git a/src/main/java/com/zy/asrs/service/AgvLocMastService.java b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
index d2a0db2..a926c6c 100644
--- a/src/main/java/com/zy/asrs/service/AgvLocMastService.java
+++ b/src/main/java/com/zy/asrs/service/AgvLocMastService.java
@@ -26,7 +26,7 @@
 
     List<AgvLocMast> selectLocByLevAndFloor(int lev, int floor);
 
-    AgvLocMast selectEmptyZpallet(int type);
+    AgvLocMast selectEmptyZpallet(int type, int floor);
 
     AgvLocMast selectEmptyZpalletByLocType1(int type);
 
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
index fa0dad3..3e4ee35 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvLocMastServiceImpl.java
@@ -313,9 +313,9 @@
     }
 
     @Override
-    public AgvLocMast selectEmptyZpallet(int type) {
+    public AgvLocMast selectEmptyZpallet(int type, int floor) {
 
-        return this.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_sts","D").eq("loc_type2",type));
+        return this.selectOne(new EntityWrapper<AgvLocMast>().eq("loc_sts","D").eq("loc_type2",type).eq("floor",floor));
 
     }
 
diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
index 65a5db0..2be82e0 100644
--- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java
@@ -391,7 +391,7 @@
         }
 
         //瀵绘壘鐩稿簲绫诲瀷鐨勭┖鎵樼洏
-        AgvLocMast agvLocMast = agvLocMastService.selectEmptyZpallet(containerType);
+        AgvLocMast agvLocMast = agvLocMastService.selectEmptyZpallet(containerType,agvBasDevp.getFloor());
         if(containerType == 0){
             //绌烘澘鑷姩鍑哄簱锛屾牴鎹珯鐐圭被鍨嬮�夋嫨
             agvLocMastService.selectEmptyZpalletByLocType1(agvBasDevp.getLocType1());
diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js
index c25652e..159fa28 100644
--- a/src/main/webapp/static/js/order/order.js
+++ b/src/main/webapp/static/js/order/order.js
@@ -100,6 +100,10 @@
         $("#importExcel").trigger("click");
     });
 
+     $("#orderCheckBtn").click(function () {
+            $("#importExcel2").trigger("click");
+        });
+
     // 宸ュ叿鏉$偣鍑讳簨浠�
     table.on('tool(order)', function (obj) {
         var data = obj.data;
@@ -629,3 +633,47 @@
     alert(res.msg);
     // layer.msg(res.msg, {icon: 2});
 }
+
+
+function upload2(obj){
+    if(!obj.files) {
+        return;
+    }
+    var file = obj.files[0];
+    admin.confirm('纭瀵煎叆 [' + file.name +'] 鏂囦欢鍚楋紵', function (index) {
+            layer.load(1, {shade: [0.1,'#fff']});
+            var url = baseUrl + "/order/excel/import2/auth";
+            var form = new FormData();
+            form.append("file", file);
+            let xhr = new XMLHttpRequest();
+            xhr.open("post", url, true);
+            xhr.setRequestHeader('token', localStorage.getItem('token'));
+            xhr.onload = uploadComplete;
+            xhr.onerror =  uploadFailed;
+            xhr.onloadend = function () {
+                layer.closeAll('loading');
+            };
+            // xhr.upload.onprogress = progressFunction;
+            xhr.upload.onloadstart = function(){
+                ot = new Date().getTime();
+                oloaded = 0;
+            };
+            xhr.send(form);
+        }, function(index){
+        });
+}
+function uploadComplete(evt) {
+    let res = JSON.parse(evt.target.responseText);
+    if(res.code === 200) {
+        layer.msg(res.msg, {icon: 1});
+        insTb.reload({page: {curr: 1}});
+    } else {
+        alert(res.msg);
+        // layer.msg(res.msg, {icon: 2});
+    }
+}
+function uploadFailed(evt) {
+    let res = JSON.parse(evt.target.responseText);
+    alert(res.msg);
+    // layer.msg(res.msg, {icon: 2});
+}
diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html
index b46e4f1..deb7c67 100644
--- a/src/main/webapp/views/order/order.html
+++ b/src/main/webapp/views/order/order.html
@@ -86,7 +86,11 @@
                         <button id="importOrder" class="layui-btn icon-btn btn-add">
                             <i class="layui-icon layui-icon-upload"></i>&nbsp;瀵煎叆鍗曟嵁
                         </button>
+                        <button id="orderCheckBtn" class="layui-btn icon-btn btn-add">
+                            <i class="layui-icon">&#xe654;</i>娣诲姞
+                        </button>
                         <input style="display:none" id="importExcel" type="file" onchange="upload(this)" >
+                        <input style="display:none" id="importExcel2" type="file" onchange="upload2(this)" >
                     </div>
                 </div>
             </div>

--
Gitblit v1.9.1