From 804bea41b340cb04ac57e8fbdeb2d54938a80a5a Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期二, 04 七月 2023 19:12:50 +0800
Subject: [PATCH] 提交出入库化验--扫码功能

---
 igds-web/src/main/resources/static/admin/inout/in-check.js |  275 ++++++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 190 insertions(+), 85 deletions(-)

diff --git a/igds-web/src/main/resources/static/admin/inout/in-check.js b/igds-web/src/main/resources/static/admin/inout/in-check.js
index 39ab7d8..a0dc3e9 100644
--- a/igds-web/src/main/resources/static/admin/inout/in-check.js
+++ b/igds-web/src/main/resources/static/admin/inout/in-check.js
@@ -3,6 +3,7 @@
 var laydate;
 var form;
 var table;
+var scanCodeTag = false;
 var page = 1;
 var limit = 10;
 var curCheckData = null;// 褰撳墠缂栬緫鏁版嵁
@@ -41,9 +42,9 @@
         table.on('tool(tableData)', function (obj) {
             if (obj.event === 'edit') {
                 //鏇存柊浠撳簱涓嬫媺鍒楄〃
-                updateSelect(obj);
+                updateSelect();
                 //灞曠ず鏁版嵁
-                showDetail(obj);
+                showDetail(obj.data);
             }
         });
 
@@ -75,7 +76,7 @@
 function socketOnMessage(packet) {
     layer.alert(packet.data);
     window.parent.sysNotify(packet.data);
-};
+}
 
 //鎺у埗娴佺▼鐜妭鏄剧ず
 function showProgress() {
@@ -141,9 +142,8 @@
 }
 
 //鍔ㄦ�佹洿鎹粨搴撲笅鎷夊垪琛�
-function updateSelect(obj) {
+function updateSelect() {
     $('#depotId option').remove();
-    var dat = obj.data;
     for (var i = 0; i < listDepot.length; i++) {
         $('#depotId').append('<option value="' + listDepot[i].id + '">' + listDepot[i].name + '</option>');
     }
@@ -330,81 +330,6 @@
     return str.slice(0, 1) + "***" + str.slice(split.length - 1);
 }
 
-function showDetail(obj) {
-    curCheckData = obj.data;
-
-    curSampleData = obj.data;
-    if (!curCheckData.checkTime) {
-        curCheckData.checkTime = dateFtt("yyyy-MM-dd hh:mm:ss", new Date());
-    }
-    curCheckData.checkUser = checkUser;
-
-    // 璧嬪��
-    form.val("form-detail", curCheckData);
-    form.render();
-
-    layer.open({
-        type: 1,
-        title: "鍖栭獙鍗曟槑缁�",
-        area: ['1400px', '700px'],
-        shade: 0,
-        content: $('#checkDetail'),
-        btnAlign: 'c',
-        btn: ['淇濆瓨鎻愪氦', '鍏抽棴鍙栨秷'],
-        yes: function () {
-            // 鏇存柊鍒伴〉闈�
-            var data = form.val("form-detail");
-            obj.update(data);
-            // 鍚堝苟鏇存柊鐣跺墠缂栬緫鏁版嵁
-            Object.assign(curCheckData, data);
-
-            submit();
-        }, btn2: function () {
-            layer.closeAll();
-        },
-        closeBtn: 0
-    });
-
-    // 鑾峰彇鍖栭獙椤逛俊鎭�
-    flushCheckItem(curCheckData.foodVariety);
-    getPriceByFoodLevel(curCheckData.foodLevel);
-}
-
-/**
- * 鍒锋柊鍖栭獙缁撴灉椤�
- */
-function flushCheckItem(foodVariety) {
-    curCheckItems = null;
-    $("#check-result-tip").text("妫�楠岀粨鏋滐細#");
-    $("#price-result-tip2").text("绮瀹氫环锛�#鍏�/鍏枻");
-    curCheckData.foodVariety = foodVariety;
-
-    var index = layer.load();
-    $.ajax({
-        type: "POST",
-        url: "../../basic/inout/get-check-item",
-        dataType: "json",
-        contentType: "application/json;charset=UTF-8",
-        data: JSON.stringify(curCheckData),
-        success: function (result) {
-            if (result.code != "0000") {
-                layer.msg(result.msg);
-            } else {
-                curCheckItems = result.data;
-                // 鏍规嵁鍖栭獙缁撴灉鎻愰啋鏄惁鍚堟牸
-                updateCheckResultTip();
-                // 椤甸潰娓叉煋妫�娴嬮」
-                renderTableCheckItem();
-                layer.close(index);
-            }
-        },
-        error: function () {
-            layer.close(index);
-            layer.msg("鍚庡彴寮傚父锛岃閲嶈瘯鎴栬�呰仈绯荤鐞嗗憳锛侊紒");
-        }
-    });
-};
-
 // 鏇存柊鍖栭獙缁撴灉鎻愰啋锛屽彧鍋氭彁閱掞紝涓嶅仛鑷姩鍒ゆ柇
 function updateCheckResultTip() {
     if (!curCheckItems || curCheckItems.length == 0) {
@@ -518,10 +443,129 @@
         "border-bottom": "2px solid #53adce",
         "background": "#eff4f6"
     });
+}
+
+function showDetail(data) {
+    curCheckData = data;
+
+    if (!curCheckData.checkTime) {
+        curCheckData.checkTime = dateFtt("yyyy-MM-dd hh:mm:ss", new Date());
+    }
+    curCheckData.checkUser = checkUser;
+
+    // 璧嬪��
+    form.val("form-detail", curCheckData);
+    form.render();
+
+    layer.open({
+        type: 1,
+        title: "鍖栭獙鍗曟槑缁�",
+        area: ['1400px', '700px'],
+        shade: 0,
+        content: $('#checkDetail'),
+        btnAlign: 'c',
+        btn: ['浠呬繚瀛�', '淇濆瓨鎻愪氦','鍏抽棴鍙栨秷'],
+        yes: function () {
+            // 鏇存柊鍒伴〉闈�
+            var data = form.val("form-detail");
+            // 鍚堝苟鏇存柊鐣跺墠缂栬緫鏁版嵁
+            Object.assign(curCheckData, data);
+            saveCheckData();
+            if(scanCodeTag){
+                showScanCode();
+            }
+        }, btn2: function () {
+            // 鏇存柊鍒伴〉闈�
+            var data = form.val("form-detail");
+            // 鍚堝苟鏇存柊鐣跺墠缂栬緫鏁版嵁
+            Object.assign(curCheckData, data);
+            submit();
+            if(scanCodeTag){
+                showScanCode();
+            }
+        }, btn3: function () {
+            parent.layer.closeAll();
+            if(scanCodeTag){
+                showScanCode();
+            }
+        },
+        closeBtn: 0
+    });
+
+    // 鑾峰彇鍖栭獙椤逛俊鎭�
+    flushCheckItem(curCheckData.foodVariety);
+    getPriceByFoodLevel(curCheckData.foodLevel);
+}
+
+/**
+ * 鍒锋柊鍖栭獙缁撴灉椤�
+ */
+function flushCheckItem(foodVariety) {
+    curCheckItems = null;
+    $("#check-result-tip").text("妫�楠岀粨鏋滐細#");
+    $("#price-result-tip2").text("绮瀹氫环锛�#鍏�/鍏枻");
+    curCheckData.foodVariety = foodVariety;
+
+    var index = layer.load();
+    $.ajax({
+        type: "POST",
+        url: "../../basic/inout/get-check-item",
+        dataType: "json",
+        contentType: "application/json;charset=UTF-8",
+        data: JSON.stringify(curCheckData),
+        success: function (result) {
+            if (result.code != "0000") {
+                layer.msg(result.msg);
+            } else {
+                curCheckItems = result.data;
+                // 鏍规嵁鍖栭獙缁撴灉鎻愰啋鏄惁鍚堟牸
+                updateCheckResultTip();
+                // 椤甸潰娓叉煋妫�娴嬮」
+                renderTableCheckItem();
+                layer.close(index);
+            }
+        },
+        error: function () {
+            layer.close(index);
+            layer.msg("鍚庡彴寮傚父锛岃閲嶈瘯鎴栬�呰仈绯荤鐞嗗憳锛侊紒");
+        }
+    });
 };
 
+//浠呬繚瀛�
+function saveCheckData() {
+    if (!curCheckData.foodVariety) {
+        layer.alert("璇风‘璁ょ伯椋熷搧绉嶏紒锛�");
+        return;
+    }
+    curCheckData.checkItems = curCheckItems;
+    var index1 = layer.load();
+    $.ajax({
+        type: "POST",
+        url: "../../basic/inout/submit-checkItem",
+        dataType: "json",
+        contentType: "application/json;charset=UTF-8",
+        async: false,
+        data: JSON.stringify(curCheckData),
+        success: function (result) {
+            if (result.code != "0000") {
+                layer.close(index1);
+                notify(result.msg, result.data);
+            } else {
+                layer.closeAll();
+                curCheckData = null;
+                notify("鏁版嵁淇濆瓨鎴愬姛", result.data);
+                flushData();
+            }
+        },
+        error: function () {
+            layer.close(index1);
+            layer.alert("淇濆瓨澶辫触锛岃閲嶆柊灏濊瘯锛�");
+        }
+    });
+}
 
-// 褰撳墠瀹屾垚
+//淇濆瓨鎻愪氦
 function submit() {
     if (curCheckData.checkStatus == "NONE" || curCheckData.checkStatus == "NONE2") {
         layer.alert("璇风‘璁ゅ寲楠岀粨鏋滐紒锛�");
@@ -547,16 +591,15 @@
         url: "../../basic/inout/submit-check",
         dataType: "json",
         contentType: "application/json;charset=UTF-8",
+        async: false,
         data: JSON.stringify(curCheckData),
         success: function (result) {
             if (result.code != "0000") {
                 layer.close(index);
-                //layer.alert(result.msg);
                 notify(result.msg, result.data);
             } else {
-                layer.closeAll();
+                parent.layer.closeAll();
                 curCheckData = null;
-                //layer.alert("鏁版嵁鎻愪氦鎴愬姛!");
                 notify("鏁版嵁鎻愪氦鎴愬姛", result.data);
                 flushData();
             }
@@ -566,7 +609,69 @@
             layer.alert("鎻愪氦澶辫触锛岃閲嶆柊灏濊瘯锛�");
         }
     });
-};
+}
+
+//鎵爜寮圭獥
+function showScanCode() {
+    //娓呯┖琛ㄥ崟
+    $("#form-sacnCodeDetail")[0].reset();
+    form.render();
+
+    //鎵爜寮圭獥-璧嬪�紅rue
+    scanCodeTag = true;
+    layer.open({
+        type: 1,
+        title: "鎵爜淇℃伅",
+        area: ['700px', '320px'],
+        shade: 0,
+        content: $('#scanCodeDetail'),
+        success: function(layero, index){
+            document.getElementById('checkId').focus();
+        },
+        btnAlign: 'c',
+        btn: ['鏌ヨ', '鍏抽棴鍙栨秷'],
+        yes: function () {
+            getDataByCheckId();
+        }, btn2: function () {
+            scanCodeTag = false;
+            layer.closeAll();
+        },
+        closeBtn: 0
+    });
+}
+
+//鏍规嵁璐ㄦ鍗曞彿鑾峰彇淇℃伅
+function getDataByCheckId() {
+    var param = form.val("form-sacnCodeDetail");
+    if(!param.checkId){
+        layer.alert("璐ㄦ鍗曞彿涓虹┖锛岃鎵爜鎴栬緭鍏ヨ川妫�鍗曞彿");
+    }
+    var index = layer.load();
+    $.ajax({
+        type: "POST",
+        url: "../../basic/inout/inout-check-scan-code",
+        dataType: "json",
+        contentType: "application/json;charset=UTF-8",
+        data: JSON.stringify(param),
+        success: function (result) {
+            if (result.code != "0000") {
+                layer.close(index);
+                $("#form-sacnCodeDetail")[0].reset();
+                form.render();
+                notify(result.msg, result.data);
+            } else {
+                updateSelect();
+                showDetail(result.data);
+            }
+        },
+        error: function () {
+            layer.close(index);
+            $("#form-sacnCodeDetail")[0].reset();
+            form.render();
+            layer.alert("淇濆瓨澶辫触锛岃閲嶆柊灏濊瘯锛�");
+        }
+    });
+}
 
 // 娓叉煋琛ㄥ崟鏁版嵁
 function renderTable() {

--
Gitblit v1.9.3