function check(onstart) { var pdbjxx = document.forms[0]; if(pdbjxx.barcode) { var barcode = pdbjxx.barcode.value; if (onstart || (barcode.length == 0 && pdbjxx.jhs.value.length == 0)) { focusInput(pdbjxx.barcode); if (onstart) pdbjxx.jhs.value = ""; return onstart; } if (isInvalidCode(barcode)) { return false; } //处理扫入到的条码。 var jhs = pdbjxx.jhs.value; if (jhs.indexOf("|" + barcode + "|") >= 0) { alert("重复扫入条码:" + barcode); } else {//追加条码 var wsslInfo = document.getElementById("wssl"); var newValue = parseInt(wsslInfo.innerHTML); if (barcode.length > 0) { pdbjxx.jhs.value = (jhs.length > 1?jhs:"|") + barcode + "|"; var countInfo = document.getElementById("count"); var oldCount = countInfo.getAttribute("total"); var newCount = parseInt(oldCount) + 1; countInfo.setAttribute("total", newCount) countInfo.innerHTML = scanedCntTip + newCount + removeLastButtonElement; newValue = newValue - 1; wsslInfo.innerHTML = newValue; pdbjxx.cmdSave.disabled = null; } if (newValue == 0) {//未扫入数量等于0,才提交保存 pdbjxx.cmdSave.disabled = "true"; smwcqr(pdbjxx.pddh.value, pdbjxx.kwbhAndTpbh.value, pdbjxx.jhs.value); } } pdbjxx.barcode.value = ""; focusInput(pdbjxx.barcode); return false; } var x; x = pdbjxx.kwbh; if(x) { focusInput(x); if (!onstart) { if (getFieldValue(x).length == 0) { return false; } } return true; } x = pdbjxx.pddh; if(x) { focusInput(x); if (!onstart) { if (getFieldValue(x).length == 0) { return false; } } return true; } return false; } var smwcqrOk = false, qctpOk = false; //取托盘操作 function qctp(pddh, pdkw, tpbh) { var argument = new Array("tpbh", tpbh, "ckkw", pdkw, "remark", "盘点出库", "table", "w_pdmx", "field", "qczt", "pzbh", pddh); postRequest("qtp.jsp", argument, successQctp); } //取托盘操作 回调函数 function successQctp(result) { finishProcess(); //alert("成功下发取托盘作业指令"); var pdbjxx = document.forms[0]; var kwbhAndTpbh = pdbjxx.kwbhAndTpbh.value; var indexSeparator = kwbhAndTpbh.indexOf('|'); var tpbh = kwbhAndTpbh.substring(1 + indexSeparator); var tpbhNode = document.getElementById("tpbh"); tpbhNode.innerHTML = tpbh; } /** * 扫描完成确认操作 * @param pddh 盘点单号 * @param kwbhAndTpbh 盘点库位号 * @param jhs |表计条码1|表计条码2|....|表计条码n| */ function smwcqr(pddh, kwbhAndTpbh, jhs) { try { var indexSeparator = kwbhAndTpbh.indexOf('|'); var kwbh = ""; if (indexSeparator > 1) { kwbh = kwbhAndTpbh.substring(0, indexSeparator); } var argument = new Array("pddh", pddh, "kwbh", kwbh, "jhs", jhs); postRequest("pdqr.jsp", argument, successSmwcqr, exceptionOnQr); } catch(e) { alert("程序错误:" + e); } return smwcqrOk; } function successSmwcqr(result) { finishProcess(); var pdbjxx = document.forms[0]; pdbjxx.jhs.value = ""; var wsmsl = result.getAttribute("wsmsl"); var sl = parseInt(wsmsl); if (sl >= 0) { var wsslInfo = document.getElementById("wssl"); wsslInfo.innerHTML = sl; var countInfo = document.getElementById("count"); var newCount = countInfo.getAttribute("total"); countInfo.innerHTML = scanedCntTip + newCount; pdbjxx.barcode.focus(); } } function exceptionOnQr(ex) { var pdbjxx = document.forms[0]; pdbjxx.cmdSave.disabled = null; exception(ex); } /** * 提交扫描结果 */ function save() { try { var pdbjxx = document.forms[0]; var jhs = pdbjxx.jhs.value; var barcode = pdbjxx.barcode.value; if (barcode.length > 1 && !isInvalidCode(barcode)) { check(false); jhs = pdbjxx.jhs.value; } if (jhs.length < 1) { alert("至少要一个条码"); return false; } smwcqr(pdbjxx.pddh.value, pdbjxx.kwbhAndTpbh.value, jhs); } catch(e) { alert("程序错误:" + e); } return smwcqrOk; } /** * 扫描完成确认操作 * @param pddh 盘点单号 * @param kwbhAndTpbh 盘点库位号 */ function endScan() { try { var pdbjxx = document.forms[0]; var pddh = pdbjxx.pddh.value; var kwbhAndTpbh = pdbjxx.kwbhAndTpbh.value; var indexSeparator = kwbhAndTpbh.indexOf('|'); var kwbh = ""; if (indexSeparator > 1) { kwbh = kwbhAndTpbh.substring(0, indexSeparator); } var argument = new Array("pddh", pddh, "kwbh", kwbh, "end", "1"); postRequest("pdqr.jsp", argument, successEndScan); } catch(e) { alert("程序错误:" + e); } } //装盘操作确认完成 回调函数 function successEndScan(result) { finishProcess(); var pdbjxx = document.forms[0]; var wsmsl = result.getAttribute("wsmsl"); //alert(wsmsl); var sl = parseInt(wsmsl); if (sl >= 0) {//对应的盘点库位或盘点单扫描操作结束,但还有其它盘点库位或盘点单 var kwbhAndTpbh = pdbjxx.kwbhAndTpbh.value; var indexSeparator = kwbhAndTpbh.indexOf('|'); var scanForAll = indexSeparator <= 1; history.go(scanForAll?-2:-1); window.location.href = scanForAll?"pd.jsp":("pd.jsp?pddh=" + pdbjxx.pddh.value); } else if (sl == -1) {//没有其它盘点库位 history.go(-2); window.location.href = "pd.jsp"; } else if (sl == -2) {//没有其它盘点单,回到登录界面 history.go(-3); } }