Commit 5b944706 authored by 杨梦雪's avatar 杨梦雪

111

parent 3bb03a62
<template>
<div id="app">
<router-view/>
<router-view />
</div>
</template>
<style scoped lang="scss">
// @import "~a/css/base.css";
#app {
// @import "~a/css/base.css";
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
position: relative;
height: 100%;
background: #fff;
}
}
</style>
......@@ -45,6 +45,7 @@
</template>
<script>
/* eslint-disable */
export default {};
</script>
......
......@@ -26,6 +26,7 @@
</template>
<script>
/* eslint-disable */
export default {
name: "Footer",
};
......
......@@ -14,6 +14,7 @@
</div>
</template>
<script>
/* eslint-disable */
export default {
name: "Header",
data() {
......
......@@ -28,6 +28,7 @@
</template>
<script>
/* eslint-disable */
export default {
name: "Confirm",
};
......
......@@ -27,6 +27,7 @@
</template>
<script>
/* eslint-disable */
export default {
name: "Invitation",
};
......
......@@ -13,6 +13,7 @@
</template>
<script>
/* eslint-disable */
export default {
name: "Pass",
};
......
......@@ -56,6 +56,7 @@
</template>
<script>
/* eslint-disable */
export default {
name: "Paying",
data() {
......
......@@ -239,6 +239,7 @@
</template>
<script>
/* eslint-disable */
// import { GetCheckInfo, CheckSignUpInfo } from '@/api/campSystem/campOper'
export default {
......
/* eslint-disable */
import Vue from 'vue';
import {
Avatar,
......
/* eslint-disable */
import {
request
} from './network'
......@@ -7,11 +8,12 @@ export function login(data) {
return request({
method: 'post',
url: '/web/auth/login',
data
params: data
})
}
// 注册获取验证码
// 退出
export function logout(data) {
return request({
method: 'post',
......@@ -20,20 +22,20 @@ export function logout(data) {
})
}
// 修改密码
export function changePass(data) {
// 通过旧密码找回密码
export function changePassOld(data) {
return request({
method: 'post',
url: '/web/auth/changePass',
url: '/web/auth/changePassOld',
data
})
}
// 找回密码
export function sendPassMsg(data) {
// 通过验证码找回密码
export function changePassCode(data) {
return request({
method: 'post',
url: '/web/auth/sendPassMsg',
url: '/web/auth/changePassCode',
data
})
}
/* eslint-disable */
import axios from 'axios'
import store from '@/store'
import {
......@@ -47,11 +48,11 @@ const allowRequest = function (reqList, url) {
}
let loadingInstance = null
export function request (config) {
export function request(config) {
const instance = axios.create({
baseURL: process.env.NODE_ENV === 'development'
? DEVELOPMENT_SERVER_URL
: SERVER_URL,
baseURL: process.env.NODE_ENV === 'development' ?
DEVELOPMENT_SERVER_URL :
SERVER_URL,
timeout: 60 * 1000
})
instance.interceptors.request.use(
......@@ -185,6 +186,6 @@ export function request (config) {
}
// 合并多个请求
export function allRequest (arrRequest) {
export function allRequest(arrRequest) {
return axios.all(arrRequest)
}
/* eslint-disable */
import {
request
} from './network'
// 发送注册时候验证码
export function registerCode(data) {
return request({
method: 'post',
url: '/web/code/registerCode?phone=' + data
})
}
// 填写注册信息
export function setAccountInfo(data) {
return request({
method: 'post',
url: '/web/register/setAccountInfo',
data
})
}
......@@ -18,6 +18,7 @@ const routes = [{
{
path: '/login',
name: 'loginIndex',
redirect: '/login',
meta: {
title: '登录'
},
......
export default [{
path: '/',
path: '/login',
name: 'index-login',
component: () => import(/* webpackChunkName: "login" */ 'v/index/login/Login.vue'),
meta: {
......
......@@ -10,15 +10,16 @@
</el-container>
</template>
<script>
import Header from '../../components/index/Header'
import Footer from '../../components/index/Footer'
/* eslint-disable */
import Header from "../../components/index/Header";
import Footer from "../../components/index/Footer";
export default {
name: 'index-index',
name: "index-index",
components: {
Header,
Footer
}
}
Footer,
},
};
</script>
<style lang="scss">
.flex {
......
......@@ -10,14 +10,14 @@
ref="loginFormRef"
class="demo-ruleForm"
>
<el-form-item prop="username">
<el-form-item prop="phone">
<img
class="img_l"
src="../../../assets/img/login/username.png"
alt=""
/>
<el-input
v-model="loginForm.username"
v-model="loginForm.phone"
placeholder="身份证号/用户名"
maxlength="20"
></el-input>
......@@ -64,8 +64,10 @@
</template>
<script>
// import { authMixin } from 'mixins/admin/auth'
import { login } from "../../../request/index/login";
/* eslint-disable */
import { login } from "r/index/login";
import { mobileCheck } from "@/common/utils.js";
export default {
name: "index-login",
......@@ -73,15 +75,24 @@ export default {
return {
isShowPwd: true, // 控制密码显示隐藏
loginForm: {
username: "",
phone: "",
password: "",
},
// 表单验证规则对象
loginFormRules: {
// 对用户名进行校验
username: [
{ required: true, message: "请输入用户名", trigger: "blur" },
{ min: 4, max: 20, message: "请输入正确的用户名", trigger: "blur" },
// 对手机号进行校验
phone: [
{ required: true, message: "请输入手机号", trigger: "blur" },
{
validator: function (rule, value, callback) {
if (mobileCheck(value) === false) {
callback(new Error("请输入正确的手机号"));
} else {
callback();
}
},
trigger: "blur",
},
],
// 对密码进行校验
password: [
......@@ -89,11 +100,6 @@ export default {
{ min: 6, max: 20, message: "请输入正确的密码", trigger: "blur" },
],
},
dialogFormFu: {
title: "",
message: "",
},
dialogVisibleFu: false,
};
},
created() {
......@@ -102,16 +108,10 @@ export default {
methods: {
// 忘记账号/密码
forgetPwd() {
window.localStorage.setItem("f_forgetpwd", 0);
// window.localStorage.setItem("f_forgetpwd", 0);
this.$router.replace({ name: "index-reset" });
},
// 子组件触发,关闭弹框
closeDialog(value, type) {
this.dialogVisibleFu = value;
if (type) {
this.$router.replace({ name: "StepOne" });
}
},
// 去注册
register() {
// this.dialogFormFu = {
......@@ -125,60 +125,18 @@ export default {
changePwdStatus() {
this.isShowPwd = !this.isShowPwd;
},
// 表单验证
// 登录
submitForm() {
this.$refs.loginFormRef.validate(async (valid) => {
// 验证用户名和密码是否符合规定
if (!valid) return;
// 发送请求的操作
const { data: res } = await login(this.loginForm);
console.log(res, "返回用户注册数据");
// 根据返回的状态码做想关的判断
if (res.code !== 200) {
login({
phone: this.loginForm.phone,
password: this.loginForm.password,
}).then((res) => {
console.log(res);
if (res.code != 200) {
return this.$message.error(res.message);
}
// 判断用户注册是否填写信息完整
const applicationstatus = parseInt(res.applicationstatus);
const can_skip = parseInt(res.can_skip);
window.localStorage.setItem("applicationstatus", res.applicationstatus);
window.localStorage.setItem("can_skip", res.can_skip);
window.localStorage.setItem("is_check_id_card", res.is_check_id_card);
console.log(!can_skip);
if (!can_skip) {
if (applicationstatus == 0) {
window.localStorage.setItem("sfzNum", res.sfzNum);
this.$router.replace({
name: "StepOne",
query: { applicationstatus: "0", data: res },
});
return;
} else if (
applicationstatus == 3 ||
applicationstatus == 4 ||
applicationstatus == 5 ||
applicationstatus == 6
) {
window.localStorage.setItem("index-token", res.token);
this.$store.state.token = res.token;
window.localStorage.setItem("student_id", res.student_id);
window.localStorage.setItem("sfzNum", res.sfzNum);
window.localStorage.setItem("username", res.username);
if (res.is_check_id_card != 1) {
this.$router.replace({ name: "StepTwo" });
} else {
this.$router.replace({ name: "StepThree" });
}
return;
}
}
this.$store.state.token = res.token;
window.localStorage.setItem("index-token", res.token);
window.localStorage.setItem("student_id", res.student_id);
window.localStorage.setItem("sfzNum", res.sfzNum);
window.localStorage.setItem("username", res.username);
this.$router.replace({ name: "examlist" });
this.$router.replace({ name: "cerificateIndex" });
});
},
},
......
......@@ -5,15 +5,15 @@
<div class="title">新用户注册</div>
<div class="line"></div>
<el-form
:model="loginForm"
:model="registerForm"
:rules="registerRules"
ref="loginFormRef"
class="demo-ruleForm"
ref="registerFormRef"
class="demo-registerForm"
>
<el-form-item prop="phonenum">
<el-form-item prop="phone">
<img class="img_l" src="@/assets/img/reset/username.png" alt="" />
<el-input
v-model="loginForm.phonenum"
v-model="registerForm.phone"
placeholder="请输入手机号"
maxlength="20"
></el-input>
......@@ -21,10 +21,9 @@
<el-form-item prop="code">
<img class="img_l" src="@/assets/img/reset/code.png" alt="" />
<el-input
v-model="loginForm.code"
v-model="registerForm.code"
placeholder="请输入短信验证码"
maxlength="20"
class="phone_input"
></el-input>
</el-form-item>
<!-- 短信验证码 -->
......@@ -32,10 +31,10 @@
<span class="code" v-show="show" @click="getCode">获取验证码</span>
<span v-show="!show" class="count">{{ count }} s</span>
</div>
<el-form-item prop="passwords">
<el-form-item prop="password">
<img class="img_l" src="@/assets/img/reset/password.png" alt="" />
<el-input
v-model="loginForm.password"
v-model="registerForm.password"
:type="isShowPwd ? 'password' : 'text'"
maxlength="20"
placeholder="设置密码:6-12位字符,包含字母或数字"
......@@ -55,10 +54,10 @@
alt=""
/>
</el-form-item>
<el-form-item prop="password">
<el-form-item prop="rq_password">
<img class="img_l" src="@/assets/img/reset/password.png" alt="" />
<el-input
v-model="loginForm.passworda"
v-model="registerForm.rq_password"
placeholder="请再次输入登录密码"
maxlength="20"
></el-input>
......@@ -77,23 +76,32 @@
</template>
<script>
// import { authMixin } from 'mixins/admin/auth'
import { login } from "@/request/index/login";
/* eslint-disable */
// 请求接口
import { registerCode, setAccountInfo } from "r/index/register";
import { mobileCheck } from "@/common/utils.js";
export default {
name: "index-register",
data() {
const pwdCheck = async (rule, value, callback) => {
if (value !== this.stepForm.password) {
callback(new Error("两次输入的密码不一致"));
} else {
callback();
}
};
return {
// 手机验证短信
show: true,
count: "",
timer: null,
isShowPwd: true, // 控制密码显示隐藏
loginForm: {
phonenum: "",
registerForm: {
phone: "",
code: "",
passwords: "",
password: "",
rq_password: "",
},
// 表单验证规则对象
registerRules: {
......@@ -111,26 +119,29 @@ export default {
trigger: "blur",
},
],
// 对手机号码进行校验
username: [
{ required: true, message: "请输入用户名", trigger: "blur" },
{ min: 4, max: 20, message: "请输入正确的用户名", trigger: "blur" },
],
// 对验证码进行校验
code: [
{ required: true, message: "请输入", trigger: "blur" },
{ min: 6, max: 20, message: "请输入正确的", trigger: "blur" },
{ required: true, message: "请输入验证", trigger: "blur" },
{ min: 6, max: 20, message: "请输入正确的验证", trigger: "blur" },
],
// 对密码进行校验
password: [
{ required: true, message: "请输入密码", trigger: "blur" },
{ min: 6, max: 20, message: "请输入正确的密码", trigger: "blur" },
],
// 对密码进行校验
rq_password: [
{ required: true, message: "请输入确认密码", trigger: "blur" },
{
validator: pwdCheck,
trigger: "blur",
},
],
},
};
},
created() {
this.$emit("getStatus", false);
// this.$emit("getStatus", false);
},
methods: {
// 去注册
......@@ -158,64 +169,33 @@ export default {
}
}, 1000);
}
// 接口获得验证码
registerCode({
phone: this.registerForm.phone,
}).then((res) => {
console.log(res);
if (res.code != 200) {
return this.$message.error(res.message);
}
})
},
// 表单验证
submitForm() {
this.$refs.loginFormRef.validate(async (valid) => {
// 验证用户名和密码是否符合规定
if (!valid) return;
// 发送请求的操作
const { data: res } = await login(this.loginForm);
console.log(res, "返回用户注册数据");
// 根据返回的状态码做想关的判断
if (res.code !== 200) {
setAccountInfo({
phone: this.registerForm.phone,
code: this.registerForm.code,
password: this.registerForm.password,
rq_password: this.registerForm.rq_password,
}).then((res) => {
console.log(res);
if (res.code != 200) {
return this.$message.error(res.message);
}
// 判断用户注册是否填写信息完整
const applicationstatus = parseInt(res.applicationstatus);
const can_skip = parseInt(res.can_skip);
window.localStorage.setItem("applicationstatus", res.applicationstatus);
window.localStorage.setItem("can_skip", res.can_skip);
window.localStorage.setItem("is_check_id_card", res.is_check_id_card);
console.log(!can_skip);
if (!can_skip) {
if (applicationstatus == 0) {
window.localStorage.setItem("sfzNum", res.sfzNum);
this.$router.replace({
name: "StepOne",
query: { applicationstatus: "0", data: res },
// this.$router.replace({ name: "" });
});
return;
} else if (
applicationstatus == 3 ||
applicationstatus == 4 ||
applicationstatus == 5 ||
applicationstatus == 6
) {
window.localStorage.setItem("index-token", res.token);
this.$store.state.token = res.token;
window.localStorage.setItem("student_id", res.student_id);
window.localStorage.setItem("sfzNum", res.sfzNum);
window.localStorage.setItem("username", res.username);
if (res.is_check_id_card != 1) {
this.$router.replace({ name: "StepTwo" });
} else {
this.$router.replace({ name: "StepThree" });
}
return;
}
}
this.$store.state.token = res.token;
window.localStorage.setItem("index-token", res.token);
window.localStorage.setItem("student_id", res.student_id);
window.localStorage.setItem("sfzNum", res.sfzNum);
window.localStorage.setItem("username", res.username);
this.$router.replace({ name: "examlist" });
});
},
},
};
</script>
......@@ -349,6 +329,7 @@ export default {
z-index: 999;
top: 38%;
right: 15%;
cursor: pointer;
.code {
font-size: 14px;
font-weight: 600;
......
......@@ -87,6 +87,7 @@
</template>
<script>
/* eslint-disable */
// import { authMixin } from 'mixins/admin/auth'
import { login } from "../../../request/index/login";
......
......@@ -46,6 +46,7 @@
</div>
</template>
<script>
/* eslint-disable */
import Header from "@/components/index/Header.vue";
import Footer from "@/components/index/Footer.vue";
export default {
......
......@@ -14,8 +14,8 @@ module.exports = {
.set('c', resolve('src/components'))
.set('v', resolve('src/views'))
.set('r', resolve('src/request'))
// .set('config', resolve('src/config'))
// .set('common', resolve('src/common'))
.set('config', resolve('src/config'))
.set('common', resolve('src/common'))
// .set('mixins', resolve('src/mixins'))
.set('store', resolve('src/store'))
},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment