From 75a3365af2e78f89c464c9cdf87a91ab5b577e77 Mon Sep 17 00:00:00 2001
From: zrg <z1873@LAPTOP-EAVL132E>
Date: 星期一, 20 四月 2026 09:53:40 +0800
Subject: [PATCH] 1
---
WebTM/views/数采管理/DAQ_EquipRunningSlice.html | 1370 ++++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 1,197 insertions(+), 173 deletions(-)
diff --git "a/WebTM/views/\346\225\260\351\207\207\347\256\241\347\220\206/DAQ_EquipRunningSlice.html" "b/WebTM/views/\346\225\260\351\207\207\347\256\241\347\220\206/DAQ_EquipRunningSlice.html"
index 2981279..8c1cb4a 100644
--- "a/WebTM/views/\346\225\260\351\207\207\347\256\241\347\220\206/DAQ_EquipRunningSlice.html"
+++ "b/WebTM/views/\346\225\260\351\207\207\347\256\241\347\220\206/DAQ_EquipRunningSlice.html"
@@ -12,12 +12,12 @@
<script src="../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
<script src="../../layuiadmin/layui/layui1.js"></script>
<script src="../../layuiadmin/echarts.min.js"></script>
+ <script src="../../layuiadmin/dayjs.min.js"></script>
<link href="../../layuiadmin/layui/css/ReportPlatform.css" rel="stylesheet" />
<script src="../../layuiadmin/Scripts/webConfig.js"></script>
- <script src="../../layuiadmin/zgqCustom/zgqCustom.js"></script>
<style>
/*鏍戠姸鍥剧偣鍑婚珮浜彉鑹�*/
- .layui-tree-set-active > .layui-tree-entry .layui-tree-main {
+ .layui-tree-set-active>.layui-tree-entry .layui-tree-main {
background: #aef0f7;
}
@@ -36,10 +36,10 @@
/*鎵�鏈夊睘鎬у彉鍖栧湪0.6绉掑唴鎵ц鍔ㄧ敾*/
}
- .bottomright:hover {
- transform: scale(1.3);
- /*榧犳爣鏀句笂涔嬪悗鍏冪礌鍙樻垚1.4鍊嶅ぇ灏�*/
- }
+ .bottomright:hover {
+ transform: scale(1.3);
+ /*榧犳爣鏀句笂涔嬪悗鍏冪礌鍙樻垚1.4鍊嶅ぇ灏�*/
+ }
.imgtitle {
width: 70%;
@@ -57,14 +57,14 @@
border-radius: 5px;
}
- .cns p {
- font-size: 12px;
- line-height: 18px;
- margin: 0 5px;
- white-space: nowrap;
- text-overflow: ellipsis;
- overflow: hidden;
- }
+ .cns p {
+ font-size: 12px;
+ line-height: 18px;
+ margin: 0 5px;
+ white-space: nowrap;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ }
.check1 {
cursor: pointer;
@@ -127,42 +127,131 @@
<div class="layui-col-xs10 layui-inline" style="border: solid 1.5px #e0d6d64d;">
<div class="layui-form-item" style="display: flex; justify-content: space-around;">
<div class="layui-inline">
- <label class="layui-form-label">鏃ユ湡闂撮殧</label>
- <div class="layui-input-block">
- <select name="HInitTimeCycle" id="HInitTimeCycle"
- class="ForFilteringSchemes" lay-filter="HInitTimeCycle"
- style="width:190px;">
- </select>
+ <label class="layui-form-label">鏃ユ湡鑼冨洿</label>
+ <div class="layui-inline" id="ID-laydate-range">
+ <div class="layui-input-inline">
+ <input type="text" autocomplete="off" id="ID-laydate-start-date"
+ class="layui-input" placeholder="寮�濮嬫棩鏈�">
+ </div>
+ <div class="layui-form-mid">-</div>
+ <div class="layui-input-inline">
+ <input type="text" autocomplete="off" id="ID-laydate-end-date"
+ class="layui-input" placeholder="缁撴潫鏃ユ湡">
+ </div>
</div>
</div>
- <div class="layui-inline">
- <label class="layui-form-label">寮�濮嬫棩鏈�</label>
- <div class="layui-input-block">
- <input type="date" class="layui-input ForFilteringSchemes" name="HDate1"
- id="HDate1">
+
+ <div class="layui-btn-group layui-inline" id="modeBtnGroup">
+ <button type="button" class="layui-btn" data-mode="day">鍗曟棩鏁版嵁</button>
+ <button type="button" class="layui-btn layui-btn-primary layui-border"
+ data-mode="history">鍘嗗彶鏁版嵁</button>
+ </div>
+ </div>
+ <div id="chartContainer" style="height:600px;display:block;overflow-y:auto;">
+ </div>
+ </div>
+ <!-- <div class="layui-col-xs1 layui-inline" style="border: solid 1.5px #e0d6d64d;">
+ <fieldset style="border: 1px solid #eee; box-shadow: 0 2px 5px 0 rgb(0 0 0 / 10%); height: 585px;">
+ <legend style="color: #5FB878">鎿嶄綔鍙�</legend>
+ <div class="content4">
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="PowerOn(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-pause imgicon"></span>
+ </div>
+ <span class="imgtitle">寮�鏈�</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="PowerOff(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-logout imgicon"></span>
+ </div>
+ <span class="imgtitle">鍋滄満</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="DotCheck(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-list imgicon"></span>
+ </div>
+ <span class="imgtitle">鐐规璁板綍</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="FaultRegistration(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-list imgicon"></span>
+ </div>
+ <span class="imgtitle">鏁呴殰鐧昏</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="Maintenance(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-form imgicon"></span>
+ </div>
+ <span class="imgtitle">缁翠慨</span>
+ </div>
+ </div>
+ </div>
+
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="Resume(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-table imgicon"></span>
+ </div>
+ <span class="imgtitle">灞ュ巻</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="Process(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-file imgicon"></span>
+ </div>
+ <span class="imgtitle">宸ヨ壓</span>
+ </div>
+ </div>
+ </div>
+ <div class="layui-row layui-col-space10">
+ <div class="layui-col-sm12 " onclick="HStatus(event,this)">
+ <div class="cnt bottomright">
+ <div class="btnM">
+ <span class="layui-icon layui-icon-set imgicon"></span>
+ </div>
+ <span class="imgtitle">鐘舵��</span>
+ </div>
+ </div>
</div>
</div>
- <div class="layui-inline">
- <label class="layui-form-label">缁撴潫鏃ユ湡</label>
- <div class="layui-input-block">
- <input type="date" class="layui-input ForFilteringSchemes" name="HDate2"
- id="HDate2" style="width:190px;">
- </div>
- </div>
- <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit=""
- lay-filter="btnSearch" id="btnSearch">
- <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
- </button>
- <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit=""
- lay-filter="btnReSearch" id="btnReSearch" style="padding:0 5px">
- 閫�鍑�
- </button>
- </div>
- <div id="chartContainer" style="height:800px;display:block;overflow-y:auto;">
- </div>
- </div>
+ </fieldset>
+ </div> -->
</div>
- <div class="layui-row">
+ <div class="layui-row">
+ <!-- <div class="layui-col-xs3 layui-inline">
+ <div class="tr1-1" id="mychart11"> </div>
+ </div>
+ <div class="layui-col-xs3 layui-inline">
+ <div class="tr1-2" id="mychart22"> </div>
+ </div>
+ <div class="layui-col-xs3 layui-inline">
+ <div class="tr1-3" id="mychart3"> </div>
+ </div>
+ <div class="layui-col-xs3 layui-inline">
+ <div class="tr1-4" id="mychart4"> </div>
+ </div> -->
</div>
</form>
</div>
@@ -171,7 +260,15 @@
</div>
</body>
-<script>
+<script>
+ var wktag = 0;
+ var HEquipID = 0;//璁惧id
+ var HEquipNumber = "";//璁惧缂栫爜
+ var HEquipName = "";//璁惧鍚嶇О
+ var HSourceID = "";//浜х嚎id
+ var HDeptID = "";
+ var pieData = []; // 楗煎浘鏁版嵁闆嗗悎
+ var timelineData = []; //鏃跺簭鍥炬暟鎹泦鍚�
layui.config({
base: '../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
}).extend({
@@ -199,25 +296,6 @@
//#region 瑙﹀彂浜嬩欢锛氬寘鎷琭orm.on(){}鏍煎紡鐨勬墍鏈夌偣鍑讳簨浠躲�侀�夋嫨浜嬩欢绛�
- //鏃ユ湡闂撮殧涓嬫媺鍒楄〃鐩戝惉
- form.on('select(HInitTimeCycle)', function (data) {
- var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
- //鑻ユ棩鏈熼棿闅斾笉涓� 浠绘剰闂撮殧锛屽垯绂佺敤寮�濮嬫棩鏈熶笌缁撴潫鏃ユ湡鐨勯�夋嫨
- if (HInitTimeCycle != -1) {
- $('#HDate1').prop('disabled', true);
- $('#HDate2').prop('disabled', true);
-
- $("#HDate1").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
- $("#HDate2").val(Format(new Date(), "yyyy-MM-dd"));
-
- //鎵ц鏌ヨ鏂规硶
- Check();
- } else {
- $('#HDate1').prop('disabled', false);
- $('#HDate2').prop('disabled', false);
- }
- });
-
//#endregion
@@ -226,141 +304,349 @@
//#region 鍒濆鍖栫晫闈�
function set_ClearBill() {
-
- //鍒濆鍖栨棩鏈熼棿闅斻�佸紑濮嬫棩鏈熴�佺粨鏉熸棩鏈�
- setSelect_HInitTimeCycle();
- //鑻ユ棩鏈熼棿闅斾笉涓� 浠绘剰闂撮殧锛屽垯绂佺敤寮�濮嬫棩鏈熶笌缁撴潫鏃ユ湡鐨勯�夋嫨
- var HInitTimeCycle = $("#HInitTimeCycle").val() * 1;
- if (HInitTimeCycle != -1) {
- $('#HDate1').prop('disabled', true);
- $('#HDate2').prop('disabled', true);
- } else {
- $('#HDate1').prop('disabled', false);
- $('#HDate2').prop('disabled', false);
- }
- $("#HDate1").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * HInitTimeCycle), "yyyy-MM-dd"));
- $("#HDate2").val(Format(new Date(), "yyyy-MM-dd"));
+ Init_dateRange()
+
+ // var mychart11 = echarts.init(document.getElementById('mychart11'));
+ // var mychart22 = echarts.init(document.getElementById('mychart22'));
+ // var mychart3 = echarts.init(document.getElementById('mychart3'));
+ // var mychart4 = echarts.init(document.getElementById('mychart4'));
+ // get_Histogram1(mychart11, '');//鏌辩姸鍥�1
+ // get_LineChart(mychart22, '');//鎶樼嚎
+ // get_Statistics(mychart3, '');//楗煎浘
+ // get_Histogram4(mychart4, '');//鏌辩姸鍥�4
//鏌ヨ
get_Display_Tree();
}
//#endregion
+ //#region 鍒濆鍖栨棩鏈熼�夋嫨鍣�
+ function Init_dateRange() {
+ $("#ID-laydate-start-date").val(util.toDateString(new Date(), 'yyyy-MM-dd'))
+ $("#ID-laydate-end-date").val(util.toDateString(new Date(), 'yyyy-MM-dd'))
- //#region 鍒濆鏃ユ湡闂撮殧 涓嬫媺鍒楄〃
- function setSelect_HInitTimeCycle() {
- var valueList = [0, 1, 2, 3, 4, 5, 6, 29];
- var titleList = ["浠婂ぉ", "杩戜袱澶�", "杩戜笁澶�", "杩戝洓澶�", "杩戜簲澶�", "杩戝叚澶�", "杩戜竷澶�", "杩�30澶�"];
-
- var HInitTimeCycle_ArrayList = '<option value="-1" selected="selected" >浠绘剰闂撮殧</option>';
- for (var i = 0; i < valueList.length; i++) {
- HInitTimeCycle_ArrayList += '<option style="color:blue;" value="' + valueList[i] + '">' + titleList[i] + '</option>';
- }
-
- $("#HInitTimeCycle").empty();
- $("#HInitTimeCycle").append(HInitTimeCycle_ArrayList);
-
-
- $("#HInitTimeCycle").val("0");
- form.render('select');
+ var laydate = layui.laydate;
+ // 鏃ユ湡鑼冨洿 - 宸﹀彸闈㈡澘鐙珛閫夋嫨妯″紡
+ laydate.render({
+ elem: '#ID-laydate-range',
+ range: ['#ID-laydate-start-date', '#ID-laydate-end-date']
+ });
+ // 鏃ユ湡鑼冨洿 - 宸﹀彸闈㈡澘鑱斿姩閫夋嫨妯″紡
+ laydate.render({
+ elem: '#ID-laydate-rangeLinked',
+ range: ['#ID-laydate-start-date-1', '#ID-laydate-end-date-1'],
+ rangeLinked: true // 寮�鍚棩鏈熻寖鍥撮�夋嫨鏃剁殑鍖洪棿鑱斿姩鏍囨敞妯″紡 --- 2.8+ 鏂板
+ });
}
//#endregion
-
+
//鏌ヨ閮ㄩ棬 璁惧瀵瑰簲鐨勬姤琛�
function Check() {
- var HBeginDate = $("#HDate1").val()
- var HEndDate = $("#HDate2").val()
+ var HBeginDate = $("#ID-laydate-start-date").val()
+ var HEndDate = $("#ID-laydate-end-date").val()
$.ajax({
url: GetWEBURL() + '/DAQ_EquipRunningSlice/GetHEquipStatusReportList_DAQ',
type: "GET",
+ async: false,
data: { "HDeptID": HDeptID, "HEquipID": HEquipID, HBeginDate: HBeginDate, HEndDate: HEndDate, "user": sessionStorage["HUserName"] },
dataType: "json",//鏁版嵁绫诲瀷鍙互涓� text xml json script jsonp
success: function (res) {
data = res.data
- debugger
+
if (data.length < 1) {
return
}
- var $container = $("#chartContainer");
- $container.empty();
-
- for (var i = 0; i < data.length; i++) {
- var hmainid = data[i].hmainid;
- var equipName = data[i].璁惧鍚嶇О;
- var dateStr = data[i].鎵�灞炴棩鏈�.split('T')[0];
-
- // 鏃堕棿瀛楁
- var runTime = data[i].杩愯鏃堕棿; // 杩愯
- var stopTime = data[i].鏈烘椂闂�; // 鍋滄満
- var alarmTime = data[i].鍛婅鏃堕棿; // 鍛婅
- var offTime = data[i].鍏虫満鏃堕棿; // 鍏虫満
- var total = runTime + stopTime + alarmTime + offTime;
-
- // ==============================================
- // 1. 鍒涘缓姣忎釜璁惧鐨勫浘琛ㄥ澹筹紙宸﹀彸甯冨眬锛氶ゼ鍥� + 鏃跺簭鍥撅級
- // ==============================================
- var itemHtml = `
- <div style="width:100%; height:420px; display:flex; gap:20px; margin-bottom:30px; border:1px solid #eee; padding:15px; border-radius:8px;">
- <div id="chart_pie_${hmainid}" style="width:38%; height:100%;"></div>
- <div id="chart_time_${hmainid}" style="width:62%; height:100%;"></div>
- </div>`;
- $container.append(itemHtml);
-
- // ==============================================
- // 2. 宸︿晶鐜舰楗煎浘锛堣繍琛�/鍋滄満/鍛婅/鍏虫満 鍗犳瘮锛�
- // ==============================================
- var pieChart = echarts.init(document.getElementById(`chart_pie_${hmainid}`));
- pieChart.setOption({
- title: { text: `${dateStr} ${equipName}`, left: 'center', textStyle: { fontSize: 16 } },
- tooltip: { trigger: 'item', formatter: '{b}: {c}H ({d}%)' },
- legend: { orient: 'vertical', right: '2%', top: 'middle', textStyle: { fontSize: 13 } },
- series: [{
- type: 'pie',
- radius: ['42%', '70%'],
- center: ['45%', '55%'],
- itemStyle: { borderRadius: 4, borderColor: '#fff', borderWidth: 2 },
- label: { show: false },
- data: [
- { value: runTime, name: '杩愯', itemStyle: { color: '#4CAF50' } },
- { value: stopTime, name: '鍋滄満', itemStyle: { color: '#FF9800' } },
- { value: alarmTime, name: '鍛婅', itemStyle: { color: '#F44336' } },
- { value: offTime, name: '鍏虫満', itemStyle: { color: '#9E9E9E' } }
- ]
- }]
- });
-
- // ==============================================
- // 3. 鍙充晶 24灏忔椂 璁惧杩愯鏃跺簭鍥撅紙鍜屾晥鏋滃浘瀹屽叏涓�鑷达級
- // ==============================================
- var timeChart = echarts.init(document.getElementById(`chart_time_${hmainid}`));
- timeChart.setOption({
- title: {
- text: `杩愯:${runTime.toFixed(1)}H | 鍋滄満:${stopTime.toFixed(1)}H | 鍛婅:${alarmTime.toFixed(1)}H | 鍏虫満:${offTime.toFixed(1)}H`,
- left: 'center',
- textStyle: { fontSize: 14 }
- },
- grid: { left: '3%', right: '3%', top: '20%', bottom: '10%', containLabel: true },
- xAxis: {
- type: 'category',
- data: ['00:00', '04:00', '08:00', '12:00', '16:00', '20:00', '24:00']
- },
- yAxis: { type: 'value', max: 1, show: false },
- series: [
- { type: 'bar', stack: 'total', barWidth: '80%', itemStyle: { color: '#9E9E9E' }, data: [offTime / 24, 0, 0, 0, 0, 0, 0] },
- { type: 'bar', stack: 'total', barWidth: '80%', itemStyle: { color: '#FF9800' }, data: [stopTime / 24, 0, 0, 0, 0, 0, 0] },
- { type: 'bar', stack: 'total', barWidth: '80%', itemStyle: { color: '#F44336' }, data: [alarmTime / 24, 0, 0, 0, 0, 0, 0] },
- { type: 'bar', stack: 'total', barWidth: '80%', itemStyle: { color: '#4CAF50' }, data: [runTime / 24, 0, 0, 0, 0, 0, 0] }
- ]
- });
- }
-
+ pieData = data
}
})
+
+ $.ajax({
+ url: GetWEBURL() + '/DAQ_EquipRunningSlice/GetHEquipStatusReportList2_DAQ',
+ type: "GET",
+ async: false,
+ data: { "HDeptID": HDeptID, "HEquipID": HEquipID, HBeginDate: HBeginDate, HEndDate: HEndDate, "user": sessionStorage["HUserName"] },
+ dataType: "json",//鏁版嵁绫诲瀷鍙互涓� text xml json script jsonp
+ success: function (res) {
+ data = res.data
+
+ if (data.length < 1) {
+ return
+ }
+ console.log(timelineData)
+ timelineData = data
+ }
+ })
+
+ drawCharts()
+
+
+ //wktag = 0;
+ //$("#btomleft").html("");
+ //$.ajax({
+ // url: GetWEBURL() + '/Sc_HEquipStateDistribution/Sc_HEquipStateDistribution_Souce',
+ // type: "GET",
+ // data: { "HDeptID": HDeptID, "user": sessionStorage["HUserName"], "OrganizationID": sessionStorage["OrganizationID"] },
+ // dataType: "json",//鏁版嵁绫诲瀷鍙互涓� text xml json script jsonp
+ // success: function (data) {
+ //
+ // var LoadData1 = data.data.h_p_sc_HDeptSouceMOList;
+ // if (LoadData1.length > 0) //宸ュ崟鍒楄〃鏁版嵁
+ // {
+ //
+ // for (var i = 0; i < LoadData1.length; i++) {
+ // var html1 = '';
+ // html1 += '<div class="layui-col-sm12 layui-col-md2" style="margin: 6px;width: 180px;">';
+ // html1 += '<div class="cns" id="bs' + (i + 1) + '" onclick="CheckBtom(this,' + (i + 1) + ')">';
+ // html1 += '<dl>';
+ // html1 += '<dd class="tcenter">';
+ // html1 += '<h1 style="display:none;"><span>鐢熶骇璁㈠崟鍙蜂富ID锛�</span><span id="df' + (i + 1) + '">' + LoadData1[i].鐢熶骇璁㈠崟涓诲唴鐮� + '</span></h1>';
+ // html1 += '<h1 style="display:none;"><span>鐢熶骇璁㈠崟瀛怚D锛�</span><span id="ds' + (i + 1) + '">' + LoadData1[i].鐢熶骇璁㈠崟瀛愬唴鐮� + '</span></h1>';
+ // html1 += '<h1 style="display:none;"><span>浜х嚎ID锛�</span><span id="cs' + (i + 1) + '">' + LoadData1[i].HSourceID + '</span></h1>';
+ // html1 += '<h1 style="display:none;"><span>璁惧ID锛�</span><span id="sb' + (i + 1) + '">' + LoadData1[i].璁惧id + '</span></h1>';
+ //
+ // html1 += '<p><span>璁惧缂栫爜锛�</span><span id="sbbm' + (i + 1) + '">' + LoadData1[i].璁惧缂栫爜 + '</span></p>';
+ // html1 += '<p><span>璁惧鍚嶇О锛�</span><span id="sbmc' + (i + 1) + '">' + LoadData1[i].璁惧鍚嶇О + '</span></p>';
+ // html1 += '<p><span>浜х嚎锛�</span><span id="cxmc' + (i + 1) + '">' + LoadData1[i].浜х嚎 + '</span></p>';
+ // html1 += '<p><span>褰撳墠璁㈠崟锛�</span><span id="gd' + (i + 1) + '">' + LoadData1[i].鐢熶骇璁㈠崟 + '</span></p>';
+ // html1 += '<p><span>璁㈠崟鏁伴噺锛�</span><span id="ddqty' + (i + 1) + '">' + LoadData1[i].浠诲姟鍗曟暟閲� + '</span></p>';
+ // html1 += '<p><span>瀹屾垚鏁伴噺锛�</span><span id="wcqty' + (i + 1) + '">' + LoadData1[i].娴佽浆鍗℃暟閲� + '</span></p>';
+ // switch (LoadData1[i].璁惧鐘舵��) {
+ // case "绌洪棽":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border6"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "寮�鏈�":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border4"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "鍋滄満":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border3"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "鐢熶骇":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border2"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "缁翠慨涓�":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border5"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "鏁呴殰":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border1"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // case "缁翠慨瀹屾垚":
+ // html1 += '<p><span>褰撳墠鐘舵�侊細</span><span class="gj_icon color_border7"></span><span>' + LoadData1[i].璁惧鐘舵�� + '</span></p>';
+ // break;
+ // default:
+ // }
+ // html1 += '</dd>';
+ // html1 += '</dl>';
+ // html1 += '</div>';
+ // html1 += '</div>';
+ // $("#btomleft").append(html1);
+ // }
+ // }
+ // },
+ // error: function (err) {
+ // layer.alert(err.Message, { time: 1 * 2000, icon: 5 });
+ // return false;
+ // }
+ //});
}
+ //#region 缁樺埗鍥捐〃
+ function drawCharts() {
+ var $container = $("#chartContainer");
+ $container.empty();
+
+ var data = pieData
+ console.log(pieChart)
+ var data1 = timelineData
+
+ for (var i = 0; i < data.length; i++) {
+ var hmainid = data[i].hmainid;
+ var equipName = data[i].璁惧鍚嶇О;
+ var dateStr = data[i].鎵�灞炴棩鏈�.split('T')[0];
+
+ // 鏃堕棿瀛楁
+ var runTime = data[i].杩愯鏃堕棿 || 0; // 杩愯
+ var stopTime = data[i].鍋滄満鏃堕棿 || 0; // 鍋滄満
+ var alarmTime = data[i].鍛婅鏃堕棿 || 0; // 鍛婅
+ var offTime = data[i].鍏虫満鏃堕棿 || 0; // 鍏虫満
+ var total = runTime + stopTime + alarmTime + offTime;
+
+ // ==============================================
+ // 1. 鍒涘缓姣忎釜璁惧鐨勫浘琛ㄥ澹筹紙宸﹀彸甯冨眬锛氶ゼ鍥� + 鏃跺簭鍥撅級
+ // ==============================================
+ var itemHtml = `
+ <div style="width:100%; height:200px; margin-bottom:20px; border:1px solid #eee; padding:15px; border-radius:8px;">
+ <div style="display: inline-block; height:20%; display:flex; gap:20px;">
+ <div style="width:40%;">${dateStr} ${equipName}</div>
+ <div style="width:60%; display: flex; justify-content: right; align-items: center; gap: 8px;">
+ <div style="width: 18px; height: 18px; background-color: #73cc3f; display: inline-block"></div>
+ <div style="padding-left: 4px ;display: inline-block">杩愯(${runTime}H)</div>
+ <div style="width: 18px; height: 18px; background-color: #f2a439; display: inline-block"></div>
+ <div style="padding-left: 4px ;display: inline-block">鍋滄満(${stopTime}H)</div>
+ <div style="width: 18px; height: 18px; background-color: #ff796a; display: inline-block"></div>
+ <div style="padding-left: 4px ;display: inline-block">鍛婅(${alarmTime}H)</div>
+ <div style="width: 18px; height: 18px; background-color: #9b9a9b; display: inline-block"></div>
+ <div style="padding-left: 4px ;display: inline-block">鍏虫満(${offTime}H)</div>
+ </div>
+ </div>
+ <div style="display: inline-block; height:80%; display:flex; gap:20px;">
+ <div id="chart_pie_${hmainid}_${i}" style="width:25%; height:100%;"></div>
+ <div id="chart_time_${hmainid}_${i}" style="width:70%; height:100%;"></div>
+ </div>
+ </div>`;
+ $container.append(itemHtml);
+
+
+ // ==============================================
+ // 2. 宸︿晶鐜舰楗煎浘锛堣繍琛�/鍋滄満/鍛婅/鍏虫満 鍗犳瘮锛�
+ // ==============================================
+ var pieChart = echarts.init(document.getElementById(`chart_pie_${hmainid}_${i}`));
+ pieChart.setOption({
+ // title: { text: `${dateStr} ${equipName}`, left: 'center', textStyle: { fontSize: 16 } },
+ tooltip: {
+ trigger: 'item', formatter: '{b}: {c}H ({d}%)', textStyle: {
+ lineHeight: 22 // 鏂囧瓧闂磋窛鏇村ぇ
+ },
+ },
+ legend: {
+ orient: 'vertical', right: '2%', top: 'middle', textStyle: { fontSize: 13 }
+ , formatter: function (name, value) {
+ var getRate = function () {
+ if (name == '杩愯') {
+ return (runTime / total * 100.0).toFixed(2)
+ }
+ if (name == '鍋滄満') {
+ return (stopTime / total * 100.0).toFixed(2)
+ }
+ if (name == '鍛婅') {
+ return (alarmTime / total * 100.0).toFixed(2)
+ }
+ if (name == '鍏虫満') {
+ return (offTime / total * 100.0).toFixed(2)
+ }
+ }()
+ return name + '鐜�(' + getRate
+ + '%)'
+ }
+ },
+ series: [{
+ type: 'pie',
+ radius: ['42%', '70%'],
+ center: ['25%', '50%'],
+ itemStyle: { borderRadius: 4, borderColor: '#fff', borderWidth: 2 },
+ label: { show: false },
+ data: [
+ { value: runTime, name: '杩愯', itemStyle: { color: '#73cc3f' } },
+ { value: stopTime, name: '鍋滄満', itemStyle: { color: '#f2a439' } },
+ { value: alarmTime, name: '鍛婅', itemStyle: { color: '#ff796a' } },
+ { value: offTime, name: '鍏虫満', itemStyle: { color: '#9b9a9b' } }
+ ]
+ }]
+ });
+
+ // ==============================================
+ // 3. 鍙充晶 24灏忔椂 璁惧杩愯鏃跺簭鍥�
+ // ==============================================
+ // data鐨勬椂闂村拰璁惧id浠モ�榑鈥欒繘琛屾嫾鎺ュ彲寰楀嚭data1瀵硅薄鐨刱ey锛岀畝鍖栨搷浣�
+
+ var key = dateStr + "_" + hmainid
+
+ var timeChart = echarts.init(document.getElementById(`chart_time_${hmainid}_${i}`));
+ // 浣犵殑鍘熷鏁版嵁
+ var data1Instance = data1[key]
+ if(!data1Instance){
+ continue
+ }
+ var startTime = dayjs(dateStr + " 00:00:00").valueOf();
+ var endTime = dayjs(dateStr + " 23:59:59").valueOf();
+ var categories = [data1Instance[0]["鐢熶骇璧勬簮"]];
+ var types = [
+ { name: '姝e父杩愯', color: '#73cc3f' },
+ { name: '绂荤嚎', color: '#9b9a9b' },
+ { name: '寰呮満', color: '#f2a439' },
+ ];
+
+ var getColor = function (name) {
+ for (var i = 0; i < types.length; i++) {
+ if (name == types[i].name) {
+ return types[i].color
+ }
+ }
+ }
+
+ chartDataTimeline = []
+ for (var cursor = 0; cursor < data1Instance.length; cursor++) {
+ chartDataTimeline.push({
+ "name": data1Instance[cursor]["HResult"],
+ "value": [
+ 0,
+ dayjs(data1Instance[cursor]["鏃堕棿"]).valueOf(),
+ dayjs(data1Instance[cursor]["鏃堕棿"]).add(5, 'm').valueOf(),
+ 300000
+ ],
+ "itemStyle": {
+ "normal": {
+ "color": getColor(data1Instance[cursor]["HResult"])
+ }
+ }
+ })
+ }
+ timeChart.setOption({
+ tooltip: {
+ formatter: function (params) {
+ return params.marker + params.name;
+ }
+ },
+ grid: {
+ top: 0,
+ bottom: 0,
+ left: 20, // 缁橸杞存枃瀛楃暀涓�鐐逛綅缃�
+ right: 20,
+ containLabel: true
+ },
+ xAxis: {
+ type: 'time',
+ min: startTime, // 寮�濮嬫椂闂存埑
+ max: endTime, // 缁撴潫鏃堕棿鎴�
+ minInterval: 7200000, // 闂撮殧涓ゅ皬鏃�
+ scale: true,
+ axisLabel: {
+ formatter: function (val) {
+ return echarts.format.formatTime('hh:mm', val);
+ }
+ },
+ axisLine: {
+ show: false // 闅愯棌 x 杞磋酱绾�
+ }
+ },
+ yAxis: {
+ data: categories,
+ axisLine: {
+ show: false // 闅愯棌 y 杞磋酱绾�
+ },
+ name: "",
+ axisLabel: { show: false }, // 闅愯棌Y杞存爣绛�
+ },
+ series: [
+ {
+ type: 'custom',
+ renderItem: renderItem,
+ itemStyle: {
+ opacity: 0.8
+ },
+ encode: {
+ x: [1, 2],
+ y: 0
+ },
+ data: chartDataTimeline
+ }
+ ]
+ })
+ }
+ }
+ //#endregion
// 鏍戠姸鍥炬煡璇�
function get_Display_Tree() {
@@ -451,9 +737,747 @@
subStr += '{"title": "' + subMenu.id + "-" + subMenu.title + '", "id": "' + subMenu.id + '","HPID": "' + parentID + '"},';
}
return subStr;
- }
+ }
+
+
+ $('#modeBtnGroup').on('click', 'button', function (e) {
+ console.log("鐐瑰嚮鎴愬姛锛乪vent =", e); // event 浜嬩欢鎷垮埌
+
+ var $btn = $(this);
+ var $btnGroup = $btn.closest('div');
+ $btnGroup.find('button').addClass("layui-btn-primary").addClass("layui-border")
+ $btn.removeClass("layui-btn-primary").removeClass("layui-border")
+ var mode = $btn.data('mode'); // day / history
+
+
+ //閫氳繃mode鍒ゆ柇鎵ц鍝釜鏌ヨ锛屽鏋滄槸day锛屽垯鏌ヨ鐨勬椂鍊欙紝寮�濮嬫棩鏈熷拰缁撴潫鏃ユ湡閮芥槸褰撳ぉ(涓庢棩鏈熻寖鍥存棤鍏�),濡傛灉鏄痟istory锛屽垯鎸夌収鏃ユ湡鑼冨洿鍜屽巻鍙叉暟鎹繘琛岀瓫閫�
+ });
});
+ //#endregion
+
+ //宸ュ崟鍒楄〃閫変腑
+ function CheckBtom(obj, i) {
+ workcode = $("#gd" + i + "").html(); //閫氳繃鏍峰紡ID鑾峰彇html鍐呭(宸ュ崟鍙�)
+ HICMOInterID = $("#df" + i + "").html(); //鐢熶骇璁㈠崟涓诲唴鐮�
+ HICMOEntryID = $("#ds" + i + "").html(); //鐢熶骇璁㈠崟瀛愬唴鐮�
+ HEquipID = $("#sb" + i + "").html(); //璁惧id
+ HEquipNumber = $("#sbbm" + i + "").html(); //璁惧缂栫爜
+ HEquipName = $("#sbmc" + i + "").html(); //璁惧鍚嶇О
+ HSourceID = $("#cs" + i + "").html(); //浜х嚎id
+
+ $('.cns').removeClass('check1'); //鍒犻櫎涓嶅悓鐖剁骇clss鏍峰紡鐩稿悓鐨勬墍鏈夊厓绱�
+ $("#bs" + i + "").addClass('check1'); // 娣诲姞褰撳墠鍏冪礌鐨勬牱寮�
+ if (HEquipID != "" && HEquipID != null) {
+ wktag = 1;
+ }
+ sWhere = {
+ HDeptID: HDeptID
+ , HSourceID: HSourceID
+ }
+
+ /* 鐐瑰嚮 璁惧 寮�鍚澶囪鎯呭脊绐楋紝璁惧鐘舵�佽鎯呴〉闈�
+ *璇︽儏椤甸潰锛氭棩鏈熻繃婊ゃ�佽澶囪繍琛屽垎鏋愩�佽鎶ワ紙鍙互鍏堝彇鍊间负鏈�杩戠殑瀹夌伅绠$悊锛夊彇鍊肩敤 璁惧杩愯鐘舵�佽〃 Sb_EquipRunningStatus(璁惧褰撳墠鐘舵�佹晥鐜囧垎鏋�)
+ */
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '璁惧璇︽儏',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: './DAQ_EvidenceEquipmentCockpitDetail.html?HEquipID=' + HEquipID,
+ end: function () {
+
+ },
+ success: function (dom, index) {
+
+ },
+ });
+ // FourReport(JSON.stringify(sWhere));
+ }
+
+ //鏌ヨ 閮ㄩ棬+浜х嚎 4涓浘琛� 璧嬪��
+ function FourReport(sWhere) {
+ $.ajax({
+ url: GetWEBURL() + '/Sc_HEquipStateDistribution/Get_EquipStateDistribution_FourReport',
+ type: "GET",
+ data: { "sWhere": sWhere, "user": sessionStorage["HUserName"], "OrganizationID": sessionStorage["OrganizationID"] },
+ dataType: "json",//鏁版嵁绫诲瀷鍙互涓� text xml json script jsonp
+ success: function (data) {
+ var chartData = data.data.h_p_Sc_FourStateDistributionReport;
+ var chartData1 = data.data.h_p_Sc_FourStateDistributionReport1;
+ var chartData2 = data.data.h_p_Sc_FourStateDistributionReport2;
+ var chartData3 = data.data.h_p_Sc_FourStateDistributionReport3;
+ var mychart11 = echarts.init(document.getElementById('mychart11'));
+ var mychart22 = echarts.init(document.getElementById('mychart22'));
+ var mychart3 = echarts.init(document.getElementById('mychart3'));
+ var mychart4 = echarts.init(document.getElementById('mychart4'));
+
+ get_Histogram1(mychart11, chartData);
+ get_LineChart(mychart22, chartData1);
+ get_Statistics(mychart3, chartData2);
+ get_Histogram4(mychart4, chartData3);
+
+ },
+ error: function (err) {
+ layer.alert(err.Message, { time: 1 * 2000, icon: 5 });
+ return false;
+ }
+ });
+ }
+
+ //鏌辩姸鍥�
+ function get_Histogram1(mychart11, chartData) {
+ // 榛樿鐨刼ption缁撴瀯
+ var option = {
+ title: {
+ text: '杩戜竷澶╀骇鑳�', // 榛樿鏍囬涓虹┖
+ left: 'center',
+ top: '10%', // 璋冩暣鏍囬浣嶇疆锛屾斁鍒版渶涓婇潰
+ textStyle: {
+ fontSize: 18,
+ color: '#ff0000'
+ }
+ },
+ grid: {
+ top: '25%', // 璋冩暣grid鐨則op鍊硷紝缁欐爣棰樼暀鍑虹┖闂�
+ bottom: '20%',
+ left: '10%',
+ right: '10%'
+ },
+ xAxis: {
+ type: 'category',
+ data: [] // 榛樿x杞存暟鎹负绌�
+ },
+ yAxis: {
+ type: 'value'
+ },
+ series: [
+ {
+ data: [], // 榛樿series鏁版嵁涓虹┖
+ type: 'bar'
+ }
+ ]
+ };
+
+ // 濡傛灉鏈夋暟鎹紝鏇存柊option鐨勫唴瀹�
+ if (chartData && chartData.length > 0) {
+ option.title.text = '杩戜竷澶╀骇鑳�'; // 姝e父鏁版嵁鏃舵病鏈夋爣棰�
+ option.xAxis.data = chartData.map(item => item.鏃ユ湡); // 璁剧疆x杞存暟鎹�
+ option.series[0].data = chartData.map(item => item['鐢熶骇鎬绘暟']); // 璁剧疆y杞存暟鎹�
+
+ option.series[0].label = {
+ normal: {
+ show: true,
+ position: 'top',
+ formatter: function (params) {
+ return echarts.format.addCommas(params.value);
+ }
+ }
+ };
+
+ option.series[0].itemStyle = {
+ normal: {
+ color: '#15b1fa',
+ label: {
+ show: true // 鍦ㄦ煴鐘跺浘涓婃樉绀烘暟鎹�
+ }
+ }
+ };
+ } else {
+ // 娌℃湁鏁版嵁鏃讹紝鏄剧ず"鏆傛棤鏁版嵁"鎻愮ず
+ option.title.text = '鏆傛棤鏁版嵁';
+ }
+
+ // 鏇存柊鍥捐〃
+ mychart11.setOption(option);
+ }
+
+ //鏌辩姸鍥�2
+ function get_LineChart(mychart22, chartData1) {
+ // 榛樿鐨刼ption缁撴瀯
+ var option = {
+ title: {
+ text: '缁翠慨', // 榛樿鏍囬涓虹┖
+ left: 'center',
+ top: '10%', // 璋冩暣鏍囬浣嶇疆锛屾斁鍒版渶涓婇潰
+ textStyle: {
+ fontSize: 18,
+ color: '#ff0000'
+ }
+ },
+ axisLabel: {
+ show: true,
+ interval: 0,
+ color: '#15b1fa',
+ formatter: function (value) {
+ var ret = "";//鎷兼帴鍔燶n杩斿洖鐨勭被鐩」
+ var maxLength = 1;//姣忛」鏄剧ず鏂囧瓧涓暟
+ var valLength = value.length;//X杞寸被鐩」鐨勬枃瀛椾釜鏁�
+ var rowN = Math.ceil(valLength / maxLength); //绫荤洰椤归渶瑕佹崲琛岀殑琛屾暟
+ if (rowN > 1)//濡傛灉绫荤洰椤圭殑鏂囧瓧澶т簬3,
+ {
+ for (var i = 0; i < rowN; i++) {
+ var temp = "";//姣忔鎴彇鐨勫瓧绗︿覆
+ var start = i * maxLength;//寮�濮嬫埅鍙栫殑浣嶇疆
+ var end = start + maxLength;//缁撴潫鎴彇鐨勪綅缃�
+ //杩欓噷涔熷彲浠ュ姞涓�涓槸鍚︽槸鏈�鍚庝竴琛岀殑鍒ゆ柇锛屼絾鏄笉鍔犱篃娌℃湁褰卞搷锛岄偅灏变笉鍔犲惂
+ temp = value.substring(start, end) + "\n";
+ ret += temp; //鍑�熸渶缁堢殑瀛楃涓�
+ }
+ return ret;
+ }
+ else {
+ return value;
+ }
+ }
+ },
+ grid: {
+ top: '25%', // 璋冩暣grid鐨則op鍊硷紝缁欐爣棰樼暀鍑虹┖闂�
+ bottom: '20%',
+ left: '10%',
+ right: '10%'
+ },
+ xAxis: {
+ type: 'category',
+ data: [] // 榛樿x杞存暟鎹负绌�
+ },
+ yAxis: {
+ type: 'value'
+ },
+ series: [
+ {
+ data: [], // 榛樿series鏁版嵁涓虹┖
+ type: 'bar'
+ }
+ ]
+ };
+
+
+
+ // 濡傛灉鏈夋暟鎹紝鏇存柊option鐨勫唴瀹�
+ if (chartData1 && chartData1.length > 0) {
+ option.title.text = '涓嶈壇鍘熷洜'; // 姝e父鏁版嵁鏃舵病鏈夋爣棰�
+ option.xAxis.data = chartData1.map(item => item.涓嶈壇鍘熷洜); // 璁剧疆x杞存暟鎹�
+ option.series[0].data = chartData1.map(item => item['鏁伴噺']); // 璁剧疆y杞存暟鎹�
+
+ option.series[0].label = {
+ normal: {
+ show: true,
+ position: 'top',
+ formatter: function (params) {
+ return echarts.format.addCommas(params.value);
+ }
+ }
+ };
+
+ option.series[0].itemStyle = {
+ normal: {
+ color: '#15b1fa',
+ label: {
+ show: true // 鍦ㄦ煴鐘跺浘涓婃樉绀烘暟鎹�
+ }
+ }
+ };
+ } else {
+ // 娌℃湁鏁版嵁鏃讹紝鏄剧ず"鏆傛棤鏁版嵁"鎻愮ず
+ option.title.text = '鏆傛棤鏁版嵁';
+ }
+
+ // 鏇存柊鍥捐〃
+ mychart22.setOption(option);
+ }
+
+ //楗煎浘
+ function get_Statistics(mychart3, chartData2) {
+ // 濡傛灉 chartData2 涓虹┖锛屾彁渚涗竴涓�滄棤鏁版嵁鈥濇彁绀�
+ if (chartData2.length === 0) {
+ mychart3.setOption({
+ title: {
+ text: '鏆傛棤鏁版嵁',
+ left: 'center',
+ top: '10%',
+ textStyle: {
+ color: 'red', // 璁剧疆鏍囬棰滆壊涓虹孩鑹�
+ fontSize: 18,
+ fontWeight: 'bold'
+ }
+ },
+ series: [], // 娓呯┖鏁版嵁
+ graphic: [] // 娓呯┖鍥惧舰涓殑鏂囨湰
+ });
+ return;
+ }
+
+ // 鐘舵�侀鑹叉槧灏�
+ const statusColorMap = {
+ '寮�鏈�': '#28a745', // 缁胯壊
+ '鏁呴殰': '#ff63a5', // 妗冪孩鑹�
+ '鍋滄満': '#f0ad4e', // 榛勮壊
+ '鏈煡': '#6c757d' // 鐏拌壊
+ };
+
+ // 璁$畻寮�鏈虹巼
+ const totalDevices = chartData2.reduce((sum, item) => sum + item.鏁伴噺, 0);
+ const onlineDevices = chartData2.find(item => item.鐘舵�� === '寮�鏈�')?.鏁伴噺 || 0;
+ const onlineRate = totalDevices === 0 ? 0 : (onlineDevices / totalDevices * 100).toFixed(2);
+
+ // 鍔ㄦ�佺敓鎴愰ゼ鍥炬暟鎹紝骞舵牴鎹姸鎬佽缃鑹�
+ var data = chartData2.map(function (item) {
+ // 鑾峰彇褰撳墠鐘舵�佺殑棰滆壊锛岄粯璁や负鐏拌壊
+ var color = statusColorMap[item.鐘舵�乚 || statusColorMap['鏈煡'];
+
+ return {
+ value: item.鏁伴噺,
+ name: item.鐘舵��,
+ itemStyle: {
+ color: color // 涓烘瘡涓姸鎬佽缃搴旂殑棰滆壊
+ }
+ };
+ });
+
+ // 鍥捐〃鐨勯厤缃」
+ var option = {
+ title: {
+ text: '璁惧鐘舵�佸垎鏋愬姣�',
+ left: 'center',
+ top: '10%', // 灏嗘爣棰樻斁缃埌椤堕儴
+ textStyle: {
+ color: 'red', // 璁剧疆鏍囬瀛椾綋棰滆壊涓虹孩鑹�
+ fontSize: 18,
+ fontWeight: 'bold'
+ }
+ },
+ tooltip: {
+ trigger: 'item'
+ },
+ legend: {
+ orient: 'vertical',
+ left: 'left'
+ },
+ series: [
+ {
+ name: '璁惧鐘舵��',
+ type: 'pie',
+ radius: '50%',
+ data: data, // 浣跨敤鍔ㄦ�佺敓鎴愮殑鏁版嵁
+ emphasis: {
+ itemStyle: {
+ shadowBlur: 10,
+ shadowOffsetX: 0,
+ shadowColor: 'rgba(0, 0, 0, 0.5)'
+ }
+ }
+ }
+ ],
+ graphic: [{
+ type: 'text',
+ left: 'center',
+ top: '85%', // 璋冩暣鏂囨湰浣嶇疆锛岃鍏剁◢寰洿寰�涓�
+ style: {
+ text: `寮�鏈虹巼: ${onlineRate}%`, // 鏄剧ず寮�鏈虹巼
+ font: '16px Arial',
+ fill: '#00aaff' // 浣跨敤娴呰摑鑹叉樉绀哄紑鏈虹巼
+ }
+ }]
+ };
+
+ // 璁剧疆鍥捐〃鐨勯厤缃」
+ mychart3.setOption(option);
+ }
+
+ //鏌辩姸鍥�4
+ function get_Histogram4(mychart4, chartData3) {
+ // 榛樿鐨刼ption缁撴瀯
+ var option = {
+ title: {
+ text: '缁翠慨', // 榛樿鏍囬涓虹┖
+ left: 'center',
+ top: '10%', // 璋冩暣鏍囬浣嶇疆锛屾斁鍒版渶涓婇潰
+ textStyle: {
+ fontSize: 18,
+ color: '#ff0000'
+ }
+ },
+ axisLabel: {
+ show: true,
+ interval: 0,
+ color: '#15b1fa',
+ formatter: function (value) {
+ var ret = "";//鎷兼帴鍔燶n杩斿洖鐨勭被鐩」
+ var maxLength = 1;//姣忛」鏄剧ず鏂囧瓧涓暟
+ var valLength = value.length;//X杞寸被鐩」鐨勬枃瀛椾釜鏁�
+ var rowN = Math.ceil(valLength / maxLength); //绫荤洰椤归渶瑕佹崲琛岀殑琛屾暟
+ if (rowN > 1)//濡傛灉绫荤洰椤圭殑鏂囧瓧澶т簬3,
+ {
+ for (var i = 0; i < rowN; i++) {
+ var temp = "";//姣忔鎴彇鐨勫瓧绗︿覆
+ var start = i * maxLength;//寮�濮嬫埅鍙栫殑浣嶇疆
+ var end = start + maxLength;//缁撴潫鎴彇鐨勪綅缃�
+ //杩欓噷涔熷彲浠ュ姞涓�涓槸鍚︽槸鏈�鍚庝竴琛岀殑鍒ゆ柇锛屼絾鏄笉鍔犱篃娌℃湁褰卞搷锛岄偅灏变笉鍔犲惂
+ temp = value.substring(start, end) + "\n";
+ ret += temp; //鍑�熸渶缁堢殑瀛楃涓�
+ }
+ return ret;
+ }
+ else {
+ return value;
+ }
+ }
+ },
+ grid: {
+ top: '25%', // 璋冩暣grid鐨則op鍊硷紝缁欐爣棰樼暀鍑虹┖闂�
+ bottom: '20%',
+ left: '10%',
+ right: '10%'
+ },
+ xAxis: {
+ type: 'category',
+ data: [] // 榛樿x杞存暟鎹负绌�
+ },
+ yAxis: {
+ type: 'value'
+ },
+ series: [
+ {
+ data: [], // 榛樿series鏁版嵁涓虹┖
+ type: 'bar'
+ }
+ ]
+ };
+
+ // 濡傛灉鏈夋暟鎹紝鏇存柊option鐨勫唴瀹�
+ if (chartData3 && chartData3.length > 0) {
+ option.title.text = '缁翠慨'; // 姝e父鏁版嵁鏃舵病鏈夋爣棰�
+ option.xAxis.data = chartData3.map(item => item.缁翠慨椤圭洰); // 璁剧疆x杞存暟鎹�
+ option.series[0].data = chartData3.map(item => item['缁翠慨娆℃暟']); // 璁剧疆y杞存暟鎹�
+
+ option.series[0].label = {
+ normal: {
+ show: true,
+ position: 'top',
+ formatter: function (params) {
+ return echarts.format.addCommas(params.value);
+ }
+ }
+ };
+
+ option.series[0].itemStyle = {
+ normal: {
+ color: '#15b1fa',
+ label: {
+ show: true // 鍦ㄦ煴鐘跺浘涓婃樉绀烘暟鎹�
+ }
+ }
+ };
+ } else {
+ // 娌℃湁鏁版嵁鏃讹紝鏄剧ず"鏆傛棤鏁版嵁"鎻愮ず
+ option.title.text = '鏆傛棤鏁版嵁';
+ }
+
+ // 鏇存柊鍥捐〃
+ mychart4.setOption(option);
+ }
+
+
+
+ //#region 鎿嶄綔鍙版寜閽偣鍑讳簨浠�
+
+ //寮�鏈烘寜閽偣鍑讳簨浠�
+ function PowerOn(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏂板寮�鏈哄崟',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../璁惧绠$悊/璁惧寮�鏈哄崟/Sb_EquipBeginBill.html?OperationType=1&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+ },
+ });
+ }
+
+ //鍋滄満鎸夐挳鐐瑰嚮浜嬩欢
+ function PowerOff(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏂板鍋滄満鍗�',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../璁惧绠$悊/璁惧鍋滄満鍗�/Sb_EquipStopBill.html?OperationType=1&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+ },
+ });
+ }
+
+ //鐐规璁板綍鎸夐挳鐐瑰嚮浜嬩欢
+ function DotCheck(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏌ョ湅璁惧鏈堢偣妫�璁板綍',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../杞﹂棿绠$悊/鍚姩鐐规鍗�/Sc_WorkDotCheckBillList_Day.html?OperationType=璁惧&linterid=' + HEquipID + '',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID,
+ "HEquipType": "璁惧"
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+
+ },
+ });
+ }
+
+ //鏁呴殰鐧昏鎸夐挳鐐瑰嚮浜嬩欢
+ function FaultRegistration(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏂板鏁呴殰鐧昏鍗�',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../璁惧绠$悊/Sb_Add_EqpConkBookBillList.html?OperationType=1&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+ },
+ });
+ }
+
+ //缁翠慨璁板綍鎸夐挳鐐瑰嚮浜嬩欢
+ function Maintenance(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏂板缁翠慨璁板綍鍗�',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../璁惧绠$悊/Sb_Add_EqpMaintenanceBillList.html?OperationType=1&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+ },
+ });
+ }
+
+ //灞ュ巻鎸夐挳鐐瑰嚮浜嬩欢
+ function Resume(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏌ョ湅璁惧灞ュ巻',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../璁惧绠$悊/璁惧鎶ヨ〃/Sb_EquipResumeCheckQuery.html?OperationType=1&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID,
+ "HEquipNumber": HEquipNumber,
+ "HEquipName": HEquipName
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+ },
+ });
+ }
+
+ //宸ヨ壓鎸夐挳鐐瑰嚮浜嬩欢
+ function Process(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏌ョ湅璁惧宸ヨ壓鍙傛暟',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../鐢熶骇绠$悊/璁㈠崟鐘舵�佸垎甯�/Sc_EquipmentProcessList.html?OperationType=4&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipID": HEquipID,
+ "HICMOInterID": HICMOInterID,
+ "HICMOEntryID": HICMOEntryID
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+
+ },
+ });
+ }
+
+ //鐘舵�佹寜閽偣鍑讳簨浠�
+ function HStatus(event, obj) {
+ if (wktag == 0) {
+ layer.alert("璇烽�夋嫨瀵瑰簲璁惧", { icon: 5 });
+ return false;
+ }
+ layer.open({
+ type: 2,
+ skin: 'layui-layer-rim', //鍔犱笂杈规
+ title: '鏌ョ湅璁惧OEE',
+ closeBtn: 1,
+ shift: 2,
+ area: ['100%', '100%'],
+ maxmin: true,
+ content: '../../鐢熶骇绠$悊/璁㈠崟鐘舵�佸垎甯�/Sc_OEEStatusReport.html?OperationType=4&linterid=0&HSouceBillType=',
+ end: function () {
+
+ },
+ success: function (dom, index) {
+ var data = [];
+ data.push({
+ "HEquipNumber": HEquipNumber
+ });
+
+ //閫氳繃绱㈠紩鑾峰彇鍒板綋鍓峣frame寮瑰嚭灞�
+ var iframe = window['layui-layer-iframe' + index];
+ //璋冪敤iframe寮瑰嚭灞傚唴鐨勬柟娉�
+ iframe.edit(data);
+
+ },
+ });
+ }
+
+ function renderItem(params, api) {
+ var categoryIndex = api.value(0);
+ var start = api.coord([api.value(1), categoryIndex]);
+ var end = api.coord([api.value(2), categoryIndex]);
+ var height = api.size([0, 1])[1] * 0.6;
+ var rectShape = echarts.graphic.clipRectByRect(
+ {
+ x: start[0],
+ y: start[1] - height / 2,
+ width: end[0] - start[0],
+ height: height
+ },
+ {
+ x: params.coordSys.x,
+ y: params.coordSys.y,
+ width: params.coordSys.width,
+ height: params.coordSys.height
+ }
+ );
+ return (
+ rectShape && {
+ type: 'rect',
+ transition: ['shape'],
+ shape: rectShape,
+ style: api.style()
+ }
+ );
+ }
+ //#endregion
</script>
</html>
\ No newline at end of file
--
Gitblit v1.9.1