var CheckMonitorManager = { CheckMonitorGrid: undefined, CheckMonitorGrid2: undefined, //TaskMonitorGrid2: undefined, Server: function () { var config = (function () { var URL_GetList = "/CheckMonitorAjax/GetTaskList"; var URL_GetDetailList = "/CheckMonitorAjax/GetTaskMonitorList"; var URL_Forbidden = "/CheckMonitorAjax/ForbiddenMonitor"; var URL_Bind = "/CheckMonitorAjax/AddTask"; var URL_UnBind = "/CheckMonitorAjax/CancelTaskMonitor"; var URL_EndBatch = "/CheckMonitorAjax/EndBatchMonitor"; var URL_Dispose = "/AlarmAjax/DisposeAlarm"; return { URL_GetList: URL_GetList, URL_GetDetailList: URL_GetDetailList, URL_Forbidden: URL_Forbidden, URL_Bind: URL_Bind, URL_UnBind: URL_UnBind, URL_EndBatch: URL_EndBatch, URL_Dispose: URL_Dispose }; })(); //数据操作服务 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 GetDetailList = function (data, callback) { $.gitAjax({ url: config.URL_GetDetailList, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Forbidden = function (data, callback) { $.gitAjax({ url: config.URL_Forbidden, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var UnBind = function (data, callback) { $.gitAjax({ url: config.URL_UnBind, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var EndBatch = function (data, callback) { $.gitAjax({ url: config.URL_EndBatch, data: { ajaxdata: JSON.stringify(data) }, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Bind = function (data, callback) { $.gitAjax({ url: config.URL_Bind, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } var Dispose = function (data, callback) { $.gitAjax({ url: config.URL_Dispose, data: data, type: "post", dataType: "json", success: function (result) { if (callback != undefined && typeof callback == "function") { callback(result); } } }); } return { GetList: GetList, GetDetailList: GetDetailList, Forbidden: Forbidden, Bind: Bind, // Cancel: Cancel, EndBatch: EndBatch, Dispose: Dispose } })($, config); return dataServer; }, //按钮对话框 Dialog: function (ID, Command) { var submit = function (v, h, f) { if (v) { var TaskType = h.find('select[name="TaskType"]').val(); var InitialAddre = h.find('input[name="InitialAddre"]').val(); var TargetAddre = h.find('input[name="TargetAddre"]').val(); var PalletNo = h.find('input[name="PalletNo"]').val(); if (git.IsEmpty(TaskType)) { $.jBox.tip("请选择任务类型", "warn"); return false; } if (git.IsEmpty(InitialAddre)) { $.jBox.tip("请选择起始地址", "warn"); return false; } if (git.IsEmpty(TargetAddre)) { $.jBox.tip("请选择目标地址", "warn"); return false; } var param = {}; param["Operation"] = Command; param["ID"] = ID; param["Type"] = TaskType; param["StartLocate"] = InitialAddre; param["EndLocate"] = TargetAddre; param["PalletNo"] = PalletNo; var Server = CheckMonitorManager.Server(); Server.Add(param, function (result) { if (result.Code == 1) { var pageSize = $("#mypager").pager("GetPageSize"); var pageIndex = $("#mypager").pager("GetCurrent"); if (Command == "Add") { CheckMonitorManager.PageClick(1, pageSize); } } else { $.jBox.tip(result.Message, "warn"); } }); } } //窗体加载完成回调事件 var loaded = function (h) { h.find('input[name="BrandCode"]').attr("disabled", true); } if (Command == "Add") { $.jBox.open("get:/Wcs/TaskMonitor/AddEdit", "新增", 620, 200, { buttons: { "确定": true, "关闭": false }, submit: submit, loaded: loaded }); } }, //list列表查询第一步 PageClick: function (PageIndex, PageSize) { var Server = CheckMonitorManager.Server(); var search = CheckMonitorManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; Server.GetList(search, function (result) { CheckMonitorManager.SetTable(result); }); // 初始不加载任务明细信息 //Server.GetDetailList(search, function (result) { // TaskMonitorManager.SetTable2(result); //}); }, //list列表查询第一步 PageClick1: function (PageIndex, PageSize, PickLinoID) { var Server = CheckMonitorManager.Server(); var search = CheckMonitorManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; //判读机器人编号是否为空 if (PickLinoID != "") { search["PickLinoID"] = PickLinoID; } Server.GetDetailList(search, function (result) { console.log("渲染数据"); CheckMonitorManager.SetTable2(result); }); }, //刷新表格数据 Refresh: function () { var PageSize = $("#mypager").pager("GetPageSize"); var PageIndex = $("#mypager").pager("GetCurrent"); $.jBox.tip("正在努力加载数据...", "loading"); var Server = CheckMonitorManager.Server(); var search = CheckMonitorManager.GetSearch(); search["PageIndex"] = PageIndex; search["PageSize"] = PageSize; Server.GetList(search, function (result) { console.log(result) CheckMonitorManager.SetTable(result); $.jBox.closeTip(); }); }, //渲染表格 SetTable: function (result) { var ht = masterUI.tableTopHeight(); var cols = [ { title: '机器人编号', name: 'RobotNo', width: 140, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '机器人名称', name: 'RobotName', width: 67, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '分拣类型', name: 'PickType', width: 100, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { var str = ""; switch (data) { case "0": str = "码垛入库分拣"; break; case "1": str = "拆垛出库分拣"; break; } return str; } }, { title: '机器人状态', name: 'IDState', width: 100, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { var str = ""; switch (data) { case "0": str = "可用"; break; case "1": str = "不可用"; break; } return str; } }, { title: '已绑定任务数', name: 'Picked', width: 100, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '操作', name: 'ID', width: 100, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) { var html = ""; if (item.IDState == "1") { html += '恢复  '; } if (item.IDState == "0") { html += '绑定  '; html += '禁用  '; } return html; } }, ]; if (this.CheckMonitorGrid == undefined) { this.CheckMonitorGrid = $("#tabList").mmGrid({ cols: cols, items: result.Result.List, checkCol: true, nowrap: true, fullWidthRows: true, remoteSort: true, multiSelect: false,//true:多选、false:单选 indexCol: true,//序号行 height: ht }); //绑定事件 CheckMonitorManager.BindEvent(); } else { this.CheckMonitorGrid.load(result.Result.List); } var pageInfo = result.PageInfo; if (pageInfo != undefined) { $("#mypager").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: CheckMonitorManager.PageClick }); } }, //渲染表格明细 SetTable2: function (result) { var ht = masterUI.tableBomHeight(); console.log(ht); var cols = [ { title: '机器人编号', name: 'PickLinoID', width: 140, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '任务号', name: 'TaskNo', width: 100, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return data; } }, { title: '任务类型', name: 'Type', width: 140, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { var str = ""; switch (data) { case "0": str = "拆垛出库"; break; case "1": str = "码垛入库"; break; } return str; } }, { title: '批次', name: 'LotNo', width: 100, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '物料编码', name: 'SkuNo', width: 80, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '物料名称', name: 'SkuName', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '长', name: 'Chang', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '宽', name: 'Kuan', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '高', name: 'Gao', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '任务状态', name: 'IDState', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { var str = ""; switch (data) { case "0": str = "未绑定"; break; case "1": str = "已绑定"; break; case "2": str = "已结批"; break; case "3": str = "预结批"; break; case "4": str = "结批中"; break; case "5": str = "解绑"; break; } return str; } }, { title: '绑定道号', name: 'LineDao', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '分拣等级', name: 'Level', width: 50, align: 'center', lockWidth: false, sortable: false, renderer: function (data, item, rowIndex) { return data; } }, { title: '创建时间', name: 'AddTime', width: 160, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); } }, { title: '结批时间', name: 'Finish', width: 160, align: 'center', lockWidth: false, sortable: true, renderer: function (data, item, rowIndex) { return git.JsonToDateTimeto(data); } }, { title: '操作', name: 'BindID', width: 100, align: 'left', lockWidth: false, renderer: function (data, item, rowIndex) { var html = ""; //if (item.IDState == "0") { html += '解绑  '; //}; //if (item.IDState == "0") { html += '结批  '; //}; return html; } }, ]; if (this.CheckMonitorGrid2 == undefined) { this.CheckMonitorGrid2 = $("#tabList2").mmGrid({ cols: cols, items: result.Result.List, checkCol: false, nowrap: true, fullWidthRows: true, remoteSort: true, multiSelect: false, indexCol: true, height: ht }); } else { this.CheckMonitorGrid2.load(result.Result.List); } var pageInfo = result.PageInfo; if (pageInfo != undefined) { $("#mypager2").pager({ pagenumber: pageInfo.PageIndex, recordCount: pageInfo.RowCount, pageSize: pageInfo.PageSize, buttonClickCallback: CheckMonitorManager.PageClick1 }); } }, //表格中按钮事件 BindEvent: function () { this.CheckMonitorGrid.on('loadSuccess', function (e, data) { LoadBtn.SetBtn(); }); //编辑删除事件都绑定 this.CheckMonitorGrid.off("cellSelected").on("cellSelected", function (e, item, rowIndex, colIndex) { // 禁用机器人 if ($(e.target).is("a.forbidden")) { var ID = item.ID; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(ID); var param = {}; param["list"] = JSON.stringify(list); var Server = CheckMonitorManager.Server(); Server.Forbidden(param, function (result) { if (result.Code == 1) { $.jBox.tip(result.Message, "success"); } else { $.jBox.tip(result.Message, "warn"); } $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); CheckMonitorManager.PageClick(1, pageSize); }); } } $.jBox.confirm("确定要完成吗?", "提示", submit); } // 取消任务 /* else if ($(e.target).is("a.bind")) { var ID = item.Id; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(ID); var param = {}; param["list"] = JSON.stringify(list); var Server = CheckMonitorManager.Server(); Server.Bind(param, function (result) { if (result.Code == 1) { $.jBox.tip(result.Message, "success"); } else { $.jBox.tip(result.Message, "warn"); } var pageSize = $("#mypager").pager("GetPageSize"); CheckMonitorManager.PageClick1(1, pageSize); }); } } $.jBox.confirm("确定要取消吗?取消后必须将关联储位的状态改为正确状态!", "提示", submit); }*/ /*// 回传任务 else if ($(e.target).is("a.unbind")) { var ID = item.Id; var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(ID); var param = {}; param["list"] = JSON.stringify(list); var Server = CheckMonitorManager.Server(); Server.UnBind(param, function (result) { if (result.Code == 1) { $.jBox.tip(result.Message, "success"); } else { $.jBox.tip(result.Message, "warn"); } $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); CheckMonitorManager.PageClick1(1, pageSize); }); } } $.jBox.confirm("是否再次回传任务?", "提示", submit); }*/ // 任务手动结批 else if ($(e.target).is("a.endbatch")) { var ID = item.Id; console.log("结批访问测试1…………"); var submit = function (v, h, f) { if (v == "ok") { var list = []; list.push(BindID); var param = {}; param["list"] = JSON.stringify(list); var Server = CheckMonitorManager.Server(); console.log("结批访问测试2…………"); Server.EndBatch(param, function (result) { if (result.Code == 1) { $.jBox.tip(result.Message, "success"); } else { $.jBox.tip(result.Message, "warn"); } $.jBox.tip(result.Message, "success"); var pageSize = $("#mypager").pager("GetPageSize"); CheckMonitorManager.PageClick1(1, pageSize); }); } } $.jBox.confirm("是否再次回传任务?", "提示", submit); } else { console.log("当前选中数据:" + item.RobotNo); CheckMonitorManager.PageClick1(1, 15, item.RobotNo); } //console.log(item.TaskNo) }); }, //获取选中项的信息 GetSelect: function () { var list = []; if (this.CheckMonitorGrid != undefined) { var rows = this.CheckMonitorGrid.selectedRows(); if (rows != undefined && rows.length > 0) { for (var i = 0; i < rows.length; i++) { list.push(rows[i].Id); } } } return list; }, GetSearch: function () { var searchBar = $("div[data-condition='search']"); var RobotNo = searchBar.find("input[name='RobotNo']").val(); var PickType = searchBar.find("select[name='PickType']").val(); var IDState = searchBar.find("select[name='IDState']").val(); var search = {}; search["RobotNo"] = RobotNo; search["PickType"] = PickType; search["IDState"] = IDState; return search; }, ToolBar: function () { //工具栏按钮点击事件 $("div.toolbar").find("a.btn").click(function () { var command = $(this).attr("data-command"); if (command === "Add") { CheckMonitorManager.Dialog(undefined, command); } }); //搜索 var searchBar = $("div[data-condition='search']"); searchBar.find("a[data-command='search']").click(function () { CheckMonitorManager.PageClick(1, 15); }); //加载默认数据 CheckMonitorManager.PageClick(1, 15); CheckMonitorManager.PageClick1(1, 15); } }; //var socket = new WebSocket('ws://localhost:8080'); var ManualControlManager2 = { GetSelect: function () { var list = ""; if (Dictionary.InTable != undefined) { var rows = Dictionary.InTable.selectedRows(); if (rows != undefined && rows.length > 0) { for (var i = 0; i < rows.length; i++) { list = rows[i].TypeName; } } } return list; }, ToolBar: function () { $.gitAjax({ async: false, url: "/ManualControlAjax/GetIsAuto", type: "post", dataType: "json", success: function (result) { $.jBox.closeTip(); if (result != null) { if (result == "0") { $('#forward').attr({ "disabled": true, "readonly": true }); $('#reverse').attr({ "disabled": true, "readonly": true }); $('#reset').attr({ "disabled": true, "readonly": true }); $('#empty').attr({ "disabled": true, "readonly": true }); //$('#Issued').attr({ "disabled": true, "readonly": true }); $('#stacker').attr({ "disabled": true, "readonly": true }); $('#auto').removeClass('btn-primary'); $('#auto').addClass('btn-warning'); } else if (result == "1") { $('#manual').removeClass('btn-primary'); $('#manual').addClass('btn-warning'); } console.log(result); } } }); $("#auto").click(function () { console.log("111111") $.gitAjax({ async: false, url: "/ManualControlAjax/UpdateIsAuto", data: { list: '["0"]' }, type: "post", dataType: "json", success: function (result) { $.jBox.closeTip(); if (result != null) { if (result.Code == 1) { $.jBox.tip("操作成功", "warn"); $('#forward').attr({ "disabled": true, "readonly": true }); $('#reverse').attr({ "disabled": true, "readonly": true }); $('#reset').attr({ "disabled": true, "readonly": true }); $('#empty').attr({ "disabled": true, "readonly": true }); $('#stacker').attr({ "disabled": true, "readonly": true }); $('#auto').removeClass('btn-primary'); $('#auto').addClass('btn-warning'); $('#manual').removeClass('btn-warning'); $('#manual').addClass('btn-primary'); } else if (result == -1) { $.jBox.tip("操作失败", "warn"); } console.log(result); } } }); }); $("#manual").click(function () { $.gitAjax({ async: false, url: "/ManualControlAjax/UpdateIsAuto", data: { list: '["1"]' }, type: "post", dataType: "json", success: function (result) { $.jBox.closeTip(); if (result != null) { if (result.Code == 1) { $.jBox.tip("操作成功", "warn"); $('#forward').attr({ "disabled": false, "readonly": false }); $('#reverse').attr({ "disabled": false, "readonly": false }); $('#reset').attr({ "disabled": false, "readonly": false }); $('#empty').attr({ "disabled": false, "readonly": false }); $('#stacker').attr({ "disabled": false, "readonly": false }); $('#manual').removeClass('btn-primary'); $('#manual').addClass('btn-warning'); $('#auto').removeClass('btn-warning'); $('#auto').addClass('btn-primary'); } else if (result == -1) { $.jBox.tip("操作失败", "warn"); } console.log(result); } } }); }); $("#stacker").change(function () { var Region = ($(this).val()); // 获取库区编码 if (Region == "1") { $('#forward').attr({ "disabled": true, "readonly": true }); $('#reverse').attr({ "disabled": true, "readonly": true }); } if (Region == "2") { $('#forward').attr({ "disabled": false, "readonly": false }); $('#reverse').attr({ "disabled": false, "readonly": false }); } if (Region == "3") { $('#forward').attr({ "disabled": false, "readonly": false }); $('#reverse').attr({ "disabled": false, "readonly": false }); } if (Region == "4") { $('#forward').attr({ "disabled": false, "readonly": false }); $('#reverse').attr({ "disabled": false, "readonly": false }); } }); $('#forward').click(function () { var iszf = $('#forward').is('.btn-primary'); var iszf2 = $('#forward').attr("disabled"); var isstacker = $("#stacker").val(); if (iszf2 == "disabled") { return false; } else { if (isstacker == "") { $.jBox.tip("请选择设备", "warn"); return false; } if (iszf) { $('#forward').removeClass('btn-primary'); $('#forward').addClass('btn-warning'); alert("正转"); } else { $('#forward').removeClass('btn-warning'); $('#forward').addClass('btn-primary'); alert("停止正传"); } } }); $('#reverse').click(function () { var iszf = $('#reverse').is('.btn-primary'); var iszf2 = $('#reverse').attr("disabled"); var isstacker = $("#stacker").val(); if (iszf2 == "disabled") { return false; } else { if (isstacker == "") { $.jBox.tip("请选择设备", "warn"); return false; } if (iszf) { $('#reverse').removeClass('btn-primary'); $('#reverse').addClass('btn-warning'); alert("反转"); } else { $('#reverse').removeClass('btn-warning'); $('#reverse').addClass('btn-primary'); alert("停止反传"); } } }); $("input[name='InitialAddre']").dblclick(function () { var searchBar2 = $("div[data-condition='search2']"); var submit = function (v, h, f) { if (v == "1") { var list = ManualControlManager2.GetSelect(); searchBar2.find("input[name='InitialAddre']").val(list); } else if (v == "2") { }; }; var submit2 = function (v, h, f) { var list = Storage.GetSelect(); searchBar2.find("input[name='InitialAddre']").val(list); }; var TaskType2 = searchBar2.find("select[name='TaskType']").val(); if (TaskType2 == "") { $.jBox.tip("请选择任务类型!", "warn"); } if (TaskType2 == "0") { $.jBox.open("get:/Wcs/ManualControl/SelectChannel2", "选择起始地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit, loaded: function (h) { current = h; } }); } if (TaskType2 == "1") { $.jBox.open("get:/Wcs/ManualControl/SelectStorage", "选择起始地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit2, loaded: function (h) { current = h; } }); } if (TaskType2 == "2") { $.jBox.open("get:/Wcs/ManualControl/SelectStorage", "选择起始地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit2, loaded: function (h) { current = h; } }); } }); $("input[name='TargetAddre']").dblclick(function () { var searchBar2 = $("div[data-condition='search2']"); var submit = function (v, h, f) { var list = ManualControlManager2.GetSelect(); searchBar2.find("input[name='TargetAddre']").val(list); }; var submit2 = function (v, h, f) { var list = Storage.GetSelect(); searchBar2.find("input[name='TargetAddre']").val(list); }; var TaskType2 = searchBar2.find("select[name='TaskType']").val(); if (TaskType2 == "") { $.jBox.tip("请选择任务类型!", "warn"); } if (TaskType2 == "0") { $.jBox.open("get:/Wcs/ManualControl/SelectStorage", "选择目标地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit2, loaded: function (h) { current = h; } }); } if (TaskType2 == "1") { $.jBox.open("get:/Wcs/ManualControl/SelectChannel2", "选择目标地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit, loaded: function (h) { current = h; } }); } if (TaskType2 == "2") { type = "01"; $.jBox.open("get:/Wcs/ManualControl/SelectStorage", "选择目标地址", 800, 500, { buttons: { "选择": 1, "关闭": 2 }, submit: submit2, loaded: function (h) { current = h; } }); } }); } };