From 7eb9b6f8c60a244e1a96597319c7b54963ba6612 Mon Sep 17 00:00:00 2001
From: zhangc <zc@123>
Date: 星期二, 07 一月 2025 09:03:09 +0800
Subject: [PATCH] 优化MES库存同步逻辑及AGV告警字段
---
src/main/webapp/views/home/console.html | 176 +++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 147 insertions(+), 29 deletions(-)
diff --git a/src/main/webapp/views/home/console.html b/src/main/webapp/views/home/console.html
index 8e24cc6..0441f9f 100644
--- a/src/main/webapp/views/home/console.html
+++ b/src/main/webapp/views/home/console.html
@@ -6,11 +6,12 @@
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
- <link rel="stylesheet" href="/static/layui/css/layui.css" media="all">
- <script type="text/javascript" src="/static/layui/layui.js"></script>
- <script type="text/javascript" src="/static/js/jquery/jquery-3.3.1.min.js"></script>
- <script type="text/javascript" src="/static/js/echarts/echarts.min.js"></script>
- <script type="text/javascript" src="/static/js/echarts/highcharts.js"></script>
+ <link rel="stylesheet" href="../../static/layui/css/layui.css" media="all">
+ <script type="text/javascript" src="../../static/js/common.js"></script>
+ <script type="text/javascript" src="../../static/layui/layui.js"></script>
+ <script type="text/javascript" src="../../static/js/jquery/jquery-3.3.1.min.js"></script>
+ <script type="text/javascript" src="../../static/js/echarts/echarts.min.js"></script>
+ <script type="text/javascript" src="../../static/js/echarts/highcharts.js"></script>
<style>
body {
background-color: #f1f1f1;
@@ -30,11 +31,15 @@
display: inline-block;
width: 49%;
}
+ .chart-elem div {
+ padding-top: 15px;
+ padding-bottom: 5px;
+ }
.chart-elem:first-child {
padding: 0 50px;
}
.chart-elem:last-child {
- padding-left: 20px;
+ padding: 0 50px;
border-left: 1px solid rgba(0,0,0,.1);
}
/*琛ㄦ牸宸ュ叿鏍�*/
@@ -80,6 +85,12 @@
.layui-form.layui-border-box.layui-table-view {
border-top: 1px solid rgba(0,0,0,.1);
}
+ #search-box {
+ margin-left: 10px;
+ z-index: 999;
+ position: relative;
+ padding: 0 30px 10px 30px;
+ }
</style>
</head>
<body>
@@ -98,6 +109,29 @@
<div class="home-elem loc-retention">
<div class="layui-form">
<div id="form-header">搴撳瓨婊炵暀鏃堕棿缁熻琛�</div>
+ <div class="layui-card" style="padding: 0 20px 1px 20px;">
+ <fieldset class="layui-elem-field site-demo-button" style="margin: 20px;">
+ <legend>鎼滅储鏍�</legend>
+ <div id="search-box" class="layui-form layui-card-header">
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿" autocomplete="off">
+ </div>
+ </div>
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="specs" placeholder="瑙勬牸" autocomplete="off">
+ </div>
+ </div>
+ <!-- 寰呮坊鍔� -->
+ <div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block">
+ <button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储</button>
+ <button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆</button>
+ </div>
+ </div>
+ </fieldset>
+
+ </div>
<table class="layui-hide" id="stayTime" lay-filter="stayTime"></table>
</div>
</div>
@@ -108,10 +142,11 @@
// 楗煎浘
function pieCharts(){
$.ajax({
- url:'/console/loc/pie/charts',
+ url:baseUrl+'/console/loc/pie/charts',
headers: {'token': localStorage.getItem('token')},
dataType: 'json',
contentType: 'application/json;charset=UTF-8',
+ crossDomain: true,
method: 'POST',
success:function(res){
var data = res.data;
@@ -125,7 +160,7 @@
text: '搴撲綅浣跨敤姣斾緥',
margin:1,
style: {fontSize: '18px',color: '#777',fontWeight: 'bold'},
- y: 20
+ y: 5
};
var tooltip = {
pointFormat: '{series.name}: <b>{point.percentage:.1f}%</b>'
@@ -148,13 +183,17 @@
name: '搴撲綅鍗犳瘮',
data: dataPie
}];
-
+ var loading = {
+ hideDuration: 3,
+ showDuration: 3
+ };
var json = {};
json.chart = chart;
json.title = title;
json.tooltip = tooltip;
json.series = series;
json.plotOptions = plotOptions;
+ json.loading = loading;
json.credits = {enabled: false};
$('#pie').highcharts(json);
@@ -167,7 +206,7 @@
// 鎶樼嚎鍥�
function lineCharts() {
$.ajax({
- url: '/console/locIo/line/charts',
+ url: baseUrl+'/console/locIo/line/charts',
headers: {'token': localStorage.getItem('token')},
dataType: 'json',
contentType: 'application/json;charset=UTF-8',
@@ -179,7 +218,7 @@
text: '鏃ュ叆鍑哄簱鏁伴噺',
margin: 1,
style: {fontSize: '18px',color: '#777',fontWeight: 'bold'},
- y: 20
+ y: 5
};
var xAxis = {
categories: [getDate(-11), getDate(-10), getDate(-9), getDate(-8), getDate(-7), getDate(-6),
@@ -202,6 +241,10 @@
verticalAlign: 'middle',
borderWidth: 0
};
+ var loading = {
+ hideDuration: 3,
+ showDuration: 3
+ }
var series = dataPie;
var json = {};
json.title = title;
@@ -209,6 +252,7 @@
json.yAxis = yAxis;
json.tooltip = tooltip;
json.legend = legend;
+ json.loading = loading;
json.series = series;
json.credits = {enabled: false};
$('#line').highcharts(json);
@@ -218,36 +262,39 @@
// 琛ㄦ牸
var pageCurr;
+ function getCol() {
+ var cols = [
+ //{field: 'appeTime$', title: '鍏ュ簱鏃堕棿', align: 'center', width: 165}
+ {field: 'stay_time', align: 'center',title: '婊炵暀澶╂暟',width: 90}
+ //,{field: 'store_max_date', align: 'center',title: '搴撻緞涓婇檺',width: 90}
+ //,{field: 'store_min', title: '搴撳瓨涓嬮檺', align: 'center'}
+ ,{field: 'sum_qty', title: '搴撳瓨鎬绘暟', align: 'center'}
+ //,{field: 'store_max', title: '搴撳瓨涓婇檺', align: 'center'}
+ ,{field: 'loc_no', align: 'center',title: '搴撲綅鍙�'}
+
+ ];
+ cols.push.apply(cols, detlCols);
+ //cols.push({field: 'sum_qty', title: '搴撳瓨鎬绘暟', align: 'center'})
+ return cols;
+ }
layui.use(['table','laydate', 'form'], function() {
var table = layui.table;
var $ = layui.jquery;
var layer = layui.layer;
+ var form = layui.form;
// 鏁版嵁娓叉煋
tableIns = table.render({
elem: '#stayTime',
headers: {token: localStorage.getItem('token')},
- url: '/report/viewStayTimeList.action',
+ url: baseUrl+'/report/viewStayTimeList.action',
page: true,
limit: 10,
toolbar: '#toolbar',
even: true,
cellMinWidth: 50,
- cols: [[
- {field: 'appe_time', title: '鍏ュ簱鏃堕棿', align: 'center', width: 200}
- ,{field: 'stay_time', align: 'center',title: '婊炵暀澶╂暟'}
- ,{field: 'loc_no', align: 'center',title: '搴撲綅鍙�'}
- ,{field: 'matnr', align: 'center',title: '鐗╂枡'}
- ,{field: 'maktx', align: 'center',title: '鐗╂枡鎻忚堪'}
- ,{field: 'lgnum', align: 'center',title: '浠撳簱鍙�'}
- ,{field: 'tbnum', align: 'center',title: '璇锋眰缂栧彿'}
- ,{field: 'zmatid', align: 'center',title: '鐗╂枡鏍囩ID'}
- ,{field: 'werks', align: 'center',title: '宸ュ巶'}
- ,{field: 'anfme', align: 'center',title: '鏁伴噺'}
- ,{field: 'altme', align: 'center',title: '鍗曚綅'}
- ,{field: 'zpallet', align: 'center',title: '鎵樼洏鐮�'}
- ,{field: 'bname', align: 'center',title: '鐢ㄦ埛ID'}
- ]],
+ crossDomain: true,
+ cols: [getCol()],
request: {
pageName: 'curr',
pageSize: 'limit'
@@ -264,8 +311,39 @@
statusCode: 200
},
done: function(res, curr, count) {
+ var that = this.elem.next();
+ res.data.forEach(function (item, index) {
+ var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']");
+ if (item.store_max_date != null) {
+ if (item.stay_time > item.store_max_date) {
+ tr.css("background-color", "#ff6f00");
+ tr.css("color", "white");
+ tr.children()[1].style.backgroundColor="#ff0000"
+ }
+ }
+ //浣庝簬涓嬮檺
+ if (item.sum_qty < item.store_min) {
+ tr.css("background-color", "#ff6f00");
+ tr.css("color", "white");
+ tr.children()[2].style.backgroundColor="rgb(255,0,0)"
+ tr.children()[2].style.color="white"
+ tr.children()[3].style.backgroundColor="#ff0000"
+ tr.children()[3].style.color="white"
+ }
+ //楂樹簬涓婇檺
+ if(item.store_max != null) {
+ if (item.sum_qty > item.store_max) {
+ tr.css("background-color", "#ff6f00");
+ tr.css("color", "white");
+ tr.children()[3].style.backgroundColor="#009c04"
+ tr.children()[3].style.color="white"
+ tr.children()[4].style.backgroundColor="#3da83f"
+ tr.children()[4].style.color="white"
+ }
+ }
+ });
if (res.code === 403) {
- top.location.href = "/";
+ top.location.href = baseUrl+"/";
}
pageCurr=curr;
}
@@ -285,13 +363,53 @@
curr: 1
},
done: function (res, curr, count) {
+ var that = this.elem.next();
+ res.data.forEach(function (item, index) {
+ if (item.store_max_date != null) {
+ if (item.stay_time > item.store_max_date) {
+ var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']");
+ tr.css("background-color", "#FF5722");
+ tr.css("color", "white");
+ }
+ }
+ });
if (res.code === 403) {
- top.location.href = "/";
+ top.location.href = baseUrl+"/";
}
pageCurr=curr;
}
});
});
+
+ // 鎼滅储鏍忔悳绱簨浠�
+ form.on('submit(search)', function (data) {
+ tableReload();
+ });
+ // 鎼滅储鏍忔悳绱簨浠�
+ form.on('submit(reset)', function (data) {
+ $(':input', $('#search-box'))
+ .val('')
+ .removeAttr('checked')
+ .removeAttr('selected');
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ tableIns.reload({
+ where: searchData
+ });
+
+ });
+
+ function tableReload() {
+ var searchData = {};
+ $.each($('#search-box [name]').serializeArray(), function() {
+ searchData[this.name] = this.value;
+ });
+ tableIns.reload({
+ where: searchData
+ });
+ }
});
--
Gitblit v1.9.1