Demo
2024-03-14 59fc06745954a973ba008df5aea24a0b99a81a26
Pda/View/SoSetting/SampleOut.html
@@ -243,7 +243,7 @@
                            <div id="layout-bill" class="layui-form-item layout-dropdownlist">
                                <label class="layui-form-label lableWidth">入库单:</label>
                                <div class="layui-input-block" id="selectDiv">
                                    <select id="bar" lay-filter="getbar" lay-search>
                                    <select id="AsnBar" lay-filter="getAsnBar" lay-search>
                                        <option value=""></option>
                                    </select>
                                    <img src="/assets/down_arraw.png">
@@ -296,7 +296,7 @@
                     </table>                  
                  </div>
                  <div id="" class="layout-tab-page">
                     <table class="layout-tab-content" border="" cellspacing="" cellpadding="">
                     <table id="kuneiQty" class="layout-tab-content" border="" cellspacing="" cellpadding="">
                        <tr>
                           <td>
                              <table class="tbl-box-sim-info" border="" cellspacing="" cellpadding="">
@@ -380,63 +380,74 @@
            
            <div id="" class="layout-bill-info">
               <form class="layui-form" action="" style="height: auto;">
                        <div id="kuneilabel2" >
                            <div id="layout-bill2" class="layui-form-item layout-dropdownlist">
                                <label class="layui-form-label lableWidth">出库单:</label>
                                <div class="layui-input-block" id="selectDiv2">
                                    <select id="bar2" lay-filter="getbar2" lay-search>
                                        <option value=""></option>
                                    </select>
                                    <img src="/assets/down_arraw.png">
                                </div>
                            </div>
                            <div id="layout-skuLotNo2" class="layui-form-item layout-dropdownlist">
                                <label class="layui-form-label lableWidth">物料 - 批次:</label>
                                <div class="layui-input-block">
                                    <select id="skuLotNo2" lay-filter="getSkuLotNo2" lay-search>
                                        <option value=""></option>
                                    </select>
                                    <img src="/assets/down_arraw.png">
                                </div>
                            </div>
                            <div id="" class="layout-tab-page">
                                <table class="tbl-box-sim-info" border="" cellspacing="" cellpadding="">
                                    <tr>
                                        <td>
                                            <div class="layui-form-item">
                                                <label class="layui-form-label" style="width: 50%;">计划数量:</label>
                                                <div class="layui-input-block" style="width: 50%;margin-left:50%;">
                                                    <input id="planQty2" type="text" lay-verify="" disabled placeholder=""
                                                        class="layui-input">
                                                </div>
                                            </div>
                                        </td>
                                        <td>
                                            <div class="layui-form-item">
                                                <label class="layui-form-label" style="width: 50%">完成数量:</label>
                                                <div class="layui-input-block" style="width: 50%;margin-left:50%;">
                                                    <input id="finishQty2" type="text" lay-verify="" disabled placeholder=""
                                                        class="layui-input">
                                                </div>
                                            </div>
                  <div id="layout-bill2" class="layui-form-item layout-dropdownlist">
                     <label class="layui-form-label lableWidth">出库单:</label>
                     <div class="layui-input-block" id="selectDiv2">
                        <select id="bar2" lay-filter="getbar2" lay-search>
                           <option value=""></option>
                        </select>
                        <img src="/assets/down_arraw.png">
                     </div>
                  </div>
                  <div id="layout-skuLotNo2" class="layui-form-item layout-dropdownlist">
                     <label class="layui-form-label lableWidth">物料 - 批次:</label>
                     <div class="layui-input-block">
                        <select id="skuLotNo2" lay-filter="getSkuLotNo2" lay-search>
                           <option value=""></option>
                        </select>
                        <img src="/assets/down_arraw.png">
                     </div>
                  </div>
                  <div id="" class="layout-tab-page">
                     <table class="tbl-box-sim-info" border="" cellspacing="" cellpadding="">
                        <tr>
                           <td>
                              <div class="layui-form-item">
                                 <label class="layui-form-label" style="width: 50%;">计划数量:</label>
                                 <div class="layui-input-block" style="width: 50%;margin-left:50%;">
                                    <input id="planQty2" type="text" lay-verify="" disabled placeholder=""
                                       class="layui-input">
                                 </div>
                              </div>
                           </td>
                           <td>
                              <div class="layui-form-item">
                                 <label class="layui-form-label" style="width: 50%">完成数量:</label>
                                 <div class="layui-input-block" style="width: 50%;margin-left:50%;">
                                    <input id="finishQty2" type="text" lay-verify="" disabled placeholder=""
                                       class="layui-input">
                                 </div>
                              </div>
                           </td>
                        </tr>
                        <tr>
                           <td colspan="3">
                              <div class="layui-form-item">
                                 <label class="layui-form-label" style="width: 17%;">规格:</label>
                                 <div class="layui-input-block" style="width: 83%;margin-left:17%;">
                                    <input id="standard2" type="text" lay-verify="" disabled placeholder=""
                                       class="layui-input">
                                 </div>
                              </div>
                           </td>
                        </tr>
                     </table>
                  </div>
                                        </td>
                                    </tr>
                                    <tr>
                                        <td colspan="3">
                                            <div class="layui-form-item">
                                                <label class="layui-form-label" style="width: 17%;">规格:</label>
                                                <div class="layui-input-block" style="width: 83%;margin-left:17%;">
                                                    <input id="standard2" type="text" lay-verify="" disabled placeholder=""
                                                        class="layui-input">
                                                </div>
                                            </div>
                                        </td>
                                    </tr>
                                </table>
                            </div>
                        </div>
                        <div id="kuqianlabel2" >
                            <div id="layout-bill" class="layui-form-item layout-dropdownlist">
                                <label class="layui-form-label lableWidth">入库单:</label>
                                <div class="layui-input-block" id="selectDiv">
                                    <select id="AsnBar2" lay-filter="getAsnBar2" lay-search>
                                        <option value=""></option>
                                    </select>
                                    <img src="/assets/down_arraw.png">
                                </div>
                            </div>
                        </div>
                  <div id="layout-pallet" class="layui-form-item layout-input">
                     <label class="layui-form-label lableWidth">托盘条码:</label>
                     <div class="layui-input-block">
@@ -538,11 +549,17 @@
         var form = layui.form;
         /* 标签切换代码 */
         var xianshiyemian = 0;
            /* 标签切换代码 */
         var sampleType = "";  //0 库内取样; 1 库前取样
            
            $('#kuneilabel').hide();
            $('#kuqianlabel').hide();
            $('#kuneilabel2').hide();
            $('#kuqianlabel2').hide();
            $('#kuneiQty').hide();
         $('#option1').attr("style", "background-color: aqua;width: 45.77%;float: left;text-align: center;"); //选中后颜色
         $('#option2').attr("style", "background-color: #999;width: 45.77%;float: right;text-align: center;"); //默认颜色
         $('#content2').hide();
@@ -613,18 +630,6 @@
            checkPalletState()
         })
         form.on('switch(IsZhengTuo)', function (obj) {
            if (obj.elem.checked) {
               $('#BoxDIv').attr("style", "display:none")
               isContinue="1";
            } else {
               $('#BoxDIv').attr("style", "display:block")
               isContinue="0";
            }
            $('#boxNo').val("");
            $('#boxNo3').val("");
         });
         //箱码文本框回车事件
         $("#boxNo").blur(function () {
            GetBoxInfo();
@@ -645,26 +650,34 @@
            synData(IP + "/PdaSo/IsEnableOkPalletNo", param, 'post', function (res) {
                    
               if (res.code == 0) { //成功 
                        synData(IP + "/PdaSo/IsEnableOkPalletNo", param, 'post', function (res) {
                        synData(IP + "/PdaSo/GetSampleType", param, 'get', function (res) {
                            if (res.code == 0){
                                if (res.data == "0") {//库内取样
                                    $('#kuneilabel').show();
                                    $('#kuneiQty').show();
                                    $('#kuqianlabel').hide();
                                    updateBillList();
                                    if ($('#bar').val() == "") {
                                        clear1();
                                        return;
                                    } else {
                                        updateSkuLotNoList();
                                        updateQtyList();
                                        getBar();
                                        GetBoxInfo();
                                    }
                                    sampleType = "0";
                                }
                                if (res.data == "1") {//库前取样
                                    $('#kuqianlabel').show();
                                    $('#kuneilabel').hide();
                                    $('#kuneiQty').hide();
                                    updateAsnBillList();
                                    GetBoxInfo();
                                    sampleType = "1";
                                }
                                // updateBillList();
                                // if ($('#bar').val() == "") {
                                //     clear1();
                                //     return;
                                // } else {
                                //     updateSkuLotNoList();
                                //     updateQtyList();
                                //     getBar();
                                //     GetBoxInfo();
                                // }
                            }else { //不成功
                                layer.msg(res.msg, {
                                    icon: 2,
@@ -680,7 +693,39 @@
               }
            });
         }
         //下拉单据选中后事件
            //初始化渲染 入库单
         function updateAsnBillList() {
                $("#AsnBar").empty()
                $("#AsnBar").append('<option value =>' + '</option>');
                form.render('select');
                var param = {
                    palletNo: $("#palletNo").val(),
                };
                synData(IP + "/PdaSo/GetAsnNoByPallet", param, 'get', function (res) {
                    if (res.code == 0) { //成功
                        console.log(res.data);
                        for (var i = 0; i < res.data.length; i++) {
                            if (i == 0) {
                                $("#AsnBar").append('<option value =' + res.data[i] + ' selected>' + res.data[i] + '</option>');
                            } else {
                                $("#AsnBar").append('<option value =' + res.data[i] + '>' + res.data[i] + '</option>');
                            }
                        }
                        form.render('select');
                    } else { //不成功
                        layer.msg(res.msg, {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                    }
                });
            }
            //下拉单据选中后事件
         form.on('select(getbar)', function (data) {
            if ($('#palletNo').val() == "") {
               layer.msg("请输入托盘条码", {
@@ -901,101 +946,137 @@
         //单拣货(确认按钮)
         form.on('submit(formPickScatter)', function (data) {
            if ($('#bar').val() == "") {
               layer.msg("请选择出库单", {
                  icon: 2,
                  time: 2000 //2秒关闭(如果不配置,默认是3秒)
               }); return;
            }
            if ($('#bar').val() == "") {
               layer.msg("请选择物料-批次", {
                  icon: 2,
                  time: 2000 //2秒关闭(如果不配置,默认是3秒)
               }); return;
            }
            if ($('#palletNo').val() == "") {
               layer.msg("请输入托盘码", {
                  icon: 2,
                  time: 2000 //2秒关闭(如果不配置,默认是3秒)
               }); return;
            }
            if(isContinue=="0"){
               if ($('#boxNo').val() == "") {
                  layer.msg("请输入箱码", {
                     icon: 2,
                     time: 2000 //2秒关闭(如果不配置,默认是3秒)
                  }); return;
               }
               if ($('#boxQty').val() == "") {
                  layer.msg("箱内数量为空,不能拣货", {
                     icon: 2,
                     time: 2000 //2秒关闭(如果不配置,默认是3秒)
                  });
                  return;
               }
               if(($('#boxNo3').val() != "" && ($('#pickQty1').val() != "" || $('#pickQty1').val() != 0))){
                  layer.msg("追溯条码和拣货数量不能同时输入!", {
                     icon: 2,
                     time: 2000 //2秒关闭(如果不配置,默认是3秒)
                  });
                  return;
               }
               if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){
                  layer.msg("拣货数量不能大于待拣数量!", {
                     icon: 2,
                     time: 2000 //2秒关闭(如果不配置,默认是3秒)
                  });
                  return;
               }
            }
            // let boxQty = parseInt($('#boxQty').val())
            // let qty = parseInt($('#qty').val())
            // if (qty <= 0 || qty > boxQty) {
            //    layer.msg("拣货数量需大于0,并且不能超过待拣箱内数量", {
            //       icon: 2,
            //       time: 2000 //2秒关闭(如果不配置,默认是3秒)
            //    });
            //    return;
            // }
                if (sampleType == "0") {
                    if ($('#bar').val() == "") {
                        layer.msg("请选择出库单", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        }); return;
                    }
                    if ($('#bar').val() == "") {
                        layer.msg("请选择物料-批次", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        }); return;
                    }
                    if ($('#palletNo').val() == "") {
                        layer.msg("请输入托盘码", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        }); return;
                    }
                    if(isContinue=="0"){
                        if ($('#boxNo').val() == "") {
                            layer.msg("请输入箱码", {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            }); return;
                        }
                        if ($('#boxQty').val() == "") {
                            layer.msg("箱内数量为空,不能拣货", {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            });
                            return;
                        }
                        if(($('#boxNo3').val() != "" && ($('#pickQty1').val() != "" || $('#pickQty1').val() != 0))){
                            layer.msg("追溯条码和拣货数量不能同时输入!", {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            });
                            return;
                        }
                        if($('#pickQty1').val() != "" && $('#pickQty1').val()>parseInt($('#pickQty').val())){
                            layer.msg("拣货数量不能大于待拣数量!", {
                                icon: 2,
                                time: 2000 //2秒关闭(如果不配置,默认是3秒)
                            });
                            return;
                        }
                    }
                }
                else if (sampleType == "1") {
                    if ($('#AsnBar').val() == "") {
                        layer.msg("请选择入库单", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        }); return;
                    }
                    if ($('#boxNo').val() == "") {
                        layer.msg("请输入箱码", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        }); return;
                    }
                    if(($('#boxNo3').val() != "" && ($('#pickQty1').val() != "" || $('#pickQty1').val() != 0))){
                        layer.msg("追溯条码和拣货数量不能同时输入!", {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                        return;
                    }
                }
                else {
                    layer.msg("类型错误,请刷新页面重试", {
                        icon: 2,
                        time: 2000 //2秒关闭(如果不配置,默认是3秒)
                    });
                    return;
                }
                if (canPickBox == false) {
            if (canPickBox == false) {
                    layer.msg("请求未完成,不要重复请求", {
                        icon: 2,
                        time: 2000 //2秒关闭(如果不配置,默认是3秒)
                    });
                    return;
                }
               layer.msg("请求未完成,不要重复请求", {
                  icon: 2,
                  time: 2000 //2秒关闭(如果不配置,默认是3秒)
               });
               return;
            }
            reqPickScatter()
                reqPickScatter()
            return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
         });
         //确认拣货 
         function reqPickScatter() {
                canPickBox = false//回调
            var param = {
               "SoNo": $("#bar").val(),
               "SoDetailId": $("#skuLotNo").val(),
               "PalletNo": $('#palletNo').val(),
               "BoxNo": $('#boxNo').val(),
               "BoxNo3": $('#boxNo3').val(),
               "PickQty":$('#pickQty1').val()
               "PickQty":$('#pickQty1').val(),
               "AsnNo":$('#AsnBar').val(),
                    "Type":sampleType
            }
            sendData(IP + "/PdaSo/SoSetPick", param, 'post', function (res) {
               //console.log(res);
            sendData(IP + "/PdaSo/SampleSoSetPick", param, 'post', function (res) {
               
               if (res.code == 0) { //成功
                  layer.msg(res.msg, {
                     icon: 1,
                     time: 2000 //2秒关闭(如果不配置,默认是3秒)
                  }, function () {
                     canPickBox = true//回调
                     $("#boxNo").val('');
                     $("#boxNo3").val('');
                     updateQtyList();
                     getBar();
                     GetBoxInfo();
                            if (sampleType == "0") {
                                canPickBox = true//回调
                                $("#boxNo").val('');
                                $("#boxNo3").val('');
                                updateQtyList();
                                getBar();
                                GetBoxInfo();
                            }
                            if (sampleType == "1") {
                                canPickBox = true//回调
                                $("#boxNo").val('');
                                $("#boxNo3").val('');
                                $("#pickQty1").val('');
                                GetBoxInfo();
                            }
                  });
               } else { //不成功
                  layer.msg(res.msg, {
@@ -1189,27 +1270,76 @@
            }
            checkPalletState2()
         })
             //初始化渲染 入库单
         function updateAsnBillList2() {
                $("#AsnBar2").empty()
                $("#AsnBar2").append('<option value =>' + '</option>');
                form.render('select');
                console.log("afdsaf")
                var param = {
                    palletNo: $("#palletNo2").val(),
                };
                synData(IP + "/PdaSo/GetAsnNoByPallet", param, 'get', function (res) {
                    if (res.code == 0) { //成功
                        console.log(res.data);
                        for (var i = 0; i < res.data.length; i++) {
                            if (i == 0) {
                                $("#AsnBar2").append('<option value =' + res.data[i] + ' selected>' + res.data[i] + '</option>');
                            } else {
                                $("#AsnBar2").append('<option value =' + res.data[i] + '>' + res.data[i] + '</option>');
                            }
                        }
                        form.render('select');
                    } else { //不成功
                        layer.msg(res.msg, {
                            icon: 2,
                            time: 2000 //2秒关闭(如果不配置,默认是3秒)
                        });
                    }
                });
            }
         //检查托盘状态
         function checkPalletState2() {
            var param = {
               "PalletNo": $("#palletNo2").val()
            }
            }
            synData(IP + "/PdaSo/IsEnableOkPalletNo", param, 'post', function (res) {
               if (res.code == 0) { //成功 
                  updateBillList2();
                  console.log($('#bar2').val())
                  if ($('#bar2').val() == "") {
                     console.log(1)
                     clear21();
                     return;
                  } else {
                     console.log(2)
                     updateSkuLotNoList2();
                     updateQtyList2();
                     getBar2();
                     GetDataInfo();
                  }
                        synData(IP + "/PdaSo/GetSampleType", param, 'get', function (res) {
                            if (res.code == 0){
                                if (res.data == "0") {//库内取样
                                    $('#kuneilabel2').show();
                                    $('#kuqianlabel2').hide();
                                }
                                if (res.data == "1") {//库前取样
                                    $('#kuqianlabel2').show();
                                    $('#kuneilabel2').hide();
                                    updateAsnBillList2();
                                }
                                // updateBillList2();
                                // console.log($('#bar2').val())
                                // if ($('#bar2').val() == "") {
                                //    console.log(1)
                                //    clear21();
                                //    return;
                                // } else {
                                //    console.log(2)
                                //    updateSkuLotNoList2();
                                //    updateQtyList2();
                                //    getBar2();
                                //    GetDataInfo();
                                // }
                            }else { //不成功
                                layer.msg(res.msg, {
                                    icon: 2,
                                    time: 2000 //2秒关闭(如果不配置,默认是3秒)
                                }, function () { });
                            }
                        });
               } else { //不成功
                  layer.msg(res.msg, {
                     icon: 2,