提交 47468a55 authored 作者: 王鹏飞's avatar 王鹏飞

chore: 修改报名申请

上级 14ff36b3
......@@ -4,6 +4,7 @@
<script>
import AppLayout from '@/components/layout'
export default {
name: 'app-layout-normal',
components: { AppLayout }
}
</script>
......@@ -6,16 +6,7 @@ export default function(_this) {
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'
]
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) => {
......@@ -47,7 +38,8 @@ 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: 'REPORT_CARD_CN' }
data: { file_type: 'REPORT_CARD_CN' },
accept: 'image/*'
}
},
{
......@@ -57,7 +49,8 @@ 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: 'REPORT_CARD_EN' }
data: { file_type: 'REPORT_CARD_EN' },
accept: 'image/*'
}
}
]
......
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 xlrz from './xlrz'
import zp from './zp'
export default function(_this) {
return {
id: 'admission',
title: '入学办理',
children: [cjd(_this), tjx(_this), xy(_this), xfjn(_this), xlrz(_this)]
children: [cjd(_this), tjx(_this), ywjl, zp(_this), xy(_this), xfjn(_this), xlrz(_this)]
}
}
......@@ -9,27 +9,33 @@ export default function(_this) {
get: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}`,
callback(data) {
const { submission_stage: submissionStage = 'FILLING' } = data.data.material
const stageList = [
'FILLING',
'PREPAYMENT',
'INTERVIEW_APPLICATION',
'AUDITION',
'INTERVIEW',
'PAYMENT',
'REGISTRATION',
'CLOSED'
]
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) > 6
const list = data.data.material.reco_letters || []
const attachment = attachments.reduce(
(result, item) => {
const types = ['RECOMMENDATION_LETTER']
types.forEach(type => {
if (item.file_type_id === type) {
result[type].push(item)
}
})
return result
},
{ RECOMMENDATION_LETTER: [] }
)
// this.form.options.disabled = list.length >= 2
return list.length ? list : [{}, {}]
return list.length ? list.map(item => Object.assign({}, item, attachment)) : [{ ...attachment }, { ...attachment }]
}
},
update: {
action: `${process.env.baseURL}/api/enrollment/v1.0/application-materials/${process.env.projectId}/put`,
beforeRequest(data) {
return { reco_letters: data }
const letters = data.map(item => {
delete item.RECOMMENDATION_LETTER
return item
})
return { reco_letters: letters }
},
callback({ message }) {
// this.form.options.disabled = true
......@@ -45,7 +51,7 @@ export default function(_this) {
form: {
minlength: 2,
prev: { to: { query: { active: 'admission_cjd' } }, isSubmit: true },
next: { to: { query: { active: 'admission_xy' } }, isSubmit: true },
next: { to: { query: { active: 'admission_ywjl' } }, isSubmit: true },
hasAdd: true,
options: { disabled: false, labelWidth: '140px' },
disabled(data) {
......@@ -108,19 +114,28 @@ export default function(_this) {
},
{
type: 'v-select',
values: [
{ value: '老师/导师' },
{ value: '领导' },
{ value: '同学' },
{ value: '同事' },
{ value: '亲属' },
{ value: '朋友' },
{ value: '其他' }
],
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: `${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: 'RECOMMENDATION_LETTER' },
accept: 'image/*'
},
rules: [{ type: 'array', required: true, message: '请上传推荐信附件', trigger: 'change' }],
append: '请上传推荐人署名的推荐信原件照片或扫描件 ',
class: 'upload-letter'
}
]
}
}
......
......@@ -6,16 +6,7 @@ export default function(_this) {
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'
]
const stageList = ['FILLING', 'PREPAYMENT', 'INTERVIEW_APPLICATION', 'AUDITION', 'INTERVIEW', 'PAYMENT', 'REGISTRATION', 'CLOSED']
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 6
const ADMISSION_AGREEMENT = attachments.filter(item => {
return item.file_type_id === 'ADMISSION_AGREEMENT'
......@@ -24,7 +15,7 @@ export default function(_this) {
}
},
form: {
prev: { to: { query: { active: 'admission_tjx' } } },
prev: { to: { query: { active: 'admission_zp' } } },
next: { to: { query: { active: 'admission_xfjn' } } },
hasButton: false,
options: {},
......@@ -39,7 +30,7 @@ export default function(_this) {
data: { file_type: 'ADMISSION_AGREEMENT' }
},
prepend: `
<p><a href="https://zws-imgs-pub.ezijing.com/pc/marywood/%E5%85%A5%E5%AD%A6%E5%8D%8F%E8%AE%AE.pdf" target="_blank" download="入学协议">下载入学协议</a></p>
<p><a href="https://zws-imgs-pub.ezijing.com/pc/marywood/%E5%85%A5%E5%AD%A6%E5%8D%8F%E8%AE%AE.pdf" target="_blank" download="入学协议" style="color:blue">下载入学协议</a></p>
<p>申请者可将签字后的入学协议原件扫描或拍照后提交。</p>
<p>学员应仔细阅读《入学协议》以及课程介绍,如对入学协议或课程有异议,请第一时间与课程顾问咨询确认。请用A4纸打印后,在入学协议上签上姓名和日期,内容需显示完整、格式整齐、字迹清晰可辨。上传文件仅限“jpg,jpeg,pdf,png”格式,文件小于10Mb。</p>
`
......
......@@ -5,16 +5,7 @@ export default {
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'
]
const stageList = ['FILLING', 'PREPAYMENT', 'INTERVIEW_APPLICATION', 'AUDITION', 'INTERVIEW', 'PAYMENT', 'REGISTRATION', 'CLOSED']
this.form.options.disabled = stageList.findIndex(item => item === submissionStage) > 6
const RESUME_EN = attachments.filter(item => {
return item.file_type_id === 'RESUME_EN'
......@@ -23,8 +14,8 @@ export default {
}
},
form: {
prev: { to: { query: { active: 'admission_byzs' } } },
next: { to: { query: { active: 'admission_xy' } } },
prev: { to: { query: { active: 'admission_tjx' } } },
next: { to: { query: { active: 'admission_zp' } } },
hasButton: false,
options: {},
items: [
......@@ -35,11 +26,12 @@ export default {
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' }
data: { file_type: 'RESUME_EN' },
limit: 1
},
append: `
<p>请下载填写英文简历模板后上传 [<a href="https://zws-imgs-pub.oss-cn-beijing.aliyuncs.com/pc/sofia/%E8%8B%B1%E6%96%87%E7%AE%80%E5%8E%86.doc" target="_blank" download="英文简历模板">下载模板</a>]</p>
<p>请将英文简历填写完存为"pdf"格式上传,文件小于10MB。</p>`
<p>请下载填写英文简历模板后上传 [<a href="https://webapp-pub.ezijing.com/project/marywood/marywood%E8%8B%B1%E6%96%87%E7%AE%80%E5%8E%86%E6%A8%A1%E6%9D%BF.doc" target="_blank" download="英文简历模板" style="color:blue">下载模板</a>]</p>
<p>请将英文简历填写完存为"wrod"格式上传,文件小于10MB。</p>`
}
]
}
......
export default function(_this) {
return {
id: 'admission_zp',
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 PERSONAL_PHOTO_FOR_ID = attachments.filter(item => {
return item.file_type_id === 'PERSONAL_PHOTO_FOR_ID'
})
return { PERSONAL_PHOTO_FOR_ID }
}
},
form: {
prev: { to: { query: { active: 'admission_ywjl' } } },
next: { to: { query: { active: 'admission_xy' } } },
hasButton: false,
options: {},
items: [
{
type: 'v-upload',
model: 'PERSONAL_PHOTO_FOR_ID',
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' },
accept: 'image/*',
limit: 1
},
append: '申请者需要上传本人半年以内的彩色近照。<br> 只需上传一个文件,且照片完整、干净。<br> 上传文件仅限“jpg,jpeg,gif,png”格式的图片文件,且文件小于10MB。'
}
]
}
}
}
......@@ -21,13 +21,7 @@
<app-xy />
</template> -->
</vue-form>
<el-dialog
title="办理入学资料提交成功"
:visible.sync="dialogVisible"
:center="true"
:close-on-click-modal="false"
width="348px"
>
<el-dialog title="办理入学资料提交成功" :visible.sync="dialogVisible" :center="true" :close-on-click-modal="false" width="348px">
<div class="dialog-tips">
<p>请确认是否已缴费,如未缴费点击下方缴费按钮 <br />(已缴费,请忽略)</p>
<div class="icon"><img src="https://webapp-pub.ezijing.com/project/application/images/icon_success.png" /></div>
......@@ -167,4 +161,19 @@ export default {
text-align: center;
}
}
::v-deep .upload-letter {
border-top: 1px solid #f1f1f1;
margin-top: 20px;
padding-top: 20px;
.el-form-item__label {
width: auto !important;
float: none !important;
font-size: 14px;
font-weight: 700;
color: #222;
}
.el-form-item__content {
margin: 0 !important;
}
}
</style>
......@@ -8,7 +8,7 @@
"name": "project-pc",
"version": "1.0.0",
"dependencies": {
"@ezijing/vue-form": "^2.2.4",
"@ezijing/vue-form": "^2.2.7",
"axios": "^0.21.1",
"cookie-universal-nuxt": "^2.1.4",
"core-js": "^3.9.1",
......@@ -1010,9 +1010,9 @@
}
},
"node_modules/@ezijing/vue-form": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/@ezijing/vue-form/-/vue-form-2.2.4.tgz",
"integrity": "sha512-pK3E+KMTquSfpUkoz+mP9EbVrcjttKk72KsS75wL5toVC71tt3VysipsKeQcYzJFtOPKNTEbb0af0Um0Fsx3zQ==",
"version": "2.2.7",
"resolved": "https://registry.npmjs.org/@ezijing/vue-form/-/vue-form-2.2.7.tgz",
"integrity": "sha512-i031Pxf2h0N4x/c2FwkJ8XeuCB3mas15UG9X9on5i0aUeU6AKBg1Qbj/Tlka7evRVGsF0Rw+JVAwVCwRy2efpg==",
"dependencies": {
"@vue/babel-helper-vue-jsx-merge-props": "^1.0.0",
"@vue/babel-preset-jsx": "^1.1.2",
......@@ -13723,9 +13723,9 @@
"integrity": "sha512-5a6wqoJV/xEdbRNKVo6I4hO3VjyDq//8q2f9I6PBAvMesJHFauXDorcNCsr9RzvsZnaWi5NYCcfyqP1QeFHFbw=="
},
"@ezijing/vue-form": {
"version": "2.2.4",
"resolved": "https://registry.npmjs.org/@ezijing/vue-form/-/vue-form-2.2.4.tgz",
"integrity": "sha512-pK3E+KMTquSfpUkoz+mP9EbVrcjttKk72KsS75wL5toVC71tt3VysipsKeQcYzJFtOPKNTEbb0af0Um0Fsx3zQ==",
"version": "2.2.7",
"resolved": "https://registry.npmjs.org/@ezijing/vue-form/-/vue-form-2.2.7.tgz",
"integrity": "sha512-i031Pxf2h0N4x/c2FwkJ8XeuCB3mas15UG9X9on5i0aUeU6AKBg1Qbj/Tlka7evRVGsF0Rw+JVAwVCwRy2efpg==",
"requires": {
"@vue/babel-helper-vue-jsx-merge-props": "^1.0.0",
"@vue/babel-preset-jsx": "^1.1.2",
......
......@@ -10,7 +10,7 @@
"generate": "nuxt generate"
},
"dependencies": {
"@ezijing/vue-form": "^2.2.4",
"@ezijing/vue-form": "^2.2.7",
"axios": "^0.21.1",
"cookie-universal-nuxt": "^2.1.4",
"core-js": "^3.9.1",
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论