|
@@ -0,0 +1,162 @@
|
|
|
|
|
+<!DOCTYPE html>
|
|
|
|
|
+<html lang="en">
|
|
|
|
|
+ <head>
|
|
|
|
|
+ <meta charset="utf-8" />
|
|
|
|
|
+ <meta
|
|
|
|
|
+ name="viewport"
|
|
|
|
|
+ content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
|
|
|
|
|
+ />
|
|
|
|
|
+ </head>
|
|
|
|
|
+
|
|
|
|
|
+ <body>
|
|
|
|
|
+ <div id="app1" class="container">
|
|
|
|
|
+ <div style="margin-top: 30px">
|
|
|
|
|
+ <h1>登录中</h1>
|
|
|
|
|
+ <p>{{ message }}</p>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <script
|
|
|
|
|
+ type="text/javascript"
|
|
|
|
|
+ src="/static/jquery/dist/jquery.min.js"
|
|
|
|
|
+ ></script>
|
|
|
|
|
+ <script
|
|
|
|
|
+ type="text/javascript"
|
|
|
|
|
+ src="/static/vue/dist/vue.global.prod.js"
|
|
|
|
|
+ ></script>
|
|
|
|
|
+ <script>
|
|
|
|
|
+ Vue.createApp({
|
|
|
|
|
+ data: function () {
|
|
|
|
|
+ return {
|
|
|
|
|
+ userId: undefined, //用户ID
|
|
|
|
|
+ clientId: undefined, //公司ID
|
|
|
|
|
+ userName: undefined, //用户姓名
|
|
|
|
|
+ checkCode: undefined, // 校验码
|
|
|
|
|
+ loginDateMs: undefined, //当前登录时间
|
|
|
|
|
+ message: "正在检查您的权限,请稍等...",
|
|
|
|
|
+ urlRoot: "",
|
|
|
|
|
+ };
|
|
|
|
|
+ },
|
|
|
|
|
+ mounted: function () {
|
|
|
|
|
+ this.urlRoot = this.getRootPath() + "/";
|
|
|
|
|
+ this.getParams();
|
|
|
|
|
+ },
|
|
|
|
|
+ methods: {
|
|
|
|
|
+ // 获取参数后登录
|
|
|
|
|
+ getParams: function () {
|
|
|
|
|
+ var _self = this;
|
|
|
|
|
+ const url = window.location.href
|
|
|
|
|
+ const params = _self.getQueryString(url)
|
|
|
|
|
+ _self.userId = params.userId;
|
|
|
|
|
+ _self.userName = params.userName;
|
|
|
|
|
+ _self.clientId = params.clientId;
|
|
|
|
|
+ _self.checkCode = params.checkCode;
|
|
|
|
|
+ _self.loginDateMs = params.loginDateMs;
|
|
|
|
|
+ this.azureSamlLogin();
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 单点登录
|
|
|
|
|
+ azureSamlLogin: function () {
|
|
|
|
|
+ let _self = this;
|
|
|
|
|
+ var loginData = {
|
|
|
|
|
+ userId: _self.userId,
|
|
|
|
|
+ userName: _self.userName,
|
|
|
|
|
+ clientId: _self.clientId,
|
|
|
|
|
+ checkCode: _self.checkCode,
|
|
|
|
|
+ loginDateMs: _self.loginDateMs,
|
|
|
|
|
+ };
|
|
|
|
|
+ $.ajax({
|
|
|
|
|
+ url: "authApi/LoginResource/loginPoint",
|
|
|
|
|
+ type: "post",
|
|
|
|
|
+ data: loginData,
|
|
|
|
|
+ success: function (loginInfo) {
|
|
|
|
|
+ if (loginInfo.errorCode == 0) {
|
|
|
|
|
+ _self.setTokenClient();
|
|
|
|
|
+ _self.setLoginInfo(loginInfo.data);
|
|
|
|
|
+ } else {
|
|
|
|
|
+ _self.message = loginInfo.errorMessage;
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {},
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ // 设置LoginInfo
|
|
|
|
|
+ setLoginInfo: function (loginInfo) {
|
|
|
|
|
+ var _self = this;
|
|
|
|
|
+ _self.clearLocalStorage();
|
|
|
|
|
+ localStorage.setItem("#token", loginInfo.token);
|
|
|
|
|
+ localStorage.setItem("#accountId", loginInfo.accountId);
|
|
|
|
|
+ localStorage.setItem("#LoginInfo", JSON.stringify(loginInfo));
|
|
|
|
|
+ window.location.href = _self.urlRoot + "#/desktop/dashboard";
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 获取参数函数
|
|
|
|
|
+ getQueryString: function (url) {
|
|
|
|
|
+ let urlStr = url.split("?")[1];
|
|
|
|
|
+ const urlSearchParams = new URLSearchParams(urlStr);
|
|
|
|
|
+ const result = Object.fromEntries(urlSearchParams.entries());
|
|
|
|
|
+ return result;
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 获取主机地址
|
|
|
|
|
+ getRootPath: function () {
|
|
|
|
|
+ var protocol = window.location.protocol;
|
|
|
|
|
+ var host = window.location.host;
|
|
|
|
|
+ var localhostPath = protocol + "//" + host;
|
|
|
|
|
+ return localhostPath;
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 设置TokenClient
|
|
|
|
|
+ setTokenClient: function () {
|
|
|
|
|
+ var _self = this;
|
|
|
|
|
+ $.ajax({
|
|
|
|
|
+ url: "TokenClientResource/saveTokenClient",
|
|
|
|
|
+ type: "post",
|
|
|
|
|
+ contentType: "application/json",
|
|
|
|
|
+ beforeSend: function (request) {
|
|
|
|
|
+ var token = localStorage.getItem("#token");
|
|
|
|
|
+ var account = localStorage.getItem("#accountId");
|
|
|
|
|
+ request.setRequestHeader("account", account);
|
|
|
|
|
+ request.setRequestHeader("token", token);
|
|
|
|
|
+ },
|
|
|
|
|
+ success: function (data) {},
|
|
|
|
|
+ error: function (XMLHttpRequest, textStatus, errorThrown) {},
|
|
|
|
|
+ });
|
|
|
|
|
+ },
|
|
|
|
|
+ // 清理localStorage
|
|
|
|
|
+ clearLocalStorage: function () {
|
|
|
|
|
+ // 需要保留的参数列表
|
|
|
|
|
+ var reserveParams = [
|
|
|
|
|
+ "hostPageBaseURL",
|
|
|
|
|
+ "workShopId",
|
|
|
|
|
+ "resourceInstanceId",
|
|
|
|
|
+ "resourceInstanceName",
|
|
|
|
|
+ "apsBaseUrl",
|
|
|
|
|
+ "cameraBaseURL",
|
|
|
|
|
+ ];
|
|
|
|
|
+ //存放的信息
|
|
|
|
|
+ var reserveParamValues = [];
|
|
|
|
|
+
|
|
|
|
|
+ //获取参数信息
|
|
|
|
|
+ var len = reserveParams.length;
|
|
|
|
|
+ for (let i = 0; i < len; i++) {
|
|
|
|
|
+ var reserveParam = reserveParams[i];
|
|
|
|
|
+ var reserveParamValue = "";
|
|
|
|
|
+ if (localStorage.getItem(reserveParam) != undefined) {
|
|
|
|
|
+ reserveParamValue = localStorage.getItem(reserveParam);
|
|
|
|
|
+ }
|
|
|
|
|
+ reserveParamValues.push(reserveParamValue);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ //清理localStorage
|
|
|
|
|
+ window.localStorage.clear();
|
|
|
|
|
+
|
|
|
|
|
+ //还原参数信息
|
|
|
|
|
+ for (let i = 0; i < len; i++) {
|
|
|
|
|
+ localStorage.setItem(reserveParams[i], reserveParamValues[i]);
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ },
|
|
|
|
|
+ }).mount("#app1");
|
|
|
|
|
+ </script>
|
|
|
|
|
+ </body>
|
|
|
|
|
+</html>
|