提交 46f1f7ef authored 作者: 王鹏飞's avatar 王鹏飞

对接ciis报名申请

上级 873a71a2
......@@ -4,12 +4,12 @@
<div class="inner">
<div class="logo">
<router-link to="/"
><img src="https://webapp-pub.ezijing.com/project/application/images/ezijing-logo.png"
><img src="https://zws-imgs-pub.ezijing.com/static/public/2a5dca328ca63abcf1c8496180adc485.png"
/></router-link>
</div>
</div>
</header>
<nav class="nav"><h1 class="title">美国印第安纳大学Kelley商学院金融学硕士项目推荐信</h1></nav>
<nav class="nav"><h1 class="title">加州整合大学应用心理学硕士项目推荐信</h1></nav>
<section class="content">
<el-form
:model="ruleForm"
......
......@@ -29,7 +29,7 @@
<img src="https://webapp-pub.ezijing.com/project/application/images/welcome.png" width="350" />
<div class="welcome-content">
<h1>欢迎您报考</h1>
<h2>美国印第安纳大学</h2>
<h2>加州整合大学</h2>
<div class="welcome-button" @click="handleStart">马上开始</div>
</div>
</div>
......
<template>
<div class="collapse" :class="classes">
<div class="collapse-hd">
<div class="collapse-icon" @click="toggle">
<i class="el-icon-remove-outline" v-if="isActive"></i>
<i class="el-icon-circle-plus-outline" v-else></i>
</div>
<div class="collapse-title">
<slot name="title">{{ title }}</slot>
</div>
</div>
<div class="collapse-bd" v-show="isActive">
<slot>{{ content }}</slot>
</div>
</div>
</template>
<script>
export default {
props: {
value: { type: Boolean, default: false },
title: { type: String },
content: { type: String }
},
data() {
return {
isActive: false
}
},
computed: {
classes() {
return { 'is-active': this.isActive }
}
},
methods: {
toggle() {
this.isActive = !this.isActive
this.$emit('input', this.isActive)
}
}
}
</script>
<style lang="scss" scoped>
.collapse {
margin-top: 10px;
}
.collapse-hd {
display: flex;
font-size: 14px;
line-height: 20px;
color: #222;
}
.collapse-icon {
margin-right: 6px;
font-size: 14px;
cursor: pointer;
color: #999;
}
.collapse-bd {
padding-left: 20px;
color: #666;
p {
color: #666 !important;
}
}
</style>
export default function(_this) {
return {
id: 'admission_cjd',
title: '成绩单(中+英)',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 6
return attachments.reduce(
(result, item) => {
if (item.file_type_id === 'REPORT_CARD_CN') {
result.REPORT_CARD_CN.push(item)
}
if (item.file_type_id === 'REPORT_CARD_EN') {
result.REPORT_CARD_EN.push(item)
}
return result
},
{ REPORT_CARD_CN: [], REPORT_CARD_EN: [] }
)
}
},
form: {
next: { to: { query: { active: 'admission_xy' } } },
hasButton: false,
options: { 'label-position': 'top' },
hint: `
<p>请将中英文成绩单原件扫描或者拍照后提交。</p>
<p>获取途径:联系大学时就读学校相关部门(档案馆/教务处)获取成绩单。</p>
`,
items: [
{
type: 'v-upload',
label: '中文成绩单',
model: 'REPORT_CARD_CN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_CN' }
}
},
{
type: 'v-upload',
label: '英文成绩单',
model: 'REPORT_CARD_EN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_EN' }
}
}
]
}
}
}
import cjd from './cjd'
import xy from './xy'
import xfjn from './xfjn'
......@@ -6,6 +5,6 @@ export default function(_this) {
return {
id: 'admission',
title: '入学办理',
children: [cjd(_this), xy(_this), xfjn(_this)]
children: [xy(_this), xfjn]
}
}
export default function(_this) {
return {
id: 'admission_xfjn',
title: '缴费凭证',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 6
const PAYMENT_VOUCHER = attachments.filter(item => {
return item.file_type_id === 'PAYMENT_VOUCHER'
})
return { PAYMENT_VOUCHER }
}
},
form: {
prev: { to: { query: { active: 'admission_xy' } } },
hasButton: false,
options: { 'label-position': 'top' },
hint: `
<p><strong>一、对公收款银行信息:</strong></p>
<p>户名:清控紫荆( 北京)教育科技股份有限公司</p>
<p>帐号:694485289</p>
<p>开户行:中国民生银行股份有限公司北京魏公村支行</p>
<p style="margin-top:30px;"><strong>二、支付宝收款账户信息:</strong></p>
<p>支付宝账号:service@ezijing.com</p>
<p>支付宝户名:清控紫荆(北京)教育科技股份有限公司</p>`,
items: [
{
type: 'v-upload',
model: 'PAYMENT_VOUCHER',
label: '上传缴费凭证',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'PAYMENT_VOUCHER' }
},
append: `申请者可将转账/支付缴费凭证截图或拍照后提交。<br>
上传多个文件,请打印出来检查无误后再上传。用A4纸打印后内容需显示完整、格式整齐、字迹清晰可辨。上传文件仅限“jpg,jpeg,pdf,png”格式,文件小于10Mb。`
}
]
}
}
export default {
id: 'admission_xfjn',
title: '学费缴纳',
html: `
<p><strong>一、对公收款银行信息:</strong></p>
<p>户名:清控紫荆( 北京)教育科技股份有限公司</p>
<p>帐号:694485289</p>
<p>开户行:中国民生银行股份有限公司北京魏公村支行</p>
<p style="margin-top:30px;"><strong>二、支付宝收款账户信息:</strong></p>
<p>支付宝账号:service@ezijing.com</p>
<p>支付宝户名:清控紫荆(北京)教育科技股份有限公司</p>
`
}
......@@ -24,7 +24,6 @@ export default function(_this) {
}
},
form: {
prev: { to: { query: { active: 'admission_cjd' } } },
next: { to: { query: { active: 'admission_xfjn' } } },
hasButton: false,
options: {},
......@@ -38,10 +37,14 @@ export default function(_this) {
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'ADMISSION_AGREEMENT' }
},
// prepend: `
// <p>第一步:点击下载按键获取入学协议</p>
// <p><a href="https://zws-imgs-pub.oss-cn-beijing.aliyuncs.com/pc/cu/%E5%85%A5%E5%AD%A6%E5%8D%8F%E8%AE%AE2%EF%BC%88%E8%AF%B7%E4%B8%8B%E8%BD%BD%E6%A8%A1%E6%9D%BF%E5%A1%AB%E5%86%99%E5%90%8E%E4%B8%8A%E4%BC%A0%E7%85%A7%E7%89%87%EF%BC%89.docx" target="_blank" download>下载入学协议</a></p>
// <p>第二步:申请者可将签字后的入学协议原件扫描或拍照后提交。学员应仔细阅读《入学协议》以及课程介绍,如对入学协议或课程有异议,请第一时间与课程顾问咨询确认。请用A4纸打印后,在入学协议上签上姓名和日期,内容需显示完整、格式整齐、字迹清晰可辨。点击下方按钮,上传文件</p>
// `
prepend: `
<p><a href="https://zws-imgs-pub.oss-cn-beijing.aliyuncs.com/pc/kelley/%E5%85%A5%E5%AD%A6%E5%8D%8F%E8%AE%AE.pdf" target="_blank" download="入学协议">下载入学协议</a></p>
<p>申请者可将签字后的入学协议原件扫描或拍照后提交。</p>
<p>学员应仔细阅读《入学协议》以及课程介绍,如对入学协议或课程有异议,请第一时间与课程顾问咨询确认。请用A4纸打印后,在入学协议上签上姓名和日期,内容需显示完整、格式整齐、字迹清晰可辨。上传文件仅限“jpg,jpeg,pdf,png”格式,文件小于10Mb。</p>
<p>第一步:请以录取通知书的协议为准</p>
<p>第二步:申请者可将签字后的入学协议原件扫描或拍照后提交。学员应仔细阅读《入学协议》以及课程介绍,如对入学协议或课程有异议,请第一时间与课程顾问咨询确认。请用A4纸打印后,在入学协议上签上姓名和日期,内容需显示完整、格式整齐、字迹清晰可辨。点击下方按钮,上传文件</p>
`
}
]
......
......@@ -14,10 +14,6 @@
<template #aside-append>
<div class="aside-logout" @click="$store.dispatch('logout')"><span>退出登录</span></div>
</template>
<!-- 入学协议 -->
<!-- <template #content v-if="currentActive === 'admission_xy'">
<app-xy />
</template> -->
</vue-form>
<el-dialog
title="办理入学资料提交成功"
......@@ -42,14 +38,14 @@
import AppLayout from '../layout.vue'
import getMenu from './form'
import * as api from '@/api/my'
import AppXy from './xy'
export default {
components: { AppLayout, AppXy },
components: { AppLayout },
data() {
const menus = getMenu(this)
return {
menus: [menus],
currentActive: 'admission_cjd',
currentActive: 'admission_xy',
dialogVisible: false,
detail: null
}
......@@ -59,7 +55,7 @@ export default {
immediate: true,
handler(route) {
const { query = {} } = route
this.currentActive = query.active || 'admission_cjd'
this.currentActive = query.active || 'admission_xy'
}
},
showSubmitedDialog(value) {
......@@ -91,7 +87,7 @@ export default {
},
handlePageChange(value) {
this.currentActive = value
this.$router.push({ path: this.$route.path, query: { active: value } }).catch(() => {})
this.$router.push({ path: this.$route.path, query: { active: value } })
console.log('页面切换了', value)
},
handleSuccess(data) {
......
差异被折叠。
......@@ -43,54 +43,39 @@ export default {
title: '个人资料',
code: 'applicaitonInfo',
view: { to: { path: '/my/application', query: { active: 'application_info' } } }
},
{
title: '推荐信',
code: 'applicationTjx',
view: { to: { path: '/my/application', query: { active: 'application_tjx' } } }
}
// {
// title: '推荐信',
// code: 'applicationTjx',
// view: { to: { path: '/my/application', query: { active: 'application_tjx' } } }
// }
// {
// title: '无犯罪证明',
// code: 'applicationWfzzm',
// view: { to: { path: '/my/application', query: { active: 'application_wfzzm' } } }
// }
],
[
{
title: '毕业证书',
code: 'interviewByzs',
view: { to: { path: '/my/interview', query: { active: 'interview_byzs' } } }
},
{
title: '学位证书',
code: 'interviewXwzs',
view: { to: { path: '/my/interview', query: { active: 'interview_xwzs' } } }
view: { to: { path: '/my/interview', query: { active: 'interview_byz' } } }
},
// {
// title: '学位证书英文证明',
// code: 'interviewXwzsEnglish',
// view: { to: { path: '/my/interview', query: { active: 'interview_xwzsywzm' } } }
// },
{
title: '英文简历',
code: 'interviewYwjl',
view: { to: { path: '/my/interview', query: { active: 'interview_ywjl' } } }
title: '成绩单',
code: 'interviewCjd',
view: { to: { path: '/my/interview', query: { active: 'interview_cjd' } } }
},
{
title: '2寸照片',
code: 'interviewZp',
view: { to: { path: '/my/interview', query: { active: 'interview_zp' } } }
},
{
title: '推荐信',
code: 'interviewTjx',
view: { to: { path: '/my/application', query: { active: 'application_tjx' } } }
}
// {
// title: '成绩单',
// code: 'interviewCjd',
// view: { to: { path: '/my/interview', query: { active: 'interview_cjd' } } }
// },
// {
// title: '推荐信',
// code: 'interviewTjx',
// view: { to: { path: '/my/application', query: { active: 'application_tjx' } } }
// }
]
]
}
......@@ -141,40 +126,26 @@ export default {
applicationWfzzm.progress = fillingMissedRequiredList.NO_CRIMINAL_CERT ? 0 : 1
const missedRequiredList = progress.INTERVIEW_APPLICATION.attachments.missed_required_list
// 2寸照片
const interviewZp = { progress: 0 }
interviewZp.progress = missedRequiredList.PERSONAL_PHOTO_FOR_ID ? 0 : 1
// 毕业证书
const interviewByzs = { progress: 0 }
interviewByzs.progress = missedRequiredList.DIPLOMA_CN ? 0 : 1
// 学位证书
const interviewXwzs = { progress: 0 }
interviewXwzs.progress = missedRequiredList.DEGREE_CERT_CN ? 0 : 1
// 学位证书英文
const interviewXwzsEnglish = { progress: 0 }
interviewXwzsEnglish.progress = missedRequiredList.DEGREE_CERT_EN ? 0 : 1
// 英文简历
const interviewYwjl = { progress: 0 }
interviewYwjl.progress = missedRequiredList.RESUME_EN ? 0 : 1
// 成绩单
const interviewCjd = { progress: 0 }
interviewCjd.progress = missedRequiredList.REPORT_CARD_CN || missedRequiredList.REPORT_CARD_EN ? 0 : 1
// 2寸照片
const interviewZp = { progress: 0 }
interviewZp.progress = missedRequiredList.PERSONAL_PHOTO_FOR_ID ? 0 : 1
// 推荐信
const interviewTjx = { progress: 0 }
interviewTjx.progress = progress.INTERVIEW_APPLICATION.reco_letters
? progress.INTERVIEW_APPLICATION.reco_letters.progress
: 0
interviewTjx.progress = progress.INTERVIEW_APPLICATION.reco_letters.progress
this.progress = {
applicaitonInfo,
applicationTjx,
applicationWfzzm,
interviewZp,
interviewByzs,
interviewXwzs,
interviewXwzsEnglish,
interviewYwjl,
interviewCjd,
interviewZp,
interviewTjx
}
} else {
......
<template>
<div class="h5pay">
<el-button type="primary" @click="handlePay">去支付</el-button>
</div>
</template>
<script>
import * as api from '@/api/my'
export default {
data() {
return {
openId: window.localStorage.getItem('open_id')
}
},
computed: {
pageUrl() {
return window.location.origin + this.$route.path + '?active=application_pay'
}
},
methods: {
// 获取订单
getOrder(callback) {
api.getOrder({ wx_open_id: this.openId, payment_method: 'WX_PAY' }).then(response => {
const { data, error, message } = response
if (error.toString() === '0') {
this.order = data
this.$emit('update', this.order)
callback && callback(this.order)
} else {
this.$message.error(message)
}
})
},
// 获取微信code
getCode() {
const redirectURI = `https://pages.ezijing.com/given/auth.html?redirect_uri=${encodeURIComponent(this.pageUrl)}`
window.location.href = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx451c01d40d090d7a&redirect_uri=${redirectURI}&response_type=code&scope=snsapi_base#wechat_redirect`
},
// 获取微信openid
getOpenId(code) {
api.getOpenId({ code, identity: 'ezijing' }).then(response => {
if (response.code === 0) {
this.openId = response.openid
window.localStorage.setItem('open_id', this.openId)
this.getOrder()
} else {
this.getCode()
}
})
},
// 去支付
handlePay() {
this.getOrder(() => {
window.location.href = `https://web-pay.ezijing.com/wxpay/h5?prepay_id=${this.order.wx_prepay_id}&open_id=${
this.openId
}&redirect_uri=${encodeURIComponent(this.pageUrl)}`
})
}
},
beforeMount() {
if (!this.openId) {
const { code } = this.$route.query
code ? this.getOpenId(code) : this.getCode()
}
}
}
</script>
<style scoped>
.h5pay {
padding: 40px;
text-align: center;
}
</style>
<template>
<div class="qrpay">
<div class="qrpay-hd">
<div class="pic">
<img src="https://webapp-pub.ezijing.com/project/application/images/my_pay_01.png" />
</div>
<h1>欢迎您</h1>
<p class="t1">
紫荆-印第安纳大学Kelley商学院金融硕士(MSF)项目申请费<span>700</span>元,请扫描二维码支付完成报名。
</p>
</div>
<div class="qrcode-error" v-if="qrcodeError">
生成二维码失败请刷新<i class="el-icon-refresh-left" @click="getOrder" title="刷新"></i>
</div>
<div class="qrcode" v-else>
<qrcode-vue :value="qrcodeValue" size="100"></qrcode-vue>
<span @click="getOrder">刷新</span>
</div>
</div>
</template>
<script>
import QrcodeVue from 'qrcode.vue'
import * as api from '@/api/my'
export default {
components: { QrcodeVue },
data() {
return {
order: { id: '', payment_url: '' },
qrcodeError: false
}
},
computed: {
// 二维码地址
qrcodeValue() {
return this.order.payment_url
}
},
methods: {
// 获取订单
getOrder() {
api.getOrder({ payment_method: 'WX_PAY_QR' }).then(response => {
const { data, error, message } = response
this.qrcodeError = error.toString() === '1'
if (error.toString() === '0') {
this.order = data
this.$emit('update', this.order)
} else {
this.$message.error(message)
}
})
}
},
beforeMount() {
this.getOrder()
}
}
</script>
<style lang="scss" scoped>
.qrpay-hd {
.pic {
text-align: center;
}
h1 {
padding: 10px 0;
font-size: 24px;
font-weight: 500;
color: #222;
line-height: 1;
text-align: center;
}
}
.qrcode {
padding: 20px 0;
text-align: center;
span {
margin-top: 10px;
font-size: 12px;
color: #999;
cursor: pointer;
}
}
.qrcode-error {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
width: 100px;
height: 100px;
padding: 10px;
margin: 20px auto;
color: var(--main-color);
border-style: dashed;
border-width: 1px;
border-color: var(--main-color);
box-sizing: border-box;
text-align: center;
i {
margin-top: 10px;
cursor: pointer;
}
}
.t1 {
font-size: 14px;
color: #303030;
line-height: 20px;
text-align: center;
span {
color: #ffa448;
}
}
</style>
......@@ -26,15 +26,15 @@ export default function(_this) {
callback() {
_this.getApplication()
this.form.options.disabled = true
_this.$router.push({ path: this.$route.path, query: { active: 'application_pay' } })
// _this.$router.push({ path: '/my/interview' })
// _this.$router.push({ path: this.$route.path, query: { active: 'application_pay' } })
_this.$router.push({ path: '/my/interview' })
},
errorCallback() {
_this.completeVisible = true
}
},
form: {
prev: { to: { query: { active: 'application_info', tab: 'application_info_honor' } } },
prev: { to: { query: { active: 'application_tjx' } } },
submitText: '提交报名申请',
model: { isAgree: [] },
options: {},
......@@ -45,7 +45,7 @@ export default function(_this) {
model: 'isAgree',
rules: [{ required: true, message: '请阅读协议', trigger: 'change' }],
prepend:
'<p>我提供的所有报名材料信息皆准确和完整。我同意在需要的情况下提交原件以确认我的报名资格。由于报名材料中的虚假、错误信息或重大遗漏导致不录取或取消学籍的后果由我个人承担。 我理解并同意所有报名材料归紫荆教育所有,无论考生录取与否均不退回。我授权紫荆教育使用报名表中的信息查询本人学习和工作记录。</p>'
'<p>本人自愿申请紫荆-加州整合大学应用心理学硕士项目,所有申请表格内填写的内容属实,本科学士学位证书属实,没有弄虚作假的行为。如有虚假,愿承担一切法 律责任。</p>'
}
]
}
......
import info from './info'
// import tjx from './tjx'
import tjx from './tjx'
// import wfzsm from './wfzzm'
import declare from './declare'
......@@ -9,17 +9,17 @@ export default function(_this) {
title: '报名申请',
children: [
info(_this),
// tjx(_this),
tjx(_this),
// wfzsm(_this),
declare(_this),
{
id: 'application_pay',
title: '缴报名费',
show: false,
visible() {
return _this.visible
}
}
declare(_this)
// {
// id: 'application_pay',
// title: '缴报名费',
// show: false,
// visible() {
// return _this.visible
// }
// }
]
}
}
......@@ -16,14 +16,21 @@ export default function(_this) {
const { answers = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
this.form.options.disabled = submissionStage !== 'FILLING'
const [first = {}, second = {}] = answers
const [first = {}, second = {}, third = {}, fourth = {}] = answers
return {
qid1: first.qid || '1',
question1: '您为什么要申请美国印第安纳大学Kelley商学院金融学硕士项目?(200字以上,1000字以内)',
question1: first.question || '自我介绍',
answer1: first.answer,
qid2: second.qid || '2',
question2: '您的短期和长期职业发展目标是什么?您打算如何达成此愿景?(200字以上,1000字以内)',
answer2: second.answer
question2: second.question || '这个MAP计划对你个人将来有什么好处?你在这个项目中的个人发展目标是什么?',
answer2: second.answer,
qid3: third.qid || '3',
question3: third.question || '这个MAP计划对你将来的职业发展有什么好处?你的职业发展目标是什么?',
answer3: third.answer,
qid4: fourth.qid || '4',
question4:
fourth.question || '你参加过心理学的工作坊或培训班吗?请把它列出来。你是如何从这些学习经验中获益的?',
answer4: fourth.answer
}
}
},
......@@ -33,7 +40,9 @@ export default function(_this) {
return {
answers: [
{ qid: data.qid1, question: data.question1, answer: data.answer1 },
{ qid: data.qid2, question: data.question2, answer: data.answer2 }
{ qid: data.qid2, question: data.question2, answer: data.answer2 },
{ qid: data.qid3, question: data.question3, answer: data.answer3 },
{ qid: data.qid4, question: data.question4, answer: data.answer4 }
]
}
}
......@@ -41,26 +50,49 @@ export default function(_this) {
form: {
prev: { to: { query: { active: 'application_info', tab: 'application_info_career' } }, isSubmit: true },
next: { to: { query: { active: 'application_info', tab: 'application_info_training' } }, isSubmit: true },
options: {},
options: { 'label-position': 'top' },
items: [
{
type: 'v-input',
label: '您为什么要申请美国印第安纳大学Kelley商学院金融学硕士项目?(200字以上,1000字以内)',
label:
'自我介绍(简述自己与心理学的渊源;对心理学的兴趣,什么促使自身喜欢心理学;讲一个与内心活动有关的故事)',
model: 'answer1',
attrs: { type: 'textarea', rows: '8', maxlength: '1000', style: 'width:100%' },
rules: [
{ required: true, message: '请输入', trigger: 'blur' },
{ min: 200, max: 1000, message: '长度在 200 到 1000 个字符', trigger: 'blur' }
{ min: 60, max: 1000, message: '长度在 60 到 1000 个字符', trigger: 'blur' }
]
},
{
type: 'v-input',
label: '您的短期和长期职业发展目标是什么?您打算如何达成此愿景?(200字以上,1000字以内)',
label:
'这个MAP计划对你个人将来有什么好处?你在这个项目中的个人发展目标是什么?(聚焦在MAP学习对个人成长的帮助;如何实现自我目标和个人的社会价值)',
model: 'answer2',
attrs: { type: 'textarea', rows: '8', maxlength: '1000', style: 'width:100%' },
rules: [
{ required: true, message: '请输入', trigger: 'blur' },
{ min: 200, max: 1000, message: '长度在 200 到 1000 个字符', trigger: 'blur' }
{ min: 60, max: 1000, message: '长度在 60 到 1000 个字符', trigger: 'blur' }
]
},
{
type: 'v-input',
label:
'这个MAP计划对你将来的职业发展有什么好处?你的职业发展目标是什么?(紧密联系MAP课程对目前职业的直接帮助;对未来职业发展目标的支持;如何通过职业平台把所学的心理学技能帮助到更多有需要的人)',
model: 'answer3',
attrs: { type: 'textarea', rows: '8', maxlength: '1000', style: 'width:100%' },
rules: [
{ required: true, message: '请输入', trigger: 'blur' },
{ min: 60, max: 1000, message: '长度在 60 到 1000 个字符', trigger: 'blur' }
]
},
{
type: 'v-input',
label: '你参加过心理学的工作坊或培训班吗?请把它列出来。你是如何从这些学习经验中获益的?',
model: 'answer4',
attrs: { type: 'textarea', rows: '8', maxlength: '1000', style: 'width:100%' },
rules: [
{ required: true, message: '请输入', trigger: 'blur' },
{ min: 60, max: 1000, message: '长度在 60 到 1000 个字符', trigger: 'blur' }
]
}
]
......
......@@ -53,6 +53,7 @@ export default function(_this) {
'real_name_en',
'gender',
'nationality',
'race',
'birthday',
'address_province',
'address_city',
......@@ -221,6 +222,14 @@ export default function(_this) {
attrs: { placeholder: '请选择国籍', filterable: true },
rules: [{ required: true, message: '请选择国籍', trigger: 'blur' }]
},
{
type: 'v-select',
label: '种族',
model: 'race',
values: [{ value: '亚裔' }, { value: '拉丁裔' }, { value: '非洲裔' }, { value: '北美' }],
attrs: { placeholder: '请选择种族' },
rules: [{ required: true, message: '请选择种族', trigger: 'blur' }]
},
{
type: 'v-datepicker',
label: '出生日期',
......
......@@ -37,7 +37,7 @@ export default function(_this) {
form: {
minlength: 2,
prev: { to: { query: { active: 'application_info', tab: 'application_info_honor' } }, isSubmit: true },
next: { to: { query: { active: 'application_wfzzm' } }, isSubmit: true },
next: { to: { query: { active: 'application_declare' } }, isSubmit: true },
hasAdd: true,
disabled(data) {
return !!data.letter_content
......
<template>
<div class="pay">
<h5-pay @update="handleUpdateOrder" v-if="isWechat"></h5-pay>
<qrcode-pay @update="handleUpdateOrder" v-else></qrcode-pay>
<div class="pic">
<img src="https://webapp-pub.ezijing.com/project/application/images/my_pay_01.png" />
</div>
<div class="pay-hd">
<h1>欢迎您</h1>
<p class="t1">
申请紫荆-加州整合大学应用心理学硕士项目,本项目的注册费、申请费共计<span>600</span>元,请扫描二维码缴费以完成报名。
</p>
<p class="t1" v-if="isPass">
因面试未通过需重新申请紫荆-加州整合大学应用心理学硕士项目,本项目的注册费、申请费共计<span>600</span>元,请扫描二维码缴费以完成报名。
</p>
</div>
<div class="qrcode-error" v-if="qrcodeError">
生成二维码失败请刷新<i class="el-icon-refresh-left" @click="refreshQrcode" title="刷新"></i>
</div>
<div class="qrcode" v-else>
<qrcode-vue :value="qrcodeValue" size="100"></qrcode-vue>
<span @click="refreshQrcode">刷新</span>
</div>
<div class="pay-ft">
<p class="t2">注释:该申请费提交后不予退还,缴纳申请费后,申请人还需提交以下文件:</p>
<p class="t2">本科及以上学历毕业证书扫描件②本科及以上学历学位证书扫描件③个人证件照④英文简历</p>
<p class="t2">注释:再提交600元申请费后,申请人还需上传并提交如下文件。</p>
<p class="t2">学历/学位证书、②本科中、英文成绩单各一份、③个人证件照(2寸、免冠、白底)</p>
<p class="t2">该申请费不退,请慎重缴费!</p>
</div>
<el-dialog
......@@ -26,18 +43,17 @@
</template>
<script>
import QrcodeVue from 'qrcode.vue'
import * as api from '@/api/my'
import qrcodePay from './components/qrcodePay'
import h5Pay from './components/h5Pay'
export default {
name: 'AppPay',
components: { qrcodePay, h5Pay },
components: { QrcodeVue },
data() {
const UA = window.navigator.userAgent
const isMobile = /android|iphone|ipad|ipod/i.test(UA)
return {
isWechat: isMobile && /micromessenger/i.test(UA),
isPass: false,
order: { id: '', payment_url: '' },
qrcodeError: false,
dialogVisible: false,
timer: null,
paymentRecords: [] // 所有订单
......@@ -89,41 +105,55 @@ export default {
}
})
},
// 获取订单
async getOrder() {
if (this.paySuccess) {
return
}
await api.getOrder({ payment_method: 'WX_PAY_QR' }).then(response => {
const { data, error, message } = response
this.qrcodeError = error.toString() === '1'
if (error.toString() === '0') {
this.order = data
} else {
this.$message.error(message)
}
})
},
// 刷新二维码
refreshQrcode() {
this.getOrder()
},
// 检查支付状态
checkPay(order) {
async checkPay(order) {
if (this.paySuccess) {
this.timer && clearInterval(this.timer)
return
}
const userId = this.user.id
api.checkPay(order.id, { user_id: userId }).then(response => {
await api.checkPay(order.id, { user_id: userId }).then(response => {
if (response.data.payment_status === 'SUCCESS') {
this.timer && clearInterval(this.timer)
this.dialogVisible = true
}
})
},
// 检测支付状态定时器
setCheckPayTimer() {
this.timer && clearInterval(this.timer)
this.timer = setInterval(() => {
if (this.paySuccess) {
this.timer && clearInterval(this.timer)
return
}
this.orderList.forEach(order => this.checkPay(order))
this.orderList.forEach(order => {
this.checkPay(order)
})
}, 3000)
},
// 填写个人资料
toApplication() {
this.$router.push('/my/application?active=application_info')
},
// 申请面试
toInterview() {
this.$router.push('/my/interview')
},
handleUpdateOrder(order) {
this.order = order
}
},
async mounted() {
await this.getApplication()
await this.getOrder()
this.setCheckPayTimer()
},
destroyed() {
......@@ -136,7 +166,49 @@ export default {
.pay {
max-width: 562px;
margin: 0 auto;
padding: 40px 0;
}
.pic {
text-align: center;
}
.pay-hd {
h1 {
padding: 10px 0;
font-size: 24px;
font-weight: 500;
color: #222;
line-height: 1;
text-align: center;
}
}
.qrcode {
padding: 20px 0;
text-align: center;
span {
margin-top: 10px;
font-size: 12px;
color: #999;
cursor: pointer;
}
}
.qrcode-error {
display: flex;
align-items: center;
justify-content: center;
flex-direction: column;
width: 100px;
height: 100px;
padding: 10px;
margin: 20px auto;
color: var(--main-color);
border-style: dashed;
border-width: 1px;
border-color: var(--main-color);
box-sizing: border-box;
text-align: center;
i {
margin-top: 10px;
cursor: pointer;
}
}
.t1 {
font-size: 14px;
......
......@@ -208,6 +208,7 @@ export default {
{ label: '邮箱', code: 'email' },
{ label: '性别', code: 'gender' },
{ label: '国籍', code: 'nationality' },
{ label: '种族', code: 'race' },
{ label: '生日', code: 'birthday' },
{ label: '微信号', code: 'we_chat_account' },
{ label: '邮寄地址', code: 'mailing_address' },
......@@ -308,30 +309,27 @@ export default {
{ label: '荣誉奖励', code: 'title' },
{ label: '证书颁发机构', code: 'institution_cn' }
]
},
{
title: '推荐信',
code: 'reco_letters',
edit: { to: { path: '/my/application', query: { active: 'application_tjx' } } },
isMultiple: true,
items: [
{ label: '推荐人姓名', code: 'provider_name' },
{ label: '推荐人电话', code: 'provider_phone_number' },
{ label: '推荐人邮箱', code: 'provider_email' },
{ label: '与推荐人关系', code: 'provider_relationship' },
{ label: '推荐人工作单位', code: 'provider_company_name', visible: () => this.isManager },
{ label: '推荐人职务', code: 'provider_job_title', visible: () => this.isManager },
{ label: '推荐信内容', code: 'letter_content', visible: () => this.isManager }
]
}
// {
// title: '推荐信',
// code: 'reco_letters',
// edit: { to: { path: '/my/application', query: { active: 'application_tjx' } } },
// isMultiple: true,
// items: [
// { label: '推荐人姓名', code: 'provider_name' },
// { label: '推荐人电话', code: 'provider_phone_number' },
// { label: '推荐人邮箱', code: 'provider_email' },
// { label: '与推荐人关系', code: 'provider_relationship' },
// { label: '推荐人工作单位', code: 'provider_company_name', visible: () => this.isManager },
// { label: '推荐人职务', code: 'provider_job_title', visible: () => this.isManager },
// { label: '推荐信内容', code: 'letter_content', visible: () => this.isManager }
// ]
// }
// {
// title: '无犯罪证明',
// code: 'attachments',
// edit: { to: { path: '/my/application', query: { active: 'application_wfzzm' } } },
// computed(data) {
// if (!data || !data.length) {
// return ''
// }
// const found = data.find(item => item.file_type_id === 'NO_CRIMINAL_CERT')
// return found
// ? `<a href="${found.oss_sign_url}" target="_blank"><img src="${found.oss_sign_url}" style="max-width:300px;margin:10px 0;"></a>`
......
export default {
id: 'interview_xwzs',
title: '学位证书',
id: 'interview_byz',
title: '学历/学位证书',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
......@@ -23,8 +23,7 @@ export default {
}
},
form: {
prev: { to: { query: { active: 'interview_byzs' } } },
next: { to: { query: { active: 'interview_ywjl' } } },
next: { to: { query: { active: 'interview_cjd' } } },
hasButton: false,
options: {},
items: [
......@@ -37,8 +36,7 @@ export default {
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'DEGREE_CERT_CN' }
},
append:
'申请者需要将学位证书原件扫描或者拍照后提交。<br>可上传多个文件,请确保证书号码清晰可辨。<br>上传文件仅限“jpg,jpeg,png”格式,文件小于10MB。'
append: '注意事项:需要将证书原件扫描或拍照后提交,请确保证书内容清晰可辨。'
}
]
}
......
export default {
id: 'interview_byzs',
title: '毕业证书',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 2
const DIPLOMA_CN = attachments.filter(item => {
return item.file_type_id === 'DIPLOMA_CN'
})
return { DIPLOMA_CN }
}
},
form: {
next: { to: { query: { active: 'interview_xwzs' } } },
hasButton: false,
options: {},
items: [
{
type: 'v-upload',
required: true,
model: 'DIPLOMA_CN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'DIPLOMA_CN' }
},
append:
'申请者需要将本科或以上毕业证书原件扫描或者拍照后提交。<br> 可上传多个文件,请确保证书号码清晰可辨。<br> 上传文件仅限“jpg,jpeg,png”格式,文件小于10MB。'
}
]
}
}
export default function(_this) {
return {
id: 'interview_cjd',
title: '成绩单(中+英)',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 2
return attachments.reduce(
(result, item) => {
if (item.file_type_id === 'REPORT_CARD_CN') {
result.REPORT_CARD_CN.push(item)
}
if (item.file_type_id === 'REPORT_CARD_EN') {
result.REPORT_CARD_EN.push(item)
}
return result
},
{ REPORT_CARD_CN: [], REPORT_CARD_EN: [] }
)
}
},
update: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/submit/${process.env.projectId}`,
beforeRequest(data) {
return { submission_stage: 'INTERVIEW_APPLICATION' }
},
callback() {
this.form.options.disabled = true
_this.dialogVisible = true
_this.getApplication()
},
errorCallback() {
_this.completeVisible = true
}
},
form: {
prev: { to: { query: { active: 'interview_ywjl' } } },
submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: { 'label-position': 'top' },
hint: `
<p>请将中英文成绩单原件扫描或者拍照后提交。</p>
<p>获取途径:联系大学时就读学校相关部门(档案馆/教务处)获取成绩单。</p>
`,
items: [
{
type: 'v-upload',
label: '中文成绩单',
model: 'REPORT_CARD_CN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_CN' }
export default {
id: 'interview_cjd',
title: '成绩单(中+英)',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 2
return attachments.reduce(
(result, item) => {
if (item.file_type_id === 'REPORT_CARD_CN') {
result.REPORT_CARD_CN.push(item)
}
},
{
type: 'v-upload',
label: '英文成绩单',
model: 'REPORT_CARD_EN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_EN' }
if (item.file_type_id === 'REPORT_CARD_EN') {
result.REPORT_CARD_EN.push(item)
}
}
]
return result
},
{ REPORT_CARD_CN: [], REPORT_CARD_EN: [] }
)
}
},
form: {
prev: { to: { query: { active: 'interview_byz' } } },
next: { to: { query: { active: 'interview_zp' } } },
hasButton: false,
options: { 'label-position': 'top' },
hint: `
<p>成绩单:中英文成绩单各上传一个文件</p>
<p>注意事项:需要将证书原件扫描或拍照后提交,请确保证书内容清晰可辨。</p>
`,
items: [
{
type: 'v-upload',
label: '中文成绩单',
required: true,
model: 'REPORT_CARD_CN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_CN' }
}
},
{
type: 'v-upload',
label: '英文成绩单',
required: true,
model: 'REPORT_CARD_EN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'REPORT_CARD_EN' }
}
}
]
}
}
import byzs from './byzs'
import xwzs from './xwzs'
import ywjl from './ywjl'
import byz from './byz'
import cjd from './cjd'
import zp from './zp'
export default function(_this) {
return {
id: 'interview',
title: '申请面试',
children: [byzs, xwzs, ywjl, zp(_this)]
children: [byz, cjd, zp(_this)]
}
}
export default {
id: 'interview_xwzsywzm',
title: '学位证书英文证明',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 2
const DEGREE_CERT_EN = attachments.filter(item => {
return item.file_type_id === 'DEGREE_CERT_EN'
})
return { DEGREE_CERT_EN }
}
},
form: {
prev: { to: { query: { active: 'interview_xwzs' } } },
next: { to: { query: { active: 'interview_ywjl' } } },
hasButton: false,
options: {},
items: [
{
type: 'v-upload',
required: true,
model: 'DEGREE_CERT_EN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'DEGREE_CERT_EN' }
},
append: '请将学校出具的学位证书英文证明原件扫描或者拍照后提交。'
}
]
}
}
export default {
id: 'interview_ywjl',
title: '英文简历',
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { attachments = [], submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 2
const RESUME_EN = attachments.filter(item => {
return item.file_type_id === 'RESUME_EN'
})
return { RESUME_EN }
}
},
form: {
prev: { to: { query: { active: 'interview_xwzs' } } },
next: { to: { query: { active: 'interview_zp' } } },
hasButton: false,
options: {},
items: [
{
type: 'v-upload',
required: true,
model: 'RESUME_EN',
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'RESUME_EN' }
},
append: `
<p>请下载填写英文简历模板后上传 [<a href="https://zws-imgs-pub.oss-cn-beijing.aliyuncs.com/pc/kelley/%E8%8B%B1%E6%96%87%E7%AE%80%E5%8E%86.docx" target="_blank" download="英文简历模板">下载模板</a>]</p>
<p>请将英文简历填写完存为"pdf"格式上传,文件小于10MB。</p>`
}
]
}
}
......@@ -38,7 +38,7 @@ export default function(_this) {
}
},
form: {
prev: { to: { query: { active: 'interview_ywjl' } } },
prev: { to: { query: { active: 'interview_cjd' } } },
submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: {},
......@@ -49,11 +49,10 @@ export default function(_this) {
attrs: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/put`,
deleteAction: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/attachments/${process.env.projectId}/delete`,
data: { file_type: 'PERSONAL_PHOTO_FOR_ID' },
limit: 1
data: { file_type: 'PERSONAL_PHOTO_FOR_ID' }
},
append:
'申请者需要上传本人半年以内的两寸彩色近照。<br> 只需上传一个文件,且照片完整、干净。<br> 上传文件仅限“jpg,jpeg,gif,png”格式的图片文件,且文件小于10MB。'
prepend: '2寸照片:以电子版的形式上传文件',
append: '注意事项:需要将证书原件扫描或拍照后提交,请确保证书内容清晰可辨。'
}
]
}
......
......@@ -16,13 +16,14 @@
</vue-form>
<app-complete :type="1" v-model="completeVisible"></app-complete>
<el-dialog
title="您的申请资料已提交成功"
title="资料提交成功"
:visible.sync="dialogVisible"
:center="true"
:close-on-click-modal="false"
width="348px"
>
<div class="dialog-tips">
<p>请注意接听加州整合大学招办老师的邀约电话</p>
<div class="icon"><img src="https://webapp-pub.ezijing.com/project/application/images/icon_success.png" /></div>
</div>
<template #footer>
......@@ -44,7 +45,7 @@ export default {
const menus = getMenu(this)
return {
menus: [menus],
currentActive: 'interview_byzs',
currentActive: 'interview_byz',
completeVisible: false,
dialogVisible: false,
detail: null
......@@ -55,7 +56,7 @@ export default {
immediate: true,
handler(route) {
const { query = {} } = route
this.currentActive = query.active || 'interview_byzs'
this.currentActive = query.active || 'interview_byz'
}
},
showSubmitedDialog(value) {
......@@ -97,7 +98,7 @@ export default {
},
handlePageChange(value) {
this.currentActive = value
this.$router.push({ path: this.$route.path, query: { active: value } }).catch(() => {})
this.$router.push({ path: this.$route.path, query: { active: value } })
console.log('页面切换了', value)
},
handleSuccess(data) {
......
......@@ -50,11 +50,8 @@ export default {
beforeCreate() {
document.body.style.background = '#fff'
},
created() {
this.$router.replace('/my/account')
},
beforeMount() {
// this.getApplication()
this.getApplication()
},
destroyed() {
document.body.style = ''
......
......@@ -3,11 +3,9 @@
<h5-pay @update="handleUpdateOrder" v-if="isWechat"></h5-pay>
<qrcode-pay @update="handleUpdateOrder" v-else></qrcode-pay>
<div class="pay-ft">
<p class="t2">
欢迎您申请紫荆-印第安纳大学Kelley商学院金融硕士(MSF)<br />
申请流程:①支付报名费②填写报名资料并提供相关材料(身份证扫描件、毕业证书扫描件、学位证书扫描件、英文简历、2寸照片)③参加面试④获得录取⑤缴纳学费并签署入学协议⑥入学学习(办理入学手续:提供成绩单、学籍注册等)<br />
申请费提交后不予退还
</p>
<p class="t2">注释:在提交600元申请费后,申请人需上传并提交如下文件。</p>
<p class="t2">①填写报名表、②完成推荐信2封、③本科学历学位证书、④中英文成绩单、⑤个人证件照</p>
<p class="t2">该申请费不退,请慎重缴费!</p>
</div>
<el-dialog
title="报名费缴费成功"
......@@ -18,7 +16,7 @@
width="348px"
>
<div class="dialog-pay">
<p>按照要求填写报名所需材料,完成“提交报名申请”及“申请面试”</p>
<p>填写报名所需材料,材料齐全后招生办老师将<br />给您致电预约面试日期与时间</p>
<div class="icon"><img src="https://webapp-pub.ezijing.com/project/application/images/icon_success.png" /></div>
</div>
<template #footer>
......
......@@ -6,8 +6,8 @@
</div>
<h1>欢迎您</h1>
<p class="t1">
申请紫荆-美国印第安纳大学Kelley商学院金融学硕士项目,请在填写以下内容并<br />
提交报名申请后,扫码支付本项目的申请费共计<span>700</span>元。
申请紫荆-加州整合大学应用心理学硕士项目,请在填写以下内容并<br />
提交报名申请后,扫码支付本项目的注册费、申请费共计<span>600</span>元。
</p>
</div>
<div class="form">
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论