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

11

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