From b4a8d50e3d97fc9e893b554a60134e4eceb012eb Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期一, 05 一月 2026 08:58:08 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/pda/locNormalOut.html |  194 +++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 150 insertions(+), 44 deletions(-)

diff --git a/src/main/webapp/views/pda/locNormalOut.html b/src/main/webapp/views/pda/locNormalOut.html
index fe564c9..ab94a0d 100644
--- a/src/main/webapp/views/pda/locNormalOut.html
+++ b/src/main/webapp/views/pda/locNormalOut.html
@@ -12,17 +12,33 @@
     <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script>
 </head>
 <style>
+    .form-box span {
+        font-size: 16px;
+        display: inline-block;
+        text-align: right;
+    }
+    .form-box input {
+        width: 165px;
+        padding-left: 5px;
+        height: 30px;
+        border: 1px solid #777777;
+        overflow:hidden;
+        white-space:nowrap;
+        text-overflow:ellipsis;
+    }
     .number-tool {
         margin-left: 10px;
         padding: 1px 0 1px 5px;
         display: inline-block;
         width: 120px;
     }
+
     .number-tool:after {
         clear: both;
         content: "";
         display: table;
     }
+
     .number-tool button {
         background-color: #fff;
         margin-top: 3px;
@@ -32,6 +48,7 @@
         width: 25px;
         border: 1px solid #777777;
     }
+
     .number-tool input {
         text-align: center;
         height: 30px;
@@ -43,20 +60,28 @@
 </style>
 <body>
 
-<header>
-    <div>
+<header class="layui-form">
+    <div class="layui-input-inline">
+        <label class="layui-form-label" style="margin-left: 32px">鍗曞彿</label>
         <div class="layui-input-inline">
-            <label class="layui-form-label">搴�&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;鍖�</label>
-            <input class="layui-input" type="number" id="warehouse" onkeyup="findCode(this, 'warehouse')" placeholder="鎵爜 / 杈撳叆"
-                   autocomplete="off">
-        </div>
-        <div class="layui-input-inline">
-            <label class="layui-form-label">鐗╂枡缂栫爜</label>
-            <input class="layui-input" id="matnr" onkeyup="findCode(this, 'matnr')" placeholder="鎵爜 / 杈撳叆" style="width: 65%"
-                   autocomplete="off">
+            <input id="billNo" class="layui-input" autocomplete="off" oninput="findCode(this, 'billNo')"
+                   style="width: 175px">
         </div>
     </div>
-
+    <div class="layui-input-inline">
+        <label class="layui-form-label">鐗╂枡缂栫爜</label>
+        <input class="layui-input" id="matnr" onkeyup="findCode(this, 'matnr')" placeholder="鎵爜 / 杈撳叆"
+               style="width: 175px"
+               autocomplete="off">
+    </div>
+    <div class="layui-input-inline">
+        <label class="layui-form-label" style="margin-left: 28px;">搴撳尯</label>
+        <div class="layui-input-inline" style="margin-left: 5px;width: 175px">
+            <select id="uuid" lay-filter="uuid">
+                <option value="">璇烽�夋嫨</option>
+            </select>
+        </div>
+    </div>
 </header>
 
 <main>
@@ -77,20 +102,41 @@
 </footer>
 
 <!-- 淇敼鏁伴噺寮圭獥 -->
-<div id="modify" style="display: none; text-align: center;padding-top: 10px">
-    <div class="form-item">
-        <span>缂栫爜</span>
-        <input id="matnr2" type="text" disabled="disabled" style="width: 70%">
-    </div>
-    <div class="form-item">
-        <span>鍚嶇О</span>
-        <input id="maktx2" type="text" disabled="disabled" style="width: 70%">
+<div id="modify" style="display: none; padding-top: 10px; text-align: center;">
+    <div class="form-box">
+        <div class="form-item">
+            <table style="display: inline">
+                <tr>
+                    <td>
+                        <span style="width: 35px; margin-right: 5px">缂栫爜</span>
+                    </td>
+                    <td style="text-align: left">
+                        <input id="matnr2" type="text" disabled="disabled">
+                    </td>
+                </tr>
+            </table>
+        </div>
+        <div class="form-item">
+            <table style="display: inline">
+                <tr>
+                    <td style="vertical-align: top">
+                        <span style="width: 35px; margin-right: 5px">鍚嶇О</span>
+                    </td>
+                    <td style="text-align: left">
+                    <textarea rows="3" style="resize: none; width: 165px" id="maktx2" type="text" disabled="disabled"
+                              readonly="readonly"></textarea>
+                    </td>
+                </tr>
+            </table>
+        </div>
     </div>
     <input id="index" type="text" disabled="disabled" style="display: none;">
-    <div class="form-item" style="margin-top: 5px; margin-bottom: 8px">
+    <div class="form-item" style="margin-top: 5px; margin-bottom: 8px;">
         <span style="vertical-align: middle">鏁伴噺</span>
         <div class="number-tool" style="vertical-align: middle">
-            <button onclick="reduce()">-</button><input id="anfme2" type="number" onchange="fix(this)"><button onclick="add()">+</button>
+            <button onclick="reduce()">-</button>
+            <input id="anfme2" type="number" onchange="fix(this)">
+            <button onclick="add()">+</button>
         </div>
     </div>
     <button id="remove" onclick="remove()">绉婚櫎</button>
@@ -105,7 +151,7 @@
     // 琛ㄦ牸鏁版嵁
     var normalOutList = [];
     window.onload = function () {
-        document.getElementById("warehouse").focus();
+        document.getElementById("billNo").focus();
     }
 
     /**
@@ -114,7 +160,7 @@
      * @param warn true锛氱孩鑹插瓧浣�
      */
     function tips(msg, warn) {
-        layer.msg(msg, {icon: warn?2:1})
+        layer.msg(msg, {icon: warn ? 2 : 1})
     }
 
     function back() {
@@ -122,7 +168,7 @@
     }
 
     var tableIns;
-    layui.use(['table','laydate', 'form'], function() {
+    layui.use(['table', 'laydate', 'form'], function () {
         var table = layui.table;
         var $ = layui.jquery;
         var layer = layui.layer;
@@ -135,11 +181,20 @@
             limit: 500,
             cellMinWidth: 50,
             cols: [[
-                {type: 'checkbox', fixed: 'left', width:30},
-                {field: 'anfmeOut', align: 'center', title: '鏁伴噺', event: 'detail', style:'color: blue', event: 'modify', style:'cursor: pointer;color: blue', width:50},
-                {field: 'matnr', align: 'center', title: '缂栫爜', event: 'detail', width:80},
+                {field: 'matnr', align: 'center', title: '缂栫爜', event: 'detail', width: 80},
                 {field: 'maktx', align: 'center', title: '鍚嶇О', event: 'detail'},
-                {field: 'warehouse', align: 'center', title: '搴撳尯', event: 'detail', width:50}
+                {field: 'warehouse', align: 'center', title: '搴撳尯', event: 'detail', width: 50},
+                {
+                    field: 'anfmeOut',
+                    align: 'center',
+                    title: '鏁伴噺',
+                    event: 'detail',
+                    style: 'color: blue',
+                    event: 'modify',
+                    style: 'cursor: pointer;color: blue',
+                    width: 50
+                },
+                {type: 'checkbox', fixed: 'right', width: 30},
             ]],
             done: function (res, curr, count) {
             }
@@ -147,7 +202,7 @@
 
 
         // 鐩戝惉琛屽伐鍏蜂簨浠�
-        table.on('tool(locNormalOut)', function(obj) {
+        table.on('tool(locNormalOut)', function (obj) {
             var data = obj.data;
             switch (obj.event) {
                 case 'modify':
@@ -156,7 +211,7 @@
                         offset: '20px',
                         title: '淇敼鏁伴噺',
                         shadeClose: true,
-                        area: ['80%', '200px'],
+                        area: ['80%', '240px'],
                         content: $("#modify"),
                         success: function (layero, index) {
                             $('#matnr2').val(data.matnr);
@@ -169,30 +224,66 @@
                     break;
             }
         });
+
+        form.on('select(uuid)', function (data) {
+            var val = data.value;
+            findCode(this, 'uuid');
+        });
+
+        var areaType = getQueryVariable('areaType');
+        // 鑾峰彇浠撳簱涓嬫媺
+        $.ajax({
+            url: baseUrl + "/locArea/queryAll/auth?areaType=" + (areaType ? areaType : ""),
+            headers: {'token': localStorage.getItem('token')},
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200) {
+                    var html = "";
+                    if (res.data && res.data.length > 0) {
+                        html += res.data.map(function (item) {
+                            return "<Option value=" + item.uuid + ">" + item.name + "</Option>";
+                        });
+                    }
+                    $('#uuid').append(html);
+                    layui.form.render('select');
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/pda";
+                } else {
+                    layer.msg(res.msg)
+                }
+            }
+        });
     });
 
     var warehouseBar;
     var matnrBar;
+    var billNo;
+
     /* 鎵爜銆佽緭鍏ュ簱鍖哄拰鐗╂枡缂栫爜 */
     function findCode(el, type) {
+        warehouseBar = $('#uuid').val();
+        billNo = $("#billNo").val();
+        if (billNo && billNo != '' && billNo.indexOf('=') > -1) {
+            billNo = billNo.split(",")[0].split("=")[1];
+        }
         switch (type) {
-            case 'warehouse':
-                warehouseBar = el.value;
+            case 'uuid':
+//                exist('uuid', 'locArea');
                 break;
             case 'matnr':
-                matnrBar =  el.value;
+                matnrBar = el.value;
                 break;
             default:
                 break;
         }
 
         // 鍒ゆ柇搴撳尯鎴栬�呯墿鏂欑紪鐮侀兘涓嶄负绌�
-        if (!warehouseBar || !matnrBar) {
-            return;
-        }
+//        if (!warehouseBar || !matnrBar) {
+//            return;
+//        }
 
         $.ajax({
-            url: baseUrl + "/locNormal/pda/out/query?matnr="+matnrBar+"&warehouse="+warehouseBar,
+            url: baseUrl + "/locNormal/pda/out/query?matnr=" + (matnrBar ? matnrBar : "") + "&warehouse=" + (warehouseBar ? warehouseBar : "") + "&billNo=" + (billNo ? billNo : ""),
             headers: {'token': localStorage.getItem('token')},
 //            contentType: 'application/json;charset=UTF-8',
             method: 'GET',
@@ -202,7 +293,7 @@
                     if (res.data && res.data.length > 0) {
                         res.data.map(function (item) {
                             // 榛樿璧嬪��0寮�濮�
-                           item.anfmeOut = 0;
+                            item.anfmeOut = item.anfme;
                         });
                     }
                     tableIns.reload({
@@ -220,27 +311,31 @@
 
     /* 淇敼鏁伴噺 */
     var countDom = $('#anfme2');
+
     function add() {
         if (countDom.val() >= maxCount) {
             return;
         }
         countDom.val(Number(countDom.val()) + 1);
     }
+
     function reduce() {
         if (countDom.val() <= 0) {
             return;
         }
         countDom.val(Number(countDom.val()) - 1);
     }
+
     function fix(e) {
         if (Number(e.value) > maxCount) {
             countDom.val(maxCount);
         }
     }
+
     function remove() {
         var matnr = $('#matnr2').val();
         var index = $('#index').val();
-        for (var j=0;j<normalOutList.length;j++){
+        for (var j = 0; j < normalOutList.length; j++) {
             if (matnr === normalOutList[j].matnr && index == normalOutList[j].id) {
                 normalOutList.splice(j, 1);
             }
@@ -249,12 +344,13 @@
         layer.close(countLayer);
         tips("绉婚櫎鎴愬姛");
     }
+
     // 淇敼鏁伴噺
-    function confirm(){
+    function confirm() {
         var matnr = $('#matnr2').val();
         var count = $('#anfme2').val();
         var index = $('#index').val();
-        for (var j=0;j<normalOutList.length;j++){
+        for (var j = 0; j < normalOutList.length; j++) {
             if (matnr === normalOutList[j].matnr && index == normalOutList[j].id) {
                 if (count > maxCount || count < 0) {
                     tips("鏁伴噺涓嶈兘瓒呰繃鑼冨洿", true);
@@ -279,9 +375,9 @@
             return;
         }
         // 搴撳尯璧嬪��
-        var warehouse = $('#warehouse').val();
+        var warehouse = $('#uuid').val();
         data.map(function (item) {
-           item.warehouse =  warehouse;
+            item.warehouse = warehouse;
         });
         // 鍑哄簱鎺ュ彛
         $.ajax({
@@ -297,7 +393,7 @@
                 if (res.code === 200) {
                     layer.msg("鍑哄簱鎴愬姛");
                     $("#matnr").val(null);
-                    $("#warehouse").val(null);
+                    $("#billNo").val(null);
                     warehouseBar = null;
                     matnrBar = null;
                     normalOutList = [];
@@ -312,5 +408,15 @@
             },
         });
     }
+
+    function reset() {
+        $("#uuid").val(null);
+        $("#matnr").val(null);
+        $("#billNo").val(null);
+        layui.form.render('select');
+        normalOutList = [];
+        tableIns.reload({data: normalOutList});
+        layer.closeAll();
+    }
 </script>
 </html>
\ No newline at end of file

--
Gitblit v1.9.1