$(function(){ var focusId; $("input").focus(function(){ //记住焦点位置 focusId = this.id; //this.scrollIntoView(true);//回到顶部 //window.setTimeout("myScrollIntoView()",100); }); setTimeout(function() { $('#outOrderNo').focus(); }, 1000); //同步手工改数量 var last_qty = $("#_quantity").val(); function setQuantity(){ var _qty = $("#_quantity").val(); if(_qty < 0){ $("#_quantity").val(0); return; } if(_qty == last_qty){ return; } last_qty = _qty; $("#productQty").val(_qty); } window.setInterval(setQuantity,500); //当失去焦点按回车时,焦点回到之前焦点位置 $(window).keydown(function(event){ if((event.keyCode==13)) { $(".messager-body").window('close'); if(document.activeElement.id == null || document.activeElement.id ==''){ //回到上次焦点地方 //$("#"+focusId).focus(); } } }); //提交出库单号 $('#outOrderNo').keyup(function (event) { if (event.keyCode != "13") {return false;} $("#outOrderNo").val(trimStr($("#outOrderNo").val())); //播放扫描声音 playSound('../raw/scan.wav'); submitOutOrderNo(); }); //提交箱号 $('#boxNo').keyup(function (event) { if (event.keyCode != "13") {return false;} $("#boxNo").val(trimStr($("#boxNo").val())); //播放扫描声音 playSound('../raw/scan.wav'); submitBoxNo(); }); //条码回车 $('#barcode').keyup(function (event) { if (event.keyCode != "13") {return false;} $("#barcode").val(trimStr($("#barcode").val())); //播放扫描声音 playSound('../raw/scan.wav'); submitBarcode(); }); //提交 $('#productQty').keyup(function (event) { if (event.keyCode != "13") {return false;} $("#productQty").val(trimStr($("#productQty").val())); submitOutBox(); }); }); //提交出库单号 function submitOutOrderNo(){ var outOrderNo = $('#outOrderNo').val(); if(outOrderNo == ''){return;} var appRequest = $appRequest;//复制请求封装对象 appRequest.opType = OP_TYPE_MENU.OUT_BOXED_1; appRequest.msg = outOrderNo;//msg是消息内容主体 $.ajax({ type: 'POST', url: $appRequestUrl, contentType: "application/json; charset=utf-8", data: JSON.stringify(appRequest), success: function (appResponse) { if(!appResponse.success){ playSound('../raw/error.wav'); mui.alert(appResponse.msg, '警告', function() { setFocus('orderNo'); }); return; } mui.toast(appResponse.msg); var outOrder = appResponse.extend; $("#outOrderId").val(outOrder.id); $("#customerCode").val(outOrder.customerCode); $("#warehouseCode").val(outOrder.warehouseCode); $("#statusName").text(outOrder.statusName); $("#shipwayName").text(outOrder.shipwayName); //刷新显示待装箱明细 refreshItems(); //进入箱子操作 nextBox();//自动生成箱号 //自动提交箱号 if($("#isAutoCreateBox").val() == 'true'){submitBoxNo();} }, error: function () { playSound('../raw/error.wav'); mui.toast('网络断开或服务器发生异常'); } }); } var isShowDetails = false; function showDetails(){ if(!isShowDetails){ $("#showDetails").show(); isShowDetails = true; $("#showIco").attr("class", "fa fa-angle-double-up"); //刷新明细 refreshItems(); }else{ $("#showDetails").hide(); isShowDetails = false; $("#showIco").attr("class", "fa fa-angle-double-down"); } //回到上次焦点地方 if(focusId!=null && focusId != ''){ $("#"+focusId).focus(); } } //刷新显示待装箱明细 function refreshItems(){ var outOrderNo = $('#outOrderNo').val(); var outOrderId = $('#outOrderId').val(); if(outOrderId == ''){return;} var appRequest = $appRequest;//复制请求封装对象 appRequest.opType = OP_TYPE_MENU.OUT_BOXED_2; appRequest.msg = outOrderId;//msg是消息内容主体 $("#itemList").empty(); $.ajax({ type: 'POST', url: $appRequestUrl, contentType: "application/json; charset=utf-8", data: JSON.stringify(appRequest), success: function (appResponse) { if(!appResponse.success){ playSound('../raw/error.wav'); mui.alert(appResponse.msg, '警告', function() { setFocus('orderNo'); }); return; } //mui.toast(appResponse.msg); var waitQtyTotal = 0; var itemList = appResponse.extend; for(var index = 0; index < itemList.length; index ++){ var item = itemList[index]; handleNullFiled(item); item.boxedQty = item.boxedQty != null ? item.boxedQty:0; var waitBoxQty = item.totalQty - item.boxedQty;//未装数量 waitQtyTotal += waitBoxQty; if(waitBoxQty > 0){ waitBoxQty = ""+waitBoxQty+""; } var tr = ""; tr += "
"+item.barcode+"
"; tr += "
"+item.totalQty+"
"; tr += "
"+waitBoxQty+"
"; tr += ""; $("#itemList").append(tr); } $("#waitQtyTotal").text(waitQtyTotal); }, error: function () { mui.toast('网络断开或服务器发生异常'); } }); } //提交箱号 //提交装箱 var isSubmintBoxNoIng = false;//是否正在提交 function submitBoxNo(){ if(isSubmintBoxNoIng){return;} isSubmintBoxNoIng = true; var boxNo = $('#boxNo').val(); var outOrderNo = $('#outOrderNo').val(); var outOrderId = $('#outOrderId').val(); if(boxNo=='' || boxNo==null){ mui.toast('箱号不能为空'); return } if(outOrderNo=='' || outOrderNo==null){ mui.toast('订单号不能为空'); return } var formData = {outOrderId:outOrderId,outOrderNo:outOrderNo,boxNo:boxNo}; var appRequest = $appRequest;//复制请求封装对象 appRequest.opType = OP_TYPE_MENU.OUT_BOXED_3; appRequest.msg = JSON.stringify(formData);//msg是消息内容主体 $.ajax({ type: 'POST', url: $appRequestUrl, contentType: "application/json; charset=utf-8", data: JSON.stringify(appRequest), success: function (appResponse) { isSubmintBoxNoIng = false; if(!appResponse.success){ playSound('../raw/error.wav'); mui.alert(appResponse.msg, '警告', function() { setFocus('orderNo'); }); return; } var box = appResponse.extend; $("#boxId").val(box.id); nextBarcode(); }, error: function () { isSubmintBoxNoIng = false; mui.toast('网络断开或服务器发生异常'); } }); } //提交条码 function submitBarcode(){ var outOrderNo = $('#outOrderNo').val(); var outOrderId=$("#outOrderId").val(); var boxNo=$('#boxNo').val(); var barcode= $('#barcode').val(); if(outOrderId == ''){ mui.toast('请先提交出库单号'); return; } if(boxNo == ''){ mui.toast('箱子号码不能为空'); return; } if(barcode == ''){ mui.toast('商品条码不能为空'); return; } //显示商品条码 $("#barcodeShow").val(barcode); //判断是否扫描条码增加数量 if($('#autoSubmit').val() == 'true') { //扫描加1 var oralQty = $("#productQty").val(); if(oralQty == null || oralQty == ''){oralQty = 0;} $("#productQty").val((parseInt(oralQty)+1)); //回到条码输入框,用户应当继续扫描条码 //每扫一条就自动提交,因为商品摆放是杂乱的.不能要求每次拿相同的商品扫 submitOutBox(); //-- 每扫描一次,提交,并判断完成整单还是整个条码 //刷新明细,交互次数太多... --待改善 } else { //非自动提交.. 需手工输入装箱数量 $("#productQty").val("");//装箱数量 setFocus('productQty'); } } //提交装箱 var isSubmintIng = false;//是否正在提交 function submitOutBox(){ if(isSubmintIng){return;} isSubmintIng = true; var outOrderNo = $('#outOrderNo').val(); var outOrderId = $('#outOrderId').val(); var boxNo = $('#boxNo').val(); var boxId = $('#boxId').val(); var barcode = $("#barcode").val(); //如果是扫描增加数量,条码输入框是空的,从展示条码取 var barcode= $('#barcode').val(); if(barcode == null || barcode == ''){ barcode = $("#barcodeShow").val(); $('#barcode').val(barcode); } var productQty = $("#productQty").val(); if(boxNo==''){ isSubmintIng = false; mui.alert('箱号不能为空', '警告', function() { setFocus('boxNo'); }); return; } if(boxId==''){ isSubmintIng = false; mui.alert('请先提交箱号,在箱号输入框按回车', '警告', function() { setFocus('boxNo'); }); return; } if(productQty==''){ isSubmintIng = false; mui.alert('商品数量不能为空', '警告', function() { setFocus('productQty'); }); return; } if(barcode==''){ isSubmintIng = false; mui.alert('条码不能为空', '警告', function() { setFocus('barcode'); }); return } if(outOrderNo==''){ isSubmintIng = false; mui.alert('订单号不能为空', '警告', function() { setFocus('outOrderNo'); }); return; } var formData = {outOrderId:outOrderId,outOrderNo:outOrderNo,boxNo:boxNo,boxId:boxId,barcode:barcode,productQty:productQty}; var appRequest = $appRequest;//复制请求封装对象 appRequest.opType = OP_TYPE_MENU.OUT_BOXED_4; appRequest.msg = JSON.stringify(formData);//msg是消息内容主体 var nwaiting = plus.nativeUI.showWaiting('正在提交中...'); $.ajax({ type: 'POST', url: $appRequestUrl, contentType: "application/json; charset=utf-8", data: JSON.stringify(appRequest), success: function (appResponse) { isSubmintIng = false; nwaiting.close(); if(!appResponse.success){ playSound('../raw/error.wav'); mui.alert(appResponse.msg, '警告', function() { setFocus('locationCode'); }); return; } mui.toast(appResponse.msg); //播放成功声音 playSound('../raw/ok.wav'); //整单完成. 下一个出库单 if(appResponse.extend){ cleanAll(); return; } //刷新显示待装箱明细 refreshItems(); //下一个条码 nextBarcode(); }, error: function () { isSubmintIng = false; nwaiting.close(); playSound('../raw/error.wav'); mui.toast('网络断开或服务器发生异常'); } }); } function cleanAll(){ isSubmintBoxNoIng = false; isSubmintIng = false; $("#outOrderId").val(""); $("#outOrderNo").val(""); $("#statusName").text(""); $("#shipwayName").text(""); $("#waitQtyTotal").text(""); $("#itemList").empty(); $("#warehouseCode").val(""); $("#customerCode").val(""); $("#boxNo").val(""); $("#boxId").val(""); $("#barcode").val(""); $("#allocationId").val(""); $("#barcodeShow").val(""); $("#productQty").val(""); $("#_quantity").val("0"); $('#outOrderNo').focus(); } //下一个箱子 function nextBox(){ $("#boxId").val(''); $("#boxNo").val(''); //自动生成箱号 if($("#isAutoCreateBox").val() == 'true'){genBoxNo();} $("#boxNo").focus(); } //下一个条码 function nextBarcode(){ $("#barcode").val(""); $("#barcodeShow").val(""); $("#productQty").val(""); $("#barcode").focus(); } //生成箱子号码 function genBoxNo(){ //获取完整的日期 var date=new Date; var year=date.getFullYear(); var month=date.getMonth()+1; month =(month<10 ? "0"+month:month); var day=date.getDate(); day =(day<10 ? "0"+day:day); var hours = date.getHours(); hours =(hours<10 ? "0"+hours:hours); var minutes = date.getMinutes(); minutes =(minutes<10 ? "0"+minutes:minutes); var seconds = date.getSeconds(); seconds =(seconds<10 ? "0"+seconds:seconds); var currentDate = (year.toString() + month.toString() + day.toString() + hours.toString() + minutes.toString() + seconds.toString()); //2019-05-11决定简化箱号,使用数字1,2,3..方便直观看到订单有几个箱子,方便输入 $("#boxNo").val("1"); //$("#boxNo").val(currentDate); }