From 0f007b4fb175c29b916cbd3c3a640bddce86447b Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@163.com>
Date: 星期二, 23 三月 2021 16:36:19 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/pda/index.html      |    1 
 src/main/webapp/views/pda/stockCheck.html |  332 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 333 insertions(+), 0 deletions(-)

diff --git a/src/main/webapp/views/pda/index.html b/src/main/webapp/views/pda/index.html
index 218b348..3ca08e7 100644
--- a/src/main/webapp/views/pda/index.html
+++ b/src/main/webapp/views/pda/index.html
@@ -77,6 +77,7 @@
     <li><a id="comb" onclick="nav(this.id)" class="nav-select" href="#">缁勬墭</a></li>
     <li><a id="stockIn" onclick="nav(this.id)" class="nav-unselect" href="#">涓婃灦</a></li>
     <li><a id="stockOut" onclick="nav(this.id)" class="nav-unselect" href="#">鎷h揣</a></li>
+    <li><a id="stockCheck" onclick="nav(this.id)" class="nav-unselect" href="#">鐩樼偣</a></li>
 </ul>
 
 <!-- 涓讳綋鍐呭 -->
diff --git a/src/main/webapp/views/pda/stockCheck.html b/src/main/webapp/views/pda/stockCheck.html
new file mode 100644
index 0000000..efda29a
--- /dev/null
+++ b/src/main/webapp/views/pda/stockCheck.html
@@ -0,0 +1,332 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+    <meta charset="UTF-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no"/>
+    <title>缁勬墭</title>
+    <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../static/css/pda.css" media="all">
+    <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+    <script type="text/javascript" src="../../static/layui/layui.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/common.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/cool.js" charset="utf-8"></script>
+    <script type="text/javascript" src="../../static/js/handlebars/handlebars-v4.5.3.js"></script>
+    <style>
+        .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;
+            font-size: 16px;
+            height: 25px;
+            float: left;
+            width: 25px;
+            border: 1px solid #777777;
+        }
+        .number-tool input {
+            text-align: center;
+            height: 30px;
+            float: left;
+            margin: 0 5px;
+            width: 50px;
+            padding: 0;
+        }
+        #confirm {
+            margin: 10px 10px;
+            padding: 5px 20px;
+            font-weight: 600;
+        }
+        #remove {
+            margin: 10px 10px;
+            padding: 5px 20px;
+            color: darkred;
+        }
+    </style>
+</head>
+<body>
+<!-- 澶撮儴 -->
+<header>
+    <div class="layui-input-inline" style="margin-top: 0px">
+        <label class="layui-form-label">璐т綅</label>
+        <input class="layui-input" id="locNo" onkeyup="find(this)" placeholder="鎵爜 / 杈撳叆" autocomplete="off" style="width: 75%; height: 40px; margin-right: 0;">
+    </div>
+</header>
+
+<!-- 涓讳綋 -->
+<main>
+    <table class="layui-table" id="chooseData" lay-filter="chooseData"></table>
+</main>
+<!-- 灏鹃儴 -->
+<footer>
+    <div class="layui-btn-container">
+        <button type="button" id="reset-btn" class="layui-btn layui-btn-primary" onclick="reset()">閲嶇疆</button>
+        <button type="button" id="comb-btn" class="layui-btn layui-btn-normal " onclick="comb()" style="margin-left: 20px">缁勬墭</button>
+        <span id="tips"></span>
+    </div>
+</footer>
+
+<!-- 淇敼鏁伴噺寮圭獥 -->
+<div id="modify" style="display: none; text-align: center;padding-top: 10px">
+    <div class="form-item">
+        <span>鐗╂枡</span>
+        <input id="matNo" type="text" disabled="disabled" style="width: 70%">
+    </div>
+    <div class="form-item">
+        <span>鍚嶇О</span>
+        <input id="matName" type="text" disabled="disabled" style="width: 70%">
+    </div>
+    <div class="form-item" style="margin-top: 5px">
+        <span style="vertical-align: middle">鏁伴噺</span>
+        <div class="number-tool" style="vertical-align: middle">
+            <button onclick="reduce()">-</button><input id="count" type="number"><button onclick="add()">+</button>
+        </div>
+    </div>
+    <button id="remove" onclick="remove()">绉婚櫎</button>
+    <button id="confirm" onclick="confirm()">淇濆瓨</button>
+</div>
+</body>
+<script>
+    window.onload = function(){document.getElementById("code").focus();}
+    var tableIns;
+    var countLayer;
+    layui.use(['table','laydate', 'form'], function() {
+        var table = layui.table;
+        var $ = layui.jquery;
+        var layer = layui.layer;
+        var form = layui.form;
+
+        tableIns = table.render({
+            elem: '#chooseData',
+            data: [],
+            limit: 500,
+            cellMinWidth: 50,
+            cols: [[
+                {fixed: 'left', align: 'center', field: 'count', title: '鏁伴噺', event: 'modify', style:'cursor: pointer;color: blue', width:50},
+                {field: 'matNo', align: 'center', title: '鐗╂枡缂栫爜'},
+                {field: 'matName', align: 'center', title: '鐗╂枡鍚嶇О'}
+            ]],
+            done: function (res, curr, count) {
+            }
+        });
+
+        // 鐩戝惉琛屽伐鍏蜂簨浠�
+        table.on('tool(chooseData)', function(obj) {
+            var data = obj.data;
+            switch (obj.event) {
+                case 'modify':
+                    countLayer = layer.open({
+                        type: 1,
+                        offset: '20px',
+                        title: '淇敼鏁伴噺',
+                        shadeClose: true,
+                        area: ['80%', '200px'],
+                        content: $("#modify"),
+                        success: function (layero, index) {
+                            $('#matNo').val(data.matNo);
+                            $('#matName').val(data.matName);
+                            $('#count').val(data.count);
+                            maxCount = data.count;
+                        }
+                    });
+                    break;
+            }
+        });
+
+    });
+
+    // 娣诲姞琛ㄦ牸鏁版嵁
+    var matData = [];
+    function addTableData(data) {
+        for (var i=0;i<data.length;i++) {
+            var toPush = true;
+            for (var j=0;j<matData.length;j++){
+                if (data[i].matNo === matData[j].matNo) {
+                    matData[j].count = Number(matData[j].count) + Number(data[i].count);
+                    toPush  = false;
+                }
+            }
+            if (toPush) {
+                matData.push(data[i]);
+            }
+        }
+        tableIns.reload({data: matData});
+        $("#comb-btn").focus();
+    }
+
+
+    /**
+     * 鏍规嵁閫氱煡鍗曞彿鏌ヨ鐗╂枡璇︽儏
+     */
+    function find(el){
+        if (isEmpty(el.value)) {
+            return;
+        }
+        var billNo = el.value.split(",")[0].split("=")[1];
+        $.ajax({
+            url: baseUrl + "/mobile/bill/query/auth",
+            headers: {'token': localStorage.getItem('token')},
+            data: {
+                billNo: billNo
+            },
+            method: 'POST',
+            success: function (res) {
+                if (res.code === 200) {
+                    if (res.data != null) {
+                        addTableData(res.data);
+                    }
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/pda";
+                } else {
+                    tips(res.msg, true)
+                }
+            }
+        })
+    }
+
+    /*************************************  鏁伴噺  ****************************************/
+    var countDom = $('#count');
+    var minCount = 1;
+    var maxCount = 1;
+    function add() {
+        if (countDom.val() >= maxCount) {
+            return;
+        }
+        countDom.val(Number(countDom.val()) + 1);
+    }
+    function reduce() {
+        if (countDom.val() <= minCount) {
+            return;
+        }
+        countDom.val(countDom.val() - 1);
+    }
+
+    // 淇敼鏁伴噺
+    function confirm(){
+        var matNo = $('#matNo').val();
+        var count = $('#count').val();
+        for (var j=0;j<matData.length;j++){
+            if (matNo === matData[j].matNo) {
+                if (count > maxCount || count < minCount) {
+                    tips("鏁伴噺涓嶈兘瓒呰繃鑼冨洿", true);
+                    return;
+                }
+                matData[j].count = Number(count);
+            }
+        }
+        tableIns.reload({data: matData});
+        layer.close(countLayer);
+        tips("淇敼鎴愬姛");
+    }
+
+    // 绉婚櫎鐗╂枡
+    function remove() {
+        var matNo = $('#matNo').val();
+        for (var j=0;j<matData.length;j++){
+            if (matNo === matData[j].matNo) {
+                matData.splice(j, 1);
+            }
+        }
+        tableIns.reload({data: matData});
+        layer.close(countLayer);
+        tips("绉婚櫎鎴愬姛");
+    }
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+    // 閲嶇疆
+    function reset() {
+        $('#code').val("");
+        $('#billNo').val("");
+        matData = [];
+        tableIns.reload({data: matData});
+    }
+
+    // 缁勬墭
+    function comb() {
+        var barcode = $('#code').val();
+        if (isEmpty(barcode)) {
+            tips("鎵樼洏鏉$爜涓虹┖", true);
+            // document.getElementById("code").focus();
+            return;
+        }
+        if (barcode.length !== 7) {
+            tips("鏉$爜蹇呴』涓�7浣�", true);
+            return;
+        }
+        if (matData.length === 0) {
+            tips("璇锋彁鍙栫墿鏂�", true);
+            return;
+        }
+        var billNo = $('#billNo').val();
+        $.ajax({
+            url: baseUrl+"/mobile/comb/auth",
+            headers: {'token': localStorage.getItem('token')},
+            data: JSON.stringify({
+                barcode: barcode,
+                combMats: matData,
+                billNo: billNo
+            }),
+            contentType:'application/json;charset=UTF-8',
+            method: 'POST',
+            async: false,
+            success: function (res) {
+                if (res.code === 200) {
+                    reset();
+                    tips("缁勬墭鎴愬姛")
+                } else if (res.code === 403) {
+                    top.location.href = baseUrl + "/pda";
+                } else {
+                    tips(res.msg, true)
+                }
+            }
+        })
+    }
+
+    /**
+     * 鎻愮ず淇℃伅
+     * @param msg 鎻愮ず鍐呭
+     * @param warn true锛氱孩鑹插瓧浣�
+     */
+    function tips(msg, warn) {
+        layer.msg(msg, {icon: warn?2:1})
+    }
+
+    document.onkeyup = function (e) {
+        if (window.event)//濡傛灉window.event瀵硅薄瀛樺湪锛屽氨浠ユ浜嬩欢瀵硅薄涓哄噯
+            e = window.event;
+        var key = e.charCode || e.keyCode;
+        if (key === 115) {
+            $("#comb-btn").focus();
+            comb();
+        } else if (key === 113) {
+            $("#code").val("");
+            $("#code").focus();
+        }
+    }
+</script>
+</html>
\ No newline at end of file

--
Gitblit v1.9.1