You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

154 lines
5.1 KiB

<#import "../master.ftl" as master>
<@master.layout>
<div class="page-header">
<h3>Defective/QC</h3>
</div>
<div class="row" id="f1">
<div class="col-md-4">
<input id="inptOrder" type="text" class="form-control" placeholder="SO No" />
<p>
<table id="tblOrderInfo" class="table">
</table>
</p>
</div>
<div class="col-md-3" id="btns" style="display: none;">
<p>
<button class="btn btn-default" id="createRoll1" onclick="countBadSnNums()" >Create defective roll</button>
</p>
</div>
<script>
let orderNo;//工单号
var ORDER_NO;
function scanOrderNo(){
var inptValue = $("#inptOrder").val();
var $tblOrderInfo = $("#tblOrderInfo");
$tblOrderInfo.html("");
$("#btns").hide();
if (inptValue.length == 0){
return false;
}
$.post("/scanning/getQcCount", {orderNo: inptValue}, function(data){
if (data.success && data.order){
ORDER_NO = data.order.orderNo;
orderNo = data.order.orderNo;
DATA = data;
$tblOrderInfo.append("<tr><td>SO No:</td><td>"+data.order.orderNo+"</td></tr>");
$tblOrderInfo.append("<tr><td>Part No:</td><td>"+data.order.partNo+"</td></tr>");
$tblOrderInfo.append("<tr><td>Part Description:</td><td>"+data.order.partDesc+"</td></tr>");
$tblOrderInfo.append("<tr><td>Status:</td><td>"+data.order.status+"</td></tr>");
$tblOrderInfo.append("<tr><td>Defective serial number:</td><td>"+data.count+"</td></tr>");
$tblOrderInfo.append("<tr><td>Defect Product Qty:</td><td>"+data.goodCount+"</td></tr>");
if (data.sRolls){
$tblOrderInfo.append("<tr><td>Defective roll:</td><td>"+showRolls(data.sRolls)+"</td></tr>");
}
$("#btns").show();
checkWithWorkingOrder(ORDER_NO);
}
});
}
function showRolls(rolls){
var list = rolls || [];
var ret = [];
for(var i=0;i<list.length;i++){
ret.push("<a target='forprint' href='/print/finalroll/"+list[i].finalRollNo+"/'>"+list[i].finalRollNo+"</a>");
}
return ret.join("<br />");
}
$("#inptOrder").on("keydown", function(){
if(event.keyCode==13) {
scanOrderNo();
return false;
}
return true;
});
//先判断有多少不良sn
function countBadSnNums(){
$.messager.confirm("Confirm","Create defective roll?", function(sr){
if (sr){
$.messager.confirm("Confirm", "Are you sure that all code readings for this order have been completed?", function(cr){
if (cr) {
$.post("/scanning/countBadSnNums", {"orderNo": orderNo}, function(result){
if (result.success) {
//判断是否数量超过500
let total = result.total;
if(total > 500){
$.messager.confirm("Confirm", "If the number of defects exceeds 500, should we continue?", function(cr){
//判断是否继续
if(cr){
createNg();
}
});
}else{
createNg();
}
} else {
$.messager.alert("Error", result.msg, "error");
}
}).fail(function(data) {
$.messager.alert("Error", "Data Error!", "error");
});
}
});
}
});
}
//创建不良的sn卷
function createNg() {
$.post("/scanning/createQcRoll/do", {"orderNo": ORDER_NO}, function(ret){
console.log(ret);
if (ret.success) {
$.messager.alert("info", "Create defective roll successfully", "info");
$("#ifmforprint").attr('src', "/print/finalroll/" + ret.finalRoll.finalRollNo + "/");
scanOrderNo();
} else {
$.messager.alert("Error", ret.errorMsg, "error");
}
}).fail(function(data) {
$.messager.alert("Error", "Fail to create roll", "error");
});
}
function checkWithWorkingOrder(orderNo) {
var workingOrder = $("#hdnWorkingOrder").val();
if (workingOrder != orderNo){
var msg = '';
if (workingOrder != "") {
msg = 'The order of this roll does not match with the current order '+workingOrder+'.';
}
$("#tblOrderInfo").html("");
$("#btns").hide();
$.messager.alert("Error", msg, "error", function(){
$("#inptOrder").val("").focus();
});
}
}
$(function () {
$("#inptOrder").focus();
})
</script>
<style>
button {min-width: 100px;}
</style>
</@master.layout>