[Frontend]系統監控 tooltip show 取得原element 功能補上 | 部分功能註解補上
This commit is contained in:
parent
f359469e1f
commit
d9d2f27ba0
@ -72,7 +72,7 @@
|
|||||||
strHtml += `<button id="floItemBtn${floObj.full_name}" type="button" class="btn btn-primary waves-effect waves-themed mr-5">${floObj.full_name}</button>`
|
strHtml += `<button id="floItemBtn${floObj.full_name}" type="button" class="btn btn-primary waves-effect waves-themed mr-5">${floObj.full_name}</button>`
|
||||||
|
|
||||||
$.each(floObj.device_list, (index2, devObj) => {
|
$.each(floObj.device_list, (index2, devObj) => {
|
||||||
strHtml += `<div name="devItem" data-id="${devObj.device_guid}" class="mr-5 cur-poi">
|
strHtml += `<div name="devItem" data-id="${devObj.device_guid}" data-number="${devObj.device_number}" class="mr-5 cur-poi">
|
||||||
<span class="status status-success d-inline-block">
|
<span class="status status-success d-inline-block">
|
||||||
<img src="${baseImgUrl + varPathImg + devObj.device_master_icon}" class="profile-image rounded-circle" onerror="defDev(this)" alt="...">
|
<img src="${baseImgUrl + varPathImg + devObj.device_master_icon}" class="profile-image rounded-circle" onerror="defDev(this)" alt="...">
|
||||||
</span> ${devObj.full_name}
|
</span> ${devObj.full_name}
|
||||||
@ -235,7 +235,8 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>`,
|
</div>`,
|
||||||
group:"device",
|
group:"device",
|
||||||
onShow: function () {
|
onShow: function (tooltipEle, oriEle) {
|
||||||
|
console.log($(oriEle).data("number"))
|
||||||
var tab = new YT.Tab({ tabName: "cardTab" })
|
var tab = new YT.Tab({ tabName: "cardTab" })
|
||||||
loadOpeRecTable();
|
loadOpeRecTable();
|
||||||
}
|
}
|
||||||
|
@ -29,215 +29,223 @@
|
|||||||
|
|
||||||
function chartHandler() {
|
function chartHandler() {
|
||||||
floChart.clear();
|
floChart.clear();
|
||||||
$.get(`${baseImgUrl}/upload/floor_map/c0de2199-e62b-4f82-b7f7-abacd4e1cd17.svg`, function (svg) {
|
/*let url = `${baseApiUrl}/upload/graph_manage/de08e7ee-9839-4403-90e5-754dec4e389b.jpg`*/
|
||||||
|
let url = `${baseImgUrl}/upload/floor_map/2e5be49c-f8e8-4977-b5b6-db4d95ff9691.svg`
|
||||||
|
|
||||||
if (svg == undefined || svg == null) {
|
download(url)
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
echarts.registerMap('floor_svg', { svg: svg });
|
//ytAjax = new YourTeam.Ajax(url, null, function (res) {
|
||||||
|
// if (svg == undefined || svg == null) {
|
||||||
|
// return;
|
||||||
|
// }
|
||||||
|
|
||||||
option = {
|
// echarts.registerMap('floor_svg', { svg: svg });
|
||||||
// animationDurationUpdate: 1500,
|
|
||||||
tooltip: {
|
|
||||||
formatter: function (params) {
|
|
||||||
if (params.data.device_node_guid != undefined && params.data.device_node_guid != null && params.data.device_node_guid != "") {
|
|
||||||
return `名稱:${params.data.device_node_full_name}<br>
|
|
||||||
Guid:${params.data.device_node_guid}`
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return `名稱:${params.data.device_full_name}<br>
|
|
||||||
Guid:${params.data.device_guid}`
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
toolbox: { //工具欄
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
geo: {
|
|
||||||
map: 'floor_svg',
|
|
||||||
roam: true,
|
|
||||||
scaleLimit: { //限制放大縮小倍數
|
|
||||||
max: 32,
|
|
||||||
min: 2.5
|
|
||||||
},
|
|
||||||
layoutSize: '100%',
|
|
||||||
layoutCenter: ['50%', '50%'],
|
|
||||||
zoom: 2.5,
|
|
||||||
silent: true
|
|
||||||
},
|
|
||||||
series: [
|
|
||||||
{ //不管有無被選擇(圓點)
|
|
||||||
type: 'scatter',
|
|
||||||
coordinateSystem: 'geo',
|
|
||||||
geoIndex: 0,
|
|
||||||
symbol: 'circle',
|
|
||||||
symbolSize: 10,
|
|
||||||
symbolOffset: [10, 10],
|
|
||||||
label: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
data: currentData,
|
|
||||||
z: 2
|
|
||||||
},
|
|
||||||
{ //未選擇的設備(icon)
|
|
||||||
type: 'scatter',
|
|
||||||
coordinateSystem: 'geo',
|
|
||||||
geoIndex: 0,
|
|
||||||
symbolSize: 30,
|
|
||||||
label: {
|
|
||||||
formatter: '{b}',
|
|
||||||
position: 'bottom',
|
|
||||||
show: true,
|
|
||||||
backgroundColor: 'orange'
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
label: {
|
|
||||||
show: true,
|
|
||||||
fontSize: '20',
|
|
||||||
fontWeight: 'bold',
|
|
||||||
color: 'yellow'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
selectedMode: 'single',
|
|
||||||
data: null,
|
|
||||||
z: 1
|
|
||||||
},
|
|
||||||
{ //被選擇的設備(icon)
|
|
||||||
type: 'effectScatter',
|
|
||||||
coordinateSystem: 'geo',
|
|
||||||
geoIndex: 0,
|
|
||||||
showEffectOn: 'render',
|
|
||||||
symbolSize: 30,
|
|
||||||
label: {
|
|
||||||
formatter: '{b}',
|
|
||||||
position: 'bottom',
|
|
||||||
show: true,
|
|
||||||
backgroundColor: 'orange'
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
label: {
|
|
||||||
show: true,
|
|
||||||
fontSize: '20',
|
|
||||||
fontWeight: 'bold',
|
|
||||||
color: 'yellow'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
selectedMode: 'single',
|
|
||||||
data: null,
|
|
||||||
z: 1
|
|
||||||
},
|
|
||||||
{ //編輯模式底下的設備(圓點,只會有一個)
|
|
||||||
type: 'scatter',
|
|
||||||
coordinateSystem: 'geo',
|
|
||||||
geoIndex: 0,
|
|
||||||
symbol: 'circle',
|
|
||||||
symbolSize: 10,
|
|
||||||
symbolOffset: [10, 10],
|
|
||||||
label: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
data: currentData,
|
|
||||||
z: 2
|
|
||||||
},
|
|
||||||
{ //編輯模式底下的設備(icon,只會有一個)
|
|
||||||
type: 'scatter',
|
|
||||||
coordinateSystem: 'geo',
|
|
||||||
geoIndex: 0,
|
|
||||||
symbolSize: 30,
|
|
||||||
label: {
|
|
||||||
formatter: '{b}',
|
|
||||||
position: 'bottom',
|
|
||||||
show: true,
|
|
||||||
backgroundColor: 'orange'
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
label: {
|
|
||||||
show: true,
|
|
||||||
fontSize: '20',
|
|
||||||
fontWeight: 'bold',
|
|
||||||
color: 'yellow'
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data: null,
|
|
||||||
z: 1
|
|
||||||
},
|
|
||||||
],
|
|
||||||
};
|
|
||||||
|
|
||||||
floChart.setOption(option);
|
// option = {
|
||||||
|
// // animationDurationUpdate: 1500,
|
||||||
|
// tooltip: {
|
||||||
|
// formatter: function (params) {
|
||||||
|
// if (params.data.device_node_guid != undefined && params.data.device_node_guid != null && params.data.device_node_guid != "") {
|
||||||
|
// return `名稱:${params.data.device_node_full_name}<br>
|
||||||
|
// Guid:${params.data.device_node_guid}`
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// return `名稱:${params.data.device_full_name}<br>
|
||||||
|
// Guid:${params.data.device_guid}`
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// toolbox: { //工具欄
|
||||||
|
// show: false
|
||||||
|
// },
|
||||||
|
// geo: {
|
||||||
|
// map: 'floor_svg',
|
||||||
|
// roam: true,
|
||||||
|
// scaleLimit: { //限制放大縮小倍數
|
||||||
|
// max: 32,
|
||||||
|
// min: 2.5
|
||||||
|
// },
|
||||||
|
// layoutSize: '100%',
|
||||||
|
// layoutCenter: ['50%', '50%'],
|
||||||
|
// zoom: 2.5,
|
||||||
|
// silent: true
|
||||||
|
// },
|
||||||
|
// series: [
|
||||||
|
// { //不管有無被選擇(圓點)
|
||||||
|
// type: 'scatter',
|
||||||
|
// coordinateSystem: 'geo',
|
||||||
|
// geoIndex: 0,
|
||||||
|
// symbol: 'circle',
|
||||||
|
// symbolSize: 10,
|
||||||
|
// symbolOffset: [10, 10],
|
||||||
|
// label: {
|
||||||
|
// show: false
|
||||||
|
// },
|
||||||
|
// data: currentData,
|
||||||
|
// z: 2
|
||||||
|
// },
|
||||||
|
// { //未選擇的設備(icon)
|
||||||
|
// type: 'scatter',
|
||||||
|
// coordinateSystem: 'geo',
|
||||||
|
// geoIndex: 0,
|
||||||
|
// symbolSize: 30,
|
||||||
|
// label: {
|
||||||
|
// formatter: '{b}',
|
||||||
|
// position: 'bottom',
|
||||||
|
// show: true,
|
||||||
|
// backgroundColor: 'orange'
|
||||||
|
// },
|
||||||
|
// emphasis: {
|
||||||
|
// label: {
|
||||||
|
// show: true,
|
||||||
|
// fontSize: '20',
|
||||||
|
// fontWeight: 'bold',
|
||||||
|
// color: 'yellow'
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// selectedMode: 'single',
|
||||||
|
// data: null,
|
||||||
|
// z: 1
|
||||||
|
// },
|
||||||
|
// { //被選擇的設備(icon)
|
||||||
|
// type: 'effectScatter',
|
||||||
|
// coordinateSystem: 'geo',
|
||||||
|
// geoIndex: 0,
|
||||||
|
// showEffectOn: 'render',
|
||||||
|
// symbolSize: 30,
|
||||||
|
// label: {
|
||||||
|
// formatter: '{b}',
|
||||||
|
// position: 'bottom',
|
||||||
|
// show: true,
|
||||||
|
// backgroundColor: 'orange'
|
||||||
|
// },
|
||||||
|
// emphasis: {
|
||||||
|
// label: {
|
||||||
|
// show: true,
|
||||||
|
// fontSize: '20',
|
||||||
|
// fontWeight: 'bold',
|
||||||
|
// color: 'yellow'
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// selectedMode: 'single',
|
||||||
|
// data: null,
|
||||||
|
// z: 1
|
||||||
|
// },
|
||||||
|
// { //編輯模式底下的設備(圓點,只會有一個)
|
||||||
|
// type: 'scatter',
|
||||||
|
// coordinateSystem: 'geo',
|
||||||
|
// geoIndex: 0,
|
||||||
|
// symbol: 'circle',
|
||||||
|
// symbolSize: 10,
|
||||||
|
// symbolOffset: [10, 10],
|
||||||
|
// label: {
|
||||||
|
// show: false
|
||||||
|
// },
|
||||||
|
// data: currentData,
|
||||||
|
// z: 2
|
||||||
|
// },
|
||||||
|
// { //編輯模式底下的設備(icon,只會有一個)
|
||||||
|
// type: 'scatter',
|
||||||
|
// coordinateSystem: 'geo',
|
||||||
|
// geoIndex: 0,
|
||||||
|
// symbolSize: 30,
|
||||||
|
// label: {
|
||||||
|
// formatter: '{b}',
|
||||||
|
// position: 'bottom',
|
||||||
|
// show: true,
|
||||||
|
// backgroundColor: 'orange'
|
||||||
|
// },
|
||||||
|
// emphasis: {
|
||||||
|
// label: {
|
||||||
|
// show: true,
|
||||||
|
// fontSize: '20',
|
||||||
|
// fontWeight: 'bold',
|
||||||
|
// color: 'yellow'
|
||||||
|
// }
|
||||||
|
// },
|
||||||
|
// data: null,
|
||||||
|
// z: 1
|
||||||
|
// },
|
||||||
|
// ],
|
||||||
|
// };
|
||||||
|
|
||||||
floChart.getZr().on('click', function (params) {
|
// floChart.setOption(option);
|
||||||
console.log("click", params);
|
|
||||||
var pixelPoint = [params.offsetX, params.offsetY];
|
|
||||||
var dataPoint = floChart.convertFromPixel({ geoIndex: 0 }, pixelPoint);
|
|
||||||
console.log(dataPoint);
|
|
||||||
|
|
||||||
if (floor_map_mode == "edit") {
|
// floChart.getZr().on('click', function (params) {
|
||||||
|
// console.log("click", params);
|
||||||
|
// var pixelPoint = [params.offsetX, params.offsetY];
|
||||||
|
// var dataPoint = floChart.convertFromPixel({ geoIndex: 0 }, pixelPoint);
|
||||||
|
// console.log(dataPoint);
|
||||||
|
|
||||||
temp_device_on_floor_map = [{
|
// if (floor_map_mode == "edit") {
|
||||||
device_guid: selected_temp_device.device_guid,
|
|
||||||
device_full_name: selected_temp_device.device_full_name,
|
|
||||||
device_node_guid: selected_temp_device.device_node_guid ? selected_temp_device.device_node_guid : null,
|
|
||||||
device_node_full_name: selected_temp_device.device_node_full_name ? selected_temp_device.device_node_full_name : null,
|
|
||||||
status: selected_temp_device.status,
|
|
||||||
value: dataPoint
|
|
||||||
}];
|
|
||||||
|
|
||||||
|
// temp_device_on_floor_map = [{
|
||||||
}
|
// device_guid: selected_temp_device.device_guid,
|
||||||
|
// device_full_name: selected_temp_device.device_full_name,
|
||||||
|
// device_node_guid: selected_temp_device.device_node_guid ? selected_temp_device.device_node_guid : null,
|
||||||
|
// device_node_full_name: selected_temp_device.device_node_full_name ? selected_temp_device.device_node_full_name : null,
|
||||||
|
// status: selected_temp_device.status,
|
||||||
|
// value: dataPoint
|
||||||
|
// }];
|
||||||
|
|
||||||
|
|
||||||
// currentData.push([dataPoint[0], dataPoint[1], 1]);
|
// }
|
||||||
// floChart.setOption(option);
|
|
||||||
});
|
|
||||||
|
|
||||||
floChart.on('selectchanged', function (params) {
|
|
||||||
|
|
||||||
console.log("selectchanged", params);
|
|
||||||
// currentData.push([dataPoint[0], dataPoint[1], 1]);
|
|
||||||
// floChart.setOption(option);
|
|
||||||
|
|
||||||
currentData = $.map(currentData, function (item) {
|
// // currentData.push([dataPoint[0], dataPoint[1], 1]);
|
||||||
item.selected = false;
|
// // floChart.setOption(option);
|
||||||
return item;
|
// });
|
||||||
});
|
|
||||||
|
|
||||||
if (params.selected.length > 0) {
|
// floChart.on('selectchanged', function (params) {
|
||||||
currentData[params.selected[0].seriesIndex - 1].selected = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
// console.log("selectchanged", params);
|
||||||
});
|
// // currentData.push([dataPoint[0], dataPoint[1], 1]);
|
||||||
|
// // floChart.setOption(option);
|
||||||
|
|
||||||
// floChart.getZr().on('mousewheel', function (params) {
|
// currentData = $.map(currentData, function (item) {
|
||||||
// console.log(params)
|
// item.selected = false;
|
||||||
// })
|
// return item;
|
||||||
floChart.on('georoam', function (params) {
|
// });
|
||||||
|
|
||||||
var zoom = floChart.getOption().geo[0].zoom;
|
|
||||||
|
|
||||||
if (zoom <= 2.5) {
|
// if (params.selected.length > 0) {
|
||||||
ResetFloorMap();
|
// currentData[params.selected[0].seriesIndex - 1].selected = true;
|
||||||
floChart.setOption({
|
// }
|
||||||
geo: {
|
|
||||||
roam: 'scale'
|
|
||||||
},
|
|
||||||
});
|
|
||||||
} else {
|
|
||||||
floChart.setOption({
|
|
||||||
geo: {
|
|
||||||
roam: true
|
|
||||||
},
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
});
|
// });
|
||||||
})
|
|
||||||
.fail(function () {
|
// // floChart.getZr().on('mousewheel', function (params) {
|
||||||
toast_warning("查無該樓層地圖")
|
// // console.log(params)
|
||||||
floChart.clear();
|
// // })
|
||||||
});
|
// floChart.on('georoam', function (params) {
|
||||||
|
|
||||||
|
// var zoom = floChart.getOption().geo[0].zoom;
|
||||||
|
|
||||||
|
// if (zoom <= 2.5) {
|
||||||
|
// ResetFloorMap();
|
||||||
|
// floChart.setOption({
|
||||||
|
// geo: {
|
||||||
|
// roam: 'scale'
|
||||||
|
// },
|
||||||
|
// });
|
||||||
|
// } else {
|
||||||
|
// floChart.setOption({
|
||||||
|
// geo: {
|
||||||
|
// roam: true
|
||||||
|
// },
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
// });
|
||||||
|
//}).send();
|
||||||
|
//$.get(`${baseImgUrl}/device/GetFloorSvg/c0de2199-e62b-4f82-b7f7-abacd4e1cd17.svg`, function (svg) {
|
||||||
|
|
||||||
|
|
||||||
|
//})
|
||||||
|
// .fail(function () {
|
||||||
|
// toast_warning("查無該樓層地圖")
|
||||||
|
// floChart.clear();
|
||||||
|
// });
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
@ -5,13 +5,18 @@
|
|||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* fn 定義 | 手動初始化 Bootstrap dropdown select
|
||||||
|
*/
|
||||||
$.fn.droSetItem = function () {
|
$.fn.droSetItem = function () {
|
||||||
setDropdownItem(this);
|
setDropdownItem(this);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 設置 bootstrap dropdown 為下拉選單
|
||||||
|
* @param {any} menuEle .dropdown-menu element
|
||||||
|
*/
|
||||||
function setDropdownItem(menuEle) {
|
function setDropdownItem(menuEle) {
|
||||||
if ($(menuEle).find(".dropdown-item.active").length == 0) {
|
if ($(menuEle).find(".dropdown-item.active").length == 0) {
|
||||||
$(menuEle).find(".dropdown-item").first().addClass("active");
|
$(menuEle).find(".dropdown-item").first().addClass("active");
|
||||||
@ -21,14 +26,19 @@ function setDropdownItem(menuEle) {
|
|||||||
let actEleId = $(menuEle).prop("id");
|
let actEleId = $(menuEle).prop("id");
|
||||||
$(`.dropdown-toggle[data-target=${actEleId}]`).text(actText);
|
$(`.dropdown-toggle[data-target=${actEleId}]`).text(actText);
|
||||||
$(menuEle).trigger("active:change", $(menuEle).find(".dropdown-item.active"));
|
$(menuEle).trigger("active:change", $(menuEle).find(".dropdown-item.active"));
|
||||||
|
|
||||||
|
//點選選項 add active class
|
||||||
|
onEvent("click", ".dropdown-menu.dropdown-select-menu .dropdown-item", function () {
|
||||||
|
$(this).parent(".dropdown-menu.dropdown-select-menu").find(".dropdown-item").removeClass("active");
|
||||||
|
$(this).addClass("active");
|
||||||
|
setDropdownItem($(this).parent(".dropdown-menu.dropdown-select-menu"));
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
onEvent("click", ".dropdown-menu.dropdown-select-menu .dropdown-item", function () {
|
/**
|
||||||
$(this).parent(".dropdown-menu.dropdown-select-menu").find(".dropdown-item").removeClass("active");
|
* 預設設備圖像
|
||||||
$(this).addClass("active");
|
* @param {any} obj
|
||||||
setDropdownItem($(this).parent(".dropdown-menu.dropdown-select-menu"));
|
*/
|
||||||
})
|
|
||||||
|
|
||||||
function defDev(obj) {
|
function defDev(obj) {
|
||||||
let defSrc = 'img/defdev.png';
|
let defSrc = 'img/defdev.png';
|
||||||
obj.src = defSrc;
|
obj.src = defSrc;
|
||||||
|
@ -10,11 +10,14 @@
|
|||||||
* */
|
* */
|
||||||
var YT = YT || {};
|
var YT = YT || {};
|
||||||
|
|
||||||
var _ytTabInited = []
|
var _ytTabInited = [];
|
||||||
$(function () {
|
|
||||||
|
|
||||||
|
$(function () {
|
||||||
})
|
})
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 初始全頁面 yt tab
|
||||||
|
* */
|
||||||
function initTabsByEle() {
|
function initTabsByEle() {
|
||||||
$("[data-tabname][data-target]:not([data-tabrole=child])").each(function (index, value) {
|
$("[data-tabname][data-target]:not([data-tabrole=child])").each(function (index, value) {
|
||||||
let tabName = $(value).data("tabname");
|
let tabName = $(value).data("tabname");
|
||||||
@ -38,25 +41,24 @@ class YourTeamTab {
|
|||||||
}
|
}
|
||||||
this.event();
|
this.event();
|
||||||
$(`[data-tabname=${this.tabName}][data-tabrole=child]`).css("display", "none");
|
$(`[data-tabname=${this.tabName}][data-tabrole=child]`).css("display", "none");
|
||||||
$(`[data-tabname=${this.tabName}][data-target]`).first().trigger("click","fromInit");
|
$(`[data-tabname=${this.tabName}][data-target]`).first().trigger("click");
|
||||||
_ytTabInited.push(this.tabName);
|
_ytTabInited.push(this.tabName);
|
||||||
}
|
}
|
||||||
|
|
||||||
event = function () {
|
event = function () {
|
||||||
let clsObj = this;
|
let clsObj = this;
|
||||||
// custom tab
|
|
||||||
// example :
|
// Tab Item 按鈕 click
|
||||||
// <button id="test" data-target="#okDiv" data-tabname="tab1"></button>
|
$(`[data-tabname=${this.tabName}][data-target]`).off("click").on("click", function (e) {
|
||||||
// <div id="okDiv" data-tabrole="child" data-tabname="tab1"></div>
|
|
||||||
$(`[data-tabname=${this.tabName}][data-target]`).off("click").on("click", function (e, arg) {
|
|
||||||
console.log(e)
|
|
||||||
let target = $(this).data("target");
|
let target = $(this).data("target");
|
||||||
let obj = this;
|
let obj = this;
|
||||||
$(`[data-tabname=${clsObj.tabName}][data-target]:not([data-tabrole=child])`).removeClass("active")
|
$(`[data-tabname=${clsObj.tabName}][data-target]:not([data-tabrole=child])`).removeClass("active");
|
||||||
$(obj).addClass("active")
|
$(obj).addClass("active");
|
||||||
$(obj).trigger("yt:tab:change")
|
// 觸發 yt:tab:change事件
|
||||||
|
$(obj).trigger("yt:tab:change");
|
||||||
let tabName = $(target).data("tabname");
|
let tabName = $(target).data("tabname");
|
||||||
if (tabName) {
|
if (tabName) {
|
||||||
|
// 找出該觸發對象 block
|
||||||
if ($(target).data("tabrole") == "child") {
|
if ($(target).data("tabrole") == "child") {
|
||||||
$(obj).trigger("yt:tab:show");
|
$(obj).trigger("yt:tab:show");
|
||||||
$(`[data-tabname='${tabName}'][data-tabrole='child']`).css("opacity", 0).hide();
|
$(`[data-tabname='${tabName}'][data-tabrole='child']`).css("opacity", 0).hide();
|
||||||
|
@ -71,7 +71,7 @@ $.fn.YTTooltip = function (option) {
|
|||||||
obj.tooltipDiv = clone;
|
obj.tooltipDiv = clone;
|
||||||
//顯示 tooltip
|
//顯示 tooltip
|
||||||
$(clone).css({ "display": display, "position": "absolute" });
|
$(clone).css({ "display": display, "position": "absolute" });
|
||||||
obj.onShow ? obj.onShow(clone,obj) : "";
|
obj.onShow ? obj.onShow(clone,obj.ele,obj) : "";
|
||||||
//tooltip 高寬
|
//tooltip 高寬
|
||||||
let toolWidth = $(clone)[0].offsetWidth;
|
let toolWidth = $(clone)[0].offsetWidth;
|
||||||
let toolHeight = $(clone)[0].offsetHeight;
|
let toolHeight = $(clone)[0].offsetHeight;
|
||||||
|
@ -182,7 +182,7 @@ namespace FrontendWebApi.ApiControllers
|
|||||||
foreach (var f in fl)
|
foreach (var f in fl)
|
||||||
{
|
{
|
||||||
List<DeviceLists> dl = new List<DeviceLists>();
|
List<DeviceLists> dl = new List<DeviceLists>();
|
||||||
sqlString = $@"select d.device_guid, d.full_name, d.status, d.device_coordinate, dm.device_master_icon
|
sqlString = $@"select d.device_guid, d.full_name, d.status, d.device_coordinate, dm.device_master_icon,d.device_number
|
||||||
from device d
|
from device d
|
||||||
left join device_master dm on d.device_building_tag = dm.device_building_tag and d.device_name_tag = dm.device_name_tag
|
left join device_master dm on d.device_building_tag = dm.device_building_tag and d.device_name_tag = dm.device_name_tag
|
||||||
where d.deleted = 0 and d.device_system_tag = @main_system_tag and d.device_building_tag = @building_tag and d.device_floor_tag = ifnull(@floor_tag, d.device_floor_tag)";
|
where d.deleted = 0 and d.device_system_tag = @main_system_tag and d.device_building_tag = @building_tag and d.device_floor_tag = ifnull(@floor_tag, d.device_floor_tag)";
|
||||||
|
@ -30,6 +30,7 @@ namespace FrontendWebApi.Models
|
|||||||
public class DeviceLists
|
public class DeviceLists
|
||||||
{
|
{
|
||||||
public string device_guid { get; set; }
|
public string device_guid { get; set; }
|
||||||
|
public string device_number { get; set; }
|
||||||
public string full_name { get; set; }
|
public string full_name { get; set; }
|
||||||
public string device_coordinate { get; set; }
|
public string device_coordinate { get; set; }
|
||||||
public string device_coordinate_3d { get; set; }
|
public string device_coordinate_3d { get; set; }
|
||||||
|
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 2.0 MiB |
Loading…
Reference in New Issue
Block a user