<!DOCTYPE html>
|
<html>
|
<head>
|
<meta charset="UTF-8" />
|
<meta name="viewport" content="user-scalable=0,width=device-width,initial-scale=1.0" />
|
<!-- <meta name="viewport" content="width=device-width, initial-scale=0.665, minimum-scale=0.5, maximum-scale=2.0, user-scalable=no" /> -->
|
<meta http-equiv="X-UA-Compatible" content="ie=edge" />
|
<title>Boxline PDA</title>
|
|
<link rel="stylesheet" href="layui/css/layui.css" />
|
<link rel="stylesheet" href="css/style.css" />
|
<script src="js/adaptive.js"></script>
|
|
<link rel="stylesheet" href="css/my.css" />
|
<style type="text/css">
|
.layout-bill-info {
|
height: auto;
|
/* background-color: #009E94; */
|
}
|
.layout-tbl-submit {
|
margin-top: 10px;
|
}
|
.out-scatter-num {
|
/* background-color: #009688; */
|
|
}
|
.out-scatter-num .local-input {
|
width: 40%;
|
height: 25px;
|
float: left;
|
}
|
.out-scatter-num .local-ok button {
|
height: 25px;
|
border: 0;
|
color: #FFFFFF;
|
background-color: #0a93e3;
|
border-radius: 3px;
|
padding: 2px;
|
margin-left: 10px;
|
width: 100%;
|
}
|
.out-scatter-num .layui-form-label {
|
width: 30%;
|
/* background-color: #007BFF; */
|
}
|
.out-scatter-num .layui-input-block {
|
width: 100%;
|
/* background-color: #009E94; */
|
margin-left: 0;
|
}
|
.out-scatter-num .local-ok {
|
width: 20%;
|
height: 25px;
|
float: left;
|
}
|
.btn-ok-blue {
|
border: none;
|
color: #FFFFFF;
|
background-color: #0a93e3;
|
width: 48%;
|
height: 36px;
|
border-radius: 5px;
|
}
|
.btn-ok-red {
|
border: none;
|
color: #FFFFFF;
|
background-color: #9f1707;
|
width: 48%;
|
height: 36px;
|
border-radius: 5px;
|
}
|
.btn-ok-blue:active {
|
opacity: 0.8;
|
}
|
.btn-ok-red:active {
|
opacity: 0.8;
|
}
|
.layout-tbl-paging {
|
margin-top: 20px;
|
}
|
.foot-container {
|
text-align: center;
|
}
|
.layout-tab-page {
|
height: auto;
|
}
|
.layui-form-checkbox {
|
margin: auto;
|
/* padding-left: 2px; */
|
/* padding-right: 2px; */
|
}
|
</style>
|
<link rel="stylesheet" href="css/adapter.css" />
|
</head>
|
<body>
|
<div id="" class="main-content">
|
<div id="" class="layout-title" style="">
|
<table border="" cellspacing="" cellpadding="">
|
<tr>
|
<td class="img-back"><a href="index.html"><img src="assets/back.jpg" ></a></td>
|
<td class="title-text">原辅料出库</td>
|
<td class="title-menu-icon"><img id="menuImg" src="assets/menu.jpg" ></td>
|
</tr>
|
</table>
|
</div>
|
<div id="" class="layout-sub-content">
|
<div id="menuList" class="menu">
|
<ul class="" style="text-align: center;">
|
<li><a href="index.html">主页</a></li>
|
<li><a href="login.html">重新登录</a></li>
|
</ul>
|
</div>
|
|
<div id="" class="layout-bill-info">
|
<form class="layui-form" action="">
|
<div id="layout-bill" class="layui-form-item layout-dropdownlist" >
|
<label class="layui-form-label">出库单:</label>
|
<div class="layui-input-block" id="selectDiv">
|
<select id="bar" lay-filter="getbar" lay-search>
|
<option value=""></option>
|
</select>
|
<img src="assets/down_arraw.png" >
|
</div>
|
</div>
|
<div id="layout-pallet" class="layui-form-item layout-input">
|
<label class="layui-form-label">出库口:</label>
|
<div class="layui-input-block">
|
<input id="exitDesc" style="border: none;" type="text" lay-verify="stock" disabled placeholder=""
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div id="layout-pallet" class="layui-form-item layout-input">
|
<label class="layui-form-label">物料编码:</label>
|
<div class="layui-input-block">
|
<input id="outGoodsCode" type="text" lay-verify="stock" placeholder="物料编码"
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
<div id="layout-pallet" class="layui-form-item layout-input">
|
<label class="layui-form-label">托盘条码:</label>
|
<div class="layui-input-block">
|
<input id="STOCKCODE" type="text" lay-verify="stock" placeholder="请扫描托盘条码"
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
|
<div id="" class="layout-tab-page">
|
<div id="" class="layout-tab-title">
|
<label class="layui-form-label">出库类型:</label>
|
<div id="outBoxType" outboxtype class="out-tab">
|
<span id="tabWhole" class="out-tab-select">整托</span>
|
<span id="tabHalf" style="border-right: 1px solid #BFC4C5;">半托</span>
|
<span id="tabScatter" style="border-right: 1px solid #BFC4C5;display: none;">散支</span>
|
</div>
|
</div>
|
<table id="outHalf" class="layout-tab-content" border="" cellspacing="" cellpadding="">
|
<tr>
|
<td>
|
<div id="layout-boxcode" class="layui-form-item layout-input">
|
<label class="layui-form-label">外箱条码:</label>
|
<div class="layui-input-block">
|
<input id="BOXCODE" type="text" placeholder="请扫描外箱条码"
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
</td>
|
</tr>
|
<tr id="trGoodsCode">
|
<td>
|
<table class="tbl-box-sim-info" border="" cellspacing="" cellpadding="">
|
<tr>
|
<td style="">
|
<div class="layui-form-item">
|
<label class="layui-form-label">物料编号:</label>
|
<div class="layui-input-block">
|
<input id="GoodsCode" type="text" lay-verify="" disabled placeholder=""
|
class="layui-input">
|
</div>
|
</div>
|
</td>
|
<td>
|
<div class="layui-form-item">
|
<label class="layui-form-label">物料名称:</label>
|
<div class="layui-input-block">
|
<input id="GoodsName" type="text" lay-verify="" disabled placeholder=""
|
class="layui-input">
|
</div>
|
</div>
|
|
</td>
|
</tr>
|
</table>
|
</td>
|
</tr>
|
<tr id="trBoxNum">
|
<td>
|
<div class="layui-form-item ">
|
<label class="layui-form-label">箱内数量:</label>
|
<div class="layui-input-block">
|
<input id="qty" class="layui-input" style="border: 0;" type="text" lay-verify="" disabled placeholder="" >
|
</div>
|
</div>
|
</td>
|
</tr>
|
<tr id="outScatter">
|
<td>
|
<div id="layout-boxcode" class="layui-form-item out-scatter-num">
|
<label class="layui-form-label" style="">出库散支数量:</label>
|
<div id="" class="local-input" style="">
|
<div class="layui-input-block" >
|
<input id="outScatterQty" type="text" placeholder="请输入散支数量"
|
autocomplete="off" class="layui-input" >
|
</div>
|
</div>
|
<div id="" class="local-ok" style="">
|
<button style="" type="button" lay-submit lay-filter="formPickScatter">确认</button>
|
</div>
|
</div>
|
</td>
|
</tr>
|
</table>
|
<div id="" style="text-align: right;margin-top: 10px;">
|
|
<div id="" class="cut-line" >
|
<img src="assets/fengexian.png" >
|
</div>
|
</div>
|
</div>
|
</form>
|
</div>
|
|
<div class="layout-tbl-paging" id="" >
|
<div id="" class="tbl-title">
|
<table class="layout-tbl-input" border="0" cellspacing="" cellpadding="" >
|
<tr>
|
<td>
|
<div class="layout-boxinfo">
|
<label class="layui-form-label">托盘号:</label>
|
<div class="layui-input-block">
|
<input id="palletCode" type="text" disabled placeholder=""
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
</td>
|
<td>
|
<div class="layout-boxinfo">
|
<label class="layui-form-label" style="color: #FF0000">箱子数量:</label>
|
<div class="layui-input-block">
|
<input id="boxNum" type="text" disabled placeholder=""
|
autocomplete="off" class="layui-input">
|
</div>
|
</div>
|
</td>
|
</tr>
|
</table>
|
</div>
|
<table id="tableBoxList" class="tbl-box-list" border="" cellspacing="" cellpadding="">
|
<tr id="tableHead"><th>箱码</th><th>名称</th><th>箱内<br>数量</th><th name="hpicknum">待拣<br>数量</th><th name="hpickednum">已拣<br>数量</th><th>拣货</th></tr>
|
<tr id="boxCell" style="display: none;">
|
<td name="boxcode">AG000001</td>
|
<td name="name">疫苗名称名称名称</td>
|
<td name="num">30</td>
|
<td name="picknum">30</td>
|
<td name="pickednum">30</td>
|
<td name="check">
|
<input type="checkbox" id="cbox2" value="second_checkbox" onclick="return false;" checked="checked">
|
</td>
|
</tr>
|
</table>
|
|
<!-- 分页 -->
|
<table id="tableBoxPages" class="tbl-box-pages" border="" cellspacing="" cellpadding="">
|
<tr style="display: ;">
|
<td class="page-prev">上一页</td>
|
<td class="page-num page-num-select">1</td>
|
<td class="page-num">2</td>
|
<td class="page-num">3</td>
|
<td class="page-num">4</td>
|
<td class="page-num">5</td>
|
<td class="page-next">下一页</td>
|
</tr>
|
</table>
|
</div>
|
|
</div>
|
<div id="pickBtnContainer" class="foot-container">
|
<button class="btn-ok-blue" type="button" lay-submit lay-filter="formBind">确认拣货</button>
|
<button class="btn-ok-red" type="button" lay-submit lay-filter="formCancel">取消拣货</button>
|
</div>
|
</div>
|
|
|
<script src="js/jquery-3.5.1.min.js"></script>
|
<script src="layui/layui.js"></script>
|
<script src="js/public.js"></script>
|
<script src="js/jquery.cookie.js"></script>
|
<script>
|
layui.use(['form', 'jquery'], function() {
|
var form = layui.form
|
|
function init(){
|
//console.log("Init")
|
// selectOutTab('scatter')
|
}
|
|
init()
|
|
//当前分页
|
var curPageIndex = 1
|
var tableData = null
|
var canPickBox = true
|
|
//所选入库单的详细信息
|
//console.log($.cookie('userId'));
|
// if (!$.cookie('userId')) {
|
// layer.msg('登陆失效,请重新登陆', {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// location.href = "login.html";
|
// //回调
|
// });
|
// }
|
|
$("#BOXCODE").on('input', function(e){
|
//console.log("输入框变化:"+$("#BOXCODE").val().length)
|
})
|
|
function clear(){
|
$("#ImportQuantity").val("");
|
$("#ImportFactQuantity").val("");
|
// $("#STOCKCODE").val("");
|
// $("#BOXCODE").val("");
|
$("#GoodsCode").val("");
|
$("#GoodsName").val("");
|
$("#LotNo").val("");
|
$("#ImportQty").val("");
|
$("#qty").val("");
|
}
|
|
//是否存在某个入库单
|
function hasBill(list, billcode){
|
for (var i = 0; i < list.length; i++) {
|
//console.log("list["+i+"].ExportBillCode "+list[i].ExportBillCode)
|
if(list[i].ExportBillCode == billcode){
|
return true
|
}
|
}
|
return false
|
}
|
|
function getBar(selectedvalue) {
|
//console.log("here`````````````````````````")
|
|
// $("#ImportQuantity").val("");
|
// $("#ImportFactQuantity").val("");
|
// $("#STOCKCODE").val("");
|
// $("#BOXCODE").val("");
|
// $("#GoodsCode").val("");
|
// $("#GoodsName").val("");
|
// $("#LotNo").val("");
|
// $("#ImportQty").val("");
|
// $("#qty").val("");
|
|
if (selectedvalue) {
|
// var param = {
|
// ImportId: selectedvalue,
|
// };
|
// sendData(IP + "/PdaInterface/GetImportNotify", param, 'post', function(res) {
|
// //console.log(res);
|
// $("#ImportQuantity").val(res.data.ImportQuantity);
|
// $("#ImportFactQuantity").val(res.data.ImportFactQuantity);
|
// $("#STOCKCODE").val('');
|
// $("#STOCKCODE").focus();
|
// });
|
|
//获取入库单详情
|
// var param = {
|
// "ImportBillCode": $("#bar").val()
|
// }
|
// //console.log("555555555555555 param is "+param)
|
// sendData(IP + "/PdaInterface/GetOrdDetailInfo", param, 'post', function(res) {
|
// //console.log("入库单详情:"+res.length)
|
// if (res.length > 0) { //成功
|
// var info = deepCopy(res)
|
// if($("#GoodsCode").val()){
|
// //如何物料编号不为空,则显示计划数量和已扫数量
|
// setOrderGoods(info, $("#GoodsCode").val())
|
// }else{
|
// $("#ImportQuantity").val('');
|
// $("#ImportFactQuantity").val('');
|
// }
|
// } else { //不成功
|
// layer.msg("未查询到该入库单信息", {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {});
|
// }
|
// });
|
var param = {
|
"orderNo": selectedvalue
|
}
|
//console.log("555555555555555 param is "+param)
|
sendData(IP + "/PdaInterface/GetOutlets", param, 'post', function(res) {
|
//console.log("出库口:"+JSON.stringify(res))
|
if (res.code == 1) { //成功
|
let data = res.data
|
let str = ""
|
for(let i = 0; i < data.length; i++){
|
str += data[i].TypeName
|
str += ': '
|
for(let j = 0; j < data[i].pickList.length; j++){
|
str += data[i].pickList[j].roadway
|
str += ','
|
str += data[i].pickList[j].palnoNum
|
str += '托'
|
str += '; '
|
}
|
}
|
$('#exitDesc').val(str)
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
} else {
|
}
|
}
|
|
//根据箱码,从入库单中查询这个类型的产品的信息并赋值显示
|
function setOrderGoods(billInfo, goodsCode){
|
//console.log("setOrderGoods goodsCode: "+goodsCode)
|
$("#ImportQuantity").val('');
|
$("#ImportFactQuantity").val('');
|
for (var i = 0; i < billInfo.length; i++) {
|
//console.log("billInfo["+i+"].GoodsCode "+billInfo[i].GoodsCode)
|
if(billInfo[i].GoodsCode == goodsCode){
|
$("#ImportQuantity").val(billInfo[i].ImportQuantity);
|
$("#ImportFactQuantity").val(billInfo[i].ImportCompleteQuantity);
|
}
|
}
|
}
|
|
form.on('select(getbar)', function(data) {
|
//console.log("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~select 被点击")
|
// alert(data.value)
|
// $("#barMask").show()
|
getBar(data.value);
|
});
|
|
$("#menuImg").click(function(e){
|
//console.log("menuImg")
|
e.stopPropagation()
|
|
if($("#menuList").is(":hidden")){
|
$("#menuList").show()
|
}else{
|
$("#menuList").hide()
|
}
|
})
|
$('body').click(function(){
|
// //console.log("body")
|
$("#menuList").hide()
|
})
|
|
// $('#tabWhole').click(function(){
|
// selectOutTab('whole')
|
// })
|
// $('#tabHalf').click(function(){
|
// selectOutTab('half')
|
// })
|
// $('#tabScatter').click(function(){
|
// selectOutTab('scatter')
|
// })
|
|
//val值 : whole, half, scatter
|
function selectOutTab(val){
|
$('#tabWhole').removeClass('out-tab-select')
|
$('#tabHalf').removeClass('out-tab-select')
|
$('#tabScatter').removeClass('out-tab-select')
|
|
if(val == 'whole'){
|
$('#tabWhole').addClass('out-tab-select')
|
$('#outHalf').hide()
|
}else if(val == 'half'){
|
$('#tabHalf').addClass('out-tab-select')
|
|
$('#outHalf').show()
|
$('#trGoodsCode').hide()
|
$('#trBoxNum').hide()
|
$('#outScatter').hide()
|
}
|
// else if(val == 'scatter'){
|
// $('#tabScatter').addClass('out-tab-select')
|
|
// $('#outHalf').show()
|
// $('#outScatter').show()
|
// }
|
$('#outBoxType').attr('outboxtype', val)
|
|
$('#BOXCODE').val('')
|
$("#GoodsCode").val("");
|
$("#GoodsName").val("");
|
$("#qty").val("");
|
$("#outScatterQty").val("")
|
}
|
|
$('#btnScanBox').click(function(){
|
$("#ImportQuantity").val('');
|
$("#ImportFactQuantity").val('');
|
$("#GoodsCode").val("");
|
$("#GoodsName").val("");
|
$("#LotNo").val("");
|
$("#ImportQty").val("");
|
$("#qty").val("");
|
$("#BOXCODE").val("");
|
// document.activeElement.blur();
|
$("#BOXCODE").focus();
|
})
|
|
$("#selectDiv").click(function(){
|
var input = $('select[id="bar"]').next().find('.layui-select-title input')
|
var val = input.val()
|
//console.log("---------------val is "+val)
|
//先更新一下入库单
|
updateBillList(function(data){
|
//console.log("selectDiv 2222222222222222222222222222")
|
// $('select[id="bar"]').next().find('.layui-select-title input').click()
|
$('select[id="bar"]').next().addClass('layui-form-selected')
|
|
$('select[id="bar"]').next().find('.layui-select-title input').val(val)
|
// $("#bar").val(val)
|
// input.focus()
|
// $('.layui-select-title').next().find("lay-value=["+val+"]").addClass("layui-this")
|
// if(val){
|
// $('dd[lay-value='+val+']').addClass("layui-this")
|
// }else{
|
// $('.layui-select-tips').addClass("layui-this")
|
// }
|
})
|
})
|
|
//更新入库单
|
function updateBillList(callback){
|
var input = $('select[id="bar"]').next().find('.layui-select-title input')
|
var val = input.val()
|
// var val = $("#bar").val()
|
//console.log("88888888888888888888888 val is "+val)
|
$("#bar").empty()
|
$("#bar").append('<option value =>' + '</option>');
|
form.render('select');
|
|
var param = {
|
OrdType: '010',
|
};
|
sendData(IP + "/PdaInterface/GetExportNotify", param, 'post', function(res) {
|
//console.log("生产入库,入库单:"+res)
|
if (res.code == 1) { //成功
|
for (var i = 0; i < res.data.length; i++) {
|
// $("#bar").append('<option value =' + res.data[i].ImportId + '>' + res.data[i]
|
// .ImportBar +
|
// '</option>');
|
// if(res.data[i].ImportBillCode == val)
|
$("#bar").append('<option value =' + res.data[i].ExportBillCode + '>' + res.data[i]
|
.ExportBillCode +
|
'</option>');
|
}
|
form.render('select');
|
|
if(!val){
|
$('#bar').siblings("div.layui-form-select").find('dl').find('.layui-select-tips').addClass('layui-this')
|
}else{
|
var sel = 'dd[lay-value=' + val + ']';
|
$('#bar').siblings("div.layui-form-select").find('dl').find(sel).addClass('layui-this')
|
// $("#bar").val(val)
|
}
|
|
// billList = res.data
|
// $('select[id="bar"]').next().find('.layui-select-title input').click()
|
// $("#barMask").show()
|
callback(res.data)
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
}
|
|
var tmpBoxs = [
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
{
|
"BoxCode":"AG000001",
|
"GoodsName":"疫苗名称名称1号",
|
"Num":30
|
},
|
]
|
|
/*<tr id="boxCell" style="display: ">
|
<td>AG000001</td>
|
<td>疫苗名称名称名称</td>
|
<td>30</td>
|
<td>
|
<div id="" style="position: relative;" >
|
<img style="width: 60px;height: 28px;margin-bottom: 2px;" src="assets/del.png" >
|
<span style="position: absolute;top: 1px;left: 28px;color: #FFFFFF;;">删除</span>
|
</div>
|
</td>
|
</tr>*/
|
function refreshTable(list) {
|
//先清空一下箱子列表
|
let trs = $("#tableBoxList tr")
|
let len = trs.length
|
//console.log("tr 数量 + " + trs.length)
|
for(i=len - 1; i >=2; i--){
|
trs[i].remove();
|
}
|
|
//设置托盘号
|
$("#palletCode").val($.cookie('stockCode'))
|
|
// var param = {
|
// // stockCode: $.cookie('stockCode')
|
// palno: $.cookie('stockCode')
|
// };
|
// sendData(IP + "/PdaInterface/GetPalnoDetailInfo", param, 'post', function(res) {
|
// //console.log("3333333333 "+res);
|
if (list.length > 0) { //成功
|
$("#boxNum").val(list.length)
|
var arrTrs = new Array()
|
let idx = 0
|
for(var i in list) {
|
// list[i].BoxCode
|
var tr = $("#boxCell").eq(0).clone();
|
tr.appendTo("#tableBoxList");
|
tr.attr('id', list[i].BoxCode)
|
idx++;
|
tr.attr('index', idx)
|
tr.find("td[name='boxcode']").html(list[i].BoxCode);
|
tr.find("td[name='name']").html(list[i].GoodsName);
|
tr.find("td[name='num']").html(list[i].Qty);
|
if(list[i].Status == 1){
|
//已拣
|
tr.find("td[name='check']").find('input').attr('checked', 'checked')
|
} else{
|
//未拣
|
tr.find("td[name='check']").find('input').removeAttr('checked')
|
}
|
if(tableData.outType == 0){
|
//整托出库
|
tr.find("td[name='picknum']").hide()
|
tr.find("td[name='pickednum']").hide()
|
$("#tableHead").find("th[name='hpicknum']").hide()
|
$("#tableHead").find("th[name='hpickednum']").hide()
|
}else{
|
//半托/散支
|
let pn = 0
|
let pen = 0
|
//console.log("list[i].PickNum "+list[i].PickNum)
|
//console.log("list[i].PickedNum "+list[i].PickedNum)
|
pn = list[i].PickNum
|
if($.isPlainObject(list[i].PickNum)){
|
pn = 0
|
}
|
if(list[i].PickedNum){
|
pen = list[i].PickedNum
|
}
|
tr.find("td[name='picknum']").html(pn)
|
tr.find("td[name='pickednum']").html(pen)
|
tr.find("td[name='picknum']").show()
|
tr.find("td[name='pickednum']").show()
|
$("#tableHead").find("th[name='hpicknum']").show()
|
$("#tableHead").find("th[name='hpickednum']").show()
|
}
|
var code = list[i].BoxCode
|
//console.log("code is "+code)
|
|
tr.show();
|
arrTrs[i] = tr
|
}
|
|
//设置分页
|
setPages(1, list.length)
|
|
canPickBox = true
|
} else { //不成功
|
layer.msg("无数据", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
setPages(1, 0)
|
}
|
// $("#boxCnt").html("当前托盘上的箱子数量:"+res.length)
|
// });
|
}
|
|
//设置分页
|
function setPages(pageIndex, boxNum){
|
if(boxNum <= 0){
|
//列表为空,隐藏分页页码
|
$("#tableBoxPages").hide()
|
return
|
}
|
|
let pageNum = Math.floor(boxNum / 10);
|
if(boxNum % 10 > 0){
|
pageNum += 1;
|
}
|
//console.log("pageNum is " + pageNum)
|
|
$("#tableBoxPages").find("tr").remove()
|
let table = $("#tableBoxPages")
|
$("<tr></tr>").appendTo("#tableBoxPages")
|
|
// let newTr = table.append("<tr></tr>")
|
// newTr.append("<td class='page-prev'>上一页</td>")
|
$("<td id='prevPage' class='page-prev'>上一页</td>").appendTo("#tableBoxPages tr")
|
$("#tableBoxPages tr").eq(0).find("td[id^='prevPage']").click(function(){
|
onClickPrevPage()
|
})
|
for(i=1; i < pageNum + 1; i++){
|
// newTr.append("<td class='page-num'>"+ i +"</td>")
|
$("<td class='page-num'>"+ i +"</td>").appendTo("#tableBoxPages tr")
|
}
|
// newTr.append("<td class='page-next'>下一页</td>")
|
$("<td id='nextPage' class='page-next'>下一页</td>").appendTo("#tableBoxPages tr")
|
$("#tableBoxPages tr").eq(0).find("td[id^='nextPage']").click(function(){
|
onClickNextPage()
|
})
|
// pages.show()
|
$("#tableBoxPages").show()
|
}
|
|
//设置当前分页
|
function setCurPage(pageIndex){
|
// var list = tmpBoxs
|
// var arrTrs = new Array()
|
// let idx = 0
|
// for(var i in list) {
|
// // list[i].BoxCode
|
// var tr = $("#boxCell").eq(0).clone();
|
// tr.appendTo("#tableBoxList");
|
// tr.attr('id', list[i].BoxCode)
|
// idx++
|
// //console.log("idx is "+idx)
|
// tr.attr('index', idx)
|
// tr.find("td[name='boxcode']").html(list[i].BoxCode);
|
// tr.find("td[name='name']").html(list[i].GoodsName);
|
// tr.find("td[name='num']").html(list[i].Num);
|
// var code = list[i].BoxCode
|
// //console.log("code is "+code)
|
|
// // //console.log("boxcode is "+tr.find("td[name='boxcode']").html())
|
// tr.show();
|
// arrTrs[i] = tr
|
// }
|
|
// setPages(1, list.length)
|
|
let totalTrNum = $("#tableBoxList tr").length
|
if(totalTrNum <= 2 ){
|
//console.log("tableBoxList 为空 totalTrNum: " + totalTrNum)
|
//curPageIndex = 1
|
return
|
}
|
|
let pageNum = getBoxPageNum()
|
if(pageIndex > pageNum){
|
//console.log("设置的页码超出页数, pageIndex : " + pageIndex)
|
//curPageIndex = 1
|
return
|
}
|
|
let startIndex = (pageIndex - 1) * 10 + 1
|
let n = totalTrNum - startIndex
|
let endIndex = 0
|
if(n > 9){
|
endIndex = startIndex + 9
|
}else{
|
endIndex = startIndex + n
|
}
|
//console.log("startIndex is "+startIndex)
|
//console.log("endIndex is "+endIndex)
|
//startIndex =2
|
//endIndex = 2
|
let trs = $("#tableBoxList tr")
|
//console.log("行数 "+trs.length)
|
let d = 0
|
for(let i = 0; i < trs.length; i++){
|
//console.log("行索引 " + trs.eq(i).attr('index'))
|
let t = trs.eq(i)
|
d = t.attr('index')
|
if(d >= startIndex && d <= endIndex){
|
//console.log("需要显示")
|
//显示行
|
t.show()
|
}else{
|
//隐藏行
|
t.hide()
|
}
|
}
|
|
curPageIndex = pageIndex
|
|
let ptr = $("#tableBoxPages tr")
|
for(let i = 1; i < pageNum+1; i++){
|
ptr.eq(0).find("td").eq(i).removeClass("page-num-select")
|
if(i == curPageIndex){
|
ptr.eq(0).find("td").eq(i).addClass("page-num-select")
|
}
|
}
|
//console.log("totalTrNum is " + totalTrNum)
|
}
|
|
function onClickPrevPage(){
|
//console.log("上一页按钮被点击")
|
if(curPageIndex == 1){
|
return
|
}
|
setCurPage(curPageIndex - 1)
|
}
|
|
function onClickNextPage(){
|
//console.log("下一页按钮被点击")
|
let n = getBoxPageNum()
|
if(curPageIndex == n){
|
return
|
}
|
setCurPage(curPageIndex + 1)
|
}
|
|
function getBoxPageNum()
|
{
|
let num = $("#tableBoxList tr").length
|
if(num <= 2 ){
|
return 0
|
}
|
|
let pageNum = Math.floor(num / 10);
|
if(num % 10 > 0){
|
pageNum += 1;
|
}
|
|
return pageNum
|
}
|
|
//检查托盘状态
|
function checkPalletStat(){
|
// var list = tmpBoxs
|
if($("#STOCKCODE").val() == ""){
|
//console.log("托盘号为空")
|
// layer.msg("托盘号为空", {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {});
|
return
|
}
|
|
if($("#outGoodsCode").val() == ""){
|
//console.log("物料编码为空")
|
// layer.msg("托盘号为空", {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {});
|
return
|
}
|
|
// //console.log("box num is "+$("#tableBoxList tr").length)
|
// return;
|
var param = {
|
"palno": $("#STOCKCODE").val()
|
}
|
sendData(IP + "/PdaInterface/GetPalnoStatus", param, 'post', function(res) {
|
//console.log("托盘状态:"+res.msg)
|
if (res.msg == "有效托盘") { //成功
|
// $("#BOXCODE").val("");
|
$.cookie('stockCode', $("#STOCKCODE").val());
|
|
let input = $('select[id="bar"]').next().find('.layui-select-title input')
|
let n = input.val()
|
let param2 = {
|
"palno": $("#STOCKCODE").val(),
|
"ordNo": n,
|
"goodsCode":$("#outGoodsCode").val()
|
}
|
sendData(IP + "/PdaInterface/GetOutBoxInfo", param2, 'post', function(res) {
|
//console.log("根据托盘号获取待检货信息 res is "+JSON.stringify(res))
|
if(res.code == 1){
|
tableData = deepCopy(res.data[0])
|
if(tableData.outType == 0){
|
// 整托
|
selectOutTab('whole')
|
$('#pickBtnContainer').show()
|
}else{
|
//半托,散支
|
selectOutTab('half')
|
$('#pickBtnContainer').hide()
|
}
|
refreshTable(tableData.boxLists)
|
}else{
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
// selectOutTab()
|
|
// refreshTable()
|
// $("#BOXCODE").focus();
|
} else { //不成功
|
layer.msg("无效托盘", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {});
|
}
|
});
|
}
|
|
//当托盘条码输入框失去焦点时,检查一下托盘状态
|
$("#STOCKCODE").blur(function(){
|
// setPages(1,8)
|
// setCurPage(1)
|
// return
|
//console.log("0000000000000")
|
if($("#STOCKCODE").val() == ""){
|
return
|
}
|
checkPalletStat()
|
})
|
|
// $("#bar").focus();
|
$("#STOCKCODE").keydown(function(e) {
|
//console.log("e.keyCode is "+e.keyCode)
|
//console.log("bar val is "+$("#bar").val())
|
if (e.keyCode === 13) {
|
// if($("#bar").val() == "")
|
// {
|
// //console.log("bar val is "+$("#bar").val())
|
// layer.msg("请先选择入库单", {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// })
|
// $("#STOCKCODE").val("");
|
// return;
|
// }
|
|
if($("#STOCKCODE").val() == ""){
|
return
|
}
|
|
//检查托盘状态
|
checkPalletStat();
|
}
|
});
|
|
function getBoxInfoByBoxCode(boxcode){
|
let list = tableData.boxLists
|
for(let i = 0; i < list.length; i++){
|
if(list[i].BoxCode == boxcode){
|
return list[i]
|
}
|
}
|
return null
|
}
|
|
//检查箱子信息
|
function checkBoxInfo(){
|
// if (!$.cookie('userId')) {
|
// layer.msg('登陆失效,请重新登陆', {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// location.href = "login.html";
|
// //回调
|
// });
|
// }
|
|
if($("#BOXCODE").val() == ""){
|
return
|
}
|
|
let boxinfo = getBoxInfoByBoxCode($("#BOXCODE").val())
|
if(!boxinfo){
|
layer.msg("未查询到箱子信息", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
return
|
}
|
|
|
if(boxinfo.Status == 0){
|
//未拣
|
if(boxinfo.IsMustExport == 1){
|
//散支
|
$("#GoodsCode").val(boxinfo.GoodId);
|
$("#GoodsName").val(boxinfo.GoodsName);
|
$("#qty").val(boxinfo.Qty);
|
$("#outScatterQty").val(boxinfo.Qty);
|
|
$('#trGoodsCode').show()
|
$('#trBoxNum').show()
|
$('#outScatter').show()
|
}else{
|
//整箱拣货,直接请求拣货
|
reqPickBox(boxinfo, 1)
|
}
|
}else{
|
//已拣,直接请求取消拣货
|
reqPickBox(boxinfo, 0)
|
}
|
}
|
|
function reqPickBox(boxinfo, pickflag){
|
var param = {
|
"orderId": tableData.ExportBillCode,
|
"BoxInfoId": boxinfo.BoxInfoId,
|
"pickNum": boxinfo.Qty,
|
"pickFlag": pickflag
|
}
|
sendData(IP + "/PdaInterface/SetPickFlag", param, 'post', function(res) {
|
//console.log("拣货请求: "+JSON.stringify(res));
|
checkPalletStat()
|
if (res.code == 1) { //成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
}
|
});
|
}
|
|
function reqPickScatter(){
|
if($("#BOXCODE").val() == ""){
|
return
|
}
|
let boxinfo = getBoxInfoByBoxCode($("#BOXCODE").val())
|
|
var param = {
|
"orderId": tableData.ExportBillCode,
|
"BoxInfoId": boxinfo.BoxInfoId,
|
"pickNum": $('#outScatterQty').val(),
|
"pickFlag": 1
|
}
|
sendData(IP + "/PdaInterface/SetPickFlag", param, 'post', function(res) {
|
//console.log(res);
|
checkPalletStat()
|
if (res.code == 1) { //成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
} else { //不成功
|
layer.msg(res.msg, {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
}
|
});
|
}
|
|
//当箱码输入框失去焦点时,检查一下箱子状态
|
// $("#BOXCODE").blur(function(){
|
// //console.log("0000000000000")
|
// if($("#BOXCODE").val() == ""){
|
// return
|
// }
|
// checkBoxInfo()
|
// })
|
|
var boxId = 0;
|
$("#BOXCODE").keydown(function(e) {
|
//console.log("e.keyCode is "+e.keyCode)
|
//console.log("bar val is "+$("#bar").val())
|
if (e.keyCode === 13) {
|
checkBoxInfo()
|
}
|
});
|
|
var reqIdx = 0
|
//整托拣货,取消拣货
|
function reqWholePalletCheck(flag){
|
reqIdx = 0
|
let isReq = false
|
let list = tableData.boxLists
|
for(let i = 0; i < list.length; i++){
|
if(flag == 1){
|
//拣货
|
if(list[i].Status == 1){
|
continue
|
}
|
}
|
|
if(flag == 0){
|
//取消拣货
|
if(list[i].Status == 0){
|
continue
|
}
|
}
|
isReq = true
|
var param = {
|
"orderId": tableData.ExportBillCode,
|
"BoxInfoId": list[i].BoxInfoId,
|
"pickNum": list[i].Qty,
|
"pickFlag": flag
|
}
|
reqIdx += 1
|
// param = {
|
// "palno": $("#STOCKCODE").val()
|
// }
|
sendData(IP + "/PdaInterface/SetPickFlag", param, 'post', function(res) {
|
// sendData(IP + "/PdaInterface/GetPalnoStatus", param, 'post', function(res) {
|
|
//console.log("拣货请求: "+JSON.stringify(res));
|
reqIdx -= 1
|
//console.log("reqIdx is "+reqIdx)
|
if(reqIdx == 0){
|
//console.log("11111111111111")
|
layer.msg("完成", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
checkPalletStat()
|
}
|
if (res.code == 1) { //成功
|
|
} else { //不成功
|
// layer.msg(res.msg, {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// //回调
|
// });
|
}
|
});
|
}
|
|
if(isReq == false){
|
canPickBox = true
|
}
|
}
|
|
form.on('submit(formBind)', function(data) {
|
// if (!$.cookie('userId')) {
|
// layer.msg('登陆失效,请重新登陆', {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// location.href = "login.html";
|
// //回调
|
// });
|
// }
|
|
if(canPickBox == false){
|
//console.log("请求未完成,不要重复请求, canPickBox is "+canPickBox)
|
return
|
}
|
|
canPickBox = false
|
|
reqWholePalletCheck(1)
|
|
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
|
});
|
form.on('submit(formCancel)', function(data) {
|
// if (!$.cookie('userId')) {
|
// layer.msg('登陆失效,请重新登陆', {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// location.href = "login.html";
|
// //回调
|
// });
|
// }
|
|
if(canPickBox == false){
|
//console.log("请求未完成,不要重复请求, canPickBox is "+canPickBox)
|
return
|
}
|
|
canPickBox = false
|
|
reqWholePalletCheck(0)
|
|
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
|
});
|
form.on('submit(formPickScatter)', function(data) {
|
// if (!$.cookie('userId')) {
|
// layer.msg('登陆失效,请重新登陆', {
|
// icon: 2,
|
// time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
// }, function() {
|
// location.href = "login.html";
|
// //回调
|
// });
|
// }
|
|
if($('#outScatterQty').val() == ""){
|
layer.msg("请输入出库散支数量", {
|
icon: 2,
|
time: 2000 //2秒关闭(如果不配置,默认是3秒)
|
}, function() {
|
//回调
|
});
|
return
|
}
|
|
if(canPickBox == false){
|
//console.log("请求未完成,不要重复请求, canPickBox is "+canPickBox)
|
return
|
}
|
|
canPickBox = false
|
|
reqPickScatter()
|
|
return false; //阻止表单跳转。如果需要表单跳转,去掉这段即可。
|
});
|
// form.verify({
|
// stock: [/^[\S]{6}$/, '托盘条码必须为六位字符']
|
// });
|
})
|
</script>
|
</body>
|
</html>
|