diff --git a/Frontend/_elecSingleLine.html b/Frontend/_elecSingleLine.html
index 39270e0..f5b34ed 100644
--- a/Frontend/_elecSingleLine.html
+++ b/Frontend/_elecSingleLine.html
@@ -2,8 +2,8 @@
\ No newline at end of file
diff --git a/Frontend/_systemMonitor.html b/Frontend/_systemMonitor.html
index 79ff8b6..f8edb18 100644
--- a/Frontend/_systemMonitor.html
+++ b/Frontend/_systemMonitor.html
@@ -16,7 +16,7 @@
var floList = [];
$(function () {
- $("#sysSubText").text(pageAct.sysSubName);
+ $("#sysSubText").text(pageAct.buiName +"/"+pageAct.sysSubName);
getFloList();
})
diff --git a/Frontend/_topBuildingText.html b/Frontend/_topBuildingText.html
new file mode 100644
index 0000000..1f36692
--- /dev/null
+++ b/Frontend/_topBuildingText.html
@@ -0,0 +1,14 @@
+
+
+
+
+
\ No newline at end of file
diff --git a/Frontend/css/site.css b/Frontend/css/site.css
index 144d2a1..a9fc63b 100644
--- a/Frontend/css/site.css
+++ b/Frontend/css/site.css
@@ -79,7 +79,7 @@ input:-webkit-autofill { background-color: rgba(0, 0, 0, 0.15) !important; }
.vakata-context, .vakata-context ul { background-color: #3f3f3f; box-shadow: 2px 2px 2px #111111; }
.vakata-context li > a { color: white; text-shadow: 1px 1px 0 #4b4b4b; }
.vakata-context .vakata-context-hover > a { background-color: #666666; box-shadow: 0 0 2px #2f2f2f; }
-.vakata-context li > a:hover { background-color: #636363; box-shadow: 0 0 2px #2f2f2f; }
+.vakata-context li > a:hover { background-color: #636363; box-shadow: 0 0 2px #2f2f2f; }
.card-header.p-3.ui-draggable-handle:hover { cursor: move; }
diff --git a/Frontend/css/yourteam/plugins/yt-navbar/yt-navbar.css b/Frontend/css/yourteam/plugins/yt-navbar/yt-navbar.css
index 30ec3c8..c38941a 100644
--- a/Frontend/css/yourteam/plugins/yt-navbar/yt-navbar.css
+++ b/Frontend/css/yourteam/plugins/yt-navbar/yt-navbar.css
@@ -24,20 +24,24 @@
.yt-left-navbar { position: fixed; left: 0; top: 0; height: 100%; z-index: 10; background-color: rgb(25 25 25 / 95%); width: auto; max-width: 300px; margin-top: 4.125rem; }
.yt-navbar-content ul { padding: 1rem 0rem; list-style-type: none; }
.yt-navbar-content ul li { position: relative; display: flex; flex-wrap: wrap; flex-direction: column; }
-.yt-navbar-content ul li a { font-size: 0.9rem; padding: 0.75rem 2.5rem; position: relative; width: 100%; }
+.yt-navbar-content ul li a { font-size: 0.9rem; padding: 0.75rem 1rem 0.75rem 2rem; position: relative; width: 100%; display:flex; justify-content: space-between;}
.yt-navbar-content ul li a:hover { background-color: var(--theme-fusion-600); }
.yt-navbar-content ul li a:active, .yt-navbar-content ul li a.active { background-color: var(--theme-light); }
-.yt-navbar ul li a[data-nb-node-type=parent]::before {
- content: "▶";
- position: absolute;
- left: 19px;
+.yt-navbar ul li a[data-nb-node-type=parent]::after {
+ content: "◀";
+ margin-left:1rem;
transform:rotate(0deg);
transition:0.2s
}
-.yt-navbar ul li a[data-nb-node-type=parent][data-nb-node-status=open]::before {
- transform:rotate(90deg);
+.yt-navbar ul li a[data-nb-node-type=parent][data-nb-node-status=open]::after {
+ transform:rotate(-90deg);
+}
+
+.yt-navbar-content ul li a[data-nb-node-type=parent] span:hover {
+ color: #886ab5;
+ background: white;
}
.yt-navbar ul li a[data-nb-node-type=parent] ~ ul{
@@ -48,4 +52,12 @@
}
.yt-navbar ul li a[data-nb-node-type=parent][data-nb-node-status=open] ~ ul{
transition: transform 0.3s;
-}
\ No newline at end of file
+}
+
+.yt-navbar-content ul.yt-navbar-dropdown {
+ padding:0;
+}
+
+.yt-navbar-content ul.yt-navbar-dropdown li a {
+ padding: 0.75rem 0.5rem 0.75rem 2.5rem;
+}
diff --git a/Frontend/index.html b/Frontend/index.html
index 0e794f3..af9d90c 100644
--- a/Frontend/index.html
+++ b/Frontend/index.html
@@ -1133,7 +1133,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
loadNoticeConSta();
allDevices = getAllDevice();
- if(pageAct.isShowBuildingInMenu){
+ if (pageAct.isShowBuildingInMenu) {
$("#buiActDrop").hide();
}
@@ -1153,7 +1153,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
});
pageAct.buildList = res.data;
- $("#buiList").append(strHtml).droSetItem(); //droSetItem 預設第一筆 active
+ //$("#buiList").append(strHtml).droSetItem(); //droSetItem 預設第一筆 active
}
},
null,
@@ -1197,6 +1197,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
initTabsByEle();
resetYTTooltip();
$("#sysMonTopBtn").YTNavbar("hide");
+ setTopBuildingText();
}
// 事件先行讀取
@@ -1223,7 +1224,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
setSysTagForPageAct(this);
$("#sysMonTopBtn").YTTab("set");
$(`#subSysBtn${pageAct.sysSubTag}`).YTTab("set");
- if(pageAct.isShowBuildingInMenu){
+ if (pageAct.isShowBuildingInMenu) {
let building_tag = $(this).data("building-tag");
$(`#buildTab${building_tag}`).YTTab("set");
}
@@ -1257,6 +1258,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
onEvent("active:change", "#buiList", function (e, actEle) {
if (actEle) {
pageAct.buiTag = $(actEle).prop("id").split("buiBtn")[1];
+ pageAct.buiName = $(actEle).text();
pageAct.urn = $(actEle).data("urn");
console.log("building");
@@ -1272,18 +1274,21 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
"[data-tabname=buildTab]",
function (e, arg) {
pageAct.buiTag = $(this).prop("id").split("buildTab")[1];
+ pageAct.buiName = $(this).text();
pageAct.urn = $(this).data("urn");
console.log("building");
$(this).parents("ul").find("a").removeClass("active");
$(this).parent("a").addClass("active");
- console.log(e,arg)
- if(!arg){
- clearTimeout(refreshPageTimer);
- refreshPageTimer = setTimeout(() => {
+ console.log(e, arg);
+
+ clearTimeout(refreshPageTimer);
+ refreshPageTimer = setTimeout(() => {
+ if (!arg) {
+ refreshSubPage("dashboard");
+ } else if(arg.triggerType == "first") {
refreshSubPage();
- }, 0);
- }
-
+ }
+ }, 0);
}
);
@@ -1393,9 +1398,13 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
});
}
- function refreshSubPage() {
+ function refreshSubPage(toPage = null) {
lastPage = sessionStorage.getItem("lastPage");
console.log("lastPage", lastPage);
+ if (toPage) {
+ lastPage = toPage;
+ }
+
if (lastPage) {
let lastPageAct = {};
@@ -1409,10 +1418,12 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
// || lastPage == "sysSensor"
) {
$("#sysMonTopBtn").YTTab("set");
- if(!pageAct.isShowBuildingInMenu){
+ if (!pageAct.isShowBuildingInMenu) {
$(`#subSysBtn${lastPageAct.sysSubTag}`).click();
} else {
- $(`#subSysBtn${lastPageAct.sysSubTag}[data-building-tag=${pageAct.buiTag}]`).click();
+ $(
+ `#subSysBtn${lastPageAct.sysSubTag}[data-building-tag=${pageAct.buiTag}]`
+ ).click();
}
} else {
$(`[data-tabname=topFunBtn][data-page=${lastPage}]`).YTTab(
@@ -2127,7 +2138,7 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
});
$("#froLisPage").html(strHtml);
-
+
// $("#homeBtn").YTNavbar("init");
}
},
@@ -2150,9 +2161,9 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
if (!res || res.code != "0000" || !res.data) {
} else {
$("#sysMonBtnList").html("");
- console.log("data",res.data)
+
$.each(res.data, (i, building) => {
- let li = creEle("li",null,null,null,[],);
+ let li = creEle("li", null, null, null, []);
let a = creA(
building.building_name,
{ href: "javascript:;" },
@@ -2163,11 +2174,13 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
},
""
);
- a.html(`
${building.building_name}`);
+ a.html(
+ `
${building.building_name}`
+ );
li.append(a);
let ul = creEle("ul", null, null, null, [
- "yt-navbar-dropdown",
- ]);
+ "yt-navbar-dropdown",
+ ]);
$.each(building.history_Main_Systems, (index, mainSysObj) => {
$.each(
mainSysObj.history_Sub_systems,
@@ -2187,24 +2200,28 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
{ href: "javascript:;" },
[],
`subSysBtn${subSysObj.sub_system_tag}`,
- { page: page, tabname: "systemMonitor","building-tag":building.building_tag },
+ {
+ page: page,
+ tabname: "systemMonitor",
+ "building-tag": building.building_tag,
+ },
"topFunBtn"
);
li2.append(a2);
ul.append(li2);
-
+
a2.data("subSysObj", subSysObj);
subSysObj.main_system_tag = mainSysObj.main_system_tag;
-
}
);
});
-
+
li.append(ul);
$("#sysMonBtnList").append(li);
-
});
$("#sysMonTopBtn").YTNavbar("init");
+
+ $("span[id^=buildTab]").first().YTTab("setAndClick",{triggerType:"first"});
}
},
null,
diff --git a/Frontend/js/init.js b/Frontend/js/init.js
index c6723eb..a32da02 100644
--- a/Frontend/js/init.js
+++ b/Frontend/js/init.js
@@ -3,14 +3,14 @@
// var baseImgUrl = "https://localhost:44376"; // 本地開發用
// Mitsubishi
-// var baseApiUrl = "http://220.132.206.5:8005"; // production 用
+var baseApiUrl = "http://220.132.206.5:8005"; // production 用
var baseImgUrl = "http://220.132.206.5:8053"; // production 用
// WSP
// var baseApiUrl = "http://192.168.0.136:8005"; // production 用
// var baseImgUrl = "http://192.168.0.136:8053"; // production 用
-var baseApiUrl = "http://localhost:3604";
+// var baseApiUrl = "http://localhost:3604";
//var baseImgUrl = "http://localhost:8848";
var varRegApiUrl = "/reg/api/"; //註冊API路徑
diff --git a/Frontend/js/site.js b/Frontend/js/site.js
index a554c0c..fbff4e7 100644
--- a/Frontend/js/site.js
+++ b/Frontend/js/site.js
@@ -2,6 +2,7 @@
$(".dropdown-menu.dropdown-select-menu").each((index, value) => {
setDropdownItem(value);
});
+ setTopBuildingText();
});
/**
@@ -1246,3 +1247,9 @@ class Forge3DSensor {
// }, 2000)
}
}
+
+function setTopBuildingText(){
+ $(".top-building-text-container").load("_topBuildingText.html",function(){
+
+ })
+}
\ No newline at end of file
diff --git a/Frontend/js/yourteam/plugins/yt-navbar/yt-navbar.js b/Frontend/js/yourteam/plugins/yt-navbar/yt-navbar.js
index 4b0079a..8ca82fd 100644
--- a/Frontend/js/yourteam/plugins/yt-navbar/yt-navbar.js
+++ b/Frontend/js/yourteam/plugins/yt-navbar/yt-navbar.js
@@ -105,8 +105,6 @@ class YourTeamNavbar {
let target = $(ele).data("target");
if ($(this.element)[0] == $(target)[0]) {
$(ele).on("click", (e) => {
- console.log(ele)
- debugger
this.toggle();
})
}
diff --git a/Frontend/js/yourteam/plugins/yt-tab/yt-tab.js b/Frontend/js/yourteam/plugins/yt-tab/yt-tab.js
index 3bb4f92..38f7443 100644
--- a/Frontend/js/yourteam/plugins/yt-tab/yt-tab.js
+++ b/Frontend/js/yourteam/plugins/yt-tab/yt-tab.js
@@ -79,7 +79,7 @@ class YourTeamTab {
let clsObj = this;
// Tab Item 按鈕 click
- $(`[data-tabname=${this.tabName}]`).on("click", function (e) {
+ $(`[data-tabname=${this.tabName}]`).on("click", function (e,arg) {
let target = $(this).data("target");
let obj = this;
clsObj.eventArg.cancel = false;
@@ -91,7 +91,7 @@ class YourTeamTab {
clsObj.activeEle = obj;
clsObj.updActClass();
// 觸發 yt:tab:change事件
- $(obj).trigger("yt:tab:change");
+ $(obj).trigger("yt:tab:change",arg);
if (target) {
let tabName = $(target).data("tabname");
if (tabName) {
@@ -122,14 +122,16 @@ $.fn.YTTab = function (method,...arg) {
return this;
}
}
-
+ let triggerArg = {};
if (method == "set") {
tabObj.setActItem(this);
tabObj.updActClass();
- $(this).trigger("yt:tab:change",{method:"set"});
+ triggerArg = Object.assign({method:"set"},(arg[0] ?? {}));
+ $(this).trigger("yt:tab:change",triggerArg);
} else if (method == "setAndClick") {
tabObj.setActItem(this);
- $(this).click();
+ triggerArg = Object.assign({method:"setAndClick"},(arg[0] ?? {}));
+ $(this).trigger("click",triggerArg);
}
return tabObj;