layui.use(['form','table', 'admin', 'ax', 'func'], function () { var $ = layui.$; var table = layui.table; var $ax = layui.ax; var admin = layui.admin; var func = layui.func; var form = layui.form; /** * 看板配置管理 */ var KanbanConf = { tableId: "kanbanConfTable" }; /** * bom信息管理 */ var BomInfo = { tableId: "bomInfoTable" }; /** * bom信息管理 */ var MaterialShortage = { tableId: "materialShortageTable" }; $(document).ready(function() { // $.ajax({ // type: "POST", // contentType: "application/json;charset=UTF-8", // url: Feng.ctxPath + '/lineInfo/list', // success: function (result) { // $('#productionLine').empty(); // $('#productionLine').append(new Option("请选择产线", ""));// 下拉菜单里添加元素 // // $.each(result.data, function (index, value) { // $('#productionLine').append(new Option(value.lineCode, value.lineCode));// 下拉菜单里添加元素 // }); // layui.form.render("select");//重新渲染 固定写法 // }, // }); }); // form.on("select", function (data) { // if (data.value !== "") { // if (data.elem.id === "productionLine") { // $("#sfc").val(""); // if($('#productionLine').val() === "BOP"||$('#productionLine').val() === "COP"){ // console.log("选择了BOP或者COP"); // $("#sfc").attr("readonly","readonly"); // }else { // $("#sfc").removeAttr("readonly"); // Feng.success("请扫描总成编码!") // } // $.ajax({ // type: "POST", // contentType: "application/json;charset=UTF-8", // url: Feng.ctxPath + '/locationInfo/list?productionLineCode='+ $('#productionLine').val(), // success: function (result) { // $('#locationCode').empty(); // $('#locationCode').append(new Option("请选择工位", ""));// 下拉菜单里添加元素 // // $.each(result.data, function (index, value) { // $('#locationCode').append(new Option(value.locationCode, value.locationCode));// 下拉菜单里添加元素 // }); // layui.form.render("select");//重新渲染 固定写法 // }, // }); // } // } // }); initPageInfo(); async function initPageInfo() { await initKanBanConfInfo();//初始化配置信息 await initPoorLine(); await initOrderInfo(); initBomTable(); initMaterialShortage(); /* xR(); xa();*/ } function initPoorLine(){ $.ajax({ type: "POST", contentType: "application/json;charset=UTF-8", url: Feng.ctxPath + '/locationInfo/list?productionLineCode='+ $('#lineCode').val(), success: function (result) { $('#poorLocationCode').empty(); $('#poorLocationCode').append(new Option("请选择工位", ""));// 下拉菜单里添加元素 $.each(result.data, function (index, value) { $('#poorLocationCode').append(new Option(value.locationCode, value.locationCode));// 下拉菜单里添加元素 }); layui.form.render("select");//重新渲染 固定写法 }, }); } function initKanBanConfInfo() { // 根据ip查询配置信息 var ajax = new $ax(Feng.ctxPath + "/scrapBoard/qryKBConflist?pageCode=" + 'KB_WLDJ_005'); var result = ajax.start(); if (result.data.length > 0) { let msg = result.data[0]; $('#id').val(msg.id); $('#ipAddress').val(msg.ipAddress); $('#pageCode').val(msg.pageCode); $('#workshopCode').val(msg.workshopCode); $('#lineCode').val(msg.lineCode); $('#locationCode').val(msg.locationCode); $('#scrapCategory').val(msg.warehouseCode); $('#scrapReason').val(msg.warehouseName); console.log(msg) } } function initOrderInfo() { // 根据ip查询配置信息 var ajax = new $ax(Feng.ctxPath + "/productionOrdeInfo/list?orderStatus=" + '3'); var result = ajax.start(); if (result.data.length > 0) { let msg = result.data[0]; $('#orderId').val(msg.id); $('#workOrderNo').val(msg.workOrderNo); $('#materialCode').val(msg.materialCode); $('#materialName').val(msg.materialName); $('#planQty').val(msg.planQty); $('#custom').val(msg.custom); $('#createTime').val(msg.createTime); $('#actualQty').val(msg.actualQty); $('#planStartTime').val(msg.planStartTime); $('#planEndTime').val(msg.planEndTime); } } function initBomTable(){ var queryData = {}; queryData['loadingCode'] = $("#locationCode").val(); // queryData['workOrderNo'] = $("#workOrderNo").val(); // 渲染表格 var tableResult = table.render({ elem: '#' + BomInfo.tableId, url: Feng.ctxPath + '/bomInfo/kbListTable', // page: true, // height: 475, height:320, cellMinWidth: 100, where:queryData, cols: BomInfo.initColumn() }); } /** * 物料Bom初始化表格的列 */ BomInfo.initColumn = function () { return [[ // {type: 'checkbox'}, /* {type:"numbers" ,title:'序号',width:40,fixed:'left'},*/ {field: 'id', hide: true, title: 'ID'}, {field: 'materialCode', sort: true, title: '物料编号'}, {field: 'materialName', sort: true, title: '物料名称'}, // {field: 'workorderNo', sort: true, title: '工单编号'}, // {field: 'productCode', sort: true, title: '产品编号'}, {field: 'locationCode', sort: true, title: '工位编号'}, {field: 'loadingCode', sort: true, title: '上料工位编号'}, // {field: 'state', sort: true, title: '是否扫码'}, // {field: 'batchCode', sort: true, title: '批次码'}, ]]; }; /** * 缺料报警初始化表格的列 */ MaterialShortage.initColumn = function () { return [[ {field: 'id', hide: true, title: 'id'}, {field: 'sfc', sort: true, title: '总成编码',width:200}, {field: 'productionLine', sort: true, title: '产线编号',width:110}, {field: 'locationCode', sort: true, title: '工位编号',width:110}, {field: 'poorLocationCode', sort: true, title: '不良工位',width:110}, {field: 'poorContent', sort: true, title: '不良内容',width:110}, {field: 'workOrderNo', sort: true, title: '工单编号',width:160}, {field: 'productCode', sort: true, title: '产品编号',width:150}, {field: 'productName', sort: true, title: '产品名称',width:270}, // {field: 'manageType', sort: true, title: '类型',width:120}, {field: 'operateTime', sort: true, title: '操作时间',width:170}, {field: 'operateUser', sort: true, title: '操作人',width:100}, ]]; }; function initMaterialShortage(){ var queryData = {}; queryData['manageType'] = "1"; // 渲染表格 var tableResult = table.render({ elem: '#' + MaterialShortage.tableId, url: Feng.ctxPath + '/repairManageInfo/list', // page: true, height: 360, cellMinWidth: 80, where:queryData, cols: MaterialShortage.initColumn() }); } // 生产工单设置按钮点击事件 $('#orderBtnSet').click(function () { KanbanConf.openOrderEditPage(); }); KanbanConf.openOrderEditPage = function (data) { layer.open({ type: 2, area: ['1000px', '600px'], title: '工单配置', content: Feng.ctxPath + '/badBoard/orderEdit', success: function () { console.log($('#lineCode').val()); window.lineCode = $('#lineCode').val(); }, end: function () { let msg = JSON.parse(window.localStorage.getItem('message')); console.log("选择工单_id", msg.id) $('#orderId').val(msg.id); $('#workOrderNo').val(msg.workOrderNo); $('#materialCode').val(msg.materialCode); $('#materialName').val(msg.materialName); $('#planQty').val(msg.planQty); $('#createTime').val(msg.createTime); $('#actualQty').val(msg.actualQty); initMaterialShortage(); } }); }; // 设置按钮点击事件 $('#btnSet').click(function () { var id = $("#id").val(); if(id == "" || id == undefined){ KanbanConf.openAddDlg(); }else{ KanbanConf.openEditPage(id); } }); $('#enter').click(function (){ if($('#lineCode').val().length===0||$('#locationCode').val().length===0){ Feng.error("请设置产线工位!") return; } if($('#poorLocationCode').val().length===0){ Feng.error("请选择不良工位!") return; } if($('#lineCode').val() === "OP"||$('#lineCode').val() === "EOP"){ if($('#sfc').val().length===0){ Feng.error("请输入总成编码!") return; } } let ajaxEnter = new $ax(Feng.ctxPath + "/repairManageInfo/addItem", function (data) { Feng.success("添加成功!") }, function (data) { Feng.error("添加失败!" + data.responseJSON.message) }); ajaxEnter.set("productionLine", $('#lineCode').val()); ajaxEnter.set("locationCode", $('#locationCode').val()); ajaxEnter.set("poorLocationCode", $('#poorLocationCode').val()); ajaxEnter.set("poorContent", $('#poorContent').val()); ajaxEnter.set("sfc", $('#sfc').val()); ajaxEnter.set("productCode", $('#materialCode').val()); ajaxEnter.set("productName", $('#materialName').val()); ajaxEnter.set("workOrderNo", $('#workOrderNo').val()); ajaxEnter.set("manageType", "1"); ajaxEnter.start(); initMaterialShortage(); }); /** * 弹出添加页面设置对话框 */ KanbanConf.openAddDlg = function () { console.log("弹出添加页面设置对话框"); layer.open({ type: 2, area: ['1000px', '600px'], title: '添加看板配置', content: Feng.ctxPath + '/reworkOffline/add', success: function (layero, index) { let body = layer.getChildFrame('body', index); body.find('form').find('#testlineCode').val($('#lineCode').val()); body.find('form').find('#testlocationCode').val($('#locationCode').val()); }, end: function () { console.log("end") let lineCode = JSON.parse(window.localStorage.getItem('lineCode')); let locationCode = JSON.parse(window.localStorage.getItem('locationCode')); $('#lineCode').val(lineCode); $('#locationCode').val(locationCode); initKanBanConfInfo() } }); }; /** * 弹出编辑页面设置对话框 * * @param data 点击按钮时候的行数据 */ KanbanConf.openEditPage = function (data) { func.open({ title: '添加看板配置', content: Feng.ctxPath + '/materialRegistration/edit?id=' + data, //tableId: KanbanConf.tableId }); }; $('#revert').click(function () { window.location.href = Feng.ctxPath + '/badBoard/boardHome' }); var websocket = null; //判断当前浏览器是否支持WebSocket if('WebSocket' in window) { //改成你的地址 websocket = new WebSocket('ws://127.0.0.1:8083/websocket/reworkOffline'); } else { alert('当前浏览器 Not support websocket') } //接收到消息的回调方法 websocket.onmessage = function(event) { $('#sfc').val(event.data); } //连接成功建立的回调方法 websocket.onopen = function() { Feng.info("扫码枪连接建立成功") } //连接关闭的回调方法 websocket.onclose = function() { Feng.info("扫码枪连接已关闭") } window.onunload = function(){ websocket.close(); } });