[Frontend] Login Niagara 登入串接 | Niagara baja 取得帳號資料
This commit is contained in:
parent
86426b5782
commit
c2ebd6eb3a
@ -173,7 +173,7 @@ namespace Backend.Controllers
|
||||
{ "@message_content", sendContent}
|
||||
};
|
||||
|
||||
await backendRepository.AddOneByCustomTable(insertNotify, "background_service_message_notification_task");
|
||||
//await backendRepository.AddOneByCustomTable(insertNotify, "background_service_message_notification_task");
|
||||
|
||||
apiResult.Code = "0000";
|
||||
apiResult.Msg = "儲存成功";
|
||||
|
@ -499,7 +499,7 @@
|
||||
</div>
|
||||
<div id="detDevDiv" style="display:none">
|
||||
<button class="btn btn-info" data-toggle="prevDiv"><i class="fas fa-angle-left mr-2"></i>上一頁</button>
|
||||
<table class="table table-hover">
|
||||
<table id="eleManDevTable" class="table table-hover">
|
||||
<thead>
|
||||
<tr class="text-center">
|
||||
<th scope="col">號機</th>
|
||||
@ -520,7 +520,7 @@
|
||||
<td>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="row mr-2">
|
||||
<input name="preMea" type="checkbox" class="toggle" data-toggle="toggle">
|
||||
<input name="preMea" type="checkbox" class="toggle" data-toggle="toggle" data-point="SP_DP" >
|
||||
</div>
|
||||
<i id="preMeaSche" data-point="DP" class="fas fa-calendar-alt fs-1-1 mr-2 cur-poi"></i>
|
||||
</div>
|
||||
@ -528,7 +528,7 @@
|
||||
<td>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="row mr-2">
|
||||
<input name="stop" type="checkbox" class="toggle" data-toggle="toggle">
|
||||
<input name="stop" type="checkbox" class="toggle" data-toggle="toggle" data-point="SP_RCS">
|
||||
</div>
|
||||
<i id="stopSche" data-point="RCS" class="fas fa-calendar-alt fs-1-1 mr-2 cur-poi"></i>
|
||||
</div>
|
||||
@ -536,7 +536,7 @@
|
||||
<td>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="row mr-2">
|
||||
<input name="onlyOpe" type="checkbox" class="toggle" data-toggle="toggle">
|
||||
<input name="onlyOpe" type="checkbox" class="toggle" data-toggle="toggle" data-point="SP_IND">
|
||||
</div>
|
||||
<i id="onlyOpeSche" data-point="IND" class="fas fa-calendar-alt fs-1-1 mr-2 cur-poi"></i>
|
||||
</div>
|
||||
@ -544,7 +544,7 @@
|
||||
<td>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="row mr-2">
|
||||
<input name="vip" type="checkbox" class="toggle" data-toggle="toggle">
|
||||
<input name="vip" type="checkbox" class="toggle" data-toggle="toggle" data-point="SP_VIP">
|
||||
</div>
|
||||
<i id="vipSche" data-point="VIP" class="fas fa-calendar-alt fs-1-1 mr-2 cur-poi"></i>
|
||||
</div>
|
||||
@ -552,7 +552,7 @@
|
||||
<td>
|
||||
<div class="d-flex justify-content-center align-items-center">
|
||||
<div class="row mr-2">
|
||||
<input name="retOpe" type="checkbox" class="toggle" data-toggle="toggle">
|
||||
<input name="retOpe" type="checkbox" class="toggle" data-toggle="toggle" data-point="SP_RET">
|
||||
</div>
|
||||
<i id="retOpeSche" data-point="RET" class="fas fa-calendar-alt fs-1-1 mr-2 cur-poi"></i>
|
||||
</div>
|
||||
@ -1430,6 +1430,7 @@
|
||||
onEvent("click", "#eleManTable [id^=eleManDevEdit]", function () {
|
||||
let devNum = $(this).prop("id").split("eleManDevEdit")[1];
|
||||
let scheBtn = ["preMeaSche", "stopSche", "onlyOpeSche", "vipSche", "retOpeSche"];
|
||||
$("#detDevDiv").data("devnum", devNum);
|
||||
$("#bajaSche").html("");
|
||||
// 電梯管理 Modal 切換到 detail 頁面
|
||||
modalTogDiv("#eleManModal", "#tabDiv", "#detDevDiv", "next", function () {
|
||||
@ -1451,26 +1452,45 @@
|
||||
let master = $(this).prop("id").split("eleManMasEdit")[1];
|
||||
let subData = subSeviceData.filter(x => x.device_number.split("_")[5] == master)[0];
|
||||
$("#bajaMasSche").html("");
|
||||
|
||||
// 電梯管理 Modal 切換到 detail 頁面
|
||||
modalTogDiv("#eleManModal", "#tabDiv", "#detMasDiv", "next", function () {
|
||||
subDeviceSetEleManNotSerFloor(master);
|
||||
let devNumPath = subData.device_number?.split("_").join("/");
|
||||
let ifHtml = `<iframe src="/ord?station:%7Cslot:${devNumPath}/Sch_FLS|view:?fullScreen=true" width="100%" height="100%" style="height:30rem"></iframe>`
|
||||
$("#bajaMasSche").html(ifHtml);
|
||||
|
||||
})
|
||||
})
|
||||
|
||||
// 電梯管理 Modal 不服務樓層 設定不服務樓層(BAJA)
|
||||
onEvent("click", "#eleManTable [name^=notSerChk]", function () {
|
||||
require(['baja!'], function (baja) {
|
||||
baja.Ord.make("local:|foxs:|station:|slot:/TPE/B1/ELEV/EL/R2F/NA/ELEV1/N1|bql:select name, displayName, out, out.value, slotPath, parent.name as 'device_number' from control:ControlPoint where name = 'CP' or name = 'RD' or name = 'DS' or name = 'ST' or name = 'LOAD' or name = 'MID' or name = 'HAND' or name = 'IND' or name = 'MD' or name = 'DNO'").get()
|
||||
baja.Ord.make("local:|foxs:|station:|slot:/TPE/B1/ELEV/EL/R2F/NA/ELEV1/N1").get()
|
||||
.then(function (table) {
|
||||
});
|
||||
});
|
||||
|
||||
})
|
||||
|
||||
// 電梯管理 Modal 設備 設定點位(BAJA)
|
||||
onEvent("change", "#eleManDevTable input:checkbox", function () {
|
||||
debugger
|
||||
let devNum = $("#detDevDiv").data("devnum");
|
||||
let point = $(this).data("point");
|
||||
let val = $(this).val();
|
||||
let devNumPath = devNum?.split("_").join("/");
|
||||
require(['baja!'], function (baja) {
|
||||
baja.Ord.make(`local:|foxs:|station:|slot:${devNumPath}`).get()
|
||||
.then(function (dev) {
|
||||
dev.set({
|
||||
slot: point,
|
||||
value:val == "on"? true : false,
|
||||
})
|
||||
});
|
||||
});
|
||||
|
||||
})
|
||||
|
||||
// 切換 modal 內 div 頁面
|
||||
function modalTogDiv(modal, div1, div2, type = "next", callback = null) {
|
||||
$(modal).find(div1).parent("div").css("overflow", "hidden");
|
||||
|
@ -2560,6 +2560,10 @@ License: You must have a valid license purchased only from wrapbootstrap.com (li
|
||||
location.href = "login.html";
|
||||
}
|
||||
|
||||
if (location.href.indexOf("ord") != -1) {
|
||||
location.href = "/file/index.html"
|
||||
}
|
||||
|
||||
$(function () {
|
||||
// 二次引用 jquery.js
|
||||
// - 在 require 內部程序需要引用 jquery,由於 require 的套件需要依賴 jquery ,就算 HTML 已經引用 jquery, require 也無法參考
|
||||
|
@ -1,6 +1,9 @@
|
||||
let baja_subscribe_device_callback_func; //設定BQL訂閱之後要回傳的Function
|
||||
let baja_my_user_account_func; //取得帳號資料要回傳的Function
|
||||
var ordPath; //當前點選選單的tag,用來抓出設備路徑,例如:旅館棟->H,消防偵煙器->F3
|
||||
window.tolSubList = [];
|
||||
|
||||
var user_name = "";
|
||||
function subscriptionDevices() {
|
||||
// 用BQL的方式去訂閱
|
||||
this.setSubscribeDevicesByBql = function (tempOrdPath) {
|
||||
@ -13,6 +16,16 @@ function subscriptionDevices() {
|
||||
baja_subscribe_device_callback_func = callBackFunc;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
function MyBaja() {
|
||||
// 取得使用者帳號
|
||||
this.setMyUserAccount = function (callBackFunc) {
|
||||
if (callBackFunc != undefined && callBackFunc != null) {
|
||||
baja_my_user_account_func = callBackFunc;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
/**
|
||||
@ -270,7 +283,12 @@ function getElevatorInfoByBaja(path, callback) {
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
require(['baja!'], function (baja) {
|
||||
user_name = baja.getUserName();
|
||||
if (baja_my_user_account_func != undefined && baja_my_user_account_func != null) {
|
||||
baja_my_user_account_func(user_name);
|
||||
}
|
||||
});
|
||||
|
||||
// baja.Ord.make('ip:greencloud.fic.com.tw|foxs:|station:|slot:/Arena/H/F3|bql:select name, displayname, slotPath, out.value, out from control:ControlPoint')
|
||||
// // baja.Ord.make('ip:greencloud.fic.com.tw|foxs:|station:|slot:/Arena/H/E1/B1F/TestData/H_E1_B1F_TestData_Data|bql:select slotPath,out.value from control:NumericWritable')
|
||||
|
@ -69,23 +69,62 @@
|
||||
<source src="media/video/cc.mp4" type="video/mp4">
|
||||
</video>
|
||||
<!--Base JS-->
|
||||
<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js'></script>
|
||||
<!--<script src='https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js'></script>-->
|
||||
<script src="lib/vendors.bundle.js"></script>
|
||||
<script src="lib/app.bundle.js"></script>
|
||||
<!-- JQuery Validate -->
|
||||
<script src="lib/jquery-validation/dist/jquery.validate.js"></script>
|
||||
<!--<script src="lib/jquery-validation/dist/jquery.validate.js"></script>
|
||||
<script src="lib/jquery-validation/dist/additional-methods.min.js"></script>
|
||||
<script src="lib/jquery-validation/dist/localization/messages_zh_TW.js"></script>
|
||||
<script src="lib/notifications/sweetalert2/sweetalert2.bundle.js"></script>
|
||||
<script src="lib/notifications/sweetalert2/sweetalert2.bundle.js"></script>-->
|
||||
<script src="lib/notifications/toastr/toastr.min.js"></script>
|
||||
<script src="js/toast.js"></script>
|
||||
<script src="js/init.js"></script>
|
||||
|
||||
|
||||
<!--Bajascript-->
|
||||
<script src="js/bajascript/bscriptReq.js"></script>
|
||||
<!--<script type='text/javascript' src='/module/js/com/tridium/js/ext/require/require.min.js?version=1496767636459'></script>-->
|
||||
<script src='js/bajascript/require.js'></script>
|
||||
|
||||
<script src="js/n4js/bajatest.js"></script>
|
||||
<script src="js/bajascript/require.config.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
<script>
|
||||
var remember = false;
|
||||
var myBaja = null;
|
||||
$(function () {
|
||||
require(["jquery"], loadedBasePack);
|
||||
});
|
||||
/**
|
||||
* jquery.js 二次引用後 Callback,載入第三方套件
|
||||
* */
|
||||
function loadedBasePack() {
|
||||
require(
|
||||
[
|
||||
"lib/app.bundle",
|
||||
"lib/app.menu",
|
||||
"lib/jquery-validation/dist/jquery.validate",
|
||||
"lib/jquery-validation/dist/additional-methods.min",
|
||||
"lib/jquery-validation/dist/localization/messages_zh_TW",
|
||||
/*"lib/notifications/sweetalert2/sweetalert2.bundle",*/
|
||||
], loadedMasterPack);
|
||||
}
|
||||
/**
|
||||
* 第三方套件引用後 Callback,載入額外套件
|
||||
* */
|
||||
function loadedMasterPack() {
|
||||
require(
|
||||
[
|
||||
"init",
|
||||
|
||||
] ,loadedJsPack);
|
||||
}
|
||||
|
||||
function loadedJsPack() {
|
||||
myBaja = new MyBaja();
|
||||
myBaja.setMyUserAccount(Login)
|
||||
|
||||
if (localStorage.getItem('taipei-t') == 'true') {
|
||||
document.getElementById("rememberme").checked = true;
|
||||
remember = true;
|
||||
@ -95,8 +134,37 @@
|
||||
else {
|
||||
document.getElementById("rememberme").checked = false;
|
||||
}
|
||||
|
||||
var loginValidate = $("#login-form").validate({
|
||||
rules: {
|
||||
account: {
|
||||
required: true,
|
||||
maxlength: 50,
|
||||
filterspace: true
|
||||
},
|
||||
password: {
|
||||
required: true,
|
||||
maxlength: 50,
|
||||
filterspace: true
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
//驗證是否為空白
|
||||
jQuery.validator.addMethod("filterspace", function (value, element) {
|
||||
var str = value;
|
||||
var result = false;
|
||||
if (str.length > 0) {
|
||||
if ($.trim(str) != '') {
|
||||
result = true;
|
||||
}
|
||||
else {
|
||||
result = false;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}, "不可填入空白");
|
||||
|
||||
$("#rememberme").click(function () {
|
||||
if (remember) {
|
||||
localStorage.setItem('taipei-t', 'false');
|
||||
@ -126,57 +194,26 @@
|
||||
localStorage.removeItem('taipei-p');
|
||||
}
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
//#region 登入表單驗證
|
||||
var loginValidate = $("#login-form").validate({
|
||||
rules: {
|
||||
account: {
|
||||
required: true,
|
||||
maxlength: 50,
|
||||
filterspace: true
|
||||
},
|
||||
password: {
|
||||
required: true,
|
||||
maxlength: 50,
|
||||
filterspace: true
|
||||
}
|
||||
}
|
||||
});
|
||||
function Login(account) {
|
||||
|
||||
//驗證是否為空白
|
||||
jQuery.validator.addMethod("filterspace", function (value, element) {
|
||||
var str = value;
|
||||
var result = false;
|
||||
if (str.length > 0) {
|
||||
if ($.trim(str) != '') {
|
||||
result = true;
|
||||
}
|
||||
else {
|
||||
result = false;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}, "不可填入空白");
|
||||
//#endregion
|
||||
|
||||
function Login(e) {
|
||||
e.preventDefault();
|
||||
if ($("#login-form").valid()) {
|
||||
console.log(account)
|
||||
/*if ($("#login-form").valid()) {*/
|
||||
var url = baseApiUrl + "/api/Login/";
|
||||
var send_data = {
|
||||
account: "admin",
|
||||
password: "123456"
|
||||
account: account,
|
||||
password: "rJ2T5Kkj"
|
||||
}
|
||||
$.ajax({
|
||||
method: "post",
|
||||
url: url,
|
||||
data: JSON.stringify(send_data),
|
||||
async: false,
|
||||
contentType:"application/json; charset=UTF-8",
|
||||
contentType: "application/json; charset=UTF-8",
|
||||
dataType: 'json',
|
||||
success: function (rel) {
|
||||
console.log(rel)
|
||||
|
||||
//rel = JSON.stringify(rel);
|
||||
if (rel.code != "0000") {
|
||||
toast_error(rel.msg || "系統內部發生錯誤,請聯絡系統管理員");
|
||||
@ -190,10 +227,21 @@
|
||||
}
|
||||
},
|
||||
error: function (xhr, textStatus, thrownError) {
|
||||
toast_error(textStatus);
|
||||
alert(textStatus);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<script type="text/javascript">
|
||||
//#region 登入表單驗證
|
||||
|
||||
//#endregion
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user