From 9698cd8b7b1c280d5a533c3a1ddc73771da07ffc Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期三, 13 十二月 2023 20:26:51 +0800 Subject: [PATCH] bug修改 --- src/views/login/index.vue | 160 +++++++++++++++++++++++++++++++++------------------- 1 files changed, 101 insertions(+), 59 deletions(-) diff --git a/src/views/login/index.vue b/src/views/login/index.vue index 6e5f771..cba0d56 100644 --- a/src/views/login/index.vue +++ b/src/views/login/index.vue @@ -2,7 +2,9 @@ <div id="background"> <!-- 浜у搧鍚嶇О --> <div class="text"> - <div class="logo"></div> + <div class="logo"> + <img :src="imgUrl" alt="" /> + </div> <div class="text-r"> <h2 class="title font-extra-large">閬傛槍鍘挎櫤鎱ф墽娉曞钩鍙�</h2> <div class="title font-title-medium"> @@ -19,7 +21,7 @@ ref="loginForm" label-position="left" > - <!-- title --> + <!-- title --> <h2 class="login-title">鐢ㄦ埛鐧诲綍 / USER LOGIN</h2> <el-form-item prop="username"> <!-- 鐢ㄦ埛鍚嶈緭鍏ユ --> @@ -45,9 +47,9 @@ autoComplete="on" placeholder="璇疯緭鍏ョ櫥褰曞瘑鐮�" > - <!-- 杈撳叆妗嗗墠icon --> + <!-- 杈撳叆妗嗗墠icon --> <span slot="prefix"> - <svg-icon icon-class="password" class="color"></svg-icon> + <svg-icon icon-class="password" class="color"></svg-icon> </span> <!-- 杈撳叆妗嗗悗icon --> <span slot="suffix" @click="showPwd"> @@ -57,6 +59,13 @@ ></svg-icon> </span> </el-input> + </el-form-item> + <el-form-item> + <el-input + v-model="loginForm.validCode" + placeholder="楠岃瘉鐮�" + ></el-input> + <SIdentify @input="createValidCode"></SIdentify> </el-form-item> <!-- 琛ㄥ崟鎻愪氦鎸夐挳 --> <el-form-item style="margin-bottom: 60px; text-align: center"> @@ -76,9 +85,16 @@ <script> import { isvalidUsername } from "@/utils/validate"; - +import { createNamespacedHelpers } from "vuex"; +import users from "@/api/users"; +import { Decrypt, Encrypt } from "@/utils/cryptojs"; +import leafletMapVue from "../systemSetting/device/grid/components/components/leafletMap.vue"; +// 寮曞叆鐧诲綍楠岃瘉缁勪欢 +import SIdentify from "./SIdentify"; +const { mapActions } = createNamespacedHelpers("users"); export default { name: "login", + components: { SIdentify }, data() { const validateUsername = (rule, value, callback) => { if (!isvalidUsername(value)) { @@ -99,6 +115,7 @@ username: "", password: "", }, + imgUrl: "", loginRules: { username: [ { required: true, trigger: "blur", validator: validateUsername }, @@ -112,98 +129,123 @@ }; }, created() { - // this.loginForm.username = getCookie("username"); - // this.loginForm.password = getCookie("password"); - // if ( - // this.loginForm.username === undefined || - // this.loginForm.username == null || - // this.loginForm.username === "" - // ) { - // this.loginForm.username = "admin"; - // } - // if ( - // this.loginForm.password === undefined || - // this.loginForm.password == null - // ) { - // this.loginForm.password = ""; - // } + const pic = JSON.parse(sessionStorage.getItem("pic")); + if (pic) { + this.imgUrl = pic.loginPageIconUrl; + } else { + this.$axios({ + method: "get", + url: "sccg/system/portal/logo/search", + }).then((res) => { + this.imgUrl = res.data.loginPageIconUrl; + }); + } }, methods: { showPwd() { - if (!this.pwdType) { - this.pwdType = true; - } else { - this.pwdType = false; - } + this.pwdType = !this.pwdType; }, + ...mapActions(["login"]), handleLogin() { - this.$router.push({ path: "/home" }); - // this.$refs.loginForm.validate((valid) => { - // if (valid) { - // console.log(valid); - // this.loading = true; - // this.$store - // .dispatch("Login", this.loginForm) - // .then(() => { - // this.loading = false; - // setCookie("username", this.loginForm.username, 15); - // setCookie("password", this.loginForm.password, 15); - // this.$router.push({ path: "/" }); - // }) - // .catch(() => { - // this.loading = false; - // }); - // } else { - // console.log("鍙傛暟楠岃瘉涓嶅悎娉曪紒"); - // return false; - // } - // }); + // 鐧诲綍鍑芥暟涓獙璇侀獙璇佺爜鏄惁姝g‘锛氱粺涓�杞崲涓哄皬鍐� + if (this.loginForm.validCode.toLowerCase() !== this.validCode.toLowerCase()) { + this.$message.error("楠岃瘉鐮侀敊璇�"); + return; + } + let { username, password } = this.loginForm; + const that = this; + + password = Encrypt(password); + this.$axios + .post("sccg/admin/login", { + password, + username, + }) + .then(function (response) { + if (response.code === 200) { + // 璁剧疆toke鏃堕棿 + // 淇濆瓨token + sessionStorage.setItem("token", response.data.token); + // 淇濆瓨token + sessionStorage.setItem("tokenHead", response.data.tokenHead); + // 淇濆瓨鐢ㄦ埛鐧诲綍鍚� + sessionStorage.setItem("name", username); + // 璺宠浆鍒伴椤� + that.$router.push("/home"); + } else { + that.$refs.loginForm.validate((valid) => { + if (valid) { + that.$message({ + type: "warning", + message: response.message, + }); + } + }); + } + }) + .catch(function (error) {}); + }, + createValidCode(data) { + this.validCode = data; }, }, }; </script> <style lang="scss" scoped> -.color{ +.color { color: red; } + #background { width: 100vw; height: 100vh; - background: url("@/assets/imgs/login/login_bg.jpg"); - background-size: cover ; + background: url("@/assets/imgs/login/bk.png"); + background-size: cover; position: relative; display: flex; min-width: 800px; } + .login-form-layout { position: absolute; + top: 20%; right: 5%; width: 360px; - align-self: center; + &:deep(.el-input__inner) { + background-color: #fff !important; + border: 1px solid #dcdfe6 !important; + } } + .text { align-self: flex-start; position: absolute; - top:20%; + top: 20%; left: 5%; - // margin-top: 180px; - // margin-left: 50px; display: flex; - width: 400px; + width: 420px; justify-content: space-between; - .logo { - width: 50px; - height: 50px; - border-radius: 50%; - background-color: pink; + + .logo > img { + width: 75px; + height: 75px; + border-radius: 4px; } + .text-r { + margin-left: 15px; + .title { color: white; } + + .font-title-medium { + margin-top: -10px; + } } } + .login-title { text-align: left; font-size: 1.2rem; -- Gitblit v1.8.0