深海科学与工程研究所安全巡检系统
祖安之光
2025-09-15 9fe04f4d9567a4de97f5f25d36557ab70b833782
src/views/login.vue
@@ -1,13 +1,13 @@
<template>
  <el-row class="login-panel">
    <el-col :sm="24" :md="13" class="login-left">
    <el-col :sm="24" :md="14" class="login-left">
      <div class="login-title">
        <span>中国科学院深海科学与工程研究所</span>
        <br/>
        安全巡检系统
        安全检查系统
      </div>
    </el-col>
    <el-col :sm="24" :md="11" class="login-box">
    <el-col :sm="24" :md="10" class="login-box">
      <div class="glass-bg"></div>
      <div class="login-card">
        <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
@@ -75,14 +75,16 @@
import { encrypt, decrypt } from "@/utils/jsencrypt";
import useUserStore from '@/store/modules/user'
import { Base64 } from 'js-base64'
import {ElMessage, ElMessageBox} from "element-plus";
import { getCheckCount } from "@/api/saftyCheck";
const userStore = useUserStore()
const route = useRoute();
const router = useRouter();
const { proxy } = getCurrentInstance();
const loginForm = ref({
  username: "admin",
  password: "Gkhy@c413",
  username: "",
  password: "",
  rememberMe: false,
  code: "",
  uuid: ""
@@ -137,7 +139,26 @@
          }
          return acc;
        }, {});
        router.push({ path: redirect.value || "/", query: otherQueryParams });
        if(new Date().getDate() < 25){
          router.push({ path: redirect.value || "/", query: otherQueryParams })
          return
        }
        getCheckCount().then(res=>{
          if(res.code == 200 && res.data == 0){
            ElMessageBox.confirm(
                '本部门当月未进行安全检查,请先完成安全检查!',
                '提示',
                {
                  confirmButtonText: '安全检查',
                  cancelButtonText: '取消',
                  type: 'warning',
                })
                .then(() => {router.push({path: '/saftyCheckMng/dailyCheck'})})
                .catch(() => {router.push({ path: redirect.value || "/", query: otherQueryParams })})
          }else{
            router.push({ path: redirect.value || "/", query: otherQueryParams })
          }
        })
      }).catch(() => {
        loading.value = false;
        // 重新获取验证码
@@ -223,7 +244,7 @@
    font-family: 'AliMa';
    color: #fff;
    letter-spacing: 10px;
    font-size: clamp(3rem, 1.286rem + 2.68vw, 4.5rem);
    font-size: clamp(2rem, 0.286rem + 2.68vw, 3.5rem);
    line-height: 1.2;
    text-shadow: 0 5px 10px rgba(37,99,235,.3);
    margin-bottom: 40px;
@@ -235,9 +256,10 @@
    -ms-opacity: 0;
    animation: show 0.5s 0.7s ease-in-out forwards;
    text-align: center;
    line-height: 1.5;
    span{
      font-size: clamp(1.375rem, 0.375rem + 1.56vw, 2.25rem)
      font-size: clamp(2.675rem, 1.65rem + 1.56vw, 3.55rem)
    }
  }
}