[Frontend] 儀錶板 baja 取值 程序串接 | Layout 登出 程序建置 | 電梯模型更換

This commit is contained in:
dev01 2022-12-02 18:59:00 +08:00
parent 6a9ea02e23
commit ae17655e86
3 changed files with 94 additions and 515 deletions

View File

@ -174,11 +174,15 @@
</div>
</div>
</div>-->
<div class="col-12 mb-2">
<div class="col-12 mb-2 position-relative">
<span class="text-center position-absolute t-white" style="top:83px;left:45px;">異常數量<br>18</span>
<img src="img/u110.png" class="w-100">
<span class="text-center position-absolute t-white" style="top:116px;left:142px;">賦歸數量<br>28</span>
</div>
<div class="col-12 mb-2">
<div class="col-12 mb-2 position-relative">
<span class="text-center position-absolute t-white" style="top:120px;left:37px;">已確認異常<br>8</span>
<img src="img/u106.png" class="w-100">
<span class="text-center position-absolute t-white" style="top:100px;left:140px;">未確認異常<br>6</span>
</div>
</div>
</div>
@ -204,11 +208,15 @@
</div>
</div>
</div>-->
<div class="col-12 mb-2">
<img src="img/u40.png" class="w-100">
<div class="col-12 mb-2 position-relative">
<span class="text-center position-absolute t-white" style="top:27px;left:55px;">已完成<br>6</span>
<img src="img/u40.png" class="" style="width:312px;margin-left:-45px;left:-22px;">
<span class="text-center position-absolute t-white" style="top:114px;left:162px;">未完成<br>8</span>
</div>
<div class="col-12 mb-2">
<div class="col-12 mb-2 position-relative">
<span class="text-center position-absolute t-white" style="top:89px;left:27px;">未派工<br>5</span>
<img src="img/u43.png" class="w-100">
<span class="text-center position-absolute t-white" style="top:122px;left:177px;">派工中<br>9</span>
</div>
</div>
</div>
@ -289,9 +297,11 @@
[700, 1]
];
var tarElePath = '';
$(document).ready(function () {
getSubList();
getFirstEletric();
/* init datatables */
$('#dt-basic-example').dataTable(
{
@ -689,7 +699,7 @@
let strHtml = ``;
$.each(res.data.history_Main_Systems, (index, mainSysObj) => {
$.each(mainSysObj.history_Sub_systems, (index2, subSysObj) => {
strHtml += `<div class="btn-group btn-group-lg col-lg-4 mb-4 dev-group" data-id="${pageAct.AreaTag}/${pageAct.buiTag}/${mainSysObj.main_system_tag}/${subSysObj.sub_system_tag}">
strHtml += `<div class="btn-group btn-group-lg col-lg-4 mb-4 dev-group" data-id="/${pageAct.AreaTag}/${pageAct.buiTag}/${mainSysObj.main_system_tag}/${subSysObj.sub_system_tag}">
<button type="button" class="btn btn-secondary col-4"><i class="fal fa-lightbulb-on fa-2x"></i></button>
<button type="button" class="btn btn-secondary">${subSysObj.full_name}</button>
</div>`;
@ -697,17 +707,59 @@
})
$("#sysSubBtnList").html(strHtml);
getAlarmSub();
}
}, null, "POST").send();
}
function getAlarmSub() {
$(".dev-group").each((idx, ele) => {
let path = $(ele).data("id");
getOneSystemStateByBaja(path, (data) => {
console.log(data)
})
function getFirstEletric() {
let url = baseApiUrl + "/api/Device/GetDeviceList";
let sendData = {
sub_system_tag: "E4",
building_tag: pageAct.buiTag,
};
objSendData.Data = sendData;
ytAjax = new YourTeam.Ajax(url, objSendData, function (res) {
if (!res || res.code != "0000" || !res.data) {
} else {
$.each(res.data, (index, floObj) => {
$.each(floObj.device_list, (index2, devObj) => {
tarElePath = devObj.device_number;
})
})
getElectricBaja();
}
}, null, "POST").send();
}
function getElectricBaja() {
let devPath = tarElePath.split("_").slice(0, 8).join("_");
let today = displayDate(new Date, "date").replaceAll("/", "-") + "T00:00:00";
let tomorrow = displayDate(new Date(new Date(today).getTime() + (24 * 60 * 60 * 1000)), "date").replaceAll("/", "-") + "T00:00:00";
getElectricMeterDayDataByBaja(devPath + "_KWH", "Mitsubishi_Sup", today, tomorrow, (data) => {
console.log(data)
})
}
function getAlarmSub() {
//$(".dev-group").each((idx, ele) => {
// let path = $(ele).data("id");
// let start = (new Date()).getTime();
// console.log("path enter baja:", path);
// getOneSystemStateByBaja(path, (data) => {
// let end = (new Date()).getTime();
// console.log("執行時間 :" + (end - start) / 1000 + " 秒","path : " + path, "輸出結果 :"+ data)
// })
//})
}
</script>

View File

@ -861,7 +861,7 @@
var subSeviceData = []; //每個設備訂閱點位值
var floList = []; //每個樓層
var elevObj = null; //左側 2D 電梯物件
var viewer3DNodeIds = [233, 228, 223];
var viewer3DNodeIds = [758, 753, 748];
var elev3DBind = {};
var elev3DOption = {};
var elev3DObj = [];
@ -2395,7 +2395,7 @@
function load3DModel() {
launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDLm53ZA==', (viewer) => {
launchViewer('dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6dGEzaHFzZmZ6cWJub3V4a3BsZGt1a3NldzRzajIxdzUtYmltc19tb2RlbHMvJUUzJTgwJTkwJUU1JThGJUIwJUU1JThDJTk3JUU0JUI4JUFEJUU4JThGJUIxJUU1JUE0JUE3JUU2JUE4JTkzJUUzJTgwJTkxQVJDMjAyMjEyMDEubndk', (viewer) => {
$.each(viewer3DNodeIds, function (idx, node) {
let options = {
element: $("#forgeViewer"),

View File

@ -1417,8 +1417,8 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
<img src="img/logo.png" alt="SmartAdmin WebApp" aria-roledescription="logo">
<!--<span class="page-logo-text mr-1">SmartAdmin WebApp</span>
<span class="position-absolute text-white opacity-50 small pos-top pos-right mr-2 mt-n2"></span>
<i class="fal fa-angle-down d-inline-block ml-1 fs-lg color-primary-300"></i>-->
<span class="position-absolute text-white opacity-50 small pos-top pos-right mr-2 mt-n2"></span>
<i class="fal fa-angle-down d-inline-block ml-1 fs-lg color-primary-300"></i>-->
</a>
</div>
@ -1467,10 +1467,10 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
<i class="fal fa-home fa-2x"></i><br>首頁
</a>
<!--<div class="dropdown-menu">
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>-->
<button class="dropdown-item" type="button">Action</button>
<button class="dropdown-item" type="button">Another action</button>
<button class="dropdown-item" type="button">Something else here</button>
</div>-->
</div>
<div class="btn-group mx-4">
<a href="javascript:;" class="dropdown-toggle no-arrow text-center" data-toggle="dropdown"
@ -1479,10 +1479,10 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
</a>
<div class="dropdown-menu dropdown-select-menu js-auto-close" id="sysMonBtnList">
<!--<button class="dropdown-item" type="button" name="sysMonBtn">電錶</button>
<button class="dropdown-item" type="button" name="sysMonBtn">照明系統</button>
<button class="dropdown-item" type="button" name="sysMonBtn">電梯系統</button>
<button class="dropdown-item" type="button" name="sysMonBtn">環境感測</button>
<button class="dropdown-item" type="button" name="sysMonBtn">空調系統</button>-->
<button class="dropdown-item" type="button" name="sysMonBtn">照明系統</button>
<button class="dropdown-item" type="button" name="sysMonBtn">電梯系統</button>
<button class="dropdown-item" type="button" name="sysMonBtn">環境感測</button>
<button class="dropdown-item" type="button" name="sysMonBtn">空調系統</button>-->
</div>
</div>
<div class="btn-group mx-4">
@ -1518,11 +1518,6 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
</div>
<div class="ml-auto d-flex">
<div><span class="js-get-date"></span></div>
<div>天氣</div>
<!-- app user menu -->
<div>
@ -1531,65 +1526,21 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
<img src="img/demo/avatars/avatar-admin.png" class="profile-image rounded-circle"
alt="Dr. Codex Lantern">
<!-- you can also add username next to the avatar with the codes below:
<span class="ml-1 mr-1 text-truncate text-truncate-header hidden-xs-down">Me</span>
<i class="ni ni-chevron-down hidden-xs-down"></i> -->
<span class="ml-1 mr-1 text-truncate text-truncate-header hidden-xs-down">Me</span>
<i class="ni ni-chevron-down hidden-xs-down"></i> -->
</a>
<div class="dropdown-menu dropdown-menu-animated dropdown-lg">
<div class="dropdown-header bg-trans-gradient d-flex flex-row py-4 rounded-top">
<div class="d-flex flex-row align-items-center mt-1 mb-1 color-white">
<span class="mr-2">
<img src="img/demo/avatars/avatar-admin.png"
class="rounded-circle profile-image" alt="Dr. Codex Lantern">
</span>
<div class="info-card-text">
<div class="fs-lg text-truncate text-truncate-lg">Dr. Codex Lantern</div>
<span class="text-truncate text-truncate-md opacity-80">drlantern@gotbootstrap.com</span>
</div>
</div>
</div>
<div class="dropdown-divider m-0"></div>
<a href="#" class="dropdown-item" data-action="app-reset">
<span data-i18n="drpdwn.reset_layout">Reset Layout</span>
</a>
<a href="#" class="dropdown-item" data-toggle="modal" data-target=".js-modal-settings">
<span data-i18n="drpdwn.settings">Settings</span>
</a>
<div class="dropdown-divider m-0"></div>
<a href="#" class="dropdown-item" data-action="app-fullscreen">
<span data-i18n="drpdwn.fullscreen">Fullscreen</span>
<i class="float-right text-muted fw-n">F11</i>
</a>
<a href="#" class="dropdown-item" data-action="app-print">
<span data-i18n="drpdwn.print">Print</span>
<i class="float-right text-muted fw-n">Ctrl + P</i>
</a>
<div class="dropdown-multilevel dropdown-multilevel-left">
<div class="dropdown-item">
Language
</div>
<div class="dropdown-menu">
<a href="#?lang=fr" class="dropdown-item" data-action="lang"
data-lang="fr">Français</a>
<a href="#?lang=en" class="dropdown-item active" data-action="lang"
data-lang="en">English (US)</a>
<a href="#?lang=es" class="dropdown-item" data-action="lang"
data-lang="es">Español</a>
<a href="#?lang=ru" class="dropdown-item" data-action="lang"
data-lang="ru">Русский язык</a>
<a href="#?lang=jp" class="dropdown-item" data-action="lang"
data-lang="jp">日本語</a>
<a href="#?lang=ch" class="dropdown-item" data-action="lang"
data-lang="ch">中文</a>
</div>
</div>
<div class="dropdown-divider m-0"></div>
<a class="dropdown-item fw-500 pt-3 pb-3" href="page_login.html">
<span data-i18n="drpdwn.page-logout">Logout</span>
<span class="float-right fw-n">&commat;codexlantern</span>
<a id="logout" href="javascript:;" class="dropdown-item fw-500 pt-3 pb-3">
<span>登出</span>
</a>
</div>
</div>
</div>
<div class="ml-2 text-center">
<label class="mb-0 fs-1-2">Diamond Controls<span class="fs-09 position-absolute">®</span></label><br>
<label class="mb-0 fs-1-1">智慧大樓管理平台</label>
</div>
</header>
<!-- END Page Header -->
<!-- BEGIN Page Content -->
@ -2080,433 +2031,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
</div>
<!-- END Messenger -->
<!-- BEGIN Page Settings -->
<div class="modal fade js-modal-settings modal-backdrop-transparent" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-dialog-right modal-md">
<div class="modal-content">
<div class="dropdown-header bg-trans-gradient d-flex justify-content-center align-items-center w-100">
<h4 class="m-0 text-center color-white">
Layout Settings
<small class="mb-0 opacity-80">User Interface Settings</small>
</h4>
<button type="button" class="close text-white position-absolute pos-top pos-right p-2 m-1 mr-2"
data-dismiss="modal" aria-label="Close">
<span aria-hidden="true"><i class="fal fa-times"></i></span>
</button>
</div>
<div class="modal-body p-0">
<div class="settings-panel">
<div class="mt-4 d-table w-100 px-5">
<div class="d-table-cell align-middle">
<h5 class="p-0">
App Layout
</h5>
</div>
</div>
<div class="list" id="fh">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="header-function-fixed"></a>
<span class="onoffswitch-title">Fixed Header</span>
<span class="onoffswitch-title-desc">header is in a fixed at all times</span>
</div>
<div class="list" id="nff">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-function-fixed"></a>
<span class="onoffswitch-title">Fixed Navigation</span>
<span class="onoffswitch-title-desc">left panel is fixed</span>
</div>
<div class="list" id="nfm">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-function-minify"></a>
<span class="onoffswitch-title">Minify Navigation</span>
<span class="onoffswitch-title-desc">Skew nav to maximize space</span>
</div>
<div class="list" id="nfh">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-function-hidden"></a>
<span class="onoffswitch-title">Hide Navigation</span>
<span class="onoffswitch-title-desc">roll mouse on edge to reveal</span>
</div>
<div class="list" id="nft">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-function-top"></a>
<span class="onoffswitch-title">Top Navigation</span>
<span class="onoffswitch-title-desc">Relocate left pane to top</span>
</div>
<div class="list" id="fff">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="footer-function-fixed"></a>
<span class="onoffswitch-title">Fixed Footer</span>
<span class="onoffswitch-title-desc">page footer is fixed</span>
</div>
<div class="list" id="mmb">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-main-boxed"></a>
<span class="onoffswitch-title">Boxed Layout</span>
<span class="onoffswitch-title-desc">Encapsulates to a container</span>
</div>
<div class="expanded">
<ul class="mb-3 mt-1">
<li>
<div class="bg-fusion-50" data-action="toggle" data-class="mod-bg-1"></div>
</li>
<li>
<div class="bg-warning-200" data-action="toggle" data-class="mod-bg-2"></div>
</li>
<li>
<div class="bg-primary-200" data-action="toggle" data-class="mod-bg-3"></div>
</li>
<li>
<div class="bg-success-300" data-action="toggle" data-class="mod-bg-4"></div>
</li>
<li>
<div class="bg-white border" data-action="toggle" data-class="mod-bg-none"></div>
</li>
</ul>
<div class="list" id="mbgf">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-fixed-bg"></a>
<span class="onoffswitch-title">Fixed Background</span>
</div>
</div>
<div class="mt-4 d-table w-100 px-5">
<div class="d-table-cell align-middle">
<h5 class="p-0">
Mobile Menu
</h5>
</div>
</div>
<div class="list" id="nmp">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-mobile-push"></a>
<span class="onoffswitch-title">Push Content</span>
<span class="onoffswitch-title-desc">Content pushed on menu reveal</span>
</div>
<div class="list" id="nmno">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-mobile-no-overlay"></a>
<span class="onoffswitch-title">No Overlay</span>
<span class="onoffswitch-title-desc">Removes mesh on menu reveal</span>
</div>
<div class="list" id="sldo">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="nav-mobile-slide-out"></a>
<span class="onoffswitch-title">Off-Canvas <sup>(beta)</sup></span>
<span class="onoffswitch-title-desc">Content overlaps menu</span>
</div>
<div class="mt-4 d-table w-100 px-5">
<div class="d-table-cell align-middle">
<h5 class="p-0">
Accessibility
</h5>
</div>
</div>
<div class="list" id="mbf">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-bigger-font"></a>
<span class="onoffswitch-title">Bigger Content Font</span>
<span class="onoffswitch-title-desc">content fonts are bigger for readability</span>
</div>
<div class="list" id="mhc">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-high-contrast"></a>
<span class="onoffswitch-title">High Contrast Text (WCAG 2 AA)</span>
<span class="onoffswitch-title-desc">4.5:1 text contrast ratio</span>
</div>
<div class="list" id="mcb">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-color-blind"></a>
<span class="onoffswitch-title">Daltonism <sup>(beta)</sup> </span>
<span class="onoffswitch-title-desc">color vision deficiency</span>
</div>
<div class="list" id="mpc">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-pace-custom"></a>
<span class="onoffswitch-title">Preloader Inside</span>
<span class="onoffswitch-title-desc">preloader will be inside content</span>
</div>
<div class="list" id="mpi">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-panel-icon"></a>
<span class="onoffswitch-title">SmartPanel Icons (not Panels)</span>
<span class="onoffswitch-title-desc">smartpanel buttons will appear as icons</span>
</div>
<div class="mt-4 d-table w-100 px-5">
<div class="d-table-cell align-middle">
<h5 class="p-0">
Global Modifications
</h5>
</div>
</div>
<div class="list" id="mcbg">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-clean-page-bg"></a>
<span class="onoffswitch-title">Clean Page Background</span>
<span class="onoffswitch-title-desc">adds more whitespace</span>
</div>
<div class="list" id="mhni">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-hide-nav-icons"></a>
<span class="onoffswitch-title">Hide Navigation Icons</span>
<span class="onoffswitch-title-desc">invisible navigation icons</span>
</div>
<div class="list" id="dan">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-disable-animation"></a>
<span class="onoffswitch-title">Disable CSS Animation</span>
<span class="onoffswitch-title-desc">Disables CSS based animations</span>
</div>
<div class="list" id="mhic">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-hide-info-card"></a>
<span class="onoffswitch-title">Hide Info Card</span>
<span class="onoffswitch-title-desc">Hides info card from left panel</span>
</div>
<div class="list" id="mlph">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-lean-subheader"></a>
<span class="onoffswitch-title">Lean Subheader</span>
<span class="onoffswitch-title-desc">distinguished page header</span>
</div>
<div class="list" id="mnl">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-nav-link"></a>
<span class="onoffswitch-title">Hierarchical Navigation</span>
<span class="onoffswitch-title-desc">Clear breakdown of nav links</span>
</div>
<div class="list" id="mdn">
<a href="#" onclick="return false;" class="btn btn-switch" data-action="toggle"
data-class="mod-nav-dark"></a>
<span class="onoffswitch-title">Dark Navigation</span>
<span class="onoffswitch-title-desc">Navigation background is darkend</span>
</div>
<hr class="mb-0 mt-4">
<div class="mt-4 d-table w-100 pl-5 pr-3">
<div class="d-table-cell align-middle">
<h5 class="p-0">
Global Font Size
</h5>
</div>
</div>
<div class="list mt-1">
<div class="btn-group btn-group-sm btn-group-toggle my-2" data-toggle="buttons">
<label class="btn btn-default btn-sm" data-action="toggle-swap"
data-class="root-text-sm" data-target="html">
<input type="radio" name="changeFrontSize"> SM
</label>
<label class="btn btn-default btn-sm" data-action="toggle-swap" data-class="root-text"
data-target="html">
<input type="radio" name="changeFrontSize" checked=""> MD
</label>
<label class="btn btn-default btn-sm" data-action="toggle-swap"
data-class="root-text-lg" data-target="html">
<input type="radio" name="changeFrontSize"> LG
</label>
<label class="btn btn-default btn-sm" data-action="toggle-swap"
data-class="root-text-xl" data-target="html">
<input type="radio" name="changeFrontSize"> XL
</label>
</div>
<span class="onoffswitch-title-desc d-block mb-0">
Change <strong>root</strong> font size to effect rem
values (resets on page refresh)
</span>
</div>
<hr class="mb-0 mt-4">
<div class="mt-4 d-table w-100 pl-5 pr-3">
<div class="d-table-cell align-middle">
<h5 class="p-0 pr-2 d-flex">
Theme colors
<a href="#" class="ml-auto fw-400 fs-xs" data-toggle="popover" data-trigger="focus"
data-placement="top" title="" data-html="true"
data-content="The settings below uses <code>localStorage</code> to load the external <strong>CSS</strong> file as an overlap to the base css. Due to network latency and <strong>CPU utilization</strong>, you may experience a brief flickering effect on page load which may show the intial applied theme for a split second. Setting the prefered style/theme in the header will prevent this from happening."
data-original-title="<span class='text-primary'><i class='fal fa-exclamation-triangle mr-1'></i> Heads up!</span>"
data-template="<div class=&quot;popover bg-white border-white&quot; role=&quot;tooltip&quot;><div class=&quot;arrow&quot;></div><h3 class=&quot;popover-header bg-transparent&quot;></h3><div class=&quot;popover-body fs-xs&quot;></div></div>">
<i class="fal fa-info-circle mr-1"></i> more info
</a>
</h5>
</div>
</div>
<div class="expanded theme-colors pl-5 pr-3">
<ul class="m-0">
<li>
<a href="#" id="myapp-0" data-action="theme-update" data-themesave data-theme=""
data-toggle="tooltip" data-placement="top" title="Wisteria (base css)"
data-original-title="Wisteria (base css)"></a>
</li>
<li>
<a href="#" id="myapp-1" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-1.css" data-toggle="tooltip"
data-placement="top" title="Tapestry" data-original-title="Tapestry"></a>
</li>
<li>
<a href="#" id="myapp-2" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-2.css" data-toggle="tooltip"
data-placement="top" title="Atlantis" data-original-title="Atlantis"></a>
</li>
<li>
<a href="#" id="myapp-3" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-3.css" data-toggle="tooltip"
data-placement="top" title="Indigo" data-original-title="Indigo"></a>
</li>
<li>
<a href="#" id="myapp-4" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-4.css" data-toggle="tooltip"
data-placement="top" title="Dodger Blue" data-original-title="Dodger Blue"></a>
</li>
<li>
<a href="#" id="myapp-5" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-5.css" data-toggle="tooltip"
data-placement="top" title="Tradewind" data-original-title="Tradewind"></a>
</li>
<li>
<a href="#" id="myapp-6" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-6.css" data-toggle="tooltip"
data-placement="top" title="Cranberry" data-original-title="Cranberry"></a>
</li>
<li>
<a href="#" id="myapp-7" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-7.css" data-toggle="tooltip"
data-placement="top" title="Oslo Gray" data-original-title="Oslo Gray"></a>
</li>
<li>
<a href="#" id="myapp-8" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-8.css" data-toggle="tooltip"
data-placement="top" title="Chetwode Blue"
data-original-title="Chetwode Blue"></a>
</li>
<li>
<a href="#" id="myapp-9" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-9.css" data-toggle="tooltip"
data-placement="top" title="Apricot" data-original-title="Apricot"></a>
</li>
<li>
<a href="#" id="myapp-10" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-10.css" data-toggle="tooltip"
data-placement="top" title="Blue Smoke" data-original-title="Blue Smoke"></a>
</li>
<li>
<a href="#" id="myapp-11" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-11.css" data-toggle="tooltip"
data-placement="top" title="Green Smoke" data-original-title="Green Smoke"></a>
</li>
<li>
<a href="#" id="myapp-12" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-12.css" data-toggle="tooltip"
data-placement="top" title="Wild Blue Yonder"
data-original-title="Wild Blue Yonder"></a>
</li>
<li>
<a href="#" id="myapp-13" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-13.css" data-toggle="tooltip"
data-placement="top" title="Emerald" data-original-title="Emerald"></a>
</li>
<li>
<a href="#" id="myapp-14" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-14.css" data-toggle="tooltip"
data-placement="top" title="Supernova" data-original-title="Supernova"></a>
</li>
<li>
<a href="#" id="myapp-15" data-action="theme-update" data-themesave
data-theme="css/themes/cust-theme-15.css" data-toggle="tooltip"
data-placement="top" title="Hoki" data-original-title="Hoki"></a>
</li>
</ul>
</div>
<hr class="mb-0 mt-4">
<div class="mt-4 d-table w-100 pl-5 pr-3">
<div class="d-table-cell align-middle">
<h5 class="p-0 pr-2 d-flex">
Theme Modes (beta)
<a href="#" class="ml-auto fw-400 fs-xs" data-toggle="popover" data-trigger="focus"
data-placement="top" title="" data-html="true"
data-content="This is a brand new technique we are introducing which uses CSS variables to infiltrate color options. While this has been working nicely on modern browsers without much issues, some users <strong>may still face issues on Internet Explorer </strong>. Until these issues are resolved or Internet Explorer improves, this feature will remain in Beta"
data-original-title="<span class='text-primary'><i class='fal fa-question-circle mr-1'></i> Why beta?</span>"
data-template="<div class=&quot;popover bg-white border-white&quot; role=&quot;tooltip&quot;><div class=&quot;arrow&quot;></div><h3 class=&quot;popover-header bg-transparent&quot;></h3><div class=&quot;popover-body fs-xs&quot;></div></div>">
<i class="fal fa-question-circle mr-1"></i> why beta?
</a>
</h5>
</div>
</div>
<div class="pl-5 pr-3 py-3">
<div class="ie-only alert alert-warning d-none">
<h6>Internet Explorer Issue</h6>
This particular component may not work as expected in Internet Explorer. Please use with
caution.
</div>
<div class="row no-gutters">
<div class="col-4 pr-2 text-center">
<div id="skin-default" data-action="toggle-replace"
data-replaceclass="mod-skin-light mod-skin-dark" data-class=""
data-toggle="tooltip" data-placement="top" title=""
class="d-flex bg-white border border-primary rounded overflow-hidden text-success js-waves-on"
data-original-title="Default Mode" style="height: 80px">
<div class="bg-primary-600 bg-primary-gradient px-2 pt-0 border-right border-primary">
</div>
<div class="d-flex flex-column flex-1">
<div class="bg-white border-bottom border-primary py-1"></div>
<div class="bg-faded flex-1 pt-3 pb-3 px-2">
<div class="py-3"
style="background:url('img/demo/s-1.png') top left no-repeat;background-size: 100%;">
</div>
</div>
</div>
</div>
Default
</div>
<div class="col-4 px-1 text-center">
<div id="skin-light" data-action="toggle-replace" data-replaceclass="mod-skin-dark"
data-class="mod-skin-light" data-toggle="tooltip" data-placement="top" title=""
class="d-flex bg-white border border-secondary rounded overflow-hidden text-success js-waves-on"
data-original-title="Light Mode" style="height: 80px">
<div class="bg-white px-2 pt-0 border-right border-"></div>
<div class="d-flex flex-column flex-1">
<div class="bg-white border-bottom border- py-1"></div>
<div class="bg-white flex-1 pt-3 pb-3 px-2">
<div class="py-3"
style="background:url('img/demo/s-1.png') top left no-repeat;background-size: 100%;">
</div>
</div>
</div>
</div>
Light
</div>
<div class="col-4 pl-2 text-center">
<div id="skin-dark" data-action="toggle-replace" data-replaceclass="mod-skin-light"
data-class="mod-skin-dark" data-toggle="tooltip" data-placement="top" title=""
class="d-flex bg-white border border-dark rounded overflow-hidden text-success js-waves-on"
data-original-title="Dark Mode" style="height: 80px">
<div class="bg-fusion-500 px-2 pt-0 border-right"></div>
<div class="d-flex flex-column flex-1">
<div class="bg-fusion-600 border-bottom py-1"></div>
<div class="bg-fusion-300 flex-1 pt-3 pb-3 px-2">
<div class="py-3 opacity-30"
style="background:url('img/demo/s-1.png') top left no-repeat;background-size: 100%;">
</div>
</div>
</div>
</div>
Dark
</div>
</div>
</div>
<hr class="mb-0 mt-4">
<div class="pl-5 pr-3 py-3 bg-faded">
<div class="row no-gutters">
<div class="col-6 pr-1">
<a href="#" class="btn btn-outline-danger fw-500 btn-block"
data-action="app-reset">Reset Settings</a>
</div>
<div class="col-6 pl-1">
<a href="#" class="btn btn-danger fw-500 btn-block"
data-action="factory-reset">Factory Reset</a>
</div>
</div>
</div>
</div> <span id="saving"></span>
</div>
</div>
</div>
</div>
<!-- END Page Settings -->
<!-- base vendor bundle:
DOC: if you remove pace.js from core please note on Internet Explorer some CSS animations may execute before a page is fully loaded, resulting 'jump' animations
@ -2549,6 +2074,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
});
</script>
<script src="js/n4js/bajatest.js"></script>
<script src="js/n4js/electricmeterbaja.js"></script>
<script src="js/bajascript/require.config.js"></script>
<script src="js/FileSaver.js"></script>
@ -2615,9 +2141,6 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
function loadedJsPack() {
loadEvent();
if (!jwt) {
if (location.href.indexOf("localhost:5966") != -1) {
location.href = "login.html";
}
myBaja = new MyBaja();
myBaja.setMyUserAccount(Login);
} else {
@ -2720,7 +2243,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
// 事件先行讀取
function loadEvent() {
onEvent("click", "[name=topFunBtn]", function () {
let needLoad = ["sysElevator"];
let needLoad = ["sysElevator","historyData"];
_ytTabInited = [];
let page = $(this).data("page");
@ -2742,6 +2265,11 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
}
})
onEvent("click", "#logout", function () {
localStorage.removeItem("JWT-Authorization");
location.href = "/logout";
})
onEvent("active:change", "#sysMonBtnList", function (e, actEle) {
if (actEle) {
pageAct.sysMainTag = $(actEle).data("subSysObj").main_system_tag;
@ -2796,7 +2324,6 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
success: function (rel) {
if (rel.code != "0000") {
toast_error(rel.msg || "系統內部發生錯誤,請聯絡系統管理員");
location.href = "/login";
return;
}
else {