Przeglądaj źródła

新增账号密码登录

wangtao 3 lat temu
rodzic
commit
f5a21eeb7c

+ 190 - 0
src/components/loadingSZ/index.vue

@@ -0,0 +1,190 @@
+<template>
+    <div id="loader-wrapper">
+        <div id="loader"></div>
+        <div class="loader-section section-left"></div>
+        <div class="loader-section section-right"></div>
+        <div class="load_title">资源加载中...</div>
+    </div>
+</template>
+<script>
+export default {
+  data() {
+    return {};
+  },
+
+  mounted() {},
+  methods: {},
+};
+</script>
+
+<style lang="scss" scoped>
+
+        #loader-wrapper {
+            position: fixed;
+            top: 0;
+            left: 0;
+            width: 100%;
+            height: 100%;
+            z-index: 999999;
+        }
+        
+        #loader {
+            display: block;
+            position: relative;
+            left: 50%;
+            top: 40%;
+            width: 50px;
+            height: 50px;
+            margin: -25px 0 0 -25px;
+            border-radius: 50%;
+            border: 3px solid transparent;
+            border-top-color: #FFF;
+            -webkit-animation: spin 2s linear infinite;
+            -ms-animation: spin 2s linear infinite;
+            -moz-animation: spin 2s linear infinite;
+            -o-animation: spin 2s linear infinite;
+            animation: spin 2s linear infinite;
+            z-index: 1001;
+        }
+        
+        #loader:before {
+            content: "";
+            position: absolute;
+            top: 5px;
+            left: 5px;
+            right: 5px;
+            bottom: 5px;
+            border-radius: 50%;
+            border: 3px solid transparent;
+            border-top-color: #FFF;
+            -webkit-animation: spin 3s linear infinite;
+            -moz-animation: spin 3s linear infinite;
+            -o-animation: spin 3s linear infinite;
+            -ms-animation: spin 3s linear infinite;
+            animation: spin 3s linear infinite;
+        }
+        
+        #loader:after {
+            content: "";
+            position: absolute;
+            top: 15px;
+            left: 15px;
+            right: 15px;
+            bottom: 15px;
+            border-radius: 50%;
+            border: 3px solid transparent;
+            border-top-color: #FFF;
+            -moz-animation: spin 1.5s linear infinite;
+            -o-animation: spin 1.5s linear infinite;
+            -ms-animation: spin 1.5s linear infinite;
+            -webkit-animation: spin 1.5s linear infinite;
+            animation: spin 1.5s linear infinite;
+        }
+        
+        @-webkit-keyframes spin {
+            0% {
+                -webkit-transform: rotate(0deg);
+                -ms-transform: rotate(0deg);
+                transform: rotate(0deg);
+            }
+            100% {
+                -webkit-transform: rotate(360deg);
+                -ms-transform: rotate(360deg);
+                transform: rotate(360deg);
+            }
+        }
+        
+        @keyframes spin {
+            0% {
+                -webkit-transform: rotate(0deg);
+                -ms-transform: rotate(0deg);
+                transform: rotate(0deg);
+            }
+            100% {
+                -webkit-transform: rotate(360deg);
+                -ms-transform: rotate(360deg);
+                transform: rotate(360deg);
+            }
+        }
+        
+        #loader-wrapper .loader-section {
+            position: fixed;
+            top: 0;
+            width: 51%;
+            height: 100%;
+            background: #ccc;
+            z-index: 1000;
+            -webkit-transform: translateX(0);
+            -ms-transform: translateX(0);
+            transform: translateX(0);
+        }
+        
+        #loader-wrapper .loader-section.section-left {
+            left: 0;
+        }
+        
+        #loader-wrapper .loader-section.section-right {
+            right: 0;
+        }
+        
+        .loaded #loader-wrapper .loader-section.section-left {
+            -webkit-transform: translateX(-100%);
+            -ms-transform: translateX(-100%);
+            transform: translateX(-100%);
+            -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+            transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+        }
+        
+        .loaded #loader-wrapper .loader-section.section-right {
+            -webkit-transform: translateX(100%);
+            -ms-transform: translateX(100%);
+            transform: translateX(100%);
+            -webkit-transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+            transition: all 0.7s 0.3s cubic-bezier(0.645, 0.045, 0.355, 1.000);
+        }
+        
+        .loaded #loader {
+            opacity: 0;
+            -webkit-transition: all 0.3s ease-out;
+            transition: all 0.3s ease-out;
+        }
+        
+        .loaded #loader-wrapper {
+            visibility: hidden;
+            -webkit-transform: translateY(-100%);
+            -ms-transform: translateY(-100%);
+            transform: translateY(-100%);
+            -webkit-transition: all 0.3s 1s ease-out;
+            transition: all 0.3s 1s ease-out;
+        }
+        
+        .no-js #loader-wrapper {
+            display: none;
+        }
+        
+        .no-js h1 {
+            color: #222222;
+        }
+        
+        #loader-wrapper .load_title {
+            font-family: 'Open Sans';
+            color: #FFF;
+            font-size: 19px;
+            width: 100%;
+            text-align: center;
+            z-index: 9999999999999;
+            position: absolute;
+            top: 50%;
+            opacity: 1;
+            line-height: 30px;
+        }
+        
+        #loader-wrapper .load_title span {
+            font-weight: normal;
+            font-style: italic;
+            font-size: 13px;
+            color: #FFF;
+            opacity: 0.5;
+        }
+
+</style>

+ 0 - 1
src/components/record/restaurant/index.vue

@@ -71,7 +71,6 @@ export default {
         {name:"未营业",num:0},
         {name:"未营业",num:0},
       ]
-      // this.num = [0,0]
       this.tapNo = true
     }
     if(getWeekDate() == "周六" || getWeekDate() == "周日"){

+ 1 - 1
src/components/weather/index.vue

@@ -57,7 +57,7 @@ export default {
     initData() {
       axios({
             method: 'get',
-            url: 'http://172.16.120.213:8085/aliWeather?area=广西',
+            url: 'https://smartpark.caih.com/dxapi/aliWeather?area=广西',
             
             timeout: 3000,
         }).then(res =>{

+ 9 - 3
src/router/index.js

@@ -5,11 +5,17 @@ Vue.use(VueRouter)
 
 const routes = [
 
+    {
+        path: '/login', //登录页
+        name: 'Login',
+        component: () =>
+            import ( /* webpackChunkName: "about" */ '../views/login')
+    },
     // {
-    //     path: '/', //登录页
-    //     name: 'Login',
+    //     path: '/', //
+    //     name: 'index',
     //     component: () =>
-    //         import ( /* webpackChunkName: "about" */ '../views/login')
+    //         import ( /* webpackChunkName: "about" */ '../views/index')
     // },
     {
         path: '/', //首页

+ 26 - 5
src/views/index/index.vue

@@ -1,12 +1,15 @@
 <template>
-  <div class="mianBox" v-if="loadingErp">
+  <div class="mianBox" >
     <van-row class="headerBox">
       运营中心
     </van-row>
-    <van-row class="contentBox">
+    <van-row class="contentBox" v-if="loadingErp">
       <weather alt="天气" />
       <record alt="记录" />
     </van-row>
+    <van-row class="mask" v-if="!loadingErp">
+      <loadingSZ />
+    </van-row>
   </div>
 </template>
 
@@ -17,14 +20,16 @@ import Cookies from "js-cookie";
 import { encrypt, encrypt2, decrypt } from "../../utils/jsencrypt";
 import weather from "@/components/weather";
 import record from "@/components/record";
+import loadingSZ from "@/components/loadingSZ";
 export default {
   components: {
     weather,
     record,
+    loadingSZ
   },
   data() {
     return {
-      loadingErp:true
+      loadingErp:false
     };
   },
   created() {
@@ -37,6 +42,10 @@ export default {
         //console.log("app进入")
         Toast(this.getQueryVariable("无token传入!"));
       }
+    }else if(Cookies.get("token58")){
+      this.userQuery()
+    }else{
+      this.$router.push({ path: "/login"})
     }
   },
   mounted() {},
@@ -53,18 +62,24 @@ export default {
     },
     //用户查询
     userQuery(){
+      let token = undefined
+      if(this.getQueryVariable("token")){
+        token = this.getQueryVariable("token")
+      }else{
+        token = Cookies.get("token58")
+      }
       axios({//查询信息
         method: 'get',
-        url: 'https://smartpark.caih.com/zkxt/api/thirdparty/v1/user/getZkUserByCipher?cipher=' + this.getQueryVariable("token"),
+        url: 'https://smartpark.caih.com/zkxt/api/thirdparty/v1/user/getZkUserByCipher?cipher=' + token,
         timeout: 10000,
       }).then(res =>{
         if(res.data?.data?.id){
           this.loadingErp = true
         }
       }).catch(err =>{
-        
         this.loadingErp = false
         this.userNoAlert()
+        this.$router.push({ path: "/login"})
       });
     },
     userNoAlert(){
@@ -79,6 +94,12 @@ html,
 body {
   color: #fff;
 }
+.mask{
+  width:100%;
+  height:100%;
+  position: fixed;
+  z-index: 1;
+}
 .mianBox {
   height: 100%;
   width: 100%;

+ 24 - 97
src/views/login/index.vue

@@ -99,65 +99,27 @@ export default {
     };
   },
   mounted() {
-    document.title = '中国东信智慧园区'
-    Cookies.set("openid57",'o5P6I5tLj-TjrK7leWUT8EFmTCa4')
-    if(Cookies.get('rememberMe57')){
-      this.loginForm.rememberMe = Boolean(Cookies.get('rememberMe57'))
+    if(Cookies.get('rememberMe58')){
+      this.loginForm.rememberMe = Boolean(Cookies.get('rememberMe58'))
     }
-    if(Cookies.get("username57")){
-      this.loginForm.username = Cookies.get("username57")
+    if(Cookies.get("username58")){
+      this.loginForm.username = Cookies.get("username58")
     }
-    if(Cookies.get("password57")){
-      this.loginForm.password = decrypt(Cookies.get("password57"))
+    if(Cookies.get("password58")){
+      this.loginForm.password = decrypt(Cookies.get("password58"))
     }
-    if(Cookies.get("openid57")){
-      if(Cookies.get("username57") && Cookies.get("password57")){
-        this.login_info()
-        this.login = false
-      }else{
-        this.login = true
-      }
+    if(Cookies.get("username58") && Cookies.get("password58")){
+      this.loginForm.username = Cookies.get("username58")
+      this.loginForm.password = decrypt(Cookies.get("password58"))
+      this.login = false
+      this.login_info()
     }else{
       this.login = true
-      let url = window.location.href
-      if(url.indexOf("?code")>0){
-        let code = this.getRequest("code")
-        this.wx_openid(code)
-      }else{
-        this.wx_login()
-      }
     }
     
   },
   methods: {
-    //获取url指定参数
-    getRequest(parName){
-       var str=parName.toLowerCase()+"=";
-       var gvalue="";
-       var HREF=location.href;
-       var upperHREF=location.href.toLowerCase();
-       if(upperHREF.indexOf(str)>0) {
-         gvalue=HREF.substring(upperHREF.indexOf(str)+str.length,upperHREF.length);
-         if(gvalue.indexOf('&')>0)gvalue=gvalue.substring(0,gvalue.indexOf('&'));
-         if(gvalue.indexOf("#")>0)gvalue=gvalue.split("#")[0];
-         gvalue  =  decodeURIComponent(gvalue)
-       }
-       return gvalue;
-     },
-    wx_login(){//微信拉起授权获取code
-      window.location.href = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxd64360a4b8c50006&redirect_uri=https://smartpark.caih.com/vuepay&response_type=code&scope=snsapi_base&state=123`
-      //获取openid
-      //https://api.weixin.qq.com/sns/oauth2/access_token?appid=wxd64360a4b8c50006&secret=b758e45c89162542610509dafd9db7c3&code=021Ye8Ha1jvNXC0ckiJa1JtKPF2Ye8Hp&grant_type=authorization_code
-    },
-    wx_openid(code){//获取openid
-      axios.get('/offOpenId' + '?code=' + code, {
-        code:code
-      }).then(res => {
-        if(res.data.data){
-          Cookies.set("openid57",res.data.data)
-        }
-      })
-    },
+
     eyeTab(){//密码显示开关
       if(this.passwordtxt == "password"){
         this.passwordtxt = "text"
@@ -165,16 +127,10 @@ export default {
         this.passwordtxt = "password"
       }
     },
-    // getCode() {//获取验证码
-    //   getCodeImg().then(res => {
-    //     this.codeUrl = "data:image/gif;base64," + res.data.img;
-    //     this.loginForm.uuid = res.data.uuid;
-    //   });
-    // },
     getCookie() {//缓存数据
-      const username = Cookies.get("username57");
-      const password = Cookies.get("password57");
-      const rememberMe = Cookies.get('rememberMe57')
+      const username = Cookies.get("username58");
+      const password = Cookies.get("password58");
+      const rememberMe = Cookies.get('rememberMe58')
       this.loginForm = {
         username: username === undefined ? this.loginForm.username : username,
         password: password === undefined ? this.loginForm.password : decrypt(password),
@@ -182,7 +138,7 @@ export default {
       };
     },
     login_info() {
-      if(Cookies.get("openid57") && Cookies.get("username57") && Cookies.get("password57")){
+      if(Cookies.get("username58") && Cookies.get("password58")){
         this.$router.push({ path: "/index"})
       }else{
         this.$refs.loginForm.validate(valid => {
@@ -194,25 +150,10 @@ export default {
               //人员种类(00-正式人员、01-外协单位、02-租户)
               if(data.user.dmUser.type == "00"){
                 //Toast('请使用"中国东信APP查看功能"')
-                  localStorage.setItem("cipher57",data.cipher)
-                  localStorage.setItem("classify","1")
-                  Cookies.set("username57", this.loginForm.username, { expires: 300 });
-                  Cookies.set("rememberMe57", this.loginForm.rememberMe, { expires: 300 });
-                  Cookies.set("password57", encrypt(this.loginForm.password), { expires: 300 });
-                  Cookies.set("portrait57", data.user.dmUser.faceid, { expires: 300 });
-                  Cookies.set("userId57", data.userId, { expires: 300 });
-                  Cookies.set("token57", data.token, { expires: 300 });
-                  Cookies.set("nonce57", data.nonce, { expires: 300 });
-                  Cookies.set("timestamp57", data.timestamp, { expires: 300 });
-                  Cookies.set("nickName57", data.user.nickName, { expires: 300 });
-                  Cookies.set("dept57", data.user.dept.name, { expires: 300 });
-                  Cookies.set("phone57", data.user.dmUser.contacts, { expires: 300 });
-                  Cookies.set("people57", 0, { expires: 300 });
-                
-                  axios.put('/dxtop/staff', {
-                    id:data.userId,
-                    openId:Cookies.get("openid57")
-                  })
+                  Cookies.set("username58", this.loginForm.username, { expires: 300 });
+                  Cookies.set("rememberMe58", this.loginForm.rememberMe, { expires: 300 });
+                  Cookies.set("password58", encrypt(this.loginForm.password), { expires: 300 });
+                  Cookies.set("token58", data.cipher, { expires: 300 });
                   this.$router.push({ path: "/index"})
 
               }else if(data.user.dmUser.type == "01"){
@@ -220,24 +161,10 @@ export default {
                   Toast("离职人员,暂无权限")
                   return
                 }else{
-                  localStorage.setItem("cipher57",data.cipher)
-                  localStorage.setItem("classify","1")
-                  Cookies.set("username57", this.loginForm.username, { expires: 300 });
-                  Cookies.set("rememberMe57", this.loginForm.rememberMe, { expires: 300 });
-                  Cookies.set("password57", encrypt(this.loginForm.password), { expires: 300 });
-                  Cookies.set("portrait57", data.user.dmUser.faceid, { expires: 300 });
-                  Cookies.set("userId57", data.userId, { expires: 300 });
-                  Cookies.set("token57", data.token, { expires: 300 });
-                  Cookies.set("nonce57", data.nonce, { expires: 300 });
-                  Cookies.set("timestamp57", data.timestamp, { expires: 300 });
-                  Cookies.set("nickName57", data.user.nickName, { expires: 300 });
-                  Cookies.set("dept57", data.user.dept.name, { expires: 300 });
-                  Cookies.set("phone57", data.user.dmUser.contacts, { expires: 300 });
-                  Cookies.set("people57", 1, { expires: 300 });
-                  axios.put('/dxtop/staff', {
-                    id:data.userId,
-                    openId:Cookies.get("openid57")
-                  })
+                  Cookies.set("username58", this.loginForm.username, { expires: 300 });
+                  Cookies.set("rememberMe58", this.loginForm.rememberMe, { expires: 300 });
+                  Cookies.set("password58", encrypt(this.loginForm.password), { expires: 300 });
+                  Cookies.set("token58", data.token, { expires: 300 });
                   this.$router.push({ path: "/index"})
                 }
               }else if(data.user.dmUser.type == "02"){