From 66510450a254daed07b97cc10698cb1a228d716f Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期五, 06 三月 2026 10:01:27 +0800
Subject: [PATCH] 优化
---
admin/src/views/login.vue | 48 ++++-------
admin/src/components/common/CommonHeader.vue | 130 ++++++++++++++++++++++++++++----
admin/.env.development | 4
3 files changed, 132 insertions(+), 50 deletions(-)
diff --git a/admin/.env.development b/admin/.env.development
index bc175be..0b624a7 100644
--- a/admin/.env.development
+++ b/admin/.env.development
@@ -5,11 +5,9 @@
#VUE_APP_API_URL = 'http://192.168.1.45:10010'
-# #VUE_APP_API_URL = 'http://192.168.0.7/system_gateway'
+VUE_APP_API_URL = 'http://192.168.0.7/system_gateway'
# VUE_APP_API_URL = 'http://localhost:10010'
-
-# VUE_APP_API_URL = 'https://atwl.ahzyssl.com/zhyq_interface'
#key锛�045542fc5f436b75e6c911c5c84ff8cd
#瀵嗛挜锛�8bd38497f9aee2b75e7a888a4dfd1e6c
diff --git a/admin/src/components/common/CommonHeader.vue b/admin/src/components/common/CommonHeader.vue
index 4b8a03f..9bed8d1 100644
--- a/admin/src/components/common/CommonHeader.vue
+++ b/admin/src/components/common/CommonHeader.vue
@@ -10,18 +10,48 @@
</div>
</div>
<div class="user">
- <el-dropdown v-if="isLogined" trigger="click">
- <span class="el-dropdown-link">
- <!-- <img v-if="userInfo != null" :src="userInfo.avatar == null ? `${require('@/assets/avatar/man.png')}` : userInfo.avatar" alt="">{{userInfo | displayName}}<i class="el-icon-arrow-down el-icon--right"></i> -->
- <img v-if="userInfo != null" style="width: 30px !important" src="@/assets/avatar/man.png" alt="" />{{
- userInfo | displayName
- }}<i class="el-icon-arrow-down el-icon--right"></i>
- </span>
- <el-dropdown-menu slot="dropdown">
- <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>
- <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>
- </el-dropdown-menu>
- </el-dropdown>
+ <div class="user-search">
+ <div class="user-search-left">
+ <span>鍏ㄩ儴</span>
+ <img src="@/assets/icons/xl.png" alt="">
+ </div>
+ <div class="user-search-right">
+ <input type="text" placeholder="璇疯緭鍏�" />
+ <img src="@/assets/icons/sousuo.png" alt="">
+ </div>
+ </div>
+ <div class="user-images">
+ <img src="@/assets/icons/ic_1.jpg" alt="">
+ <img src="@/assets/icons/ic_2.png" alt="">
+ <img src="@/assets/icons/ic_3.jpg" alt="">
+ <img src="@/assets/icons/ic_4.jpg" alt="">
+ <img src="@/assets/icons/ic_5.jpg" alt="">
+ <img src="@/assets/icons/ic_6.jpg" alt="">
+ <img src="@/assets/icons/ic_7.jpg" alt="">
+ <img src="@/assets/icons/ic_8.jpg" alt="">
+ </div>
+ <el-dropdown v-if="isLogined" trigger="click">
+ <span class="el-dropdown-link" style="cursor: pointer; color: rgba(255,255,255,.56);">
+ {{ userInfo | displayName }}
+ <i class="el-icon-arrow-down el-icon--right"></i>
+ </span>
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>
+ <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
+<!-- <el-dropdown v-if="isLogined" trigger="click">-->
+<!-- <span class="el-dropdown-link">-->
+<!-- <!– <img v-if="userInfo != null" :src="userInfo.avatar == null ? `${require('@/assets/avatar/man.png')}` : userInfo.avatar" alt="">{{userInfo | displayName}}<i class="el-icon-arrow-down el-icon--right"></i> –>-->
+<!-- <img v-if="userInfo != null" style="width: 30px !important" src="@/assets/avatar/man.png" alt="" />{{-->
+<!-- userInfo | displayName-->
+<!-- }}<i class="el-icon-arrow-down el-icon--right"></i>-->
+<!-- </span>-->
+<!-- <el-dropdown-menu slot="dropdown">-->
+<!-- <el-dropdown-item @click.native="changePwd">淇敼瀵嗙爜</el-dropdown-item>-->
+<!-- <el-dropdown-item @click.native="logout">閫�鍑虹櫥褰�</el-dropdown-item>-->
+<!-- </el-dropdown-menu>-->
+<!-- </el-dropdown>-->
</div>
</div>
<!-- 淇敼瀵嗙爜 -->
@@ -373,15 +403,83 @@
}
.user {
- width: 152px;
+ /*width: 152px;*/
box-sizing: border-box;
height: 56px;
padding-right: 25px;
- background: url("../../assets/images/top_ic_bolang@2x.png") no-repeat;
+ /*background: url("../../assets/images/top_ic_bolang@2x.png") no-repeat;*/
flex-shrink: 0;
text-align: right;
- cursor: pointer;
-
+ display: flex;
+ align-items: center;
+ .user-search {
+ width: 346px;
+ height: 32px;
+ border-radius: 30px;
+ border: 1px solid rgba(255,255,255,.56);
+ margin-right: 15px;
+ display: flex;
+ align-items: center;
+ .user-search-left {
+ flex-shrink: 0;
+ width: 106px;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ span {
+ font-size: 14px;
+ font-weight: 400;
+ color: rgba(255,255,255,.56);
+ margin-right: 10px;
+ }
+ img {
+ top: 0;
+ margin: 0;
+ width: 20px;
+ height: 16px;
+ }
+ }
+ .user-search-right {
+ flex: 1;
+ height: 100%;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ padding-right: 10px;
+ box-sizing: border-box;
+ input {
+ flex: 1;
+ height: 100%;
+ font-size: 14px;
+ font-weight: 400;
+ color: rgba(255,255,255,.56);
+ border: none;
+ outline: none;
+ background-color: rgba(0,0,0,0);
+ &::placeholder {
+ color: rgba(255,255,255,.56);
+ }
+ }
+ img {
+ top: 0;
+ margin: 0;
+ width: 20px;
+ height: 20px;
+ }
+ }
+ }
+ .user-images {
+ height: 100%;
+ display: flex;
+ align-items: center;
+ img {
+ top: 0 !important;
+ width: 24px;
+ height: 24px;
+ margin-right: 15px;
+ }
+ }
.el-dropdown {
top: 2px;
color: #fff;
diff --git a/admin/src/views/login.vue b/admin/src/views/login.vue
index 6b33f2b..88ffee6 100644
--- a/admin/src/views/login.vue
+++ b/admin/src/views/login.vue
@@ -3,7 +3,7 @@
<img src="@/assets/images/bg@2x.png" class="main_bg" alt="">
<div class="login_wrap">
<div class="login_img">
- <div class="h3" style="font-size: 30px; margin-bottom: 0;">{{password.title || ''}}</div>
+ <div class="h3" style="font-size: 30px; margin-left: 140px; margin-bottom: 0;">鑺滄箹鐑熻崏</div>
<div class="h3">鏅烘収鐗╂祦鍥尯瀹夋秷涓�浣撳寲绯荤粺</div>
</div>
<div class="form_wrap">
@@ -73,23 +73,22 @@
</template>
<script>
-import { mapMutations, mapState } from 'vuex'
-import { getCaptcha, loginByPassword, sendSmsPost, loginByPhone, getSystemConfig } from '@/api/system/common'
-import Cookies from 'js-cookie'
+import { mapMutations } from 'vuex'
+import { getCaptcha, loginByPassword, sendSmsPost, loginByPhone } from '@/api/system/common'
+import Cookies from "js-cookie"
import { Message } from 'element-ui'
export default {
name: 'Login',
- data () {
+ data() {
return {
- title: process.env.VUE_APP_TITLE,
loading: false,
isRemPsd: false,
username: '',
password: '',
phone: '',
downTime: 0,
- paramConfig:{},
+
smsCode: '',
activeTab: '0',
// 楠岃瘉鐮�
@@ -101,31 +100,18 @@
}
}
},
- computed: {
- ...mapState(['sysConfig'])
- },
- mounted () {
+ mounted() {
this.username = localStorage.getItem('username') || ''
this.password = localStorage.getItem('password') || ''
this.phone = localStorage.getItem('phone') || ''
const isRemPsd = localStorage.getItem('isRemPsd') || false
this.isRemPsd = JSON.parse(isRemPsd)
this.refreshCaptcha()
- this.getSystemConfig()
},
methods: {
- ...mapMutations(['setUserInfo', 'setSysconfig']),
- getSystemConfig () {
- getSystemConfig()
- .then((res) => {
- if (res ) {
- this.paramConfig = res||{}
- this.setSysconfig(res)
- }
- })
- },
+ ...mapMutations(['setUserInfo']),
// 鐧诲綍
- login () {
+ login() {
if (this.loading) {
return
}
@@ -181,8 +167,9 @@
this.loading = false
})
}
+
},
- getCode () {
+ getCode() {
console.log('getCode')
const { phone } = this
if (!phone || phone.length != 11) {
@@ -191,7 +178,7 @@
sendSmsPost({ phone, type: 0 }).then(res => {
Message.success('鐭俊鍙戦�佹垚鍔�')
this.downTime = 60
- const timer = setInterval(() => {
+ let timer = setInterval(() => {
if (this.downTime == 0) {
return clearInterval(timer)
}
@@ -199,11 +186,11 @@
}, 1000)
})
},
- tabClick (val) {
+ tabClick(val) {
this.activeTab = val
},
// 鍒锋柊楠岃瘉鐮�
- refreshCaptcha () {
+ refreshCaptcha() {
this.captcha.loading = true
getCaptcha()
.then(data => {
@@ -220,7 +207,7 @@
})
},
// 鐧诲綍鍓嶉獙璇�
- __check () {
+ __check() {
if (this.username.trim() === '') {
this.$tip.error('璇疯緭鍏ョ敤鎴峰悕')
return false
@@ -235,7 +222,7 @@
}
return true
}
- }
+ },
}
</script>
@@ -280,6 +267,7 @@
height: 600px;
background: url("../assets/images/login_img@2x.png");
background-size: 100% 100%;
+ padding-left: 40px;
padding-top: 60px;
.h2 {
@@ -290,14 +278,12 @@
align-items: center;
justify-content: center;
border-radius: 4px;
- text-align: center;
width: 208px;
display: flex;
margin-bottom: 12px;
}
.h3 {
- text-align: center;
font-size: 28px;
font-weight: 700;
color: #fff;
--
Gitblit v1.9.3