提交 3674510f authored 作者: 王鹏飞's avatar 王鹏飞

chore: 修改报名表单

上级 495c8170
......@@ -37,7 +37,7 @@ export default {
scrollTop: 0,
navList: [
{ title: '首页', path: '/index' },
{ title: '工商管理硕士(EMBA)', path: '/profession' },
{ title: '高级工商管理硕士(EMBA)', path: '/profession' },
{ title: '报名申请', path: '/my' },
{ title: '最新动态', path: '/news' },
{ title: '联系我们', path: '/contact' }
......
......@@ -52,7 +52,7 @@ export default {
tabBtnActive: true,
isShowBtn: false,
tabBtnTarget: '',
projectName: '工商管理硕士(EMBA)',
projectName: '高级工商管理硕士(EMBA)',
sendCode: '',
isBtnDisabled: false,
formInfo: {
......
......@@ -15,7 +15,7 @@
/>
<meta
name="keywords"
content="工商管理硕士,EMBA硕士,免联考EMBA,国际EMBA,通用EMBA,在职EMBA,在线EMBA,EMBA,商学院,管理学,玛丽伍德大学,玛丽伍德,Marywood"
content="高级工商管理硕士,EMBA硕士,免联考EMBA,国际EMBA,通用EMBA,在职EMBA,在线EMBA,EMBA,商学院,管理学,玛丽伍德大学,玛丽伍德,Marywood"
/>
<!-- <meta
name="viewport"
......
......@@ -9,7 +9,7 @@
</div>
</div>
</header>
<nav class="nav"><h1 class="title">玛丽伍德大学工商管理硕士项目推荐信</h1></nav>
<nav class="nav"><h1 class="title">玛丽伍德大学高级工商管理硕士项目推荐信</h1></nav>
<section class="content">
<el-form
:model="ruleForm"
......
......@@ -83,7 +83,7 @@
<li>修满<span>30</span>学分</li>
</ul>
<p>
修满全部学分并考核合格后,由玛丽伍德大学授予工商管理硕士(EMBA)学位,学位证书与出国留学学习所获得的学位证书相同。
修满全部学分并考核合格后,由玛丽伍德大学授予高级工商管理硕士(EMBA)学位,学位证书与出国留学学习所获得的学位证书相同。
</p>
</div>
</div>
......
import cjd from './cjd'
// import cjd from './cjd'
// import byzs from './byzs'
import ywjl from './ywjl'
// import ywjl from './ywjl'
import xy from './xy'
import xfjn from './xfjn'
import tjx from './tjx'
// import tjx from './tjx'
// import xlrz from './xlrz'
import zp from './zp'
// import zp from './zp'
export default function(_this) {
return {
id: 'admission',
title: '入学办理',
children: [cjd(_this), tjx(_this), ywjl, zp(_this), xy(_this), xfjn(_this)]
children: [
// cjd(_this), tjx(_this), ywjl, zp(_this),
xy(_this),
xfjn(_this)
]
}
}
......@@ -24,7 +24,7 @@ export default function(_this) {
}
},
form: {
prev: { to: { query: { active: 'admission_zp' } } },
// prev: { to: { query: { active: 'admission_zp' } } },
next: { to: { query: { active: 'admission_xfjn' } } },
hasButton: false,
options: {},
......
......@@ -51,7 +51,7 @@ export default {
const menus = getMenu(this)
return {
menus: [menus],
currentActive: 'admission_cjd',
currentActive: 'admission_xy',
dialogVisible: false,
detail: null
}
......@@ -61,7 +61,7 @@ export default {
immediate: true,
handler(route) {
const { query = {} } = route
this.currentActive = query.active || 'admission_cjd'
this.currentActive = query.active || 'admission_xy'
}
},
showSubmitedDialog(value) {
......
......@@ -46,7 +46,7 @@
<p>2.<b>入学项目:</b></p>
<p>
<b
>项目课程为【紫荆教育-索菲亚金融方向工商管理硕士(FEMBA)2021年春季班】。该项目学制为【2】年,自当期项目课程开课之日起计算。</b
>项目课程为【紫荆教育-索菲亚金融方向高级工商管理硕士(FEMBA)2021年春季班】。该项目学制为【2】年,自当期项目课程开课之日起计算。</b
>如学员因个人原因需要延长学习期限的,须至少提前<b>【3】</b>个月申请延期,批准后方可延期毕业。最长可延期<b>【12】</b>个月,自所报名的项目课程原定毕业之日起算。
</p>
<p>
......
......@@ -60,7 +60,7 @@ export default {
title: '毕业证书',
code: 'interviewByzs',
view: { to: { path: '/my/interview', query: { active: 'interview_byzs' } } }
}
},
// {
// title: '学位证书',
// code: 'interviewXwzs',
......@@ -76,22 +76,21 @@ export default {
// 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: '2寸照片',
code: 'interviewZp',
view: { to: { path: '/my/interview', query: { active: 'interview_zp' } } }
},
{
title: '推荐信',
code: 'interviewTjx',
view: { to: { path: '/my/interview', query: { active: 'interview_tjx' } } }
}
]
]
}
......
......@@ -38,8 +38,9 @@ export default function(_this) {
}
},
form: {
// next: { to: { query: { active: 'interview_zp' } } },
submitText: '申请面试',
next: { to: { query: { active: 'interview_tjx' } } },
hasButton: false,
// submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: {},
items: [
......
......@@ -32,7 +32,8 @@ export default function(_this) {
}
},
form: {
next: { to: { query: { active: 'interview_ywjl' } } },
prev: { to: { query: { active: 'interview_tjx' } } },
next: { to: { query: { active: 'interview_zp' } } },
hasButton: false,
options: { 'label-position': 'top' },
hint: `
......
import byzs from './byzs'
import tjx from './tjx'
// import xwzs from './xwzs'
// import ywjl from './ywjl'
// import zp from './zp'
import zp from './zp'
import cjd from './cjd'
export default function(_this) {
return {
id: 'interview',
title: '申请面试',
children: [byzs(_this)]
children: [byzs(_this), tjx(_this), cjd(_this), zp(_this)]
}
}
/**
* 推荐信
*/
export default function(_this) {
return {
id: 'interview_tjx',
title: '推荐信',
get: {
action: `${webConf.apiBaseURL}/enrollment/v1.0/application-materials/${webConf.others.projectId}`,
callback(data) {
const {
submission_stage: submissionStage = 'FILLING',
reco_letters: list = [],
attachments = []
} = 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 attachment = attachments.reduce(
(result, item) => {
const types = ['RECOMMENDATION_LETTER', 'RECOMMENDATION_LETTER_2']
types.forEach(type => {
item.disabled = item.upload_operator_user_id !== _this.user.id
if (item.file_type_id === type) {
result.RECOMMENDATION_LETTER.push(item)
}
})
return result
},
{ RECOMMENDATION_LETTER: [] }
)
// this.form.options.disabled = list.length >= 2
return list.length
? list.map(item => Object.assign({}, item, attachment))
: [{ ...attachment }, { ...attachment }]
}
},
update: {
action: `${webConf.apiBaseURL}/enrollment/v1.0/application-materials/${webConf.others.projectId}/put`,
beforeRequest(data) {
const letters = data.map(item => {
delete item.RECOMMENDATION_LETTER
return item
})
return { reco_letters: letters }
},
callback({ message }) {
// this.form.options.disabled = true
const letters = _this.detail.material.reco_letters || []
if (!letters.length) {
_this.sendToProviders()
_this.getApplication()
} else {
this.$message({ type: 'success', message })
}
}
},
form: {
minlength: 2,
prev: { to: { query: { active: 'interview_byzs' } }, isSubmit: true },
next: { to: { query: { active: 'interview_cjd' } }, isSubmit: true },
hasAdd: true,
options: { disabled: false, labelWidth: '140px' },
disabled(data) {
return !!data.letter_content
},
aside: {
prepend: {
html: '<p style="color:#33C011;">推荐人已完成</p>',
visible(data) {
return !!data.letter_content
}
},
buttons: [
{
text: '再次邀请',
visible(data) {
const editable = ['PREPAYMENT', 'REGISTRATION'].includes(_this.detail.material.submission_stage)
return data.id && !data.letter_content && editable
},
onClick(data) {
_this.sendToProvider(data)
}
},
{
text: '更换推荐人',
visible(data) {
const editable = ['PREPAYMENT', 'REGISTRATION'].includes(_this.detail.material.submission_stage)
return data.id && !data.letter_content && editable
},
onClick(data, $form) {
$form.validate().then(() => {
_this.changeProvider(data)
})
}
}
]
},
items: [
{
type: 'v-input',
label: '推荐人姓名',
model: 'provider_name',
attrs: { placeholder: '请输入推荐人姓名' },
rules: [{ required: true, message: '请输入推荐人姓名', trigger: 'blur' }]
},
{
type: 'v-input',
label: '推荐人电话',
model: 'provider_phone_number',
attrs: { placeholder: '请输入推荐人电话', maxlength: 11 },
rules: [{ required: true, pattern: /^1[3-9]\d{9}$/, message: '请输入推荐人电话', trigger: 'blur' }]
},
{
type: 'v-input',
label: '推荐人邮箱',
model: 'provider_email',
attrs: { placeholder: '请输入推荐人邮箱' },
rules: [{ type: 'email', required: true, message: '请输入推荐人邮箱', trigger: 'blur' }]
},
{
type: 'v-select',
values: [
{ value: '老师/导师' },
{ value: '领导' },
{ value: '同学' },
{ value: '同事' },
{ value: '亲属' },
{ value: '朋友' },
{ value: '其他' }
],
label: '与推荐人关系',
model: 'provider_relationship',
rules: [{ required: true, message: '请选择与推荐人关系', trigger: 'change' }]
}
],
appendItems: [
// 推荐信附件
{
type: 'v-upload',
label: '附件上传',
model: 'RECOMMENDATION_LETTER',
attrs: {
action: `${webConf.apiBaseURL}/enrollment/v1.0/application-materials/attachments/${webConf.others.projectId}/put`,
deleteAction: `${webConf.apiBaseURL}/enrollment/v1.0/application-materials/attachments/${webConf.others.projectId}/delete`,
data: { file_type: 'RECOMMENDATION_LETTER' },
accept: 'image/*'
},
rules: [{ type: 'array', required: true, message: '请上传推荐信附件', trigger: 'change' }],
append: '请上传推荐人署名的推荐信原件照片或扫描件 ',
class: 'upload-letter'
}
]
}
}
}
......@@ -38,7 +38,7 @@ export default function(_this) {
}
},
form: {
prev: { to: { query: { active: 'interview_byzs' } } },
prev: { to: { query: { active: 'interview_cjd' } } },
submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: {},
......
......@@ -9,6 +9,8 @@
@back="$router.push('/my/account')"
@prev="handlePrev"
@next="handleNext"
@uploaded="getApplication"
v-if="detail"
>
<template #aside-append>
<div class="aside-payment"><a href="https://accounts.ezijing.com/payment" target="_blank">查看缴费记录</a></div>
......@@ -82,6 +84,9 @@ export default {
},
showSubmitedDialog() {
return this.isSubmited && this.currentActive === 'interview_byzs'
},
user() {
return this.$store.state.user
}
},
methods: {
......@@ -115,6 +120,40 @@ export default {
},
handleNext(to) {
this.$router.push(to)
},
// 更换推荐人
changeProvider(data) {
api.updateProvider(data.id, data).then(response => {
const { error, message } = response
if (error.toString() === '0') {
this.sendToProvider(data)
// this.$message({ type: 'success', message })
} else {
this.$message.error(message)
}
})
},
// 再次邀请推荐
sendToProvider(data) {
api.sendToProvider(data.id).then(response => {
const { error, message } = response
if (error.toString() === '0') {
this.$message({ type: 'success', message })
} else {
this.$message.error(message)
}
})
},
// 发送推荐信
sendToProviders() {
api.sendToProviders().then(response => {
const { error, message } = response
if (error.toString() === '0') {
this.$message({ type: 'success', message })
} else {
this.$message.error(message)
}
})
}
},
beforeMount() {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论