#
luxiaotao1123
2021-08-09 3e867b935ca291a0555a31ffb324e8705df93be2
src/main/webapp/views/pda/stockOut.html
@@ -35,6 +35,33 @@
        .status-3 {
            color: green;
        }
        /* 客户 */
        #custName {
            padding-left: 2px;
            line-height: 30px;
            font-size: 14px;
        }
        /* 主体 */
        main {
            border: 1px solid gainsboro;
            text-align: center;
            padding-bottom: 15px;
        }
        main hr {
            width: 80%;
            margin: 5px 0;
            display: inline-block
        }
        .pakout-item {
            padding: 10px;
        }
        .item-header {
            text-align: left;
            padding-left: 20px
        }
        .item-content {
            padding: 15px
        }
    </style>
</head>
<body>
@@ -42,7 +69,7 @@
<header>
    <div class="layui-input-inline">
        <label class="layui-form-label" style="width: 84px">单据编号</label>
        <input class="layui-input" type="text" id="docNum" onkeyup="findNum(this)" oninput="if(value.length>8)value=value.slice(0,8)" placeholder="扫码 / 输入" autocomplete="off">
        <input class="layui-input" type="text" id="docNum" onkeyup="findNum(this)" placeholder="扫码 / 输入" autocomplete="off">
    </div>
    <div class="layui-input-inline" style="width: 100%">
        <label class="layui-form-label" style="width: 84px">状态</label>
@@ -54,27 +81,16 @@
    </div>
</header>
<hr style="padding: 0 10px; margin: 5px 0">
<!-- 主体 -->
<main>
    <div class="pakout-item">
        <div class="item-header">
            <span>1、</span>
            六角钻尾螺丝4.8* 80
        </div>
        <div class="item-content">
            <span>10箱</span>
            <span>货位:A01-1</span>
        </div>
    </div>
<main id="pakout-box">
</main>
<!-- 尾部 -->
<footer>
    <div class="layui-btn-container">
        <button id="reset" type="button" class="layui-btn layui-btn-primary" onclick="reset()">重置</button>
        <button id="confirm" type="button" class="layui-btn layui-btn-normal" onclick="pakoutConfirm()" style="margin-left: 20px">拣货确认</button>
        <span id="tips"></span>
        <button id="tips1" style="outline: none;color: white;border-color: white; position: absolute;right: 0;bottom: 0;"></button>
    </div>
</footer>
</body>
@@ -94,24 +110,37 @@
            data: {
                docNumber: el.value
            },
            async: false,
            method: 'POST',
            success: function (res) {
                if (res.code === 200) {
                    if (res.data != null) {
                        pakoutData = res.data;
                        console.log(pakoutData);
                        $('#pakout-box').html("");
                        pakoutData = [];
                        pakoutData = res.data.pakouts;
                        if (pakoutData != null) {
                            // 头
                            $('#status').html(res.data.wrkSts$);
                            $('#status').attr("class", "layui-form-label status-" + res.data.wrkSts);
                            $('#custName').html(res.data.custName);
                            // 主
                            var tpl = $("#pakoutDetlTpl").html();
                            var template = Handlebars.compile(tpl);
                            var html = template(res.data);
                            $('#pakout-box').append(html);
                        }
                        $('#tips1').focus();
                    }
                    $('#confirm').focus();
                } else if (res.code === 201) {
                } else if (res.code === 403) {
                    top.location.href = baseUrl + "/pda";
                } else {
                    locDetlData = [];
                    tableIns.reload({data: locDetlData});
                    pakoutData = [];
                    tips(res.msg, true);
                }
            }
        })
    }
    layui.use(['laydate', 'form'], function() {
        var $ = layui.jquery;
@@ -120,51 +149,49 @@
    });
    // 拣货确认
    function pakoutConfirm() {
        var tableData = layui.table.checkStatus('tableIdx').data;
        if (tableData.length === 0) {
            tips("请选择物料", true);
            return;
        }
        var site = $('#staNoSelect').val();
        if (null === site || undefined === site || site === "") {
            tips("请选择出库口", true);
            return;
        }
        $.ajax({
            url: baseUrl+"/plate/out/start",
            headers: {'token': localStorage.getItem('token')},
            data: JSON.stringify({
                outSite: site,
                locDetls: tableData
            }),
            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)
                }
        layer.confirm('确认拣货完成?', {shadeClose: true}, function(){
            if (pakoutData == null || pakoutData.length === 0) {
                tips("请确认单据编号!", true);
                return;
            }
        })
            var docNum = pakoutData[0].docNum;
            if (isEmpty(docNum)) {
                tips("请确认单据编号!", true);
                return;
            }
            $.ajax({
                url: baseUrl+"/work/stock/out/confirm",
                headers: {'token': localStorage.getItem('token')},
                data: JSON.stringify({
                    orderNo: docNum
                }),
                contentType:'application/json;charset=UTF-8',
                method: 'POST',
                success: function (res) {
                    if (res.code === 200) {
                        reset();
                        tips("拣货成功")
                    } else if (res.code === 403) {
                        top.location.href = baseUrl + "/pda";
                    } else {
                        tips(res.msg, true)
                    }
                }
            })
        });
    }
    // 重置
    function reset() {
        $("#matNo").val("");
        $("#locNo").val("");
        locDetlData = [];
        tableIns.reload({data: locDetlData});
        $('#staNoSelect').val("");
        $("#docNum").val("");
        $('#status').html("未知");
        $('#status').attr("class", "layui-form-label status-0");
        $('#custName').html("-");
        $('#pakout-box').html("");
        pakoutData = [];
        document.getElementById("docNum").focus();
        layui.form.render('select');
    }
@@ -177,22 +204,31 @@
        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) {
            $("#confirm").focus();
            pakoutConfirm();
        } else if (key === 113) {
            $("#docNum").val("");
            $("#docNum").focus();
        }
    }
    // document.onkeyup = function (e) {
    //     if (window.event)//如果window.event对象存在,就以此事件对象为准
    //         e = window.event;
    //     var key = e.charCode || e.keyCode;
    //     if (key === 115) {
    //         $("#confirm").focus();
    //         pakoutConfirm();
    //     } else if (key === 113) {
    //         $("#docNum").val("");
    //         $("#docNum").focus();
    //     }
    // }
</script>
<script type="text/template" id="takeSiteSelectTemplate">
    {{#each data}}
    <option value="{{siteId}}">{{desc}}</option>
<script type="text/template" id="pakoutDetlTpl">
    {{#each pakouts}}
        <hr>
        <div class="pakout-item">
            <div class="item-header">
                {{maktx}}
            </div>
            <div class="item-content">
                <div style="float: left">{{anfme}}{{unit}}</div>
                <div style="float: right">货位:{{locNo}}</div>
            </div>
        </div>
    {{/each}}
</script>
</html>