/**
* 库存查询
*/
var myColumns=[];
$(function(){
getColumns();
getLocStatusList();
$('#stk-mast').bootstrapTable('destroy');
$('#stk-mast').bootstrapTable({
method : 'GET',
url: "stock/locationList.action",
cache : false,
striped : true,
pagination : true, //在表格底部显示分页工具栏
pageSize : 5, //默认每页条数
pageNumber : 1, //默认分页
pageList : [5],//分页数
showColumns : false, //显示隐藏列
showRefresh : false, //显示刷新按钮
showExport : false,
toolbar:"#toolbar",
singleselect : true,
clickToSelect: true, // 单击行即可以选中
search : false,//显示搜素表单
silent : true, //刷新事件必须设置
sidePagination : "server", //表示服务端请求
// singleSelect : true,
columns : [{
checkbox:true
} ,{
field : "loc_no",
title : "库位号",
class : 'col-md-1',
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "loc_sts_name",
title : "库位状态",
align : "center",
valign : "middle",
}, {
field : "crn_no",
title : "堆垛机号",
align : "center",
valign : "middle",
}, {
field : "row1",
title : "排",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "bay1",
title : "列",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "lev1",
title : "层",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "full_plt",
title : "满板",
align : "center",
valign : "middle",
sortable : "true",
formatter : function(value, row, index) {
var result = 'N';
if(value=='Y')
result='';
else
result='';
return result
}
}, {
field : "loc_type",
title : "库位别",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "modi_user",
title : "修改人员",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "modi_time",
title : "修改时间",
align : "center",
valign : "middle",
sortable : "true"
}, {
field : "barcode",
title : "条码",
align : "center",
valign : "middle",
visible : false,
sortable : "true"
}, {
field: 'operate',
title: '操作',
// class : 'col-md-2',
align: 'center',
valign: 'middle',
formatter: operateFormatter
}],
queryParamsType: "undefined",
queryParams: function queryParams(params) { //设置查询参数
var param = {
pageNumber: params.pageNumber,
pageSize: params.pageSize,
loc_no:$("#loc_no").val(),
loc_sts:$("#loc_sts").val(),
crn_no:$("#crn_no").val(),
row1:$("#row1").val(),
bay1:$("#bay1").val(),
lev1:$("#lev1").val()
// searchText: params.searchText
};
return param;
},
formatLoadingMessage : function() {
return "请稍等,正在加载中...";
},
formatNoMatches : function() {
return '无符合条件的记录';
},
//注册加载子表的事件。注意下这里的三个参数!
onExpandRow: function (index, row, $detail) {
oInit.InitSubTable(index, row, $detail);
}
,
// onCheck:function(row){
//// alert(row.menu_name);
// },onUncheck:function(row){
//// alert('取消选中');
// },
onClickRow:function (row,$element) {
$('.info').removeClass('info');
$($element).addClass('info');
$("#detail_loc_no").val(row.loc_no);
$("#stk-detail").bootstrapTable('refreshOptions',{pageNumber:1});
// getvalue(row.loc_no);
}
});
initStkDetail();
});
function operateFormatter(value, row, index) {
var bl='none';//'none';
if(row.loc_sts=='F'){
bl='inline';
}
return [
''
].join('');
}
/**
* 初始化库存明细table
* @returns
*/
function initStkDetail(){
$('#stk-detail').bootstrapTable('destroy');
$('#stk-detail').bootstrapTable({
method : 'GET',
url: "stock/stkDetailList.action",
cache : false,
striped : true,
pagination : true, //在表格底部显示分页工具栏
pageSize : 4, //默认每页条数
pageNumber : 1, //默认分页
pageList : [5, 10, 15, 20],//分页数
showColumns : true, //显示隐藏列
showRefresh : false, //显示刷新按钮
showExport : false,
toolbar:"#toolbar",
singleselect : true,
clickToSelect: true, // 单击行即可以选中
search : false,//显示搜素表单
silent : true, //刷新事件必须设置
sidePagination : "server", //表示服务端请求
// singleSelect : true,
columns : myColumns,
// [{
// field : "loc_no",
// title : "库位号",
// class : 'col-md-1',
// align : "center",
// valign : "middle",
// sortable : "true"
// }, {
// field : "mat_no",
// title : "物料编码",
// align : "center",
// valign : "middle",
// }, {
// field : "mat_name",
// title : "物料名称",
// align : "center",
// valign : "middle",
// }, {
// field : "qty",
// title : "数量",
// align : "center",
// valign : "middle",
// sortable : "true"
//// }, {
//// field : "ctns",
//// title : "箱数",
//// align : "center",
//// valign : "middle",
//// sortable : "true"
//// }, {
//// field : "wt",
//// title : "重量",
//// align : "center",
//// valign : "middle",
//// sortable : "true"
// }, {
// field : "memo",
// title : "备注",
// align : "center",
// valign : "middle",
// sortable : "true"
// }, {
// field : "modi_user",
// title : "修改人员",
// align : "center",
// valign : "middle",
// sortable : "true"
// }, {
// field : "modi_time",
// title : "修改时间",
// align : "center",
// valign : "middle",
// sortable : "true"
// }],
queryParamsType: "undefined",
queryParams: function queryParams(params) { //设置查询参数
var param = {
pageNumber: params.pageNumber,
pageSize: params.pageSize,
loc_no:$("#detail_loc_no").val()
};
return param;
},
formatLoadingMessage : function() {
return "请稍等,正在加载中...";
},
formatNoMatches : function() {
return '无符合条件的记录';
},
//注册加载子表的事件。注意下这里的三个参数!
onExpandRow: function (index, row, $detail) {
oInit.InitSubTable(index, row, $detail);
}
});
}
function getColumns() {
myColumns=[];
// var myColumns=[];
// 加载动态表格
$.ajax({
url : $("#PageContext").val() + "/matColumn.json",
type : 'get',
dataType : "json",
async : false,
success : function(returnValue) {
// 未查询到相应的列,展示默认列
if (returnValue.retCode == "0") {
//没查到列的时候把之前的列再给它
myColumns = $table.bootstrapTable('getOptions').columns[0];
} else {
// 异步获取要动态生成的列
myColumns.push({
field : "loc_no",
title : "库位号",
class : 'col-md-1',
align : "center",
valign : "middle",
sortable : "true"
});
var arr = returnValue.data;
$.each(arr, function(i, item) {
// alert(item.ColumnCode);
// myColumns.push(item.ColumnCode);
myColumns.push({
"field" : item.ColumnCode,
"title" : item.ColumnName,
// "hide" : true,
"visible" : item.visible,
"align" : item.align,//'center',
"valign" : item.valign//'middle'
});
});
}
// console.log(myColumns);
// alert(myColumns.toString());
// return myColumns;
}
});
}
/**
* 库位状态列表
* @returns
*/
function getLocStatusList(){
$.ajax({
url:'basic/getLocStatus.action',
dataType:'json',
type:'post',
data:{
pageNumber:1,
pageSize:1000
},
success:function(data){
$("#loc_sts").empty();
$("#loc_sts").append("");
$.each(data.rows,function(){
$("#loc_sts").append("");
});
},
error:function(){
alert("请求失败!");
}
});
}
/**
* 条件查询库位
* @returns
*/
function getLocationByCon(){
// $("#stk-mast").bootstrapTable('refresh');
$("#stk-mast").bootstrapTable('refreshOptions',{pageNumber:1}); //分页后重新搜索时,初始化页码为1
$("#detail_loc_no").val("A");
$("#stk-detail").bootstrapTable('refreshOptions',{pageNumber:1});
}
function getStkDetail(){
// $("#stk-mast").bootstrapTable('refresh');
$("#stk-detail").bootstrapTable('refreshOptions',{pageNumber:1}); //分页后重新搜索时,初始化页码为1
}
/**
* 根据主档loc_no查询明细
* @returns
*/
function getvalue(id){
alert('查询明细' + id);
return;
$.ajax({
url:'stock/queryLocationById.action',
type:'post',
dataType:'json',
data:{did:id},
success:function(data){
$("#loc_no").val(data.loc_no);
},
error:function(){
alert("请求失败");
}
});
getStkDetail();
}
/**
* 调用SAP接口,同步更新ASRS库存
* @returns
*/
function syncStock(loc_no,barcode){
// alert('同步接口测试');
// return;
if(confirm('确认从SAP同步库存到库位?库位号:' + loc_no)){
$.ajax({
url:'stock/syncStockFromSap.action',
type:'post',
dataType:'json',
data:{
loc_no:loc_no,
barcode:barcode
},
success:function(data){
if(data>0){
alert("同步成功");
}else{
alert("同步失败");
}
$("#test-table").bootstrapTable('refresh');
},
error:function(){
alert("请求失败");
}
});
}else{
return false;
}
}
/** * 批量更新库存 * @param value * @returns */
function syncStocks(value){
var loc_obj=[];
//获取选中的行
var a= $('#stk-mast').bootstrapTable('getSelections');
if(a.length>0){
if (confirm("更新被勾选库位的库存?")){
$.each(a,function(index){
loc_obj.push({
locNo: a[index].loc_no,
barcode: a[index].barcode,
});
});
$.ajax({
url:'stock/syncStocksFromSap.action',
type:'post',
dataType:'text',
contentType:"application/json",
data: JSON.stringify(loc_obj),
success:function(data){
console.log(data);
alert(data);
$("#test-table").bootstrapTable('refresh');
},
error:function(res){
alert("请求失败");
}
});
}else {
return false;
}
}else{
alert("请至少选中一行数据");
}
}
$('#excel-file').change(function (e) {
var files = e.target.files;
var fileReader = new FileReader();
fileReader.onload = function (ev) {
try {
var data = ev.target.result,
workbook = XLSX.read(data, {
type: 'binary'
}), // 以二进制流方式读取得到整份excel表格对象
persons = []; // 存储获取到的数据
} catch (e) {
alert('文件类型不正确');
return;
}
// 遍历每张表读取
for (var sheet in workbook.Sheets) {
if (workbook.Sheets.hasOwnProperty(sheet)) {
var fromTo = workbook.Sheets[sheet]['!ref'];
var datas = workbook.Sheets[sheet];
// 如果有不规范数据可以在这里进行处理datas
persons = persons.concat(XLSX.utils.sheet_to_json(datas));
break; // 只读了第一张表
}
}
var loc_obj=[];
for (var i=0;i