From facea208b2fc7c8c7a0d176df06305b866c6520f Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Wed, 17 Jun 2026 08:56:00 +0800
Subject: [PATCH] 中科大支线—申购功能
---
src/views/homePage.vue | 272 +++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 186 insertions(+), 86 deletions(-)
diff --git a/src/views/homePage.vue b/src/views/homePage.vue
index c4d5b42..caebf23 100644
--- a/src/views/homePage.vue
+++ b/src/views/homePage.vue
@@ -1,21 +1,21 @@
<template>
<div class="login">
<div class="title">
- <div class="logo">
- <img class="pics2" :src="logoPng">
- <span style="font-size: 40px;color: black"></span>
- <div style="width: 2px;height: 40px;background-color: #1C68A7;margin-top: 5px;margin-left: 15px;margin-right: 15px"></div>
- <span style="font-size: 28px;color: white">危化品全生命周期管理系统</span>
- </div>
+<!-- <div class="logo">-->
+<!-- <img class="pics2" :src="logoPng">-->
+<!-- <span style="font-size: 40px;color: black"></span>-->
+<!-- <div style="width: 2px;height: 40px;background-color: #1C68A7;margin-top: 5px;margin-left: 15px;margin-right: 15px"></div>-->
+<!-- <span style="font-size: 28px;color: white">危化品全生命周期管理系统</span>-->
+<!-- </div>-->
<div class="content">
<div class="imgBox">
<div class="imG">
- <img style="width: auto;height: 420px" :src="back">
+ <img :src="back">
</div>
</div>
<div class="formBox">
- <div class="loginTitle">账号登录</div>
- <div style="padding: 20px 0;">
+ <div class="loginTitle">危化品全生命周期<br/>管理系统</div>
+ <div style="padding: 25px 0;">
<el-form ref="loginRef" :model="loginForm" :rules="loginRules" class="login-form">
<el-form-item>
<div class="fromRow">
@@ -70,7 +70,7 @@
:loading="loading"
size="large"
type="primary"
- style="width:100%;"
+ style="width:100%;height: 50px"
@click.prevent="handleLogin"
>
<span v-if="!loading">登 录</span>
@@ -163,6 +163,7 @@
import searchPng from "@/assets/images/login-search.png"
import logoPng from "@/assets/logo/logo1.png"
import back from "@/assets/images/logo22.png"
+import {ElMessage} from "element-plus";
const userStore = useUserStore()
const route = useRoute();
@@ -217,6 +218,108 @@
}, { immediate: true });
const sidebarRouters = ref([])
+// function handleLogin() {
+// proxy.$refs.loginRef.validate(valid => {
+// if (valid) {
+// loading.value = true;
+// // 勾选了需要记住密码设置在 cookie 中设置记住用户名和密码
+// // if (loginForm.value.rememberMe) {
+// Cookies.set("username", loginForm.value.username, { expires: 30 });
+// Cookies.set("password", encrypt(loginForm.value.password), { expires: 30 });
+// // Cookies.set("rememberMe", loginForm.value.rememberMe, { expires: 30 });
+// // } else {
+// // 否则移除
+// // Cookies.remove("username");
+// // Cookies.remove("password");
+// // Cookies.remove("rememberMe");
+// // }
+// // 调用action的登录方法
+// // loginForm.value.password = Base64.encode(loginForm.value.password)
+// const param = {
+// username: loginForm.value.username,
+// password: Base64.encode(loginForm.value.password),
+// code: loginForm.value.code,
+// uuid: loginForm.value.uuid,
+// 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;
+// // }, {});
+//
+// //暂时不分角色
+// // const userInfo = JSON.parse(Cookies.get('userInfo'))
+// // if(userInfo.identity === 0 ) {
+// // //监管用户(管理员)
+// // sidebarRouters.value = menu.adminMenu
+// // Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+// // }else if(userInfo.identity === 1) {
+// // sidebarRouters.value = menu.agencyMenu
+// // Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+// // }
+// const userInfo = JSON.parse(Cookies.get('userInfo'))
+//
+// if(userInfo.userType === 0) {
+// sidebarRouters.value = menu.adminMenu
+// Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+// }else if(userInfo.userType === 1){
+// const config = JSON.parse(Cookies.get('configInfo'))
+// if(config){
+// if(config.useProd === 0){
+// sidebarRouters.value = menu.companyMenu.filter(item => item.path != '/finishedBasicInfo')
+// }else {
+// sidebarRouters.value = menu.companyMenu
+//
+// }
+// }else {
+// ElMessage.warning('请联系管理员完善企业配置')
+// sidebarRouters.value = menu.companyMenu
+// }
+// Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+// }else if(userInfo.userType === 2){
+// const config = JSON.parse(Cookies.get('configInfo'))
+// if(config){
+// if(config.useProd === 0){
+// sidebarRouters.value = menu.commonMenu.filter(item => item.path != '/finishedBasicInfo')
+// }else {
+// sidebarRouters.value = menu.commonMenu
+// }
+// }else {
+// // ElMessage.warning('请联系管理员完善企业配置')
+// sidebarRouters.value = menu.commonMenu
+// }
+// Cookies.set('routers',JSON.stringify(sidebarRouters.value))
+// }else {
+// ElMessage.warning('监管部门账号不可登录')
+// loading.value = false
+// return
+// }
+// let path = ""
+// if(sidebarRouters.value[0].children && sidebarRouters.value[0].children.length > 0){
+// path = sidebarRouters.value[0].path + '/'+ sidebarRouters.value[0].children[0].path
+// }else {
+// path = sidebarRouters.value[0].path
+// }
+//
+// router.push({
+// path: path
+// })
+// // router.push({ path: redirect.value || "/", query: otherQueryParams });
+// }).catch(() => {
+// loading.value = false;
+// // 重新获取验证码
+// if (captchaEnabled.value) {
+// getCode();
+// }
+// });
+// }
+// });
+// }
+
function handleLogin() {
proxy.$refs.loginRef.validate(valid => {
if (valid) {
@@ -224,7 +327,8 @@
// 勾选了需要记住密码设置在 cookie 中设置记住用户名和密码
// if (loginForm.value.rememberMe) {
Cookies.set("username", loginForm.value.username, { expires: 30 });
- Cookies.set("password", encrypt(loginForm.value.password), { expires: 30 });
+ Cookies.set("password", loginForm.value.password, { expires: 30 });
+ // Cookies.set("password", encrypt(loginForm.value.password), { expires: 30 });
// Cookies.set("rememberMe", loginForm.value.rememberMe, { expires: 30 });
// } else {
// 否则移除
@@ -239,60 +343,16 @@
password: Base64.encode(loginForm.value.password),
code: loginForm.value.code,
uuid: loginForm.value.uuid,
- 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;
- // }, {});
-
- //暂时不分角色
- // const userInfo = JSON.parse(Cookies.get('userInfo'))
- // if(userInfo.identity === 0 ) {
- // //监管用户(管理员)
- // sidebarRouters.value = menu.adminMenu
- // Cookies.set('routers',JSON.stringify(sidebarRouters.value))
- // }else if(userInfo.identity === 1) {
- // sidebarRouters.value = menu.agencyMenu
- // Cookies.set('routers',JSON.stringify(sidebarRouters.value))
- // }
- const userInfo = JSON.parse(Cookies.get('userInfo'))
-
- if(userInfo.userType === 0) {
- sidebarRouters.value = menu.adminMenu
- Cookies.set('routers',JSON.stringify(sidebarRouters.value))
- }else if(userInfo.userType === 1){
- const config = JSON.parse(Cookies.get('configInfo'))
- if(config.useProd === 0){
- sidebarRouters.value = menu.companyMenu.filter(item => item.path != '/finishedBasicInfo')
- }else {
- sidebarRouters.value = menu.companyMenu
+ const query = route.query;
+ const otherQueryParams = Object.keys(query).reduce((acc, cur) => {
+ if (cur !== "redirect") {
+ acc[cur] = query[cur];
}
- Cookies.set('routers',JSON.stringify(sidebarRouters.value))
- }else if(userInfo.userType === 2){
- const config = JSON.parse(Cookies.get('configInfo'))
- if(config.useProd === 0){
- sidebarRouters.value = menu.commonMenu.filter(item => item.path != '/finishedBasicInfo')
- }else {
- sidebarRouters.value = menu.commonMenu
- }
- Cookies.set('routers',JSON.stringify(sidebarRouters.value))
- }
- let path = ""
- if(sidebarRouters.value[0].children && sidebarRouters.value[0].children.length > 0){
- path = sidebarRouters.value[0].path + '/'+ sidebarRouters.value[0].children[0].path
- }else {
- path = sidebarRouters.value[0].path
- }
-
- router.push({
- path: path
- })
- // router.push({ path: redirect.value || "/", query: otherQueryParams });
+ return acc;
+ }, {});
+ router.push({ path: redirect.value || "/", query: otherQueryParams });
}).catch(() => {
loading.value = false;
// 重新获取验证码
@@ -303,7 +363,6 @@
}
});
}
-
function getCode() {
getCodeImg().then(res => {
// captchaEnabled.value = res.data.captchaEnabled
@@ -327,10 +386,14 @@
font-family: "microsoft yahei";
font-size: 14px;
//background: #04C1F8;
- background: #04C1F8 url(../assets/images/bgpag.png) no-repeat;
+ background: #04C1F8 url('../assets/images/bgpag.png') no-repeat;
//background-repeat: no-repeat;
background-size: cover;
height: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ min-height: 931px;
:deep(.el-form-item__content .el-form-item) {
display: block;
}
@@ -358,44 +421,81 @@
}
.content{
+ display: flex;
+ min-width: 1200px;
+ min-height: 560px;
+ border-radius: 16px;
+ background: url("../assets/images/logbox.jpg") no-repeat center;
+ background-size: cover;
+ box-shadow: 0 10px 20px rgba(0,0,0,.1);
+ transform: translateY(-50px);
position: relative;
}
+@keyframes float {
+ 100% {
+ transform: translateX(0);
+ opacity: 100%;
+ -webkit-opacity: 100%
+ }
+}
.imgBox {
- width: 560px;
- height: 560px;
- margin-top: 80px;
- float: left;
- position: relative;
+ width: 50%;
+ min-height: 560px;
+ opacity: 0;
+ -webkit-opacity: 0;
+ transform: translateX(50px);
+ display: flex;
+ justify-content: center;
+ align-items: center;
+ animation: float ease 0.6s 0.6s forwards;
}
.fromRow{
width: 100%;
margin: 25px 0;
}
.imG{
- //width: 500px;
- //height: 500px;
- //background-image: url(../assets/images/logo11.jpg) ;
+ width: 90%;
+ height: 100%;
+ display: flex;
+ justify-content: center;
+ align-items: center;
background-repeat: no-repeat;
- position: absolute;
- left: -30px;
- top: 30px;
+}
+@keyframes showForm {
+ 100% {
+ transform: translateY(0);
+ opacity: 100%;
+ -webkit-opacity: 100%
+ }
}
.formBox{
- width: 370px;
- height: 400px;
- border-radius: 5px;
- background: rgba(25,25,25,0.6);
- margin-top: 130px;
- padding: 20px;
- float: right;
+ width: 50%;
+ height: 100%;
+ position: absolute;
+ right: 0;
+ top: -20px;
+ transform: translateY(30px);
+ opacity: 0;
+ -webkit-opacity: 0;
+ min-height: 600px;
+ border-radius: 16px;
+ background: #fff;
+ padding: 30px;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ z-index: 999;
+ animation: showForm ease-in-out 0.6s forwards;
}
.loginTitle{
width: 100%;
text-align: center;
- font-size: 16px;
- color: #FFF;
- line-height: 50px;
- border-bottom: 1px solid #FFF;
+ font-size: 48px;
+ color: #2563eb;
+ line-height: 1.5;
+ font-weight: bolder;
+ letter-spacing: 12px;
+ text-shadow: 0 5px 10px rgba(0,0,0,.1);
}
.title {
width: 90%;
--
Gitblit v1.9.2