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

chore: 修改报名表单

上级 495c8170
...@@ -37,7 +37,7 @@ export default { ...@@ -37,7 +37,7 @@ export default {
scrollTop: 0, scrollTop: 0,
navList: [ navList: [
{ title: '首页', path: '/index' }, { title: '首页', path: '/index' },
{ title: '工商管理硕士(EMBA)', path: '/profession' }, { title: '高级工商管理硕士(EMBA)', path: '/profession' },
{ title: '报名申请', path: '/my' }, { title: '报名申请', path: '/my' },
{ title: '最新动态', path: '/news' }, { title: '最新动态', path: '/news' },
{ title: '联系我们', path: '/contact' } { title: '联系我们', path: '/contact' }
......
...@@ -52,7 +52,7 @@ export default { ...@@ -52,7 +52,7 @@ export default {
tabBtnActive: true, tabBtnActive: true,
isShowBtn: false, isShowBtn: false,
tabBtnTarget: '', tabBtnTarget: '',
projectName: '工商管理硕士(EMBA)', projectName: '高级工商管理硕士(EMBA)',
sendCode: '', sendCode: '',
isBtnDisabled: false, isBtnDisabled: false,
formInfo: { formInfo: {
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
/> />
<meta <meta
name="keywords" name="keywords"
content="工商管理硕士,EMBA硕士,免联考EMBA,国际EMBA,通用EMBA,在职EMBA,在线EMBA,EMBA,商学院,管理学,玛丽伍德大学,玛丽伍德,Marywood" content="高级工商管理硕士,EMBA硕士,免联考EMBA,国际EMBA,通用EMBA,在职EMBA,在线EMBA,EMBA,商学院,管理学,玛丽伍德大学,玛丽伍德,Marywood"
/> />
<!-- <meta <!-- <meta
name="viewport" name="viewport"
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
</div> </div>
</div> </div>
</header> </header>
<nav class="nav"><h1 class="title">玛丽伍德大学工商管理硕士项目推荐信</h1></nav> <nav class="nav"><h1 class="title">玛丽伍德大学高级工商管理硕士项目推荐信</h1></nav>
<section class="content"> <section class="content">
<el-form <el-form
:model="ruleForm" :model="ruleForm"
......
...@@ -83,7 +83,7 @@ ...@@ -83,7 +83,7 @@
<li>修满<span>30</span>学分</li> <li>修满<span>30</span>学分</li>
</ul> </ul>
<p> <p>
修满全部学分并考核合格后,由玛丽伍德大学授予工商管理硕士(EMBA)学位,学位证书与出国留学学习所获得的学位证书相同。 修满全部学分并考核合格后,由玛丽伍德大学授予高级工商管理硕士(EMBA)学位,学位证书与出国留学学习所获得的学位证书相同。
</p> </p>
</div> </div>
</div> </div>
......
import cjd from './cjd' // import cjd from './cjd'
// import byzs from './byzs' // import byzs from './byzs'
import ywjl from './ywjl' // import ywjl from './ywjl'
import xy from './xy' import xy from './xy'
import xfjn from './xfjn' import xfjn from './xfjn'
import tjx from './tjx' // import tjx from './tjx'
// import xlrz from './xlrz' // import xlrz from './xlrz'
import zp from './zp' // import zp from './zp'
export default function(_this) { export default function(_this) {
return { return {
id: 'admission', id: 'admission',
title: '入学办理', 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) { ...@@ -24,7 +24,7 @@ export default function(_this) {
} }
}, },
form: { form: {
prev: { to: { query: { active: 'admission_zp' } } }, // prev: { to: { query: { active: 'admission_zp' } } },
next: { to: { query: { active: 'admission_xfjn' } } }, next: { to: { query: { active: 'admission_xfjn' } } },
hasButton: false, hasButton: false,
options: {}, options: {},
......
...@@ -51,7 +51,7 @@ export default { ...@@ -51,7 +51,7 @@ export default {
const menus = getMenu(this) const menus = getMenu(this)
return { return {
menus: [menus], menus: [menus],
currentActive: 'admission_cjd', currentActive: 'admission_xy',
dialogVisible: false, dialogVisible: false,
detail: null detail: null
} }
...@@ -61,7 +61,7 @@ export default { ...@@ -61,7 +61,7 @@ export default {
immediate: true, immediate: true,
handler(route) { handler(route) {
const { query = {} } = route const { query = {} } = route
this.currentActive = query.active || 'admission_cjd' this.currentActive = query.active || 'admission_xy'
} }
}, },
showSubmitedDialog(value) { showSubmitedDialog(value) {
......
...@@ -46,7 +46,7 @@ ...@@ -46,7 +46,7 @@
<p>2.<b>入学项目:</b></p> <p>2.<b>入学项目:</b></p>
<p> <p>
<b <b
>项目课程为【紫荆教育-索菲亚金融方向工商管理硕士(FEMBA)2021年春季班】。该项目学制为【2】年,自当期项目课程开课之日起计算。</b >项目课程为【紫荆教育-索菲亚金融方向高级工商管理硕士(FEMBA)2021年春季班】。该项目学制为【2】年,自当期项目课程开课之日起计算。</b
>如学员因个人原因需要延长学习期限的,须至少提前<b>【3】</b>个月申请延期,批准后方可延期毕业。最长可延期<b>【12】</b>个月,自所报名的项目课程原定毕业之日起算。 >如学员因个人原因需要延长学习期限的,须至少提前<b>【3】</b>个月申请延期,批准后方可延期毕业。最长可延期<b>【12】</b>个月,自所报名的项目课程原定毕业之日起算。
</p> </p>
<p> <p>
......
...@@ -60,7 +60,7 @@ export default { ...@@ -60,7 +60,7 @@ export default {
title: '毕业证书', title: '毕业证书',
code: 'interviewByzs', code: 'interviewByzs',
view: { to: { path: '/my/interview', query: { active: 'interview_byzs' } } } view: { to: { path: '/my/interview', query: { active: 'interview_byzs' } } }
} },
// { // {
// title: '学位证书', // title: '学位证书',
// code: 'interviewXwzs', // code: 'interviewXwzs',
...@@ -76,22 +76,21 @@ export default { ...@@ -76,22 +76,21 @@ export default {
// code: 'interviewYwjl', // code: 'interviewYwjl',
// view: { to: { path: '/my/interview', query: { active: 'interview_ywjl' } } } // view: { to: { path: '/my/interview', query: { active: 'interview_ywjl' } } }
// }, // },
// { {
// title: '成绩单', title: '成绩单',
// code: 'interviewCjd', code: 'interviewCjd',
// view: { to: { path: '/my/interview', query: { active: 'interview_cjd' } } } view: { to: { path: '/my/interview', query: { active: 'interview_cjd' } } }
// }, },
// { {
// title: '2寸照片', title: '2寸照片',
// code: 'interviewZp', code: 'interviewZp',
// view: { to: { path: '/my/interview', query: { active: 'interview_zp' } } } view: { to: { path: '/my/interview', query: { active: 'interview_zp' } } }
// } },
{
// { title: '推荐信',
// title: '推荐信', code: 'interviewTjx',
// code: 'interviewTjx', view: { to: { path: '/my/interview', query: { active: 'interview_tjx' } } }
// view: { to: { path: '/my/application', query: { active: 'application_tjx' } } } }
// }
] ]
] ]
} }
......
...@@ -38,8 +38,9 @@ export default function(_this) { ...@@ -38,8 +38,9 @@ export default function(_this) {
} }
}, },
form: { form: {
// next: { to: { query: { active: 'interview_zp' } } }, next: { to: { query: { active: 'interview_tjx' } } },
submitText: '申请面试', hasButton: false,
// submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' }, model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: {}, options: {},
items: [ items: [
......
...@@ -32,7 +32,8 @@ export default function(_this) { ...@@ -32,7 +32,8 @@ export default function(_this) {
} }
}, },
form: { form: {
next: { to: { query: { active: 'interview_ywjl' } } }, prev: { to: { query: { active: 'interview_tjx' } } },
next: { to: { query: { active: 'interview_zp' } } },
hasButton: false, hasButton: false,
options: { 'label-position': 'top' }, options: { 'label-position': 'top' },
hint: ` hint: `
......
import byzs from './byzs' import byzs from './byzs'
import tjx from './tjx'
// import xwzs from './xwzs' // import xwzs from './xwzs'
// import ywjl from './ywjl' // import ywjl from './ywjl'
// import zp from './zp' import zp from './zp'
import cjd from './cjd'
export default function(_this) { export default function(_this) {
return { return {
id: 'interview', id: 'interview',
title: '申请面试', 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) { ...@@ -38,7 +38,7 @@ export default function(_this) {
} }
}, },
form: { form: {
prev: { to: { query: { active: 'interview_byzs' } } }, prev: { to: { query: { active: 'interview_cjd' } } },
submitText: '申请面试', submitText: '申请面试',
model: { submission_stage: 'INTERVIEW_APPLICATION' }, model: { submission_stage: 'INTERVIEW_APPLICATION' },
options: {}, options: {},
......
...@@ -9,6 +9,8 @@ ...@@ -9,6 +9,8 @@
@back="$router.push('/my/account')" @back="$router.push('/my/account')"
@prev="handlePrev" @prev="handlePrev"
@next="handleNext" @next="handleNext"
@uploaded="getApplication"
v-if="detail"
> >
<template #aside-append> <template #aside-append>
<div class="aside-payment"><a href="https://accounts.ezijing.com/payment" target="_blank">查看缴费记录</a></div> <div class="aside-payment"><a href="https://accounts.ezijing.com/payment" target="_blank">查看缴费记录</a></div>
...@@ -82,6 +84,9 @@ export default { ...@@ -82,6 +84,9 @@ export default {
}, },
showSubmitedDialog() { showSubmitedDialog() {
return this.isSubmited && this.currentActive === 'interview_byzs' return this.isSubmited && this.currentActive === 'interview_byzs'
},
user() {
return this.$store.state.user
} }
}, },
methods: { methods: {
...@@ -115,6 +120,40 @@ export default { ...@@ -115,6 +120,40 @@ export default {
}, },
handleNext(to) { handleNext(to) {
this.$router.push(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() { beforeMount() {
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论