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; } }