|
|
<#import "../master.ftl" as master><@master.layout>
<div class="page-header"> <h3>${title}</h3></div>
<div class="row" id="app"> <div class="col-md-4"> <p><input id="rollNo" name="rollNo" type="text" class="form-control" placeholder="Roll No" /></p> <table id="tblInfo" class="table"> </table> </div> <input type="hidden" id="processNumber" value=""> <input type="hidden" id="orderNo" value=""> <p><button id="btnStatus" onclick="updateStatus()" class="btn btn-default" style="margin-left: 15px;">Refresh Status</button></p> <div class="col-md-1" id="actions" style="display: none"> <#if currentUser.isAdmin || currentUser.authorities?contains("refreshRollStatus")> <p><button id="refreshRollStatus" onclick="refreshRollStatus()" class="btn btn-default">Reverse All Scanning Data</button></p> </#if> <#if func?is_string && func != "indigo"> <p><button id="btnConfirm" onclick="doConfirm()" class="btn btn-default">Confirm quantity</button></p> <p><button id="scanMaterial" onclick="scanMaterialModal()" class="btn btn-default">扫描材料</button></p> </#if> <p><button id="btnStart" onclick="doStartModal()" class="btn btn-default">Scan</button></p> <p><button id="btnSetup" onclick="doSetupModal()" class="btn btn-default">Scan/setup</button></p> <p><button id="btnFai" onclick="doFaiModal()" class="btn btn-default">Scan/first off</button></p> <p><button id="btnCut" onclick="showCutRolls()" class="btn btn-default">Slit roll</button></p> <p><button id="btnEai" onclick="countEaiRows()" class="btn btn-default">Scan/last off</button></p>
<#if func?is_string && func == "indigo"> <p><button id="btnCreateRoll" onclick="doCreateRoll()" class="btn btn-default">Create new roll</button></p> </#if> <#if func?is_string && func != "indigo"> <p><button id="btnBad" onclick="doBadModal()" class="btn btn-default">Type defective serial number</button></p> <p><button id="btnBadRange" onclick="doBadRangeModal()" class="btn btn-default">Batch defective serial number</button></p> </#if> <#if func?is_string && func == "abg"> <p><button id="printSlitting" onclick="slittingPrint()" class="btn btn-default">Print Label</button></p>
</#if>
</div></div>
<div class="row" > <div class="col-md-12" id="tblRollOpInfo"> </div></div>
<!-- 开工扫号的modal --><div id="dlg-start" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-start-buttons"> <form id="fm-start" method="post" novalidate style="margin:0;padding:20px 20px"> <div style="margin-bottom:10px"> <input id="start_firstSerialNo" name="firstSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="The first serial number:" style="width:100%"> </div> </form></div><div id="dlg-start-buttons" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" id="badOK" onclick="doStart()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg-start').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 调机扫号 --><div id="dlg-setup" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-setup-buttons"> <form id="fm-setup" method="post" novalidate style="margin:0;padding:20px 20px">
<div style="margin-bottom:10px"> <input id="setup_firstSerialNo" name="firstSerialNo" class="easyui-textbox" disabled="disabled" data-options="labelWidth:100" label="The first serial number:" style="width:100%"> </div>
<div style="margin-bottom:10px"> <input id="setup_endSerialNo" name="endSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="The second serial number:" style="width:100%"> </div> </form></div><div id="dlg-setup-buttons" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" id="badOK" onclick="doSetup()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg-setup').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 首件扫号 --><div id="dlg-fai" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-fai-buttons"> <form id="fm-fai" method="post" novalidate style="margin:0;padding:20px 20px">
<div style="margin-bottom:10px"> <input id="fai_firstSerialNo" name="firstSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="The first serial number:" style="width:100%"> </div>
<div style="margin-bottom:10px"> <input id="fai_endSerialNo" name="endSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="The second serial number:" style="width:100%"> </div> </form></div><div id="dlg-fai-buttons" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" id="badOK" onclick="doFai()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg-fai').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 单个不良 --><div id="dlg-bad" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-bad-buttons"> <form id="fm-bad" method="post" novalidate style="margin:0;padding:20px 20px"> <div style="margin-bottom:10px"> <input id="bad_serialNo" name="serialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="Defective serial number:" style="width:100%"> </div> </form></div><div id="dlg-bad-buttons" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" id="badOK" onclick="doSingleBad()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg-bad').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 批量不良 --><div id="dlg-batch-bad" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-batch-bad-buttons"> <form id="fm-batch-bad" method="post" novalidate style="margin:0; padding: 20px 20px;"> <div style="margin-bottom:10px"> <input id="start_bad_serial" name="firstSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="开始序列号:" style="width:100%"> </div> <div style="margin-bottom:10px"> <input id="end_bad_serial" name="endSerialNo" class="easyui-textbox" required="true" data-options="labelWidth:100" label="结束序列号:" style="width:100%"> </div> </form></div><div id="dlg-batch-bad-buttons" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" id="badOK" onclick="countBadRange()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlg-batch-bad').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 卷分切--><div id="dlg-cut" class="easyui-dialog" style="width:800px;display: none;" closed="true" data-options="modal:true, " > <div style="margin-bottom:10px; margin-left: 20px; margin-top: 10px;"> <input id="end_serial_no" name="endSerialNo" class="easyui-textbox" required="true" label="结束序列号:" style="width:60%"> <a href="javascript:void(0)" id="tbAdd" class="easyui-linkbutton" iconCls="icon-add" onclick="doCutting()">Create Slitting Roll</a> </div> <table id="dlg-cut-rolls" class="easyui-datagrid" style="width:100%;height:300px;display: none;" data-options="pagination: false, showFooter: true, singleSelect:true, fitColumns:true , method:'post', pageSize:500,"> <thead> <tr> <th data-options="field:'rollNo',width:80,">Slitting Roll No</th> <th data-options="field:'oriRollNo',width:80,">源卷号</th> <th data-options="field:'serialRowStart',width:60">From Row No</th> <th data-options="field:'serialRowEnd',width:60">To Row No</th> <th data-options="field:'columnSortIndex',width:80">No. of Cross</th> <th data-options="field:'id',width:30, formatter: formatCutRollButton">Actions</th> </tr> </thead> </table></div>
<!-- 数量确认 --><div id="dlgConfirm" class="easyui-dialog for-scan" style="width:500px;display: none;" closed="true" buttons="#dlg-buttons-confirm"> <form id="fm" method="post" novalidate style="margin:0;padding:20px 20px"> <div style="margin-bottom:10px"> <input name="workNo" class="easyui-textbox" data-options="labelWidth:100" required="true" label="Emoloyee ID:" style="width:100%"> </div> </form></div><div id="dlg-buttons-confirm" style="display: none;"> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-ok" onclick="doConfirmOK()" style="width:90px">OK</a> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#dlgConfirm').dialog('close')" style="width:90px">Cancel</a></div>
<!-- 扫描材料modal(优化版) --><div id="scan_material_dlg" class="easyui-dialog" style="width: 720px; display: none;" closed="true" data-options="modal:true, onOpen:function(){$('#scan_material_batch').focus();}, buttons:'#tb_scan_material'"> <form id="scan_material_fm" method="post" novalidate style="margin:0; padding: 16px 16px 8px 16px;"> <div id="material_batch_wrap" style="margin-bottom:10px"> <label style="display:block; margin-bottom:6px; color:#666;">请扫描材料条码:</label> <textarea id="scan_material_batch" name="code" rows="3" style="width:100%; resize: vertical;" placeholder="请扫描材料批次"></textarea> </div> <div id="material_serial_wrap" style="margin-bottom:10px; display:none;"> <label style="display:block; margin-bottom:6px; color:#666;">请扫描结束码包:</label> <input id="material_serial_no" name="materialSerialNo" class="easyui-textbox" style="width:100%" placeholder="请扫描结束码包"> </div> </form> <table id="scan_material_list" class="easyui-datagrid" style="width:100%;height: 300px;" data-options="pagination:false, singleSelect:true, fitColumns:true, method:'POST'"> <thead> <tr> <th data-options="field:'rollNo',width:120">Roll No</th> <th data-options="field:'componentPartNo',width:140">物料号</th> <th data-options="field:'customerBatchNo',width:160">材料批次号</th> <th data-options="field:'columnSortIndex',width:80,align:'center'">No. of Cross</th> <th data-options="field:'startRow',width:80,align:'center'">From Row No</th> <th data-options="field:'endRow',width:80,align:'center'">To Row No</th> <th data-options="field:'scanTime',width:140">扫描时间</th> <th data-options="field:'scanBy',width:100">扫描人</th> </tr> </thead> </table></div><div id="tb_scan_material" style="padding:10px 5px; display: none; text-align: center;"> <div> <a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-cancel" onclick="javascript:$('#scan_material_dlg').dialog('close')">Close</a> </div></div>
<style> table.roll-op-serials { border: 1px solid gray; } table.roll-op-serials td{ border: 1px dotted gray; padding: 3px; text-align: center; text-align: center; font-family: Arial,monospace; font-size: 11px; background-color: aliceblue; }
table.roll-op-serials td .serial-no{ font-size: 11px; }
</style><script type="text/javascript" src="/js/layer/layer.js"></script><script src='http://127.0.0.1:8000/CLodopfuncs.js'></script><script type="text/javascript" src="/js/external/print/print_label.js"></script><script> var formPostUrl=""; var currentRoll=""; var currentRollOp = {}; var currentOrder={}; var firstRollFlag = 0; var urlPath="/rollop/${func}"; var enableScanMaterialNo = false; var temp_row; var doUrl = ""; var flag = "N"; let currentItemNo = 20;//当前的工序 let currentPrinter = ${currentPrinter}; let clodoplisence = '${clodoplisence}';
function show2ndBox(b){ showEl("#dlg #serial_input_1st", true); showEl("#dlg #serial_input_2nd", true); showEl("#dlg #serial_input_2nd", b); $('#dlg #endSerialNo').textbox({disabled:!b}); }
function showDialog(title, serialNum, postUrl){ show2ndBox(serialNum > 1); $('#dlg').dialog('open').dialog('center').dialog('setTitle',title); $('#dlg form').form('clear'); $('#dlg #rollNo_display').textbox({"value": currentRoll}); formPostUrl = urlPath + postUrl + "?rollNo="+currentRoll; doUrl = urlPath + "/badRange/do?rollNo="+currentRoll; }
function doConfirm(){ $('#dlgConfirm').dialog('open').dialog('center').dialog('setTitle',"Confirm quantity"); $('#dlgConfirm form').form('clear'); }
function doConfirmOK(){ console.log(urlPath + "/confirm/do?rollNo=" + currentRoll) $('#dlgConfirm form').form('submit',{ url: urlPath + "/confirm/do?rollNo=" + currentRoll, onSubmit: function(){ return $(this).form('validate'); }, success: function(result){ var result = $.parseJSON(result); if (result.success){ refreshRollInfo(currentRoll); $('#dlgConfirm').dialog('close'); // close the dialog } else { $.messager.alert('error',result.errorMsg, 'error'); } } }); }
//打开分切卷的数据 LR 2024-06-25function showCutRolls(){ //各种参数 let rollNo = $("#rollNo").val(); $('#dlg-cut').dialog('open').dialog('center').dialog('setTitle',"Slit roll"); $("#dlg-cut-rolls").datagrid({ url: "/abg/getCutRolls", queryParams: { rollNo: rollNo, } });}
//modal打开关闭选中的箱$("#dlg-cut").dialog({ onOpen: function(){ //获取焦点 //showEl("#dlg #input_roll", true); $('#end_serial_no').textbox('setValue', ''); $('#end_serial_no').textbox('textbox').focus(); }});
//开工扫号功能function doStartModal(){ $('#dlg-start').dialog('open').dialog('center').dialog('setTitle', 'Scan'); $('#dlg-star form').form('clear');}
//modal打开关闭选中的箱$("#dlg-start").dialog({ onOpen: function(){ //获取焦点 //showEl("#dlg #input_roll", true); $('#start_firstSerialNo').textbox('setValue', ''); $('#start_firstSerialNo').textbox('textbox').focus(); }});
/* 调机扫号 */function doSetupModal(){ $('#dlg-setup').dialog('open').dialog('center').dialog('setTitle', 'Scan/setup'); $('#dlg-setup form').form('clear'); //设置数据 $("#setup_firstSerialNo").textbox({value: currentRollOp.toSetupSerialNo || ""}); $("#setup_firstSerialNo").textbox({disabled:true});}
//modal打开关闭选中的箱$("#dlg-setup").dialog({ onOpen: function(){ //获取焦点 //showEl("#dlg #input_roll", true); $('#setup_endSerialNo').textbox('textbox').focus(); }});
//首件扫号的modalfunction doFaiModal(){ $('#dlg-fai').dialog('open').dialog('center').dialog('setTitle', 'Scan/first off'); $('#dlg-fai form').form('clear'); //设置数据}
//modal打开关闭选中的箱$("#dlg-fai").dialog({ onOpen: function(){ //获取焦点 //showEl("#dlg #input_roll", true); $('#fai_firstSerialNo').textbox('textbox').focus(); }}); //首件扫号的modalfunction doBadModal(){ $('#dlg-bad').dialog('open').dialog('center').dialog('setTitle', 'Type defective serial number'); $('#dlg-bad form').form('clear');}
//modal打开关闭选中的箱$("#dlg-bad").dialog({ onOpen: function(){ //获取焦点 //showEl("#dlg #input_roll", true); $('#bad_serialNo').textbox('textbox').focus(); }}); /* 新增不良批量 2024-06-25 LR */function doBadRangeModal(){ $('#dlg-batch-bad').dialog('open').dialog('center').dialog('setTitle', 'Batch defective serial number'); $('#dlg-batch-bad form').form('clear');}
//modal打开关闭选中的箱$("#dlg-batch-bad").dialog({ onOpen: function(){ //获取焦点 $('#start_bad_serial').textbox('textbox').focus(); }});
$("#rollNo").on("keydown", function(){ if(event.keyCode == 13){ refreshRollInfo($.trim($(this).val())); } });
<#if RequestParameters.rollNo ??> $(function(){ $("#rollNo").val("${RequestParameters.rollNo}"); refreshRollInfo("${RequestParameters.rollNo}"); }); </#if>
function doCreateRoll(){ if (currentOrder){ $.messager.confirm('Confirm','Are you sure to create new roll for the shop order <b>'+currentOrder.orderNo+'</b>? ',function(r) { if (r){ $.post("/indigo/create_roll/do", {orderNo: currentOrder.orderNo}, function(data){ if (data.success && data.newRollNo){ $("#rollNo").val(data.newRollNo); refreshRollInfo(data.newRollNo); } }); } }); } } function slittingPrint() { $.messager.confirm('Confirm','Is Printed ?',function(r){ if (r){ $("#ifmforprint").attr('src', "/print/rollnoSlitting/" + currentRollOp.operationNo + "/" + currentRoll + "/"); console.log("/print/rollnoSlitting/" + currentRollOp.operationNo + "/" + currentRoll + "/") } }); }
function refreshRollStatus(){
$.messager.confirm('Confirm','Are you sure to reverse all scanning data ?',function(r){ if (r){ $.post(urlPath+"/refreshRollStatus", {rollNo: currentRoll}, function(data){ if (data.success ){
refreshRollInfo($("#rollNo").val()); $.messager.alert('info',"Successfully",'info'); }else{ $.messager.alert('error',data.errorMsg,'error'); } }) } }); }
//回车触发事件function refreshRollInfo(rollNo){ <#if func == "indigo"> $("#processNumber").val("10"); </#if> <#if func == "thermal"> $("#processNumber").val("15"); </#if> <#if func == "cut"> $("#processNumber").val("18"); </#if> <#if func == "abg"> $("#processNumber").val("20"); </#if> <#if func == "aoi"> $("#processNumber").val("30"); </#if> var $tblInfo = $("#tblInfo"); var $tblRollOpInfo = $("#tblRollOpInfo"); $tblInfo.html(""); $tblRollOpInfo.html(""); let requestParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'func': 'abg'}; $.post("/rollop/newGetRoll", requestParam, function(data){ if (data.success && data.roll){ showEl("#actions", data.showAction); enableEl("#btnConfirm", data.enableConfirm); enableEl("#btnStatus", data.enableStatus); enableEl("#btnStart", data.enableStart); enableEl("#btnSetup", data.enableSetup); enableEl("#btnFai", data.enableFai); enableEl("#btnEai", data.enableEai); enableEl("#btnBad", data.enableBad);
//判断是否打开当前的卷 <#if func == "abg"> enableEl("#btnCut", data.enableCut);//2024-07-05 LR添加分卷 </#if> <#if currentUser.isAdmin || currentUser.authorities?contains("refreshRollStatus")> enableEl("#refreshRollStatus", true); </#if>
<#if func != "indigo">
enableEl("#btnBad",!data.scanStatus); enableEl("#btnBadRange", !data.scanStatus); enableEl("#printSlitting", data.rollOp && data.rollOp.remainSnCount); </#if> enableEl("#scanMaterial", data.rollOp && data.enableScanMaterial); //判断是否显示 if(data.rollOp && data.enableScanMaterialBatch){ $('#material_batch_wrap').show(); }else { $('#material_batch_wrap').hide(); } if(data.rollOp && data.enableScanMaterialNo){ $('#material_serial_wrap').show(); }else { $('#material_serial_wrap').hide(); } enableScanMaterialNo = data.enableScanMaterialNo; currentRoll = data.roll.rollNo; currentRollOp = data.rollOp; currentOrder=data.roll.order; var rollNoDisplay = data.roll.rollNo; if (data.rollOp && data.rollOp.remainSnCount){ rollNoDisplay = "<a target='forprint' href='/print/rollno/"+data.rollOp.operationNo+"/"+rollNoDisplay+"/'>"+rollNoDisplay+"</a>";
}
$tblInfo.append("<tr><td>SO No:</td><td>"+data.roll.orderNo+"</td></tr>"); $tblInfo.append("<tr><td>Roll No:</td><td>"+rollNoDisplay+"</td></tr>"); $tblInfo.append("<tr><td>Status</td><td>"+(data.roll.status || "-")+"</td></tr>"); $("#orderNo").val(data.roll.orderNo); if (data.rollOpHtml){ $tblRollOpInfo.append(data.rollOpHtml); }
if (data.prevCount){ $tblInfo.append("<tr><td>Serials Qty:</td><td>"+(data.prevCount)+"</td></tr>");
} $tblInfo.append("<tr><td>Good Products Qty:</td><td>"+(data.qtyBad)+"</td></tr>"); $tblInfo.append("<tr><td>Defect Product Qty:</td><td>"+(data.qtyApprove)+"</td></tr>"); $tblInfo.append("<tr><td>Total Qty:</td><td>"+(data.qtyAll)+"</td></tr>"); if (data.prevCount){ $tblInfo.append("<tr><td>Different Qty:</td><td>"+(data.prevDifferent)+"</td></tr>");
} if (data.badSns){ $tblInfo.append("<tr><td>Defective serial number:</td><td>"+(data.badSns.split(",").join("<br />") || "-")+"</td></tr>"); }
if (data.slittingRolls){ $tblInfo.append("<tr><td>Slitting Roll No:</td><td>"+(data.slittingRolls.split(",").join("<br />") || "-")+"</td></tr>"); }
checkWithWorkingOrder(data.roll.order.orderNo);
}else{ $tblInfo.append("<tr><td>"+data.msg+"</td></tr>"); } })} function checkWithWorkingOrder(orderNo) { var workingOrder = $("#hdnWorkingOrder").val();
if (workingOrder != orderNo){ var msg = 'Are you sure to swith to the order <b>'+orderNo+'</b>?'; if (workingOrder != "") { msg = 'The order of this roll does not match with the current order '+workingOrder+'.'; }
$("#tblInfo").html(""); $("#tblRollOpInfo").html(""); $("#actions").hide(); $.messager.alert("Error", msg, "error", function(){ $("#rollNo").val("").focus(); }); } } function getday(){ lay('.Selection_time').each(function(){ laydate.render({ elem: this }); }); $('.Selection_time').val(getToday()); } //获取当天日期 function getToday(){ var date = new Date(); var seperator1 = "-"; var year = date.getFullYear(); var month = date.getMonth() + 1; var strDate = date.getDate(); if (month >= 1 && month <= 9) { month = "0" + month; } if (strDate >= 0 && strDate <= 9) { strDate = "0" + strDate; } var currentdate = year + seperator1 + month + seperator1 + strDate; return currentdate; }
$(function () { $("#rollNo").focus(); }) //分切卷的功能function formatCutRollButton(value, row){ let tags = ''; tags += '<a style="text-decoration:none;" onclick="cacheAbgRollPrintData(\''+row.rollNo+'\')">补打标签</a>'; return tags;}
//调用方法打印标签function cacheAbgRollPrintData(rollNo){ let printParam = {'rollNo': rollNo} //请求参数 $.ajax({ url: "/abg/cacheCutRollPrintData", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: printParam, dataType: "JSON", success: function (data) { if(data.success){ currentPrinter.clodoplisence = clodoplisence; printCutRollLabel(JSON.parse(data.printData), currentPrinter); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//统计eai的行数function countEaiRows(){ //各种参数 let rollNo = $("#rollNo").val(); //组装参数 let eaiParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'username': username}; //请求参数 $.ajax({ url: "/abg/countEaiRows", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: eaiParam, dataType:"JSON", success: function (data) { if(data.success){ //判断是否超过限制的数量 if(data.resultCode == 201){ doEaiConfirm(data.maxRows); }else{ doEai();//直接eai } }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//确认是否末件扫号function doEaiConfirm(maxRows){ $.messager.confirm('Confirm', 'The no. of rows between the 2 scanned serials is over the limit rows'+maxRows+', are you sure to continue ?', function(r) { if (r){ //调用提交方法 doEai(); } });}
//提交的方法function doEai(){ //各种参数 let rollNo = $("#rollNo").val(); //组装参数 let eaiParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'username': username}; //请求参数 $.ajax({ url: "/abg/doEai", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: eaiParam, dataType:"JSON", success: function (data) { if(data.success){ //$.messager.alert("info",data.msg,"info",); //刷新当前的页面 refreshRollInfo(rollNo); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//开工扫号的方法function doStart(){ //各种参数 let rollNo = $("#rollNo").val(); let firstSerialNo = $('#start_firstSerialNo').textbox('getValue'); //组装参数 let startParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'username': username, 'firstSerialNo': firstSerialNo}; //请求参数 $.ajax({ url: "/abg/doStart", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: startParam, dataType:"JSON", success: function (data) { if(data.success){ //刷新当前的页面 refreshRollInfo(rollNo); //关闭弹窗 $('#dlg-start').dialog('close'); //$.messager.alert("info",data.msg,"info",); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//开工扫号的方法function doSetup(){ //各种参数 let rollNo = $("#rollNo").val(); let firstSerialNo = $('#setup_firstSerialNo').textbox('getValue'); let endSerialNo = $('#setup_endSerialNo').textbox('getValue'); //组装参数 let setupParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'username': username, 'firstSerialNo': firstSerialNo, 'endSerialNo': endSerialNo}; //请求参数 $.ajax({ url: "/abg/doSetup", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: setupParam, dataType:"JSON", success: function (data) { if(data.success){ //刷新当前的页面 refreshRollInfo(rollNo); //关闭弹窗 $('#dlg-setup').dialog('close'); //$.messager.alert("info",data.msg,"info",); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//开工扫号的方法function doFai(){ //各种参数 let rollNo = $("#rollNo").val(); let firstSerialNo = $('#fai_firstSerialNo').textbox('getValue'); let endSerialNo = $('#fai_endSerialNo').textbox('getValue'); //组装参数 let setupParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'username': username, 'firstSerialNo': firstSerialNo, 'endSerialNo': endSerialNo}; //请求参数 $.ajax({ url: "/abg/doFai", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: setupParam, dataType:"JSON", success: function (data) { if(data.success){ //刷新当前的页面 refreshRollInfo(rollNo); //关闭弹窗 $('#dlg-fai').dialog('close'); //$.messager.alert("info",data.msg,"info",); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//单个不良方法function doSingleBad(){ //各种参数 let rollNo = $("#rollNo").val(); let serialNo = $('#bad_serialNo').textbox('getValue'); //组装参数 let badParam = {'orderNo': workingOrder, 'itemNo': currentItemNo, 'rollNo': rollNo, 'username': username, 'serialNo': serialNo}; //请求参数 $.ajax({ url: "/abg/doSingleBad", type:"POST", data: badParam, dataType:"JSON", success: function (data) { if(data.success){ //刷新当前的页面 refreshRollInfo(rollNo); //关闭弹窗 //$('#dlg-bad').dialog('close'); $('#dlg-bad form').form('clear'); //$.messager.alert("info",data.msg,"info",); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//2024-06-25 LR 后续增加的代码function countBadRange(){ //各种参数 let rollNo = $("#rollNo").val(); let firstSerialNo = $("#start_bad_serial").textbox('getValue').trim(); let endSerialNo = $("#end_bad_serial").textbox('getValue').trim(); //组装参数 let countParam = {'orderNo': workingOrder, 'itemNo': currentItemNo, 'rollNo': rollNo, 'firstSerialNo': firstSerialNo, 'endSerialNo': endSerialNo, 'username': username}; //请求参数 $.ajax({ url: "/abg/countBadRange", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: countParam, dataType:"JSON", success: function (data) { if(data.success){ //判断数量的限制 if(data.count > 1000){ $.messager.confirm('Confirm', 'Defective quantity greater than 1000, continue??', function(r) { if (r){ //调用提交方法 createBadRange(); } }); }else{ //调用提交方法 createBadRange(); } }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//批量创建不良function createBadRange(){ //各种参数 let rollNo = $("#rollNo").val(); let firstSerialNo = $("#start_bad_serial").textbox('getValue').trim(); let endSerialNo = $("#end_bad_serial").textbox('getValue').trim(); //组装参数 let badParam = {'orderNo': workingOrder, 'itemNo': currentItemNo, 'rollNo': rollNo, 'firstSerialNo': firstSerialNo, 'endSerialNo': endSerialNo, 'username': username}; //请求参数 $.ajax({ url: "/abg/createBadRange", type:"POST", data: badParam, dataType:"JSON", success: function (data) { if(data.success){ //$('#dlg-batch-bad').dialog('close'); $('#dlg-batch-bad form').form('clear'); //刷新当前的页面 refreshRollInfo(rollNo); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//创建分切卷function doCutting(){ //各种参数 let rollNo = $("#rollNo").val(); let endSerialNo = $("#end_serial_no").textbox('getValue'); //组装参数 let cutParam = {'orderNo': workingOrder, 'rollNo': rollNo, 'endSerialNo': endSerialNo, 'username': username}; //请求参数 $.ajax({ url: "/abg/createCutRoll", //contentType: 'application/json', type:"POST", //data:JSON.stringify(inData), data: cutParam, dataType:"JSON", success: function (data) { if(data.success){ currentPrinter.clodoplisence = clodoplisence; printAbgRollLabel(JSON.parse(data.printData), currentPrinter); //刷新表格 $('#dlg-cut-rolls').datagrid('reload'); $('#end_serial_no').textbox('setValue', ''); $('#end_serial_no').textbox('textbox').focus(); }else{ $.messager.alert("Error",data.msg,"Error",); } } })}
//修正so_roll状态function updateStatus(){ let func = '${func}'; $.ajax({ url: "/aoi/slitting/updateStatus", type:"POST", data:{ 'rollNo': currentRoll, 'func': func, }, dataType:"JSON", success: function (ret) { console.log(ret); if(ret.success == false){ $.messager.alert('error',ret.errorMsg, 'error'); }else if(ret.success==true){ refreshRollInfo(currentRoll) $.messager.alert('info',"Successfully",'info'); } } })}
//扫描材料上级function scanMaterialModal(){ // 打开对话框 $('#scan_material_dlg').dialog('open').dialog('center').dialog('setTitle', "材料扫描"); $('#scan_material_batch').val('').focus(); // 根据 是否显示材料 显示/隐藏结束码包输入 if (enableScanMaterialNo){ $('#material_serial_wrap').show(); // 处理材料接料时候的最后的码包(EasyUI textbox 需绑定到内部输入框) $('#material_serial_no').textbox('setValue',''); var $serialIn = $('#material_serial_no').textbox('textbox'); //事件绑定 $serialIn.off('keydown.serial_in').on('keydown.serial_in', function(e){ if (e.which === 13) { e.preventDefault(); scanSoRollMaterialBatch(true); } }); }else{ //$('#material_serial_wrap').hide(); } // 触发布局重算,避免底部灰色残留 $('#scan_material_dlg').dialog('resize'); $('#scan_material_list').datagrid('resize'); // 初始化/刷新列表 $("#scan_material_list").datagrid({ url: "/material/querySoRollMaterialBatchs", type: "POST", dataType: "JSON", queryParams: { orderNo: currentOrder.orderNo, rollNo: currentRoll, operationNo: 20 } });}
//提交材料扫描(Enter 或 按钮)function scanSoRollMaterialBatch(snFlag){ var rawStr = $.trim($('#scan_material_batch').val()); //检查 if(rawStr == null || "" == rawStr){ $.messager.alert('error','请扫描或输入材料条码','info'); $('#scan_material_batch').focus(); return; } //检查是否是接料 接料的时候必须输入码包号 if (enableScanMaterialNo && snFlag){ //继续往下走 }else if (enableScanMaterialNo && !snFlag){ $('#material_serial_no').textbox('setValue',''); $('#material_serial_no').textbox('textbox').focus(); return; } //拆分数据 var parts = rawStr.split(";"); //检查 // 至少需要8个字段 或者两个字段 if (!(parts.length == 2 || parts.length == 9)) { $.messager.alert('error','材料批次数据有误!','info'); return null; } let endScanMaterialSerialNo = $.trim($('#material_serial_no').val()); $('#scan_material_batch').val(''); $('#material_serial_no').textbox('setValue',''); //组装数据 var resultRow = {"orderNo": currentOrder.orderNo, "operationNo": 20, "operationName": "Abg", "rollNo": currentRoll, "qrCode": rawStr, "scanSerialFlag": enableScanMaterialNo, "endSerialNo": endScanMaterialSerialNo, "username": username}; $.ajax({ url: "/material/scanSoRollMaterialBatch", type: "POST", dataType: "JSON", async: false, contentType: "application/json", data: JSON.stringify(resultRow), success: function (data) { if(data && data.success){ $('#scan_material_batch').val('').focus(); $('#material_serial_no').textbox('setValue',''); $('#scan_material_list').datagrid('reload'); $.messager.show({title: 'Point', msg: data.resultMsg, timeout: 1500, showType: 'slide'}); }else if(data && data.resultCode == 201){ $('#scan_material_batch').val('').focus(); $('#material_serial_no').textbox('setValue',''); $('#scan_material_list').datagrid('reload'); }else{ $.messager.alert('error', data.resultMsg || '扫描失败','error'); } } });}
// 在文本域按Enter提交(简洁写法)$('#scan_material_batch').keypress(function(e){ if(e.which === 13){ e.preventDefault(); scanSoRollMaterialBatch(false); }});</script>
</@master.layout>
|