Quellcode durchsuchen

Merge branch 'master' of ssh://172.16.23.188:9022/tian-group/skyeye-admin-fe

louhangfei vor 2 Jahren
Ursprung
Commit
3f7b708e66

+ 3 - 0
.env

@@ -9,3 +9,6 @@ VITE_GLOB_APP_SHORT_NAME = SkyeyeAdmin
 
 # 生产环境 开启mock
 VITE_GLOB_PROD_MOCK = false
+
+# App Download QrCode Url
+VITE_GLOB_APP_DOWNLOAD_QRCODE = http://192.168.1.102/apk/skyeye2.apk

+ 4 - 1
src/layout/components/Header/QRcodePopover.vue

@@ -24,7 +24,8 @@
         <img src="@/assets/images/Android.png" style="width: 16px; height: 19px" />
         <div class="QR-text" style="font-size: 14px; padding-left: 5px">Android客户端</div>
       </div>
-      <img src="@/assets/images/QRcodeExample.png" style="width: 140px" />
+      <!-- <img src="@/assets/images/QRcodeExample.png" style="width: 140px" /> -->
+      <QrCode :value="qrCodeUrl" :width="140" />
       <el-button
         style="width: 102px; background-color: rgb(24, 144, 255); border: none"
         type="primary"
@@ -36,6 +37,8 @@
 
 <script lang="ts" setup>
   // import { Download } from '@element-plus/icons-vue';
+  import { QrCode } from '@/components/Qrcode/index';
+  const qrCodeUrl = import.meta.env.VITE_GLOB_APP_DOWNLOAD_QRCODE;
 </script>
 
 <style scoped lang="scss">

+ 8 - 4
src/layout/components/Header/index.vue

@@ -116,10 +116,10 @@
       <div class="layout-header-trigger layout-header-trigger-min">
         <el-dropdown trigger="hover" @command="avatarSelect">
           <div class="flex items-center">
-            <!-- <div class="avatar">
-              <el-avatar round :src="schoolboy" />
-            </div> -->
-            <img src="@/assets/images/chongqing-icon.png" />
+            <div class="avatar">
+              <el-avatar round :src="getUserAvata || schoolboy" />
+            </div>
+            <!-- <img src="@/assets/images/chongqing-icon.png" /> -->
             <h4 class="username">{{ getUsername }}</h4>
             <!-- <el-divider direction="vertical" /> -->
             <!-- <h4 class="mr-1 username">{{ getTenantName }}</h4> -->
@@ -261,6 +261,10 @@
 
   const crumbsSetting = getCrumbsSetting;
 
+  const getUserAvata = computed(() => {
+    return userStore.getUserInfo.avatar;
+  });
+
   const getUsername = computed(() => {
     return userStore.getUserInfo.username;
   });

+ 31 - 22
src/views/login/LoginForm2.vue

@@ -160,12 +160,12 @@
   const LOGIN_NAME = PageEnum.BASE_LOGIN_NAME;
 
   const tenantOptions = ref<{ tenantCode: string; tenantId: number; tenantName: string }[]>([]);
-  const tenantAccounts = [
-    // { username: 'bj', password: '123456' },
-    // { username: 'sz', password: '123456' },
-    // { username: 'gz', password: '123456' },
-    // { username: 'sh', password: '123456' },
-  ];
+  // const tenantAccounts = [
+  // { username: 'bj', password: '123456' },
+  // { username: 'sz', password: '123456' },
+  // { username: 'gz', password: '123456' },
+  // { username: 'sh', password: '123456' },
+  // ];
 
   const formInline = reactive({
     username: '',
@@ -186,15 +186,15 @@
   const router = useRouter();
   const route = useRoute();
 
-  function tenantIdChange() {
-    const tenantId = formInline.tenantId;
-    const index = tenantOptions.value.findIndex((item) => item.tenantId === tenantId);
-    if (index >= 0) {
-      const info = tenantAccounts[index];
-      formInline.username = info.username;
-      formInline.password = info.password;
-    }
-  }
+  // function tenantIdChange() {
+  //   const tenantId = formInline.tenantId;
+  //   const index = tenantOptions.value.findIndex((item) => item.tenantId === tenantId);
+  //   if (index >= 0) {
+  //     const info = tenantAccounts[index];
+  //     formInline.username = info.username;
+  //     formInline.password = info.password;
+  //   }
+  // }
 
   function getTentantList() {
     tentantList().then((res) => {
@@ -236,14 +236,22 @@
           const { code, msg } = await userStore.login(params);
           if (code == ResultEnum.SUCCESS) {
             const toPath = decodeURIComponent((route.query?.redirect || '/') as string);
-            ElMessage.success('登录成功,即将进入系统');
+            ElMessage({
+              message: '登录成功,即将进入系统',
+              type: 'success',
+              offset: 100,
+            });
             if (route.name === LOGIN_NAME) {
               router.replace('/');
             } else router.replace(toPath);
           } else {
             formInline.verCode = '';
             getCaptcha();
-            ElMessage.error(msg || '登录失败');
+            ElMessage({
+              message: msg || '登录失败',
+              type: 'error',
+              offset: 100,
+            });
           }
         } finally {
           loading.value = false;
@@ -252,6 +260,7 @@
         ElMessage({
           message: '请填写完整信息',
           type: 'error',
+          offset: 100,
         });
       }
     });
@@ -285,9 +294,9 @@
       --el-input-border-radius: 20px !important;
     }
   }
-  .login-btn {
-    :hover {
-      color: rgb(24, 144, 255);
-    }
-  }
+  // .login-btn {
+  //   :hover {
+  //     color: rgb(24, 144, 255);
+  //   }
+  // }
 </style>

+ 15 - 6
src/views/login/newLogin2.vue

@@ -48,7 +48,9 @@
       min-height: 100vh;
       display: flex;
       flex-wrap: wrap;
-      justify-content: center;
+      justify-content: flex-start;
+      flex-direction: column;
+      align-content: center;
       padding: 15px;
       background: #fff;
       // background: -webkit-linear-gradient(-135deg, #c850c0, #4158d0);
@@ -59,9 +61,15 @@
 
     &-wrap-logo {
       width: 1271px;
+      margin-top: 30px;
       @media (max-width: 1271px) {
         width: 100%;
       }
+      img {
+        @media (max-width: 450px) {
+          width: 100px;
+        }
+      }
     }
     &-wrap-login {
       width: 1271px;
@@ -83,6 +91,12 @@
         }
       }
 
+      @media (max-width: 1271px) {
+        width: 100%;
+        padding: 30px 0px 33px 0px;
+        justify-content: center;
+      }
+
       .login-form {
         width: 350px;
         display: flex;
@@ -96,11 +110,6 @@
           text-align: center;
         }
       }
-
-      @media (max-width: 1271px) {
-        padding: 30px 0px 33px 0px;
-        justify-content: center;
-      }
       @media (max-width: 1010px) {
         .login-pic {
           display: none;

+ 1 - 2
src/views/page-config/ConfigEdit.vue

@@ -1,8 +1,7 @@
 <template>
   <div class="page">
     <div class="page-head flex items-center">
-      <el-icon size="20"><ArrowLeft /></el-icon>
-      <div class="head-opt flex-1 flex justify-between items-center">
+      <div class="head-opt flex-1 flex justify-between items-center" style="margin-left: 0px">
         <div>
           <!-- <span>场景:</span> -->
           <el-select