From ce697013e8b5d43bffafc3f3e4500c62316917b5 Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期六, 26 十月 2024 14:22:34 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java   |   26 ++++++
 src/main/webapp/static/js/orderGift/orderGift.js                     |   67 ++++++++++++++++
 src/main/java/com/zy/asrs/controller/MatController.java              |   29 +++++++
 src/main/webapp/views/orderGift/orderGift.html                       |   50 ++++++------
 src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java |   42 ++++++++++
 5 files changed, 190 insertions(+), 24 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/MatController.java b/src/main/java/com/zy/asrs/controller/MatController.java
index 9eb5a6a..8c5b4e6 100644
--- a/src/main/java/com/zy/asrs/controller/MatController.java
+++ b/src/main/java/com/zy/asrs/controller/MatController.java
@@ -22,6 +22,7 @@
 import com.zy.common.CodeRes;
 import com.zy.common.config.AdminInterceptor;
 import com.zy.common.entity.MatExcel;
+import com.zy.common.entity.OrderGiftProofreadingExcel;
 import com.zy.common.entity.OutLocBoxExcel;
 import com.zy.common.entity.pandianExcel;
 import com.zy.common.utils.BarcodeUtils;
@@ -394,4 +395,32 @@
     /*************************************** xm-select ***********************************************/
 
 
+    /*********************************************鏍稿瀵煎叆瀵煎嚭****************************************************************/
+    /**
+     * excel瀵煎叆妯℃澘涓嬭浇
+     */
+    @RequestMapping(value = "/out/order/gift/excel/import/mould")
+    public void outLocBoxExcelImportMould2(HttpServletResponse response) throws IOException {
+        List<OrderGiftProofreadingExcel> excels = new ArrayList<>();
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("utf-8");
+        String fileName = URLEncoder.encode("瀵煎叆鏍″妯℃澘", "UTF-8");
+        response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+        EasyExcel.write(response.getOutputStream(), OrderGiftProofreadingExcel.class)
+                .registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
+                .sheet("鏍″妯℃澘")
+                .doWrite(excels);
+    }
+
+    // excel瀵煎叆
+    @PostMapping(value = "/out/order/gift/excel/import/auth")
+    @ManagerAuth(memo = "瀵煎叆鏍″璁㈠崟")
+    @Transactional
+    public R outLocBoxExcelImport2(MultipartFile file) throws IOException {
+        OutpandianBoxExeclListener listener = new OutpandianBoxExeclListener(getUserId());
+        EasyExcel.read(file.getInputStream(), OrderGiftProofreadingExcel.class, listener).sheet().doRead();
+        return R.ok("鎴愬姛瀵煎叆"+listener.getTotal()+"鏉℃牎瀵硅鍗曟槑缁�");
+    }
+
+    /*************************************** xm-select ***********************************************/
 }
diff --git a/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java b/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java
new file mode 100644
index 0000000..a53f304
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java
@@ -0,0 +1,42 @@
+package com.zy.asrs.entity.result;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import lombok.Data;
+
+/**
+ * Created by vincent on 2021/4/13
+ */
+@Data
+public class OrderGiftProofreadingVo {
+
+    @ExcelProperty(value = "璁㈠崟鍙�")
+    private String orderNo;
+    @ExcelProperty(value = "瑙勬牸")
+    private String matnr;
+    @ExcelProperty(value = "绠卞彿")
+    private String batch;
+    @ExcelProperty(value = "鍗峰彿")
+    private String model="";
+    @ExcelProperty(value = "闀垮害")
+    private String price="";
+    @ExcelProperty(value = "鍑�閲�")
+    private String weight="";
+    @ExcelProperty(value = "姣涢噸")
+    private String volume="";
+    @ExcelProperty(value = "澶囨敞")
+    private String memo="";
+
+    public OrderGiftProofreadingVo() {
+    }
+
+    public OrderGiftProofreadingVo(String orderNo, String matnr, String batch, String model, String price, String weight, String volume, String memo) {
+        this.orderNo = orderNo;
+        this.matnr = matnr;
+        this.batch = batch;
+        this.model = model;
+        this.price = price;
+        this.weight = weight;
+        this.volume = volume;
+        this.memo = memo;
+    }
+}
diff --git a/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java b/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java
new file mode 100644
index 0000000..99b2ae8
--- /dev/null
+++ b/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java
@@ -0,0 +1,26 @@
+package com.zy.common.entity;
+
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.zy.asrs.entity.result.OrderGiftProofreadingVo;
+import lombok.Data;
+
+/**
+ * 0.A 1.B 2.C 3.D 4.E 5.F 6.G 7.H 8.I
+ * 9.J 10.K 11.L 12.M 13.N 14.O 15.P 16.Q 17.R 18.S
+ * 19.T 20.U 21.V 22.W 23.X 24.Y 25.Z
+ */
+@Data
+@ExcelIgnoreUnannotated
+public class OrderGiftProofreadingExcel extends OrderGiftProofreadingVo {
+
+    private String orderNo;
+    private String matnr;
+    private String batch;
+    private String model;
+    private String price;
+    private String weight;
+    private String volume;
+    private String memo;
+
+}
diff --git a/src/main/webapp/static/js/orderGift/orderGift.js b/src/main/webapp/static/js/orderGift/orderGift.js
index 944a632..69d6a12 100644
--- a/src/main/webapp/static/js/orderGift/orderGift.js
+++ b/src/main/webapp/static/js/orderGift/orderGift.js
@@ -160,6 +160,17 @@
         showEditModel();
     });
 
+    // 瀵煎叆妯℃澘
+    $("#orderAddExcel").click(function () {
+        importExcel();
+    });
+
+    // 瀵煎叆妯℃澘涓嬭浇
+    $("#orderAddExcelDownload").click(function () {
+        excelMouldDownload();
+    });
+
+
     // 宸ュ叿鏉$偣鍑讳簨浠�
     table.on('tool(order)', function (obj) {
         var data = obj.data;
@@ -869,3 +880,59 @@
         });
     }
 });
+
+
+// excel瀵煎叆妯℃澘涓嬭浇
+function excelMouldDownload(){
+    layer.load(1, {shade: [0.1,'#fff']});
+    location.href = baseUrl + "/out/order/gift/excel/import/mould";
+    layer.closeAll('loading');
+}
+
+// excel瀵煎叆
+function importExcel() {
+    console.log("瀵煎叆")
+    $("#importExcel").trigger("click");
+}
+function upload(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 + "/out/order/gift/excel/import/auth";
+        var form = new FormData();
+        form.append("file", file);
+        xhr = new XMLHttpRequest();
+        xhr.open("post", url, true); //post鏂瑰紡锛寀rl涓烘湇鍔″櫒璇锋眰鍦板潃锛宼rue 璇ュ弬鏁拌瀹氳姹傛槸鍚﹀紓姝ュ鐞嗐��
+        xhr.setRequestHeader('token', localStorage.getItem('token'));
+        xhr.onload = uploadComplete; //璇锋眰瀹屾垚
+        xhr.onerror =  uploadFailed; //璇锋眰澶辫触
+        xhr.onloadend = function () { // // 涓婁紶瀹屾垚閲嶇疆鏂囦欢娴�
+            layer.closeAll('loading');
+            $("#importExcel").val("");
+        };
+        // xhr.upload.onprogress = progressFunction;//銆愪笂浼犺繘搴﹁皟鐢ㄦ柟娉曞疄鐜般��
+        xhr.upload.onloadstart = function(){//涓婁紶寮�濮嬫墽琛屾柟娉�
+            ot = new Date().getTime();   //璁剧疆涓婁紶寮�濮嬫椂闂�
+            oloaded = 0;//璁剧疆涓婁紶寮�濮嬫椂锛屼互涓婁紶鐨勬枃浠跺ぇ灏忎负0
+        };
+        xhr.send(form);
+    }, function(index){
+        $("#importExcel").val("");
+    });
+}
+function uploadComplete(evt) {
+    var res = JSON.parse(evt.target.responseText);
+    if(res.code === 200) {
+        layer.msg(res.msg, {icon: 1});
+        loadTree("");
+    } else {
+        layer.msg(res.msg, {icon: 2});
+    }
+}
+function uploadFailed(evt) {
+    var res = JSON.parse(evt.target.responseText);
+    layer.msg(res.msg, {icon: 2});
+}
diff --git a/src/main/webapp/views/orderGift/orderGift.html b/src/main/webapp/views/orderGift/orderGift.html
index b31aaf3..834f3f6 100644
--- a/src/main/webapp/views/orderGift/orderGift.html
+++ b/src/main/webapp/views/orderGift/orderGift.html
@@ -54,34 +54,36 @@
                             <input name="order_no" class="layui-input" type="text" placeholder="杈撳叆鍗曟嵁缂栧彿"/>
                         </div>
                     </div>
-                    <div class="layui-inline" style="width: 300px">
-                        <div class="layui-input-inline">
-                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">
-                        </div>
-                    </div>
-                    <div class="layui-inline">
-                        <div class="layui-input-inline">
-                            <select name="doc_type" id="docType-query">
-                            </select>
-                        </div>
-                    </div>
-                    <div class="layui-inline">
-                        <div class="layui-input-inline">
-                            <select name="settle">
-                                <option value="">閫夋嫨鐘舵��</option>
-                                <option value="1">寰呭鐞�</option>
-                                <option value="2">浣滀笟涓�</option>
-                                <option value="4">宸插畬鎴�</option>
-                                <option value="6">涓婃姤瀹屾垚</option>
-                            </select>
-                        </div>
-                    </div>
+<!--                    <div class="layui-inline" style="width: 300px">-->
+<!--                        <div class="layui-input-inline">-->
+<!--                            <input class="layui-input layui-laydate-range" name="create_time" type="text" placeholder="璧峰鏃堕棿 - 缁堟鏃堕棿" autocomplete="off" style="width: 300px">-->
+<!--                        </div>-->
+<!--                    </div>-->
+<!--                    <div class="layui-inline">-->
+<!--                        <div class="layui-input-inline">-->
+<!--                            <select name="doc_type" id="docType-query">-->
+<!--                            </select>-->
+<!--                        </div>-->
+<!--                    </div>-->
+<!--                    <div class="layui-inline">-->
+<!--                        <div class="layui-input-inline">-->
+<!--                            <select name="settle">-->
+<!--                                <option value="">閫夋嫨鐘舵��</option>-->
+<!--                                <option value="1">寰呭鐞�</option>-->
+<!--                                <option value="2">浣滀笟涓�</option>-->
+<!--                                <option value="4">宸插畬鎴�</option>-->
+<!--                                <option value="6">涓婃姤瀹屾垚</option>-->
+<!--                            </select>-->
+<!--                        </div>-->
+<!--                    </div>-->
                     <div class="layui-inline">
                         <button class="layui-btn icon-btn" lay-filter="tbSearch" lay-submit>
                             <i class="layui-icon">&#xe615;</i>鎼滅储
                         </button>
-<!--                        <button id="orderAddBtn" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>娣诲姞-->
-<!--                        </button>-->
+                        <button id="orderAddExcel" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>瀵煎叆鏁版嵁
+                        </button>
+                        <button id="orderAddExcelDownload" class="layui-btn icon-btn btn-add"><i class="layui-icon">&#xe654;</i>瀵煎叆妯℃澘涓嬭浇
+                        </button>
                     </div>
                 </div>
             </div>

--
Gitblit v1.9.1