祖安之光
23 小时以前 b2503fc6ea29dc9ae7a6574fbfbb5156412db6e1
src/views/homePage.vue
@@ -1,12 +1,13 @@
<template>
  <el-row class="login-panel">
    <el-col :sm="24" :md="12" class="login-img">
      多体系<br/>建设信息化系统
    <el-col :sm="24" :md="10" class="login-img">
    </el-col>
    <el-col :sm="24" :md="12" class="login-box">
    <el-col :sm="24" :md="14" class="login-box">
      <div class="login-title">多体系<br/>建设信息化系统</div>
      <div class="login-card">
        <el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
          <h3 class="title">登录系统</h3>
          <h3 class="title">欢迎登录</h3>
          <el-form-item prop="username">
            <el-input
                v-model="loginForm.username"
@@ -138,7 +139,6 @@
      loading.value = true;
      Cookies.set("username", loginForm.value.username, { expires: 30 });
      Cookies.set("password", encrypt(loginForm.value.password), { expires: 30 });
      const param = {
        username: loginForm.value.username,
        password: Base64.encode(loginForm.value.password),
@@ -147,14 +147,18 @@
        identity: loginForm.value.role
      }
      userStore.login(param).then(() => {
        const query = route.query;
        const otherQueryParams = Object.keys(query).reduce((acc, cur) => {
          if (cur !== "redirect") {
            acc[cur] = query[cur];
          }
          return acc;
        }, {});
        router.push({ path: redirect.value || "/", query: otherQueryParams });
        if (redirect.value && redirect.value !== '/index') {
          const query = route.query;
          const otherQueryParams = Object.keys(query).reduce((acc, cur) => {
            if (cur !== "redirect") {
              acc[cur] = query[cur];
            }
            return acc;
          }, {});
          router.push({ path: redirect.value, query: otherQueryParams });
        } else {
          router.push({ path: "/menuPage" });
        }
      }).catch(() => {
        loading.value = false;
        // 重新获取验证码
@@ -199,7 +203,7 @@
.login-panel{
  width: 100%;
  height: 100%;
  background: url("@/assets/images/bg4.png") no-repeat center;
  background: url("@/assets/images/bg5.jpg") no-repeat center;
  background-size: cover;
  justify-content: center;
  align-items: center;
@@ -211,7 +215,8 @@
  align-items: center;
  font-family: 'AliMa';
  color: #fff;
  font-size: 3.2rem;
  font-size: clamp(3rem, 1.286rem + 2.68vw, 4.5rem);
  letter-spacing: 10px;
  text-align: center;
  line-height: 1.5;
  transform: translateY(-80px);
@@ -219,14 +224,24 @@
}
.login-box{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transform: translateY(-40px);
  .login-title{
    font-family: 'AliMa';
    color: #2563eb;
    font-size: clamp(3rem, 1.286rem + 2.68vw, 4.5rem);
    line-height: 1.2;
    text-shadow: 0 5px 10px rgba(37,99,235,.3);
    margin-bottom: 30px;
  }
  .login-card{
    width: 500px;
    padding: 30px;
    border-radius: 16px;
    background-color: rgba(255,255,255,.2);
    background-color: rgba(255,255,255,.8);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border: 1px solid rgba(255,255,255,.4);
@@ -241,7 +256,7 @@
    .title{
      margin: 0 0 30px;
      text-align: center;
      color: #fff
      color: #333
    }
    .el-form-item{