|
var GoodsManager = {
|
GoodsGrid: undefined,
|
|
Server: function () {
|
var config = (function () {
|
var URL_GetList = "/GoodsPosAjax/GetList";
|
var URL_Lock = "/GoodsPosAjax/GetGoodsPosLock";
|
var URL_Add = "/GoodsPosAjax/AddGoods";
|
var URL_Property = "/GoodsPosAjax/GetGoodsPosProperty";
|
var URL_Print = "/GoodsPosAjax/PrintBarCode"; // 打印库位
|
var URL_PrintTray = "/GoodsPosAjax/PrintTrayBarCode"; // 批量打印托盘
|
|
return {
|
URL_GetList: URL_GetList,
|
URL_Lock: URL_Lock,
|
URL_Add: URL_Add,
|
URL_Property: URL_Property,
|
URL_Print: URL_Print,
|
URL_PrintTray: URL_PrintTray,
|
};
|
})();
|
|
//数据操作服务
|
var dataServer = (function ($, config) {
|
|
//查询分页列表
|
var GetList = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_GetList,
|
data: { ajaxdata: JSON.stringify(data) },
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
|
var Lock = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_Lock,
|
data: { ajaxdata: JSON.stringify(data) },
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
// 打印货位
|
var PrintBarCode = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_Print,
|
data: data,
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
// 打印托盘
|
var PrintTrayBarCode = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_PrintTray,
|
data: data,
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
|
var Property = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_Property,
|
data: { ajaxdata: JSON.stringify(data) },
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
|
var Add = function (data, callback) {
|
$.gitAjax({
|
url: config.URL_Add,
|
data: { ajaxdata: JSON.stringify(data) },
|
type: "post",
|
dataType: "json",
|
success: function (result) {
|
if (callback != undefined && typeof callback == "function") {
|
callback(result);
|
}
|
}
|
});
|
}
|
|
return {
|
GetList: GetList,
|
Lock: Lock,
|
Property: Property,
|
Add: Add,
|
PrintBarCode: PrintBarCode,
|
PrintTrayBarCode: PrintTrayBarCode,
|
}
|
|
})($, config);
|
return dataServer;
|
},
|
|
Dialog: function (Addre, Command) {
|
var submit = function (v, h, f) {
|
if (v) {
|
var Property = h.find('select[name="property"]').val();
|
if (git.IsEmpty(Property)) {
|
$.jBox.tip("请选择库位属性", "warn");
|
return false;
|
}
|
|
var statu = h.find('select[name="statu"]').val();
|
if (git.IsEmpty(statu)) {
|
$.jBox.tip("请选择库位状态", "warn");
|
return false;
|
}
|
var Alock = h.find('select[name="Alock"]').val();
|
if (git.IsEmpty(Alock)) {
|
$.jBox.tip("请选择库位锁定状态", "warn");
|
return false;
|
}
|
|
var Demo = h.find('input[name="Demo"]').val();
|
|
var param = {};
|
param["Operation"] = Command;
|
param["Area"] = Addre;
|
param["Property"] = Property;
|
param["statu"] = statu;
|
param["Alock"] = Alock;
|
param["Demo"] = Demo;
|
|
var Server = GoodsManager.Server();
|
Server.Add(param, function (result) {
|
if (result.Code == 1) {
|
var pageSize = $("#mypager").pager("GetPageSize");
|
var pageIndex = $("#mypager").pager("GetCurrent");
|
|
if (Command == "Add") {
|
GoodsManager.PageClick(pageIndex, pageSize);
|
} else if (Command == "Edit") {
|
|
GoodsManager.Refresh();
|
//$.jBox.tip(result.Message, "warn"); // 库位编辑成功哦那个! 提示
|
}
|
} else {
|
$.jBox.tip(result.Message, "warn");
|
}
|
});
|
|
// liudl 注释
|
//Server.Property(param, function (result) {
|
// if (result.Code == 1) {
|
// $.jBox.tip(result.Message, "info");
|
|
|
// var pageSize = $("#mypager").pager("GetPageSize");
|
// var pageIndex = $("#mypager").pager("GetCurrent");
|
// GoodsManager.PageClick(pageIndex, pageSize);
|
// } else {
|
// //$.jBox.tip(result.Message, "warn"); // 提示空提示
|
// }
|
//});
|
}
|
}
|
|
//窗体加载完成回调事件
|
var loaded = function (h)
|
{
|
|
// 设置禁止更改列
|
h.find('select[name="Area"]').attr("disabled", "disabled");
|
h.find('select[name="pai"]').attr("disabled", "disabled"); // 库区编码 总排 列 行 禁止编辑
|
h.find('select[name="lie"]').attr("disabled", "disabled");
|
h.find('select[name="ceng"]').attr("disabled", "disabled");
|
}
|
|
if (Command == "Property") {
|
$.jBox.open("get:/BasicInfo/GoodsPos/SetProperty", "设定库位属性", 650, 200, { buttons: { "确定": true, "取消": false }, submit: submit });
|
} if (Command == "Add") {
|
$.jBox.open("get:/BasicInfo/GoodsPos/AddGoods", "新增库位信息", 400, 500, { buttons: { "确定": true, "关闭": false }, submit: submit });
|
} else if (Command == "Edit") {
|
$.jBox.open("get:/BasicInfo/GoodsPos/AddGoods?Addre=" + Addre, "编辑库位信息", 400, 500, { buttons: { "确定": true, "关闭": false }, submit: submit });
|
}
|
},
|
|
PageClick: function (PageIndex, PageSize) {
|
$.jBox.tip("正在努力加载数据...", "loading");
|
|
var Server = GoodsManager.Server(); // 绑定方法
|
var search = GoodsManager.GetSearch(); // 加载视图过滤条件
|
search["PageIndex"] = PageIndex;
|
search["PageSize"] = PageSize;
|
console.log(JSON.stringify(search));
|
Server.GetList(search, function (result) {
|
GoodsManager.SetTable(result);
|
$.jBox.closeTip();
|
});
|
},
|
|
Refresh: function () {
|
var PageSize = $("#mypager").pager("GetPageSize");
|
var PageIndex = $("#mypager").pager("GetCurrent");
|
$.jBox.tip("正在努力加载数据...", "loading");
|
|
var Server = GoodsManager.Server();
|
var search = GoodsManager.GetSearch();
|
search["PageIndex"] = PageIndex;
|
search["PageSize"] = PageSize;
|
Server.GetList(search, function (result) {
|
GoodsManager.SetTable(result);
|
$.jBox.closeTip();
|
});
|
},
|
|
SetTable: function (result) {
|
var cols = [
|
{
|
title: '库区', name: 'Area', width: 90, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '货位地址', name: 'Addre', width: 110, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '排', name: 'pai', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '列', name: 'lie', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '层', name: 'ceng', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '货位属性', name: 'property', width: 100, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
|
{
|
title: '货位状态', name: 'statu', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '锁定状态', name: 'ALock', width: 80, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '备注', name: 'Demo', width: 120, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) {
|
return data;
|
}
|
},
|
{
|
title: '操作', name: 'ID', width: 180, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) {
|
var html = "";
|
html += '<a class="print" href="javascript:void(0)">打印</a> ';
|
html += '<a class="printTray" href="javascript:void(0)">打印托盘码</a> ';
|
return html;
|
}
|
},
|
];
|
|
if (this.GoodsGrid == undefined) {
|
var ht = masterUI.MMGridHeight();
|
this.GoodsGrid = $("#tabList").mmGrid({
|
cols: cols, // 定义表头
|
items: result.Result.List,
|
checkCol: true, // 是否显示选择框
|
nowrap: true,
|
remoteSort: true,
|
multiSelect: false, // 单选 / 多选 默认单选
|
// indexCol: true, // 增加索引列
|
height: ht
|
});
|
|
//绑定事件
|
GoodsManager.BindEvent();
|
} else {
|
this.GoodsGrid.load(result.Result.List);
|
}
|
var pageInfo = result.PageInfo;
|
if (pageInfo != undefined) {
|
$("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: GoodsManager.PageClick });
|
}
|
},
|
|
BindEvent: function () {
|
this.GoodsGrid.on('loadSuccess', function (e, data) {
|
LoadBtn.SetBtn();
|
});
|
|
this.GoodsGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) {
|
// 编辑绑定生成库位事件
|
if ($(e.target).is("a.print")) {
|
var Addre = item.Addre;
|
var submit = function (v, h, f) {
|
if (v == "ok") {
|
var list = [];
|
list.push(Addre);
|
var param = {};
|
param["list"] = JSON.stringify(list);
|
var Server = GoodsManager.Server();
|
Server.PrintBarCode(param, function (result) {
|
// 此方法内的执行顺序是由下往上。
|
// 刷新页面
|
var pageSize = $("#mypager").pager("GetPageSize");
|
GoodsManager.PageClick(1, pageSize);
|
|
$.jBox.tip(result.Message, "warn"); // 条形码打印完毕! 提示
|
});
|
}
|
}
|
$.jBox.confirm("打印 " + Addre + " 库位条形码?", "提示", submit);
|
}
|
else if ($(e.target).is("a.printTray"))
|
{
|
var Addre = item.Addre;
|
var submit = function (v, h, f) {
|
if (v == "ok") {
|
var list = [];
|
list.push(Addre);
|
var param = {};
|
param["list"] = JSON.stringify(list);
|
var Server = GoodsManager.Server();
|
Server.PrintTrayBarCode(param, function (result) {
|
// 此方法内的执行顺序是由下往上。
|
// 刷新页面
|
var pageSize = $("#mypager").pager("GetPageSize");
|
GoodsManager.PageClick(1, pageSize);
|
|
$.jBox.tip(result.Message, "warn"); // 条形码打印完毕! 提示
|
});
|
}
|
}
|
$.jBox.confirm("批量打印 " + Addre + " 库位中所有托盘条形码?", "提示", submit);
|
}
|
});
|
},
|
|
GetSelect: function () {
|
var list = [];
|
if (this.GoodsGrid != undefined) {
|
var rows = this.GoodsGrid.selectedRows();
|
if (rows != undefined && rows.length > 0) {
|
for (var i = 0; i < rows.length; i++) {
|
list.push(rows[i].Addre);
|
}
|
}
|
}
|
return list;
|
},
|
|
GetSearch: function () {
|
// 获取下拉框值
|
var searchBar = $("div[data-condition='search']");
|
var pai = searchBar.find("select[name='pai']").val();
|
var lie = searchBar.find("select[name='lie']").val();
|
var ceng = searchBar.find("select[name='ceng']").val();
|
var area = searchBar.find("select[name='Area']").val();
|
var statu = searchBar.find("select[name='statu']").val();
|
var property = searchBar.find("select[name='property']").val();
|
var Alock = searchBar.find("select[name='Alock']").val();
|
|
var search = {};
|
search["pai"] = pai;
|
search["lie"] = lie;
|
search["ceng"] = ceng;
|
search["area"] = area;
|
search["statu"] = statu;
|
search["property"] = property;
|
search["Alock"] = Alock;
|
|
return search;
|
},
|
|
ToolBar: function () {
|
//工具栏按钮点击事件
|
$("div.toolbar").find("a.btn").click(function () {
|
var command = $(this).attr("data-command");
|
|
if (command == "Lock") {
|
var list = GoodsManager.GetSelect();
|
if (list.length == 0) {
|
$.jBox.tip("请选择要锁定的货位", "warn");
|
return false;
|
}
|
|
var param = {};
|
param["list"] = JSON.stringify(list);
|
|
param["Operation"] = "Lock";
|
|
var Server = GoodsManager.Server();
|
Server.Lock(param, function (result) {
|
$.jBox.tip(result.Message, "success");
|
|
var pageSize = $("#mypager").pager("GetPageSize");
|
GoodsManager.PageClick(1, pageSize);
|
});
|
|
}
|
else if (command == "Unlock") {
|
var list = GoodsManager.GetSelect();
|
if (list.length == 0) {
|
$.jBox.tip("请选择要解锁的货位", "warn");
|
return false;
|
}
|
var param = {};
|
param["list"] = JSON.stringify(list);
|
|
param["Operation"] = "UnLock";
|
|
var Server = GoodsManager.Server();
|
Server.Lock(param, function (result) {
|
$.jBox.tip(result.Message, "success");
|
|
var pageSize = $("#mypager").pager("GetPageSize");
|
GoodsManager.PageClick(1, pageSize);
|
});
|
}
|
else if (command == "Property") {
|
var list = GoodsManager.GetSelect();
|
if (list.length == 0) {
|
$.jBox.tip("请选择要设定属性的库位", "warn");
|
return false;
|
}
|
//var param = {};
|
//param["list"] = JSON.stringify(list);
|
GoodsManager.Dialog(list, "Property")
|
}
|
else if (command == "Add") {
|
GoodsManager.Dialog(undefined, command);
|
}
|
// 编辑库位属性
|
else if (command == "Edit")
|
{
|
var list = GoodsManager.GetSelect();
|
if (list.length == 0) {
|
$.jBox.tip("请选择要编辑的项", "warn");
|
return false;
|
}
|
var GoodsPos = list[0];
|
GoodsManager.Dialog(GoodsPos, command);
|
}
|
});
|
|
//搜索
|
var searchBar = $("div[data-condition='search']");
|
searchBar.find("a[data-command='search']").click(function () {
|
GoodsManager.PageClick(1, 10);
|
});
|
|
// 下拉框选择事件
|
$("#areaid").change(function () {
|
var areaid = ($(this).val()); // 获取库区编码
|
if (areaid != "") {
|
$.gitAjax({
|
url: "/GoodsPosAjax/BindOption",
|
data: { ajaxdata: areaid },
|
type: "post",
|
dataType: "json",
|
success: function (result) { // result = 后台返回值
|
if (result != null)
|
{
|
// 清空下拉框选项 重新赋值
|
$("#paiid").empty();
|
$("#paiid").html(result.pai);
|
$("#lieid").empty();
|
$("#lieid").html(result.lie);
|
$("#cengid").empty();
|
$("#cengid").html(result.ceng);
|
}
|
}
|
})
|
}
|
});
|
|
//监听回车事件,用于扫描
|
$("input[name='pai']").keydown(function (event)
|
{
|
if (event.keyCode == 13) {
|
var value = $(this).val();
|
if (!git.IsEmpty(value)) {
|
GoodsManager.PageClick(1, 10);
|
setTimeout(function () {
|
$("input[name='pai']").val("");
|
$("input[name='pai']").focus();
|
}, 300);
|
}
|
}
|
});
|
|
$("input[name='pai']").focus();
|
//加载默认数据
|
GoodsManager.PageClick(1, 10);
|
}
|
};
|