From 3b64c807f60e5d6b71deca3f79c9be4be19abfaa Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期五, 23 二月 2024 10:47:58 +0800
Subject: [PATCH] #显示器更新
---
src/main/webapp/views/pipeline.html | 738 ++++++++++++++++++++++++++------------------------------
1 files changed, 342 insertions(+), 396 deletions(-)
diff --git a/src/main/webapp/views/pipeline.html b/src/main/webapp/views/pipeline.html
index 325b9eb..009b117 100644
--- a/src/main/webapp/views/pipeline.html
+++ b/src/main/webapp/views/pipeline.html
@@ -11,425 +11,232 @@
<link rel="stylesheet" type="text/css" href="../static/css/pipeline.css">
<script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="../static/js/common.js"></script>
+ <script type="text/javascript" src="../static/js/layer/layer.js"></script>
<style>
-
+ .io-mode-box {
+ float: left;
+ /*width: 25%;*/
+ text-align: center;
+ }
+ .io-mode-box label {
+ font-weight: bolder;
+ }
+ .ioModeBtn {
+ vertical-align: middle;
+ width: 25%;
+ height: 30px;
+ left: 0;
+ top: 0;
+ text-shadow: inherit;
+ font-size: 15px;
+ margin-left: 5px;
+ margin-right: 5px;
+ display: inline-block;
+ background-color: #FF5722;
+ border: none;
+ color: #FFF;
+ box-shadow: 1px 1px 5px #B6B6B6;
+ border-radius: 3px;
+ cursor: pointer;
+ }
</style>
</head>
<body>
-<main>
- <!-- plc寮傚父鏃ュ織鐩戞帶鐗� -->
- <div id="plc-error" class="main-board" style="padding-left: 10px">
- <!-- 澶撮儴 -->
- <div class="plc-log-header">
- <div style="height: 40%">
- <span>涓滀晶PLC鎵ц鎸囦护</span>
+<div style="padding: 10px;height: 100%;float: left;width: 6%">
+ <div class="button-window"></div>
+</div>
+
+<div style="height: 100%;padding-left: 6%">
+ <div style="padding: 10px;height: 100%">
+ <main>
+
+ <!-- plc寮傚父鏃ュ織鐩戞帶鐗� -->
+ <div id="plc-error" class="main-board" style="padding-left: 10px">
+ <!-- 澶撮儴 -->
+ <div class="plc-log-header">
+
+ <!-- 璁惧浠诲姟鎿嶄綔 -->
+ <div class="io-mode-oper">
+ <fieldset>
+ <legend>鍏呯數鎺у埗锛圕harge-Mode锛�</legend>
+ <div class="io-mode-box">
+ <label>1#</label>
+ <button id="io-mode-1" class="ioModeBtn" onclick="ioModeSwitch(this.id)"> - </button>
+ </div>
+ </fieldset>
+ </div>
+ </div>
+ <!-- 涓讳綋 -->
+ <div class="plc-log-body">
+ <div>
+ <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>
+ </tr>
+ </thead>
+ <tbody>
+
+ </tbody>
+ </table>
+ </div>
</div>
- <div style="height: 40%">
- <span>瑗夸晶PLC鎵ц鎸囦护</span>
- </div>
- <div>
- <span style="color: #1E9FFF">PLC寮傚父淇℃伅琛�:</span>
- </div>
- </div>
- <!-- 涓讳綋 -->
- <div class="plc-log-body">
- <table id="plc-error-table">
- <thead>
+
+ <!-- 绔欑偣鐘舵�佹暟鎹洃鎺х増 -->
+ <div id="site-monitor" class="main-board">
+ <!-- 琛ㄦ牸 -->
+ <table id="site-table">
+ <!-- 琛ㄥご -->
+ <thead>
<tr>
- <th style="width: 200px">搴忓彿</th>
- <th style="width: 400px">PLC閿欒鎻忚堪</th>
- <th style="width: 400px">寮傚父</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>
+ </thead>
+ <!-- 琛ㄦ牸鍐呭 -->
+ <tbody></tbody>
+ </table>
+ </div>
+ </main>
+ <footer>
+ <textarea id="output"></textarea>
+ </footer>
- </tbody>
- </table>
+ <div id="site-detl" style="display: none">
+ <div>
+ <div class="form-item">
+ <label class="form-label">绔欏彿:</label>
+ <div class="form-input">
+ <input id="siteId" name="siteId" class="layui-input" lay-verify="required|number" autocomplete="off" disabled="disabled">
+ </div>
+ </div>
+ <div class="form-item">
+ <label class="form-label">宸ヤ綔鍙�:</label>
+ <div class="form-input">
+ <input id="workNo" name="workNo" type="number" class="layui-input" lay-verify="number" autocomplete="off">
+ </div>
+ </div>
+ <div class="form-item">
+ <label class="form-label">鐩爣绔�:</label>
+ <div class="form-input">
+ <input id="staNo" name="staNo" type="number" class="layui-input" lay-verify="number" autocomplete="off">
+ </div>
+ </div>
+ <div class="form-item">
+ <label class="form-label">鍏ュ簱鏍囪:</label>
+ <div class="form-input">
+ <input id="pakMk" name="pakMk" type="text" class="layui-input" autocomplete="off">
+ </div>
+ </div>
+ <div class="form-item form-button-container">
+ <button class="form-button" id="save">淇濆瓨</button>
+ <button class="form-button" id="cancel" style="background-color: #D0D0D0">鍙栨秷</button>
+ </div>
+ </div>
</div>
</div>
- <!-- 绔欑偣鐘舵�佹暟鎹洃鎺х増 -->
- <div id="site-monitor" class="main-board">
- <!-- 琛ㄦ牸 -->
- <table id="site-table">
- <!-- 琛ㄥご -->
- <thead>
- <tr>
- <th>绔欏彿</th>
- <th>宸ヤ綔鍙�</th>
- <th>鑷姩</th>
- <th>鏈夌墿</th>
- <th>鍙叆</th>
- <th>鍙嚭</th>
- <th>闇�姹傚叆</th>
- <th>闇�姹傚嚭</th>
- <th>楂樹綆搴�</th>
- <th>鐩爣绔�</th>
- </tr>
- </thead>
- <!-- 琛ㄦ牸鍐呭 -->
- <tbody>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- <tr>
- <td>12</td>
- <td>2223</td>
- <td>Y</td>
- <td>Y</td>
- <td>Y</td>
- <td>N</td>
- <td>Y</td>
- <td>N</td>
- <td>1</td>
- <td>1204</td>
- </tr>
- </tbody>
- </table>
- </div>
-</main>
-<footer>
- <textarea id="output"></textarea>
-</footer>
+</div>
+
+
</body>
<script>
// 鍒濆鍖�
- var plcErrorTableFieldCount = 0;
+ // 绌虹櫧琛屾暟
+ var plcErrorTableBlankRows = 0;
+ var siteTableBlankRows = 0;
+ // 瀹為檯琛屾暟
+ var plcErrorTableFullRows = 0;
+ var siteTableFullRows = 0;
var outputDom = document.getElementById("output");
$(document).ready(function() {
+ getIoModeInfo();
initPlcErrorTable();
getPlcError();
+ initSiteTable();
+ getSite();
});
// 瀹炴椂璁块棶
setInterval(function () {
getPlcError();
+ getSite();
+ getIoModeInfo();
}, 1000);
setInterval(function () {
- output("\n" +new Date().toLocaleString() + "銆�2020-5-29 13:14:22銆戞壂鎻弍lcA 鐩爣绔�--27328372372832763643234323432342");
+ getSiteOutput();
},500);
+ var ioModeData;
+ function getIoModeInfo() {
+ $.ajax({
+ url: baseUrl+ "/site/io/mode/info/site",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'GET',
+ success: function (res) {
+ if (res.code === 200){
+ ioModeData = res.data;
+ ioModeData.forEach(function (e) {
+ $("#io-mode-"+e.floor).html(e.modeDesc);
+ })
+ } else if (res.code === 403){
+ window.location.href = baseUrl+"/login";
+ } else {
+ console.log(res.msg);
+ }
+ }
+ });
+ }
+ /**
+ * 寮哄埗鍒囨崲鍏ュ嚭搴撴ā寮�
+ */
+ function ioModeSwitch(el) {
+ var floor = el.split("-")[2];
+ if (ioModeData != null && ioModeData.length > 1) {
+ ioModeData.forEach(function(e) {
+ if (e.floor === Number(floor)) {
+ if (e.modeVal) {
+ layer.confirm('纭畾鏂紑鍏呯數骞跺浣嶅悧锛�',function () {
+ $.ajax({
+ url: baseUrl+ "/site/io/mode/action/site",
+ headers: {'token': localStorage.getItem('token')},
+ data: {
+ floor: e.floor,
+ charge: !e.modeVal
+ },
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200){
+ layer.msg(res.msg, {icon: 1})
+ } else if (res.code === 403){
+ window.location.href = baseUrl+"/login";
+ } else {
+ layer.msg(res.msg, {icon: 2})
+ }
+ }
+ });
+ layer.closeAll();
+ })
+ }
+ }
+ });
+ }
+
+
+ }
// plc寮傚父淇℃伅琛ㄨ幏鍙�
function getPlcError() {
@@ -449,12 +256,67 @@
tr.children("td").eq(2).html(table[i-1].error);
}
} else if (res.code === 403){
- top.location.href = baseUrl+"/login";
+ window.location.href = baseUrl+"/login";
} else {
- alert(res.msg);
+ console.log(res.msg);
}
}
});
+ }
+
+ // 绔欑偣淇℃伅琛ㄨ幏鍙�
+ function getSite() {
+ var tableEl = $('#site-table');
+ $.ajax({
+ url: baseUrl+ "/site/table/site",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200){
+ var table = res.data;
+ if (table.length > siteTableBlankRows && table.length !== siteTableFullRows) {
+ initSiteTable(table.length-siteTableBlankRows);
+ siteTableFullRows = table.length;
+ }
+ for (var i=1;i<=table.length;i++){
+ var tr = tableEl.find("tr").eq(i);
+ setVal(tr.children("td").eq(0), table[i-1].devNo);
+ setVal(tr.children("td").eq(1), table[i-1].workNo);
+ setVal(tr.children("td").eq(2), table[i-1].autoing);
+ setVal(tr.children("td").eq(3), table[i-1].loading);
+ setVal(tr.children("td").eq(4), table[i-1].inEnable);
+ setVal(tr.children("td").eq(5), table[i-1].outEnable);
+ setVal(tr.children("td").eq(6), table[i-1].outInModel);
+ setVal(tr.children("td").eq(7), table[i-1].emptyMk);
+ setVal(tr.children("td").eq(8), table[i-1].staNo);
+ setVal(tr.children("td").eq(9), table[i-1].liftArrival);
+ setVal(tr.children("td").eq(10), table[i-1].locType1);
+ }
+ } else if (res.code === 403){
+ window.location.href = baseUrl+"/login";
+ } else {
+ console.log(res.msg);
+ }
+ }
+ });
+ }
+
+ // 杈撻�佽澶囨棩蹇楄緭鍑�
+ function getSiteOutput() {
+ $.ajax({
+ url: baseUrl + "/site/output/site",
+ headers: {'token': localStorage.getItem('token')},
+ method: 'POST',
+ success: function (res) {
+ if (res.code === 200) {
+ output(res.data);
+ } else if (res.code === 403) {
+ window.location.href = baseUrl + "/login";
+ } else {
+ alert(res.msg);
+ }
+ }
+ })
}
// 鏃ュ織杈撳嚭妗�
@@ -473,7 +335,7 @@
var total = $('.plc-log-body').height();
var count = total / one;
count = parseInt(count) - 1;
- plcErrorTableFieldCount = count;
+ plcErrorTableBlankRows = count;
line = count;
} else {
line = row;
@@ -489,5 +351,89 @@
$('#plc-error-table tbody').after(html);
}
+ // 绔欑偣绌虹櫧琛ㄦ牸娓叉煋
+ function initSiteTable(row) {
+ var line;
+ if (row === undefined){
+ var one = $('#site-table thead').height();
+ var total = $('#site-monitor').height();
+ var count = total / one;
+ count = parseInt(count) - 1;
+ siteTableBlankRows = count;
+ line = count;
+ } else {
+ line = row;
+ }
+ var html = "";
+ for (var i = 0; i < line; i ++){
+ html += " <tr>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " <td></td>\n" +
+ " </tr>\n";
+ }
+ $('#site-table tbody').after(html);
+ }
+
+ // 璇︽儏鎿嶄綔 -------------------------------------------------------------------------
+ var layerDetl;
+ $(document).on('dblclick ','#site-table tr', function () {
+ var siteId = $(this).children("td").eq(0).html();
+ if (siteId !== null && siteId !== "") {
+ layerDetl = layer.open({
+ type: 1,
+ title: false,
+ shadeClose: true,
+ offset: 'rt',
+ anim: 5,
+ shade: [0],
+ area: ['340px', '255px'],
+ closeBtn: 0,
+ content: $("#site-detl"),
+ success: function(layero, index){
+ http.get(baseUrl+ "/site/detl/"+siteId, null, function (res) {
+ $('#siteId').val(siteId);
+ $('#workNo').val(res.data.workNo);
+ $('#staNo').val(res.data.staNo);
+ $('#pakMk').val(res.data.pakMk);
+ })
+ },
+ end: function () {
+ $('#siteId').val("");
+ $('#workNo').val("");
+ $('#staNo').val("");
+ $('#pakMk').val("");
+ }
+ })
+ }
+ });
+
+ $(document).on('click ','#save', function () {
+ http.post(baseUrl+ "/site//detl/update", {
+ siteId: $('#siteId').val(),
+ workNo: $('#workNo').val(),
+ staNo: $('#staNo').val(),
+ pakMk: $('#pakMk').val()
+ }, function (res) {
+ layer.close(layerDetl);
+ layer.msg("淇敼鎴愬姛",{icon: 1,});
+ })
+ })
+ $(document).on('click ','#cancel', function () {
+ $('#siteId').val("");
+ $('#workNo').val("");
+ $('#staNo').val("");
+ $('#pakMk').val("");
+ layer.close(layerDetl);
+ })
+
</script>
-</html>
\ No newline at end of file
+</html>
--
Gitblit v1.9.1