Commit 7f68da5d authored by 杨梦雪's avatar 杨梦雪

11

parent a89b506e
......@@ -28,7 +28,7 @@ export default {
position: relative;
height: 100vh;
background: #fff;
background: #f8f8f8;
// background: #f8f8f8;
}
//滚动条的宽度
::-webkit-scrollbar {
......
......@@ -48,7 +48,7 @@ export default {
align-items: center;
justify-content: space-between;
.image img {
width: 318px;
// width: 318px;
height: 62px;
}
.right {
......
......@@ -57,7 +57,7 @@ export default {
window.localStorage.removeItem("doubt_code");
window.localStorage.removeItem("doubt_info");
window.localStorage.removeItem("doubt_check");
window.localStorage.removeItem("index-identity");
// window.localStorage.removeItem("index-identity");
window.localStorage.removeItem("index-token");
window.localStorage.removeItem("phone");
window.localStorage.removeItem("camp_name");
......@@ -77,7 +77,7 @@ export default {
window.localStorage.removeItem("doubt_code");
window.localStorage.removeItem("doubt_info");
window.localStorage.removeItem("doubt_check");
window.localStorage.removeItem("index-identity");
// window.localStorage.removeItem("index-identity");
window.localStorage.removeItem("index-token");
window.localStorage.removeItem("phone");
window.localStorage.removeItem("camp_name");
......@@ -108,7 +108,7 @@ export default {
justify-content: space-between;
.image img {
width: 318px;
// width: 318px;
height: 62px;
}
......
<template>
<div class="pass">
<div class="pass" >
<div class="p_content">
<div>
<img src="@/assets/img/signUp/icon-shenhe.png" alt="" />
......@@ -8,6 +8,10 @@
<div>
请等待工作人员审核,审核结果将于1-3个工作日发布,请留意网站及短信
</div>
<div class="btn" v-show="this.getExamine == 1 || this.getExamine == 2">
<el-button @click="paying()">下一步 </el-button>
</div>
</div>
</div>
</template>
......@@ -16,6 +20,9 @@
/* eslint-disable */
export default {
name: "Pass",
props: {
getExamine: String,
},
};
</script>
......
......@@ -10,8 +10,9 @@
<div class="cont_title">个人信息</div>
<el-row :gutter="20">
<el-col :span="12">
<el-form-item label="姓名" prop="name">
<el-form-item label="姓名" prop="name" class="is-error">
<el-input
ref="name"
v-model="referForm.name"
placeholder="填写真实姓名"
size="small"
......@@ -21,7 +22,11 @@
</el-col>
<el-col :span="12">
<el-form-item label="性别" prop="gender">
<el-radio-group v-model="referForm.gender" size="small">
<el-radio-group
v-model="referForm.gender"
ref="gender"
size="small"
>
<el-radio label="0"></el-radio>
<el-radio label="1"></el-radio>
</el-radio-group>
......@@ -30,6 +35,7 @@
<el-col :span="12">
<el-form-item label="身份证号" prop="id_card">
<el-input
ref="idCard"
v-model="referForm.id_card"
placeholder="填写真实姓名身份证号"
size="small"
......@@ -41,7 +47,7 @@
<el-form-item label="出生日期" prop="birthday">
<el-row :gutter="20">
<el-col :span="8">
<el-select v-model="bdYear" placeholder="年">
<el-select ref="bdYear" v-model="bdYear" placeholder="年">
<el-option
v-for="(item, index) in yearArrs"
:key="index"
......@@ -52,7 +58,7 @@
</el-select>
</el-col>
<el-col :span="8">
<el-select v-model="bdMonth" placeholder="月">
<el-select ref="bdMonth" v-model="bdMonth" placeholder="月">
<el-option
v-for="(item, index) in monthArrs"
:key="index"
......@@ -63,7 +69,12 @@
</el-select>
</el-col>
<el-col :span="8">
<el-select v-model="bdDay" placeholder="日" @change="getTime()">
<el-select
ref="bdDay"
v-model="bdDay"
placeholder="日"
@change="getTime()"
>
<el-option
v-for="(item, index) in dayArrs"
:key="index"
......@@ -78,10 +89,11 @@
</el-col>
<el-col :span="12">
<el-form-item label="籍贯" prop="jiguan_code">
<el-form-item label="籍贯" prop="jiguan_code" class="is-error">
<el-row :gutter="20">
<el-col :span="12">
<el-select
ref="jgProvinceCode"
v-model="jgProvinceCode"
placeholder="省"
@keyup.enter.native="selsectProvince"
......@@ -98,6 +110,7 @@
</el-col>
<el-col :span="12">
<el-select
ref="jiguan_city"
v-model="jiguan_city"
placeholder="市"
@change="getJiguan()"
......@@ -117,6 +130,7 @@
<el-col :span="12">
<el-form-item label="民族" prop="nation">
<el-input
ref="nation"
v-model="referForm.nation"
placeholder="填写民族"
size="small"
......@@ -127,6 +141,7 @@
<el-col :span="12">
<el-form-item label="入学年份(高中)" prop="start_school_date">
<el-select
ref="start_school_date"
v-model="referForm.start_school_date"
placeholder="填写入学年份(高中)"
clearable
......@@ -144,6 +159,7 @@
<el-col :span="12">
<el-form-item label="政治面貌" prop="political_status">
<el-input
ref="political_status"
v-model="referForm.political_status"
placeholder="填写政治面貌"
size="small"
......@@ -154,6 +170,7 @@
<el-col :span="12">
<el-form-item label="手机号">
<el-input
ref="phone"
v-model="phone"
placeholder="18355151517"
size="small"
......@@ -164,6 +181,7 @@
<el-col :span="12">
<el-form-item label="电子邮箱" prop="email">
<el-input
ref="email"
v-model="referForm.email"
placeholder="填写电子邮箱"
size="small"
......@@ -178,6 +196,7 @@
<el-col :span="6">
<el-form-item label="就读中学" prop="school_province">
<el-select
ref="school_province"
v-model="referForm.school_province"
clearable
placeholder="省"
......@@ -196,6 +215,7 @@
<el-col :span="6">
<el-form-item label=" " prop="school_city">
<el-select
ref="school_city"
v-model="referForm.school_city"
clearable
placeholder="市"
......@@ -213,7 +233,12 @@
</el-col>
<el-col :span="12">
<el-form-item label=" " prop="school">
<el-select v-model="referForm.school" clearable placeholder="中学">
<el-select
ref="school"
v-model="referForm.school"
clearable
placeholder="中学"
>
<el-option
v-for="item in selectSchoolList"
:key="item.id"
......@@ -227,6 +252,7 @@
<el-col :span="12">
<el-form-item label="中学联系人" prop="school_contacts">
<el-input
ref="school_contacts"
v-model="referForm.school_contacts"
placeholder="填写中学联系人"
size="small"
......@@ -237,6 +263,7 @@
<el-col :span="12">
<el-form-item label="中学联系电话" prop="school_phone">
<el-input
ref="school_phone"
v-model="referForm.school_phone"
placeholder="填写中学联系电话"
size="small"
......@@ -789,10 +816,46 @@ export default {
});
});
},
// 滚动到固定地方
scrollView(object) {
console.log(object, "object");
for (let i in object) {
if (!i) {
continue;
}
let dom = this.$refs[i];
if (!dom) {
continue;
}
// 这里是针对遍历的情况(多个输入框),取值为数组
if (Object.prototype.toString.call(dom) !== "[object Object]") {
dom = dom[0];
}
// 第一种方法(包含动画效果)
dom.$el.scrollIntoView({
// 滚动到指定节点
// 值有start,center,end,nearest,当前显示在视图区域中间
block: "center",
// 值有auto、instant,smooth,缓动动画(当前是慢速的)
behavior: "smooth",
});
this.dialogFormFu = {
title: "提示",
message: object[i][0].message,
};
this.dialogVisibleFu = true;
// this.$emit("getValues", object[i][0].message, false);
break; // 因为我们只需要检测一项,所以就可以跳出循环了
}
},
confirm() {
this.$refs["referRef"].validate((valid) => {
console.log(valid);
if (!valid) return;
this.$refs["referRef"].validate((valid, object) => {
console.log(object, "object");
if (!valid) {
this.scrollView(object);
return;
}
console.log("11", valid);
// return;
setAccount(this.referForm).then((res) => {
......
/* eslint-disable */
import Vue from 'vue'
import App from './App.vue'
import router from './router'
......@@ -10,6 +12,36 @@ Vue.config.productionTip = false
Vue.use(ElementUI)
Vue.prototype.$errorScroll = function errorScroll(callback) {
this.$nextTick(() => {
// this.loading = false;
// let isError = document.getElementsByClassName('is-error')
// this.$api.error(isError[0].innerText);
// isError[0].scrollIntoView({
// // 滚动到指定节点
// // 值有start,center,end,nearest,当前显示在视图区域中间
// block: 'center',
// // 值有auto、instant,smooth,缓动动画(当前是慢速的)
// behavior: 'smooth',
// })
if(document.getElementsByClassName('el-form-item__error').length>0){
this.$notify.error({
title: '提示',
message: document.getElementsByClassName('el-form-item__error')[0].innerText
});
}
// setTimeout(()=>{
// var isError= document.getElementsByClassName("is-error");
// isError[0].querySelector('input').focus();
// },100);
// return false;
})
}
new Vue({
router,
store,
......
......@@ -6,15 +6,16 @@ import store from '@/store'
import indexLogin from './index/login'
import indexCamp from './index/camp'
import { getCam } from "r/index/login";
import {
getCam
} from "r/index/login";
Vue.use(VueRouter)
const routes = [
{
const routes = [{
path: '/login',
name: 'loginIndex',
meta: {
......@@ -41,7 +42,7 @@ const routes = [
meta: {
title: '招生简章'
},
component: () =>
import('v/index/recruit/Index.vue')
}
......@@ -74,19 +75,14 @@ router.onError((error) => {
}
})
// 页面跳转之后页面回滚到顶部
router.afterEach((to, from, next) => {
window.scrollTo(0, 0)
});
function checkCam(code,cb){
function checkCam(code, cb) {
getCam(code).then((res) => {
if (res.data.code != 200) {
this.$store.$message.error(res.data.message);
cb && cb(false);
return false;
}
code && window.localStorage.setItem("index-identity",code);
code && window.localStorage.setItem("index-identity", code);
// this.$message.success(res.data.message);
let root = document.querySelector(":root");
root.style.setProperty("--color", res.data.system_color);
......@@ -107,21 +103,41 @@ function checkCam(code,cb){
res.data.audit_individual_information
); //是否审核个人资料
cb && cb(true);
}).catch(()=>{
}).catch(() => {
cb && cb(false);
})
}
router.beforeEach((to, from, next) => {
let tokenKey = "index-token",
toLogin = "/login",
toRegister = "/register",
toReset = "/reset"
let token = localStorage.getItem(tokenKey);
let nextUrl = false;
let code = false;
if(to.name == "recruit"){
if(to.path == toLogin || to.path == toRegister || to.path == toReset) {
nextUrl = false;
}else if (to.name == "recruit") {
code = to.params.code;
}
checkCam(code,(res)=>{
if(res){
next();
checkCam(code, (res) => {
if (res) {
nextUrl = false;
}
});
} else {
if (!token) {
nextUrl = toLogin;
} else {
nextUrl = false;
}
});
}
document.title = to.meta.title;
return nextUrl ? next(nextUrl) : next();
})
// 页面跳转之后页面回滚到顶部
router.afterEach((to, from, next) => {
window.scrollTo(0, 0)
});
export default router
......@@ -20,7 +20,6 @@ export default [{
component: () => import(/* webpackChunkName: "reset" */ 'v/index/login/Reset.vue'),
meta: {
title: '重置密码'
}
}
]
......@@ -76,15 +76,17 @@ export default {
};
},
watch: {
type(val) {
window.localStorage.setItem("campindex_type", val);
},
// type(val) {
// console.log(val,'val')
// window.localStorage.setItem("campindex_type", val);
// },
},
created() {
window.localStorage.setItem("campindex_type", 0);
this.campindex_type = window.localStorage.getItem("campindex_type");
// this.campindex_type= 0
this.campindex_type= 0
this.getStatus();
this.ToSignUp()
},
mounted() {
window.addEventListener("scroll", this.handleScrollX, true);
......
......@@ -12,7 +12,11 @@
@getstatus="statuss"
></Invitation>
<ReferInfo v-else-if="type == 'referInfo'" @getstatus="statuss"></ReferInfo>
<Pass v-else-if="type == 'check'" @getstatus="statuss"></Pass>
<Pass
v-else-if="type == 'check'"
@getstatus="statuss"
:getExamine="getExamine"
></Pass>
<Paying v-else-if="type == 'pay'" @getstatus="statuss"></Paying>
<Success v-else-if="type == 'success'" @getstatus="statuss"></Success>
</div>
......@@ -49,6 +53,7 @@ export default {
doubt_check: window.localStorage.getItem("doubt_check"),
status_val: "",
getExamine: "",
};
},
created() {
......@@ -161,7 +166,8 @@ export default {
this.type = "success";
}
this.$emit("getStatus", this.type);
// console.log(this.status)
this.getExamine = res.data.examine_status;
console.log(res.data.examine_status, "res.data.examine_status");
//审核报名资料状态
//订单支付金额
......
......@@ -200,7 +200,7 @@ export default {
const timeLag = intervalTime(startTime, endTime);
console.log(timeLag);
if (!this.timer) {
this.count = timeLag-1;
this.count = timeLag-1;//59
this.show = false;
this.timer = setInterval(() => {
if (this.count > 0 && this.count <= timeLag) {
......
......@@ -5,9 +5,10 @@
<div class="bg-top"></div>
</el-header>
<div class="com-container content">
<div class="title">2021年南开大学历史学科暑假营招生简章</div>
<div class="time">发布时间:2021-12-28</div>
<div class="part">
<div class="title">{{ info.name }}</div>
<div class="time">发布时间:{{ info.update_time }}</div>
<div v-html="info.student_recruitment_brochure"></div>
<!-- <div class="part">
<span>第一部分</span>
<p>
南开大学是教育部直属重点综合性大学,是敬爱的周恩来总理的母校。新中国成立以来,学校发展始终得到党和国家的亲切关怀。毛泽东主席题写校名、亲临视察;周恩来总理三回母校指导;邓小平同志会见数学大师陈省身,批示成立南开数学研究所;江泽民同志、胡锦涛同志先后视察南开。特别是党的十八大以来,习近平总书记多次对南开的发展给予肯定,并对相关工作回信和勉励,更在百年校庆之际亲临南开视察。
......@@ -34,7 +35,7 @@
<p>
南开大学占地443.12万平方米,其中八里台校区占地121.60万平方米,津南校区占地245.89万平方米,泰达学院占地6.72万平方米。校舍建筑总面积195.19万平方米。按照“独立办学、紧密合作”的原则,与天津大学全面合作办学。
</p>
</div>
</div> -->
<div class="btn">
<el-button @click="toLogin()">立即报名</el-button>
......@@ -47,18 +48,39 @@
/* eslint-disable */
import Header from "@/components/index/Header.vue";
import Footer from "@/components/index/Footer.vue";
import { getCam } from "r/index/login";
export default {
name: "recruit",
data() {
return {};
return {
info: {},
};
},
created() {
this.getCams();
},
mounted() {
// 只刷新一次
if (location.href.indexOf("#reloaded") == -1) {
location.href = location.href + "#reloaded";
location.reload();
}
},
methods: {
toLogin() {
this.$router.replace({ name: "index-login" });
},
getCams() {
getCam(false).then((res) => {
console.log(res, "res");
if (res.data.code != 200) {
return this.$message.error(res.data.message);
}
this.$message.success(res.data.message);
this.info = res.data;
});
},
},
components: {
Header,
......@@ -79,8 +101,8 @@ export default {
z-index: 10000;
.bg-top {
height: 24px;
background-color: #f8f8f8;
// height: 24px;
// background-color: #f8f8f8;
}
}
.content {
......
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