From 09a9c6c647a7c90d6f83663cddac68983b351209 Mon Sep 17 00:00:00 2001 From: chenrui <1187576398@qq.com> Date: 星期二, 03 六月 2025 16:42:17 +0800 Subject: [PATCH] 登录修改 --- src/views/login.vue | 69 +++++++++++++++++++++++++++++----- 1 files changed, 59 insertions(+), 10 deletions(-) diff --git a/src/views/login.vue b/src/views/login.vue index 437093e..1cc6cfd 100644 --- a/src/views/login.vue +++ b/src/views/login.vue @@ -59,6 +59,27 @@ </el-form-item> <el-checkbox v-model="loginForm.rememberMe" style="margin:0px 0px 25px 0px;">璁颁綇瀵嗙爜</el-checkbox> </el-form> + <el-dialog + v-model="modalView" + title="鐧诲綍閮ㄩ棬" + width="500" + :show-close="false"> + <el-form :model="factoryCommitForm"> + <el-form-item> + <el-select v-model="currentFatoryId"> + <el-option v-for="item in factoryList" :key="item.deptId" :label="item.deptName" :value="item.deptId" /> + </el-select> + </el-form-item> + </el-form> + <template #footer> + <div class="dialog-footer"> + <el-button @click="cancelLogin">鍙栨秷</el-button> + <el-button type="primary" @click="factoryCommit()"> + 纭 + </el-button> + </div> + </template> + </el-dialog> <!-- 搴曢儴 --> <!-- <div class="el-login-footer">--> <!-- <span>Copyright 漏 2018-2025 ruoyi.vip All Rights Reserved.</span>--> @@ -67,10 +88,11 @@ </template> <script setup> -import { getCodeImg } from "@/api/login" +import {getCodeImg, loginCheckFactory} from "@/api/login" import Cookies from "js-cookie" import { encrypt, decrypt } from "@/utils/jsencrypt" import useUserStore from '@/store/modules/user' +import {userDeptList} from "@/api/system/user.js" const title = import.meta.env.VITE_APP_TITLE const userStore = useUserStore() @@ -86,6 +108,10 @@ uuid: "" }) +const factoryCommitForm = ref({ + deptId:'' +}) + const loginRules = { username: [{ required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勮处鍙�" }], password: [{ required: true, trigger: "blur", message: "璇疯緭鍏ユ偍鐨勫瘑鐮�" }], @@ -99,6 +125,11 @@ // 娉ㄥ唽寮�鍏� const register = ref(false) const redirect = ref(undefined) + +const modalView = ref(false) + +const factoryList = ref([]) +const currentFatoryId = ref('') watch(route, (newRoute) => { redirect.value = newRoute.query && newRoute.query.redirect @@ -120,15 +151,13 @@ Cookies.remove("rememberMe") } // 璋冪敤action鐨勭櫥褰曟柟娉� - userStore.login(loginForm.value).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 }) + userStore.loginCheck(loginForm.value).then(res => { + // 鏌ヨ鐢ㄦ埛閮ㄩ棬 + userDeptList(res.data).then(res => { + factoryList.value = res.data + modalView.value = true + }) + }).catch(() => { loading.value = false // 閲嶆柊鑾峰彇楠岃瘉鐮� @@ -137,6 +166,21 @@ } }) } + }) +} + +// 褰撳墠鐧诲綍鍏徃/閮ㄩ棬纭 +function factoryCommit(){ + loginForm.value.factoryId = currentFatoryId.value + userStore.loginCheckFactory(loginForm.value).then(res => { + 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 }) }) } @@ -161,6 +205,11 @@ } } +function cancelLogin() { + modalView.value = false + loading.value = false +} + getCode() getCookie() </script> -- Gitblit v1.9.3