var CheckDataManager = {
InTable: undefined,
Server: function () {
var config = (function () {
var URL_AddPalno = "/Business/CheckAjax/AddPalno";
var URL_DeletePalno = "/Business/CheckAjax/DelPalno";
var URL_LoadPalno = "/Business/CheckAjax/LoadPalno";
var URL_GetList = "/Business/CheckAjax/GetList";
var URL_Add = "/Business/CheckAjax/Add";
var URL_Delete = "/Business/CheckAjax/Delete";
var URL_GetPalno = "/Business/CheckAjax/GetPalno";
var URL_Audit = "/Business/CheckAjax/Audit";
var URL_Send = "/Business/CheckAjax/Send";
var URL_Close = "/Business/CheckAjax/Close";
var URL_BuildTask = "/Business/CheckAjax/BuildTask";
var URL_AdjustInventory = "/Business/CheckAjax/AdjustInventory";
return {
URL_AddPalno,
URL_DeletePalno,
URL_LoadPalno,
URL_GetList: URL_GetList,
URL_Add: URL_Add,
URL_Delete,
URL_GetPalno,
URL_Audit,
URL_Send,
URL_Close,
URL_BuildTask,
URL_AdjustInventory,
};
})();
//数据操作服务
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 Add = function (data, callback) {
$.gitAjax({
url: config.URL_Add,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var AddPalno = function (data, callback) {
$.gitAjax({
url: config.URL_AddPalno,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var DeletePalno = function (data, callback) {
$.gitAjax({
url: config.URL_DeletePalno,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var LoadPalno = function (data, callback) {
$.gitAjax({
url: config.URL_LoadPalno,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var Close = function (data, callback) {
$.gitAjax({
url: config.URL_Close,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var Delete = function (data, callback) {
$.gitAjax({
url: config.URL_Delete,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var GetDetail = function (data, callback) {
$.gitAjax({
url: config.URL_GetPalno,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var Audit = function (data, callback) {
$.gitAjax({
url: config.URL_Audit,
data: { ajaxdata: JSON.stringify(data) },
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var Send = function (data, callback) {
$.gitAjax({
url: config.URL_Send,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var BuildTask = function (data, callback) {
$.gitAjax({
url: config.URL_BuildTask,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
var AdjustInventory = function (data, callback) {
$.gitAjax({
url: config.URL_AdjustInventory,
data: data,
type: "post",
dataType: "json",
success: function (result) {
if (callback != undefined && typeof callback == "function") {
callback(result);
}
}
});
}
return {
GetList: GetList,
Add: Add,
AddPalno,
DeletePalno,
LoadPalno,
Close,
Delete,
GetDetail,
Send,
Audit,
BuildTask,
AdjustInventory,
}
})($, config);
return dataServer;
},
PageClick: function (PageIndex, PageSize) {
$.jBox.tip("正在努力加载数据...", "loading");
var Server = CheckDataManager.Server();
var search = CheckDataManager.GetSearch();
search["PageIndex"] = PageIndex;
search["PageSize"] = PageSize;
Server.GetList(search, function (result) {
$.jBox.closeTip();
if (result.Code == 1) {
CheckDataManager.SetTable(result);
} else {
$.jBox.tip(result.Message, "warn");
}
});
},
Refresh: function () {
var PageSize = $("#mypager").pager("GetPageSize");
var PageIndex = $("#mypager").pager("GetCurrent");
$.jBox.tip("正在努力加载数据...", "loading");
var Server = CheckDataManager.Server();
var search = CheckDataManager.GetSearch();
search["PageIndex"] = PageIndex;
search["PageSize"] = PageSize;
Server.GetList(search, function (result) {
$.jBox.closeTip();
if (result.Code == 1) {
CheckDataManager.SetTable(result);
} else {
$.jBox.tip(result.Message, "warn");
}
});
},
SetTable: function (result) {
var cols = [
{
title: '单据编号', name: 'CDNo', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '状态', name: 'Statu', width: 80, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '出库口', name: 'AccessCode', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '备注', name: 'Demo', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '创建人', name: 'CreatUser', width: 100, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '创建时间', name: 'CreatTime', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return git.JsonToDateTimeto(data);
}
},
{
title: '完成时间', name: 'COMTime', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return git.JsonToDateTimeto(data);
}
},
{
title: '操作', name: 'Guid', width: 120, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) {
var html = "";
html += '查看 ';
if (item.Statu == "等待执行") {
html += '编辑 ';
html += '删除 ';
html += '生成任务 ';
}
if (item.Statu == "正在执行") {
html += '调整库存 ';
}
return html;
}
},
];
if (this.InTable == undefined) {
var ht = masterUI.MMGridHeight();
this.InTable = $("#tabList").mmGrid({
cols: cols,
items: result.Result.List,
checkCol: true,
fullWidthRows: true,
nowrap: true,
height: ht
});
//绑定编辑 删除事件
CheckDataManager.BindEvent();
} else {
this.InTable.load(result.Result.List);
}
var pageInfo = result.PageInfo;
if (pageInfo != undefined) {
$("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: CheckDataManager.PageClick });
}
},
BindEvent: function () {
this.InTable.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) {
switch (true) {
case $(e.target).is("a.edit"):
if (item.Statu == "等待执行") {
var SN = item.CDNo;
var Demo = item.Demo;
var AccessCode = item.AccessCode;
window.location.href = "/Business/CheckData/Add?CDNo=" + SN + "&Demo=" + Demo + "&AccessCode=" + AccessCode;
} else {
$.jBox.tip("该订单不能编辑", "warn");
};
break;
case $(e.target).is("a.view"):
var SN = item.CDNo;
CheckDataManager.Detail(SN, "View");
break;
case $(e.target).is("a.setstock"):
//alert(01);
var submit = function (v, h, f) {
if (v == "ok") {
var param = {};
param["SN"] = item.CDNo;
var Server = CheckDataManager.Server();
Server.AdjustInventory(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "success");
}
});
}
}
$.jBox.confirm("确定要调整库存吗?", "提示", submit);
break;
case $(e.target).is("a.del"):
if (item.Statu == "等待执行") {
var SN = item.CDNo;
var submit = function (v, h, f) {
if (v == "ok") {
var list = [];
list.push(SN);
var param = {};
param["list"] = JSON.stringify(list);
var Server = CheckDataManager.Server();
Server.Delete(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "success");
}
});
}
}
$.jBox.confirm("该操作将删除该订单所有数据,确定要删除吗?", "提示", submit);
};
break;
case $(e.target).is("a.buildtask"):
var param = {};
param["SN"] = item.CDNo;
var Server = CheckDataManager.Server();
Server.BuildTask(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "success");
}
});
break;
}
});
this.InTable.on('loadSuccess', function (e, data) {
LoadBtn.SetBtn();
});
},
GetSelect: function () {
var list = [];
if (this.InTable != undefined) {
var rows = this.InTable.selectedRows();
if (rows != undefined && rows.length > 0) {
for (var i = 0; i < rows.length; i++) {
list.push(rows[i].MDNo);
//alert(rows[i].MDNo);
}
}
}
return list;
},
GetRows: function () {
var list = [];
if (this.InTable != undefined) {
var rows = this.InTable.selectedRows();
if (rows != undefined && rows.length > 0) {
for (var i = 0; i < rows.length; i++) {
list.push(rows[i]);
}
}
}
return list;
},
GetSearch: function () {
var searchBar = $("div[data-condition='search']");
var CDNo = searchBar.find("input[name='CDNo']").val();
var Statu = searchBar.find("select[name='Statu']").val();
var BeCreateTime = searchBar.find("input[name='BeCreateTime']").val();
var EnCreateTime = searchBar.find("input[name='EnCreateTime']").val();
var search = {};
search["CDNo"] = CDNo;
search["Statu"] = Statu;
search["BeCreateTime"] = BeCreateTime;
search["EnCreateTime"] = EnCreateTime;
return search;
},
Detail: function (CDNo, Command) {
var submit = function (v, h, f) {
if (v == "1") {
var param = {};
param["CDNo"] = CDNo;
param["AuditStatu"] = "AD02"; //审核通过
var Server = CheckDataManager.Server();
Server.Audit(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
$.jBox.close();
} else {
$.jBox.tip(result.Message, "info");
}
});
} else if (v == "2") {
var param = {};
param["CDNo"] = CDNo;
param["AuditStatu"] = "AD03"; //审核通过
var Server = CheckDataManager.Server();
Server.Audit(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
$.jBox.close();
} else {
$.jBox.tip(result.Message, "success");
}
});
} else if (v == "3") {
//打印
} else if (v == "4") {
$.jBox.close();
}
return false;
}
var TabGrid = undefined;
var SetTable = function (h, result) {
var cols = [
{
title: '生产令号', name: 'LingNo', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '物料编码', name: 'MatNo', width: 100, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '物料名称', name: 'MatName', width: 160, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '规格型号', name: 'PackFormat', width: 260, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '数量', name: 'Quant', width: 60, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '实际数量', name: 'AQuant', width: 60, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '单位', name: 'UnitFrist', width: 60, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '库位地址', name: 'LocationCode', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '托盘号', name: 'Palno', width: 100, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
];
if (TabGrid == undefined) {
TabGrid = h.find('#tabDetail').mmGrid({
cols: cols,
items: result.Result.List,
checkCol: false,
nowrap: true,
height: 320
});
} else {
TabGrid.load(result.Result.List);
}
}
var load = function (h) {
var param = {};
param["CDNo"] = CDNo;
var Server = CheckDataManager.Server();
Server.GetDetail(param, function (result) {
if (result.Code == 1) {
SetTable(h, result);
} else {
$.jBox.tip(result.Message, "warn");
}
});
}
if (Command == "View") {
$.jBox.open("get:/Business/CheckData/Detail?CDNo=" + CDNo, "盘点单详细", 910, 480, {
buttons: { "关闭": 4 }, top: '5%', submit: submit, loaded: function (h) {
load(h);
}
});
} else if (Command == "Audit") {
$.jBox.open("get:/Business/CheckData/Detail?CDNo=" + CDNo, "盘点单审核", 850, 480, {
buttons: { "审核通过": 1, "审核不通过": 2, "打印": 3, "关闭": 4 }, submit: submit, loaded: function (h) {
load(h);
}
});
}
},
ToolBar: function () {
//工具栏按钮点击事件
$("div.toolbar").find("a.btn").click(function () {
var command = $(this).attr("data-command");
if (command == "Add") {
window.location.href = "/Business/CheckData/Add";
} else if (command == "Edit") {
var list = CheckDataManager.GetRows();
if (list.length == 0) {
$.jBox.tip("请选择要编辑的项", "warn");
return false;
}
var item = list[0];
if (item.Statu == "等待下发") {
var SN = item.CDNo;
window.location.href = "/Business/CheckData/Add?CDNo=" + SN;
} else {
$.jBox.tip("该订单不能编辑", "warn");
}
} else if (command == "Delete") {
var list = CheckDataManager.GetRows();
if (list.length == 0) {
$.jBox.tip("请选择要删除的项", "warn");
return false;
}
var item = list[0];
if (item.Statu == "等待下发") {
var submit = function (v, h, f) {
if (v == "ok") {
var list = CheckDataManager.GetSelect();
if (list.length == 0) {
$.jBox.tip("请选择要删除的项", "warn");
return false;
}
var param = {};
param["list"] = JSON.stringify(list);
var Server = CheckDataManager.Server();
Server.Delete(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "warn");
}
});
}
}
$.jBox.confirm("该操作将删除该订单所有数据,确定要删除吗?", "提示", submit);
}
} else if (command == "Excel") {
var Server = CheckDataManager.Server();
var search = CheckDataManager.GetSearch();
Server.ToExcel(search, function (result) {
if (result.Code == 1000) {
var path = unescape(result.Message);
window.location.href = path;
} else {
$.jBox.info(result.Message, "提示");
}
});
} else if (command == "Refresh") {
CheckDataManager.Refresh();
} else if (command == "Send") {
var list = CheckDataManager.GetRows();
var para = [];
for (var i = 0; i < list.RowCount; i++) {
if (list[i].AuditStatu != "已审核") {
$.jBox.tip("订单" + list[i].MDNo + "还未通过审核", "warn");
return false;
}
if (list[i].Statu != "等待下发") {
$.jBox.tip("订单" + list[i].MDNo + "还已下发执行", "warn");
return false;
}
para.push(list[i].MDNo);
}
var submit = function (v, h, f) {
var param = {}
param["Entity"] = JSON.stringify(para);
var Server = CheckDataManager.Server();
Server.Send(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "warn");
}
});
}
$.jBox.confirm("该操作下发选中订单所有数据,确定要下单吗?", "提示", submit);
} else if (command == "Close") {
var list = CheckDataManager.GetRows();
var para = [];
for (var i = 0; i < list.RowCount; i++) {
if (list[i].Statu != "正在执行") {
$.jBox.tip("订单" + list[i].MDNo + "还已下发执行", "warn");
return false;
}
para.push(list[i].MDNo);
}
var submit = function (v, h, f) {
var param = {}
param["Entity"] = JSON.stringify(para);
var Server = CheckDataManager.Server();
Server.Close(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckDataManager.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "warn");
}
});
}
$.jBox.confirm("该操作将会选中订单所有数据关单,确定要关单吗?", "提示", submit);
}
});
//搜索 高级搜索按钮
var searchBar = $("div[data-condition='search']");
searchBar.find("a[data-command='search']").click(function () {
CheckDataManager.PageClick(1, 50);
});
//监听回车事件,用于扫描
searchBar.find("input[name='CDNo']").keydown(function (event) {
if (event.keyCode == 13) {
var value = $(this).val();
if (!git.IsEmpty(value)) {
CheckDataManager.PageClick(1, 50);
setTimeout(function () {
searchBar.find("input[name='CDNo']").val("");
searchBar.find("input[name='CDNo']").focus();
}, 300);
}
}
});
//窗体加载获得焦点
searchBar.find("input[name='CDNo']").focus();
//加载默认数据
CheckDataManager.PageClick(1, 50);
}
}
var CheckPalno = {
Init: function () {
//初始化绑定事件
$("div.toolbar").find("a.btn").click(function (event) {
var command = $(this).attr("data-command");
if (command == "Edit") { // 保存按钮
var param = CheckPalno.GetModel();
if (!param) {
return false;
}
var Server = CheckDataManager.Server();
Server.Add(param, function (result) {
if (result.Code == 1) {
window.location.href = "/Business/CheckData/Index";
} else {
$.jBox.tip(result.Message);
}
});
} else if (command == "Delete") { // 取消按钮
window.location.href = "/Business/CheckData/Index";
}
});
CheckPalno.AddProduct();
CheckPalno.PageClick(1, 50);
},
PageClick: function (PageIndex, PageSize) {
var Server = CheckDataManager.Server();
var search = CheckDataManager.GetSearch();
search["PageIndex"] = PageIndex;
search["PageSize"] = PageSize;
Server.LoadPalno(search, function (result) {
CheckPalno.SetTable(result);
});
},
SetTable: function (result) {
var cols = [
{
title: '生产令号', name: 'LingNo', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '物料编码', name: 'MatNo', width: 100, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '物料名称', name: 'MatName', width: 160, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '规格型号', name: 'PackFormat', width: 260, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '单位', name: 'UnitFrist', width: 60, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '库存数量', name: 'Quant', width: 80, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '库位地址', name: 'LocationCode', width: 120, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '托盘号', name: 'Palno', width: 100, align: 'center', lockWidth: false, renderer: function (data, item, rowIndex) {
return data;
}
},
{
title: '操作', name: 'Operation', width: 80, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) {
var html = "";
//html += '编辑 ';
html += '删除 ';
return html;
}
},
];
var ht = masterUI.MMGridHeight() + 40;
if (this.TabGrid == undefined) {
this.TabGrid = $("#tabList").mmGrid({
cols: cols,
items: result.Result.List,
checkCol: true,
fullWidthRows: true,
nowrap: true,
height: ht
});
CheckPalno.BindTableEvent();
} else {
this.TabGrid.load(result.Result.List);
}
},
BindTableEvent: function () {
this.TabGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) {
if ($(e.target).is("a.delete")) {
var Palno = item.Palno;
var LingNo = item.LingNo;
var LocationCode = item.LocationCode;
var MatNo = item.MatNo;
var submit = function (v, h, f) {
if (v == "ok") {
var param = {};
param["Palno"] = Palno;
param["LingNo"] = LingNo;
param["LocationCode"] = LocationCode;
param["MatNo"] = MatNo;
var Server = CheckDataManager.Server();
Server.DeletePalno(param, function (result) {
if (result.Code == 1) {
var pageSize = $("#mypager").pager("GetPageSize");
CheckPalno.PageClick(1, pageSize);
} else {
$.jBox.tip(result.Message, "warn");
}
});
}
}
$.jBox.confirm("确定要删除吗?", "提示", submit);
}
});
},
AddProduct: function () {
$("div.toolbar").find("a.btn[data-command='Add']").CDProduct({
Mult: true,
TargetStore: $('select[name="StorageNum"]'),
TargetSup: $('input[name="SupNum"]'),
callBack: function (result) {
if (result != undefined && result.length > 0) {
var list = [];
for (var i = 0; i < result.length; i++) {
var item = {};
item["MatNo"] = result[i].MatNo;
item["MatName"] = result[i].MatName;
item["PackFormat"] = result[i].PackFormat;
item["UnitFrist"] = result[i].UnitFrist;
item["Quant"] = result[i].Quant;
item["LingNo"] = result[i].LingNo;
item["LocationCode"] = result[i].LocationCode;
item["Palno"] = result[i].Palno;
list.push(JSON.stringify(item))
}
var param = {};
param["Entity"] = JSON.stringify(list);
var Server = CheckDataManager.Server();
Server.AddPalno(param, function (msg) {
CheckPalno.PageClick(1, 50);
});
}
}
});
},
GetModel: function () {
var CDNo = $("input[name='CDNo']").val();
var Demo = $("input[name='Demo']").val();
var AccessCode = $("select[name='AccessCode']").val();
var param = {};
param["CDNo"] = CDNo;
param["Demo"] = Demo;
param["AccessCode"] = AccessCode;
var entity = {};
entity["Entity"] = JSON.stringify(param);
return entity;
}
}