From d8a2b0b90ad2891d2a3981176dce45dd0471c312 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Sat, 17 Jul 2021 10:08:21 +0800
Subject: [PATCH] 跳过点击登入
---
src/page/login/userlogin copy.vue | 260 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 260 insertions(+), 0 deletions(-)
diff --git a/src/page/login/userlogin copy.vue b/src/page/login/userlogin copy.vue
new file mode 100644
index 0000000..5628137
--- /dev/null
+++ b/src/page/login/userlogin copy.vue
@@ -0,0 +1,260 @@
+<template>
+ <el-form
+ class="login-form"
+ status-icon
+ :rules="loginRules"
+ ref="loginForm"
+ :model="loginForm"
+ label-width="0"
+ >
+ <el-form-item v-if="tenantMode" prop="tenantId">
+ <el-input
+ size="small"
+ @keyup.enter.native="handleLogin"
+ v-model="loginForm.tenantId"
+ auto-complete="off"
+ :placeholder="$t('login.tenantId')"
+ >
+ <i slot="prefix" class="icon-quanxian" />
+ </el-input>
+ </el-form-item>
+ <el-form-item prop="username">
+ <el-input
+ size="small"
+ @keyup.enter.native="handleLogin"
+ v-model="loginForm.username"
+ auto-complete="off"
+ :placeholder="$t('login.username')"
+ >
+ <i slot="prefix" class="icon-yonghu" />
+ </el-input>
+ </el-form-item>
+ <el-form-item prop="password">
+ <el-input
+ size="small"
+ @keyup.enter.native="handleLogin"
+ :type="passwordType"
+ v-model="loginForm.password"
+ auto-complete="off"
+ :placeholder="$t('login.password')"
+ >
+ <i
+ class="el-icon-view el-input__icon"
+ slot="suffix"
+ @click="showPassword"
+ />
+ <i slot="prefix" class="icon-mima" />
+ </el-input>
+ </el-form-item>
+ <el-form-item v-if="this.website.captchaMode" prop="code">
+ <el-row :span="24">
+ <el-col :span="16">
+ <el-input
+ size="small"
+ @keyup.enter.native="handleLogin"
+ v-model="loginForm.code"
+ auto-complete="off"
+ :placeholder="$t('login.code')"
+ >
+ <i slot="prefix" class="icon-yanzhengma" />
+ </el-input>
+ </el-col>
+ <el-col :span="8">
+ <div class="login-code">
+ <img
+ :src="loginForm.image"
+ class="login-code-img"
+ @click="refreshCode"
+ />
+ </div>
+ </el-col>
+ </el-row>
+ </el-form-item>
+ <el-form-item>
+ <el-button
+ type="primary"
+ size="small"
+ @click.native.prevent="handleLogin"
+ class="login-submit"
+ >{{ $t("login.submit") }}
+ </el-button>
+ </el-form-item>
+ </el-form>
+</template>
+
+<script>
+import { mapGetters } from "vuex";
+import { info } from "@/api/system/tenant";
+import { getCaptcha } from "@/api/user";
+import { getTopUrl } from "@/util/util";
+
+export default {
+ name: "userlogin",
+ data() {
+ return {
+ tenantMode: this.website.tenantMode,
+ loginForm: {
+ //租户ID
+ tenantId: "000000",
+ //用户名
+ username: "admin",
+ //密码
+ password: "admin",
+ //账号类型
+ type: "account",
+ //验证码的值
+ code: "",
+ //验证码的索引
+ key: "",
+ //预加载白色背景
+ image:
+ "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",
+ },
+ loginRules: {
+ tenantId: [
+ { required: false, message: "请输入租户ID", trigger: "blur" },
+ ],
+ username: [
+ { required: true, message: "请输入用户名", trigger: "blur" },
+ ],
+ password: [
+ { required: true, message: "请输入密码", trigger: "blur" },
+ { min: 1, message: "密码长度最少为6位", trigger: "blur" },
+ ],
+ },
+ passwordType: "password",
+ };
+ },
+ created() {
+ this.getTenant();
+ this.refreshCode();
+ },
+ mounted() {},
+ computed: {
+ ...mapGetters(["tagWel"]),
+ keys() {
+ return this.loginForm.key;
+ },
+ },
+ props: [],
+ methods: {
+ goOnS() {
+ if (this.$route.query.main != undefined) {
+ var a = this.$route.query.main;
+ console.log(a);
+ if (typeof a == "string") {
+ try {
+ var obj = JSON.parse(a);
+ console.log(obj, "obj");
+ if (typeof obj == "object" && obj) {
+ console.log("自动登入");
+ var data = {
+ code: this.loginForm.code,
+ tenantId: this.obj.dip,
+ //用户名
+ username: this.obj.rese,
+ //密码
+ password: this.obj.sap,
+ //账号类型
+ type: this.loginForm.type,
+ //验证码的值
+ code: this.loginForm.code,
+ //验证码的索引
+ key: this.keys,
+ //预加载白色背景
+ image: this.loginForm.image,
+ };
+ // this.loginForm.username = obj.data.rese;
+ // this.loginForm.password = obj.data.admin;
+ // this.loginForm.tenantId = obj.data.dip;
+ // console.log(this.loginForm1·);
+ const loading = this.$loading({
+ lock: true,
+ text: "登录中,请稍后。。。",
+ spinner: "el-icon-loading",
+ });
+ this.$store
+ .dispatch("LoginByUsername", data)
+ .then(() => {
+ this.$router.push({ path: "/wel" });
+ loading.close();
+ })
+ .catch(() => {
+ loading.close();
+ this.refreshCode();
+ });
+ console.log(data, "自动ssss");
+ return true;
+ } else {
+ console.log("手动登入");
+ return false;
+ }
+ } catch (e) {
+ console.log("手动登入");
+ return false;
+ }
+ }
+ } else {
+ console.log("nothing");
+ }
+ },
+ refreshCode() {
+ getCaptcha().then((res) => {
+ const data = res.data;
+ this.loginForm.key = data.key;
+ this.loginForm.image = data.image;
+ });
+ },
+ showPassword() {
+ this.passwordType === ""
+ ? (this.passwordType = "password")
+ : (this.passwordType = "");
+ },
+ handleLogin() {
+ console.log(this.loginForm, "once");
+ this.$refs.loginForm.validate((valid) => {
+ if (valid) {
+ console.log(this.loginForm, "befor");
+ const loading = this.$loading({
+ lock: true,
+ text: "登录中,请稍后。。。",
+ spinner: "el-icon-loading",
+ });
+ this.$store
+ .dispatch("LoginByUsername", this.loginForm)
+ .then(() => {
+ this.$router.push({ path: "/wel" });
+ loading.close();
+ })
+ .catch(() => {
+ loading.close();
+ this.refreshCode();
+ });
+ }
+ });
+ },
+ getTenant() {
+ let domain = getTopUrl();
+ // 临时指定域名,方便测试
+ //domain = "https://bladex.vip";
+ info(domain).then((res) => {
+ const data = res.data;
+ if (data.success && data.data.tenantId) {
+ this.tenantMode = false;
+ this.loginForm.tenantId = data.data.tenantId;
+ this.$parent.$refs.login.style.backgroundImage = `url(${data.data.backgroundUrl})`;
+ }
+ });
+ },
+ },
+ watch: {
+ keys() {
+ console.log(this.keys, "keys");
+ this.goOnS();
+ },
+ },
+};
+</script>
+
+<style>
+</style>
--
Gitblit v1.9.3