pom.xml
@@ -185,7 +185,7 @@ </dependencies> <build> <finalName>lfdwcs</finalName> <finalName>elswcs</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> src/main/java/com/zy/asrs/controller/CrnController.java
@@ -119,13 +119,13 @@ vo.setWorkNo(crnProtocol.getTaskNo()); // 任务号 vo.setStatusType(crnProtocol.modeType.desc); // 模式状态 vo.setStatus(crnProtocol.getStatusType().desc); // 状态 vo.setLoading(crnProtocol.getLoaded()==1?"有物":"无物"); // 有物 vo.setLoading(crnProtocol.getLoaded()==1?"Есть товар":"Без товара"); // 有物 vo.setBay(crnProtocol.getBay()); // 列 vo.setLev(crnProtocol.getLevel()); // 层 vo.setForkOffset(crnProtocol.getForkPosType().desc); // 货叉位置 vo.setLiftPos(crnProtocol.getLiftPosType().desc); vo.setWalkPos(crnProtocol.getWalkPos()==1?"不在定位":"在定位"); vo.setWalkPos(crnProtocol.getWalkPos()==1?"Не в позиции":"в позиции"); vo.setWarnCode(String.valueOf(crnProtocol.getAlarm())); if (crnProtocol.getAlarm() > 0) { BasCrnError crnError = basCrnErrorMapper.selectById(crnProtocol.getAlarm()); src/main/java/com/zy/asrs/domain/enums/CrnStatusType.java
@@ -16,11 +16,11 @@ // p to p MACHINE_P_MOVE("PToP"), // 异常 MACHINE_ERROR("异常"), MACHINE_ERROR("Аномалия"), // 自动 MACHINE_AUTO("自动"), MACHINE_AUTO("Автоматически"), // 非自动/手动 MACHINE_UN_AUTO("非自动"), MACHINE_UN_AUTO("Неавтоматический"), ; private String desc; src/main/java/com/zy/core/enums/CrnForkPosType.java
@@ -2,7 +2,7 @@ public enum CrnForkPosType { NONE(-1, "不在定位"), // 货叉原位 NONE(-1, "Не в позиции"), // 货叉原位 HOME(0, "货叉原位"), // 货叉原位 LEFT(1, "货叉在左侧"), // 货叉在左侧 RIGHT(2, "货叉在右侧"), // 货叉在右侧 src/main/java/com/zy/core/enums/CrnModeType.java
@@ -2,7 +2,7 @@ public enum CrnModeType { NONE(-1, "离线"), NONE(-1, "Офлайн"), STOP(0, "维修"), HAND(1, "手动"), HALF_AUTO(2, "半自动"), src/main/java/com/zy/core/enums/CrnStatusType.java
@@ -2,7 +2,7 @@ public enum CrnStatusType { NONE(-1, "离线"), NONE(-1, "Офлайн"), IDLE(0, "空闲"), FETCH_MOVING(1, "取货行走"), FETCH_WAITING(2, "取货等待"), src/main/resources/application.yml
@@ -8,7 +8,7 @@ name: @pom.build.finalName@ datasource: driver-class-name: com.microsoft.sqlserver.jdbc.SQLServerDriver url: jdbc:sqlserver://127.0.0.1:1433;databasename=lfdasrs url: jdbc:sqlserver://127.0.0.1:1433;databasename=elsasrs username: sa password: sa@123 mvc: @@ -34,7 +34,7 @@ enable: false wms: url: 192.168.0.17:8080/lfdwms url: 127.0.0.1:8080/elswms # 下位机配置 wcs-slave: src/main/webapp/static/images/zy-logo.pngsrc/main/webapp/static/js/common.js
@@ -1,4 +1,4 @@ var baseUrl = "/lfdwcs"; var baseUrl = "/elswcs"; // 赋值 function setVal(el, val) { src/main/webapp/views/console.html
@@ -16,8 +16,8 @@ <body> <div id="main"> <div class="head"> <div class="head-left"> <h1>自动仓库WCS监控图</h1> <div class="head-left" style="width: 500px"> <h3>Мониторинг автоматизированного склада WCS</h3> <h6>AUTOMATIC WAREHOUSE WCS MONITORING DIAGRAM</h6> </div> <div class="head-right"> @@ -31,59 +31,59 @@ <div id="body"> <!-- 总开关 --> <div class="system-state"> <div class="body-head">总开关</div> <div class="body-head">Главный выключатель</div> <div class="switch"> <div id="system-icon" class="system-icon-open" onclick="systemSwitch()"></div> <div class="switch_r"> <p>系统状态</p> <p id="system-run-desc">系统运行中</p> <p>Статус системы</p> <p id="system-run-desc">Система работает</p> </div> </div> </div> <!-- 堆垛机状态 --> <div class="machine-status"> <div class="body-head">堆垛机状态</div> <div class="body-head">Статус штабелера</div> <div class="state"> <span>堆垛机 1</span> <span class="state-ss machine-put-flag ">入库</span> <span>Офлайн 1</span> <span class="state-ss machine-put-flag ">Поступление на склад</span> </div> <div class="state"> <span>堆垛机 2</span> <span class="state-ss machine-auto-flag ">自动</span> <span>Офлайн 2</span> <span class="state-ss machine-auto-flag ">Автоматический</span> </div> <div class="button"><span>所有状态</span></div> <div class="button"><span>Все статусы</span></div> <div class="button item-group"> <span class="machine-put-flag">入库</span> <span class="machine-take-flag">出库</span> <span class="machine-put-flag">Поступление на склад</span> <span class="machine-take-flag">Вывоз со склада</span> <span class="machine-stock-move-flag">库到库</span> <span class="machine-site-move-flag">站到站</span> <span class="machine-site-move-flag">От станции до станции</span> <span class="machine-p-move-flag">PToP</span> <span class="machine-error-flag">异常</span> <span class="machine-auto-flag">自动</span> <span class="machine-unauto-flag">非自动/手动</span> <span class="machine-error-flag">Аномалия</span> <span class="machine-auto-flag">Автоматически</span> <span class="machine-unauto-flag">Ручной</span> </div> </div> <div class="line-status"> <div class="body-head">输送线状态</div> <div class="body-head">Статус конвейера</div> <div class="state states"> <span>运输线总数</span> <span>Общее количество конвейеров</span> <span id="line-total" class="line-ss"></span> </div> <div class="button"><span>所有状态</span></div> <div class="button"><span>Все статусы</span></div> <div class="button item-group"> <span class="site-auto-run-id">自动+有物+ID</span> <span class="site-auto-run">自动+有物</span> <span class="site-auto-id">自动+ID</span> <span class="site-auto">自动</span> <span class="site-unauto">非自动/手动</span> <span class="site-auto-run-id">Автоматически+Есть товар+ID</span> <span class="site-auto-run">Автоматически+Есть товар</span> <span class="site-auto-id">Автоматически+ID</span> <span class="site-auto">Автоматически</span> <span class="site-unauto">Ручной</span> </div> </div> <div class="bar-code"> <div class="body-head" id="code">条码扫描器</div> <div class="body-head" id="code">Сканер штрих-кодов</div> <div class="tablebox"> <div class="table-head"> <li><span>条码名称</span><span class="right">扫码时间</span></li> <li><span>Название штрих-кода</span><span class="right">Время сканирования</span></li> </div> <div id="barcode1" class="table-body"> @@ -91,7 +91,7 @@ </div> <div class="tablebox"> <div class="table-head"> <li><span>条码名称</span><span class="right">扫码时间</span></li> <li><span>Название штрих-кода</span><span class="right">Время сканирования</span></li> </div> <div id="barcode2" class="table-body"> @@ -99,7 +99,7 @@ </div> <div class="tablebox"> <div class="table-head"> <li><span>条码名称</span><span class="right">扫码时间</span></li> <li><span>Название штрих-кода</span><span class="right">Время сканирования</span></li> </div> <div id="barcode3" class="table-body"> @@ -117,7 +117,7 @@ <!-- 堆垛机号 --> <div class="form-item"> <div class="form-item-label" style> <span>堆垛机号:</span> <span>Номер штабелера:</span> </div> <div class="form-item-input"> <input type="text" name="crnNo" value=""> @@ -126,7 +126,7 @@ <!-- 工作号 --> <div class="form-item"> <div class="form-item-label"> <span>工作号:</span> <span>Номер задания:</span> </div> <div class="form-item-input"> <input type="text" name="workNo" value=""> @@ -135,7 +135,7 @@ <!-- 站源 --> <div class="form-item"> <div class="form-item-label"> <span>站源:</span> <span>Исходная станция:</span> </div> <div class="form-item-input"> <input type="text" name="sourceStaNo" value=""> @@ -144,7 +144,7 @@ <!-- 目标站 --> <div class="form-item"> <div class="form-item-label"> <span>目标站:</span> <span>Целевая станция:</span> </div> <div class="form-item-input"> <input type="text" name="staNo" value=""> @@ -153,7 +153,7 @@ <!-- 工作状态 --> <div class="form-item"> <div class="form-item-label"> <span>工作状态:</span> <span>Статус работы:</span> </div> <div class="form-item-input"> <input type="text" name="wrkSts" value=""> @@ -162,7 +162,7 @@ <!-- 出入类型 --> <div class="form-item"> <div class="form-item-label"> <span>出入类型:</span> <span>Тип поступления/вывоза со склада:</span> </div> <div class="form-item-input"> <input type="text" name="ioType" value=""> @@ -171,7 +171,7 @@ <!-- 源库位 --> <div class="form-item"> <div class="form-item-label"> <span>源库位:</span> <span>Исходная ячейка:</span> </div> <div class="form-item-input"> <input type="text" name="sourceLocNo" value=""> @@ -180,7 +180,7 @@ <!-- 目标库位 --> <div class="form-item"> <div class="form-item-label"> <span>目标库位:</span> <span>Целевой склад:</span> </div> <div class="form-item-input"> <input type="text" name="locNo" value=""> @@ -189,7 +189,7 @@ <!-- 堆垛机状态 --> <div class="form-item"> <div class="form-item-label"> <span>堆垛机状态:</span> <span>Статус штабелера:</span> </div> <div class="form-item-input"> <input type="text" name="crnStatus" value=""> @@ -198,7 +198,7 @@ <!-- 异常 --> <div class="form-item"> <div class="form-item-label"> <span>异常:</span> <span>Аномалия:</span> </div> <div class="form-item-input"> <input type="text" name="error" value=""> @@ -217,7 +217,7 @@ <!-- 设备号 --> <div class="form-item"> <div class="form-item-label"> <span>设备号:</span> <span>Рабочая станция:</span> </div> <div class="form-item-input"> <input type="text" name="siteId" value=""> @@ -226,7 +226,7 @@ <!-- 工作号 --> <div class="form-item"> <div class="form-item-label"> <span>工作号:</span> <span>Номер задания:</span> </div> <div class="form-item-input"> <input type="text" name="workNo" value=""> @@ -235,7 +235,7 @@ <!-- 工作状态 --> <div class="form-item"> <div class="form-item-label"> <span>工作状态:</span> <span>Статус работы:</span> </div> <div class="form-item-input"> <input type="text" name="wrkSts" value=""> @@ -244,7 +244,7 @@ <!-- 自动 --> <div class="form-item-checkbox"> <div class="form-item-label-checkbox"> <span>自动</span> <span style="font-size: 10px">Автоматически</span> </div> <div class="form-item-input-checkbox"> <input type="checkbox" name="autoing"> @@ -253,7 +253,7 @@ <!-- 有物 --> <div class="form-item-checkbox"> <div class="form-item-label-checkbox"> <span>有物</span> <span style="font-size: 10px">Есть товар</span> </div> <div class="form-item-input-checkbox"> <input type="checkbox" name="loading"> @@ -262,7 +262,7 @@ <!-- 能入 --> <div class="form-item-checkbox"> <div class="form-item-label-checkbox"> <span>能入</span> <span style="font-size: 10px;white-space: nowrap;overflow: hidden;">Можно войти</span> </div> <div class="form-item-input-checkbox"> <input type="checkbox" name="canining"> @@ -271,7 +271,7 @@ <!-- 能出 --> <div class="form-item-checkbox"> <div class="form-item-label-checkbox"> <span>能出</span> <span style="font-size: 10px;white-space: nowrap;overflow: hidden;">Можно выйти</span> </div> <div class="form-item-input-checkbox"> <input type="checkbox" name="canouting"> @@ -280,7 +280,7 @@ <!-- 出入类型 --> <div class="form-item"> <div class="form-item-label"> <span>出入类型:</span> <span>Тип поступления/вывоза со склада</span> </div> <div class="form-item-input"> <input type="text" name="ioType" value=""> @@ -289,7 +289,7 @@ <!-- 源站 --> <div class="form-item"> <div class="form-item-label"> <span>源站:</span> <span>Исходная станция</span> </div> <div class="form-item-input"> <input type="text" name="sourceStaNo" value=""> @@ -298,7 +298,7 @@ <!-- 目标站 --> <div class="form-item"> <div class="form-item-label"> <span>目标站:</span> <span>Целевая станция</span> </div> <div class="form-item-input"> <input type="text" name="staNo" value=""> @@ -307,7 +307,7 @@ <!-- 源库位 --> <div class="form-item"> <div class="form-item-label"> <span>源库位:</span> <span>Исходный склад</span> </div> <div class="form-item-input"> <input type="text" name="sourceLocNo" value=""> @@ -316,7 +316,7 @@ <!-- 目标库位 --> <div class="form-item"> <div class="form-item-label"> <span>目标库位:</span> <span>Целевой склад</span> </div> <div class="form-item-input"> <input type="text" name="locNo" value=""> @@ -390,7 +390,7 @@ $("#siteWindow").attr("style", "display:block;");//显示div $("#crnWindow").attr("style", "display:none;"); $(".detailed").empty(); $('.detailed').append(id + '站点详细信息'); $('.detailed').append(id + 'Информация о станциях'); $.ajax({ url: baseUrl + "/console/site/detail", headers: { @@ -420,7 +420,7 @@ $("#crnWindow").attr('style', 'display:block;'); $("#siteWindow").attr("style", "display:none;"); $('.detailed').empty(); $('.detailed').append(id + '号堆垛机'); $('.detailed').append(id + 'Номер штабелера'); $.ajax({ url: baseUrl + "/console/crn/detail", headers: { @@ -506,7 +506,7 @@ if (res.code === 200) { if (res.data.status) { $('#system-icon').attr("class", "system-icon-open"); $('#system-run-desc').html("系统运行中..."); $('#system-run-desc').html("Система работает..."); parent.systemRunning = true; } else { $('#system-icon').attr("class", "system-icon-close"); @@ -534,7 +534,7 @@ if (res.code === 200) { if (res.data.status) { $('#system-icon').attr("class", "system-icon-open"); $('#system-run-desc').html("系统运行中..."); $('#system-run-desc').html("Система работает..."); parent.systemRunning = true; } else { $('#system-icon').attr("class", "system-icon-close"); src/main/webapp/views/crn.html
@@ -52,7 +52,7 @@ <!-- 执行命令 --> <div class="command-log"> <h3>执行中的命令</h3> <h3>Исполняемые команды</h3> <div class="crn-command-item"> <label>1#</label> <button id="demoBtn-1" class="demoBtn" onclick="demoSwitch(this.id)"> - </button> @@ -89,17 +89,17 @@ <table id="crn-state-table"> <thead> <tr> <th>堆垛机</th> <th>模式</th> <th>状态</th> <th>有物</th> <th>列</th> <th>层</th> <th>货叉定位</th> <th>载货台定位</th> <th>走行在定位</th> <th>故障代码</th> <th>故障描述</th> <th>Штабелер</th> <th>Режим</th> <th>Статус</th> <th>Есть товар</th> <th>Колонка</th> <th>Ярус</th> <th>Расположение вил</th> <th>Расположение платформы</th> <th>Передвижение в позиции</th> <th>Код ошибки</th> <th>Описание ошибки</th> </tr> </thead> <tbody> @@ -112,20 +112,20 @@ <table id="crn-msg-table"> <thead> <tr> <th>堆垛机</th> <th>工作号</th> <th>状态</th> <th>源站</th> <th>目标站</th> <th>源库位</th> <th>目标库位</th> <th>走行速度(m/min)</th> <th>升降速度(m/min)</th> <th>叉牙速度(m/min)</th> <th>走行距离(Km)</th> <th>升降距离(Km)</th> <th>走行时长(H)</th> <th>升降时长(H)</th> <th>Штабелер</th> <th>Номер задания</th> <th>Статус</th> <th>Исходная станция</th> <th>Целевая станция</th> <th>Исходный склад</th> <th>Целевой склад</th> <th>Скорость передвижения(m/min)</th> <th>Скорость подъема(m/min)</th> <th>Скорость вил(m/min)</th> <th>Пройденное расстояние(Km)</th> <th>Расстояние подъема(Km)</th> <th>Время передвижения(H)</th> <th>Время подъема(H)</th> </tr> </thead> <tbody> @@ -138,7 +138,7 @@ <!-- 遮罩层 --> <div class="crn-operation-shade"> <span class="crn-operation-shade-span"> WCS 系统运行中,请停止后操作 Система WCS работает, пожалуйста, остановите её перед выполнением операции </span> </div> @@ -146,55 +146,55 @@ <div class="task-select"> <!-- 堆垛机选择 --> <div id="crn-select" class="operator-item" style="width: 55%"> <span class="select-title">堆垛机号</span> <span class="select-title">Штабелер</span> <div class="select-container" style="padding: 20px 0;"> <label><input type="radio" name="crnSelect" value="1" checked> 1号堆垛机</label> <label><input type="radio" name="crnSelect" value="2"> 2号堆垛机</label> <label><input type="radio" name="crnSelect" value="3"> 3号堆垛机</label> <label><input type="radio" name="crnSelect" value="4"> 4号堆垛机</label> <label><input type="radio" name="crnSelect" value="5"> 5号堆垛机</label> <label><input type="radio" name="crnSelect" value="1" checked> 1 Номер штабелера</label> <label><input type="radio" name="crnSelect" value="2"> 2 Номер штабелера</label> <label><input type="radio" name="crnSelect" value="3"> 3 Номер штабелера</label> <label><input type="radio" name="crnSelect" value="4"> 4 Номер штабелера</label> <label><input type="radio" name="crnSelect" value="5"> 5 Номер штабелера</label> </div> </div> <!-- 源站/源库位 选择 --> <div id="source-select" class="operator-item"> <span class="select-title">源站/源库位</span> <span class="select-title" style="width: 250px">Исходная станция/Исходный склад</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <span>Исходная станция</span> <label><input id="sourceStaNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <span>Ряд</span> <label><input id="sourceRow" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <span>Колонка</span> <label><input id="sourceBay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <span>Ярус</span> <label><input id="sourceLev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> </div> <!-- 目标站/目标库位 选择 --> <div id="target-select" class="operator-item"> <span class="select-title">目标站/目标库位</span> <span class="select-title" style="width: 250px">Целевая станция/Целевой склад</span> <div class="select-container"> <div class="select-container-item"> <span>站</span> <span>Целевая станция</span> <label><input id="staNo" type="number" name="points" min="0" /></label> </div> <div class="select-container-item"> <span>排</span> <span>Ряд</span> <label><input id="row" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> <div class="select-container-item"> <span>列</span> <span>Колонка</span> <label><input id="bay" type="number" name="points" min="0" style="background-color: #a9eeff" value="0" /></label> </div> <div class="select-container-item"> <span>层</span> <span>Ярус</span> <label><input id="lev" type="number" name="points" min="1" style="background-color: #a9eeff" value="1" /></label> </div> </div> @@ -204,20 +204,20 @@ <!-- 设备任务操作 --> <div class="task-operator"> <fieldset> <legend>手动操作</legend> <legend>Ручной</legend> <div class="button-group"> <button class="item" onclick="put()">入库</button> <button class="item" onclick="take()">出库</button> <button class="item" onclick="stockMove()">库位转移</button> <button class="item" onclick="siteMove()">站到站</button> <button class="item" onclick="put()">Поступление на склад</button> <button class="item" onclick="take()">Вывоз со склада</button> <button class="item" onclick="stockMove()">Перемещение ячеек склада</button> <button class="item" onclick="siteMove()">От станции до станции</button> <!-- <button class="item" onclick="bacOrigin()">回原点</button>--> <!-- <button class="item" onclick="reverseOrigin()">反原点</button>--> <!-- <button class="item" onclick="coorMove()">坐标移行</button>--> <button class="item" onclick="taskComplete()">任务完成</button> <button class="item" onclick="taskComplete()">Задача выполнена</button> <!-- <button class="item" onclick="pause()">暂停</button>--> <!-- <button class="item" onclick="boot()">启动</button>--> <button class="item" onclick="clearCommand()">清除命令</button> <button class="item" onclick="handleReset()">复位</button> <button class="item" onclick="clearCommand()">Очистить команду</button> <button class="item" onclick="handleReset()"> Сбросить </button> </div> </fieldset> </div> @@ -584,7 +584,7 @@ if (res.code === 200) { crnDemoData = res.data; crnDemoData.forEach(function (e) { $("#demoBtn-"+e.crnNo).html(e.demo?'停止':'演示'); $("#demoBtn-"+e.crnNo).html(e.demo?'停止':'Демонстрация'); }) } else if (res.code === 403){ parent.location.href = baseUrl+"/login"; @@ -606,7 +606,7 @@ opt = !crnDemoData[i].demo; } } layer.confirm(crnId + ' 号堆垛机确定'+ (opt?'开始':'停止') + '演示吗?', function(){ layer.confirm(crnId + ' 号堆垛机确定'+ (opt?'开始':'停止') + 'Демонстрация?', function(){ doDemo(crnId, 'root', opt); // 停止wcs系统 }); } src/main/webapp/views/index.html
@@ -20,10 +20,10 @@ <!-- </div>--> <div class="sidebar"> <div class="nav"> <ul class="cl-effect-4"> <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">主控图</a></li> <li><a id="pipeline" onclick="nav(this.id)" class="nav-unselect" href="#">输送设备</a></li> <li><a id="crn" onclick="nav(this.id)" class="nav-unselect" href="#">堆垛机</a></li> <ul class="cl-effect-4" style="width: 300px"> <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">Главная панель управления</a></li> <li><a id="pipeline" onclick="nav(this.id)" class="nav-unselect" href="#">Конвейерное оборудование</a></li> <li><a id="crn" onclick="nav(this.id)" class="nav-unselect" href="#">Штабелер</a></li> </ul> </div> </div> @@ -57,7 +57,7 @@ function news() { layx.iframe( 'wcs-news' // id , '系统分析报告' , 'Отчет по анализу системы' , "news.html" , { shadow:false @@ -69,7 +69,7 @@ // , control:false , opacity:0.9 , border:false , icon:'<img src="../static/images/favicon.ico" style="height:22px;display:block;" alt=""/>' // , icon:'<img src="../static/images/favicon.ico" style="height:22px;display:block;" alt=""/>' , stickMenu:true , maxMenu:false , closeMenu:false src/main/webapp/views/indexTV.html
@@ -29,7 +29,7 @@ <div class="sidebar"> <div class="nav"> <ul class="cl-effect-4"> <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">主控图</a></li> <li><a id="console" onclick="nav(this.id)" class="nav-select" href="#">Главная панель управления</a></li> <li><a id="pipeline" onclick="nav(this.id)" class="nav-unselect" href="#">输送设备</a></li> <li><a id="crn" onclick="nav(this.id)" class="nav-unselect" href="#">堆垛机</a></li> </ul> src/main/webapp/views/pipeline.html
@@ -81,14 +81,14 @@ <!-- 主体 --> <div class="plc-log-body"> <div> <span style="color: #1E9FFF">PLC异常信息表:</span> <span style="color: #1E9FFF">PLC Таблица аномальной информации:</span> </div> <table id="plc-error-table"> <thead> <tr> <th style="width: 200px">序号</th> <th style="width: 400px">PLC错误描述</th> <th style="width: 400px">异常</th> <th style="width: 200px">Номер</th> <th style="width: 400px">PLC Описание ошибки</th> <th style="width: 400px">Аномалия</th> </tr> </thead> <tbody> @@ -106,16 +106,16 @@ <!-- 表头 --> <thead style="position:sticky;top: 0;"> <tr> <th>站号</th> <th>工作号</th> <th>自动</th> <th>有物</th> <th>可入</th> <th>可出</th> <th>入库标记</th> <th>空板信号</th> <th>目标站</th> <th>高低库位</th> <th>Рабочая станция</th> <th>Номер задания</th> <th>Автоматически</th> <th>Есть товар</th> <th>Доступно для поспупления</th> <th>Доступно для выгрузки</th> <th>Маркер на складе</th> <th>Сигнал пустой палеты</th> <th>Целевая станция</th> <th>Высокий и низкий уровень склада</th> </tr> </thead> <!-- 表格内容 -->