Commit 11d19885 authored by 冷玲鹏's avatar 冷玲鹏

课程管理-逻辑流程

parent 9d564b71
...@@ -61,10 +61,10 @@ ...@@ -61,10 +61,10 @@
</div> </div>
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
<div style="display: flex;justify-content: center"> <!-- <div style="display: flex;justify-content: center">
<el-button type="primary" style="margin-top: 20px" @click="$emit('Approve')">通过中期申请</el-button> <el-button type="primary" style="margin-top: 20px" @click="$emit('Approve')">通过中期申请</el-button>
<el-button type="primary" style="margin-top: 20px" @click="$emit('Reject')">驳回中期申请</el-button> <el-button type="primary" style="margin-top: 20px" @click="$emit('Reject')">驳回中期申请</el-button>
</div> </div>-->
</div> </div>
</template> </template>
...@@ -75,7 +75,7 @@ import ElDescriptions from '@/components/descriptionsList/e-desc.vue' ...@@ -75,7 +75,7 @@ import ElDescriptions from '@/components/descriptionsList/e-desc.vue'
export default { export default {
name: 'MidProject', name: 'MidProject',
components: { ElDescriptions, ElDescriptionsItem }, components: { ElDescriptions, ElDescriptionsItem },
emits: ['download', 'Approve', 'Reject'], /* emits: ['download', 'Approve', 'Reject'],*/
data() { data() {
return { return {
comments: '', comments: '',
......
...@@ -8,8 +8,8 @@ ...@@ -8,8 +8,8 @@
</el-steps> </el-steps>
</div> </div>
<div class="tab-pane"> <div class="tab-pane">
<el-tabs type="border-card"> <el-tabs v-model="activeName" type="border-card">
<el-tab-pane label="申报信息" style="margin-left: -10px;"> <el-tab-pane label="申报信息" name="first" style="margin-left: -10px;">
<div style="display: flex;width: 100%;justify-content: center;margin-top: 15px"> <div style="display: flex;width: 100%;justify-content: center;margin-top: 15px">
<p style="margin: 10px 0;font-size: 18px">课题名称及申请人基本情况</p> <p style="margin: 10px 0;font-size: 18px">课题名称及申请人基本情况</p>
</div> </div>
...@@ -268,7 +268,7 @@ ...@@ -268,7 +268,7 @@
<el-button type="primary" style="margin-top: 20px" @click="Reject">驳回</el-button> <el-button type="primary" style="margin-top: 20px" @click="Reject">驳回</el-button>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane v-if="firstReview ==='立项审批中(立项评审专家指定中)'" label="专家列表"> <el-tab-pane label="专家列表" name="second" v-if="firstReview ==='立项审批中(立项评审专家指定中)'">
<div style="display: flex;width: 100%;justify-content: center;margin-top: 15px"> <div style="display: flex;width: 100%;justify-content: center;margin-top: 15px">
<p style="margin: 10px 0;font-size: 18px">立项评审专家列表</p> <p style="margin: 10px 0;font-size: 18px">立项评审专家列表</p>
</div> </div>
...@@ -428,9 +428,137 @@ ...@@ -428,9 +428,137 @@
</div> </div>
</el-dialog> </el-dialog>
</el-tab-pane> </el-tab-pane>
<el-tab-pane v-if="firstReview ==='立项审批中(专家立项评审中)'|| firstReview ==='专家立项评审完成'|| firstReview ==='立项评审完成'" label="立项评审结果"> <el-tab-pane label="立项评审结果" name="third" v-if="firstReview ==='立项审批中(专家立项评审中)'|| firstReview ==='专家立项评审完成'|| firstReview ==='立项评审完成'" >
暂无数据 <div>
<div v-if="firstReview === '专家立项评审完成'"> <div class="review-content">
<div style="text-align: center; margin: 20px 0; font-size: 24px; color: #000000">
评审专家列表
</div>
<el-table
style="white-space: pre-wrap;"
border
:data="listOfReviewers"
>
<el-table-column width="180" label="专家姓名" prop="nameOfTheExpert" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.nameOfTheExpert }}
</div>
</template>
</el-table-column>
<el-table-column
width="130"
label="专家手机号"
prop="expertSMobilePhoneNumber"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.expertSMobilePhoneNumber }}
</div>
</template>
</el-table-column>
<el-table-column label="职称" prop="jobTitle" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.jobTitle }}
</div>
</template>
</el-table-column>
<el-table-column label="职务" prop="office" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.office }}
</div>
</template>
</el-table-column>
<el-table-column label="单位" prop="unit" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.unit }}
</div>
</template>
</el-table-column>
<el-table-column label="研究方向" prop="researchInterests" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.researchInterests }}
</div>
</template>
</el-table-column>
<el-table-column label="邮箱" prop="email" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.email }}
</div>
</template>
</el-table-column>
</el-table>
</div>
<div class="review-content">
<div style="text-align: center; margin: 20px 0; font-size: 24px; color: #000000">
专家评审结果
</div>
<el-table
style="white-space: pre-wrap;"
border
:data="listOfReviewExperts"
>
<el-table-column width="180" label="专家姓名" prop="nameOfTheExpert" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.nameOfTheExpert }}
</div>
</template>
</el-table-column>
<el-table-column
width="130"
label="专家手机号"
prop="expertSMobilePhoneNumber"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.expertSMobilePhoneNumber }}
</div>
</template>
</el-table-column>
<el-table-column width="100" label="得分" prop="score" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.score }}
</div>
</template>
</el-table-column>
<el-table-column label="评审意见" prop="comments" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.comments }}
</div>
</template>
</el-table-column>
<el-table-column
label="是否愿意担任本课题指导专家"
prop="guidanceSpecialists"
:show-overflow-tooltip="true"
>
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.guidanceSpecialists }}
</div>
</template>
</el-table-column>
<el-table-column label="附件" prop="annex" :show-overflow-tooltip="true">
<template slot-scope="scope">
<div style="word-spacing: normal">
{{ scope.row.annex }}
</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
<div v-if="firstReview === '专家立项评审完成'|| firstReview ==='立项评审完成'">
<div style="display: flex;width: 100%;justify-content: center;margin-top: 15px"> <div style="display: flex;width: 100%;justify-content: center;margin-top: 15px">
<p style="margin: 10px 0;font-size: 18px">管理员评审结果</p> <p style="margin: 10px 0;font-size: 18px">管理员评审结果</p>
</div> </div>
...@@ -456,14 +584,22 @@ ...@@ -456,14 +584,22 @@
</div> </div>
</div> </div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane v-if="secondReview ==='中期申请中'" label="项目中期"> <el-tab-pane label="项目中期" name="fourth" v-if="secondReview ==='中期申请中'||secondReview ==='中期评审中'" >
<MidProject <MidProject @download="console.log('下载成功')"/>
@Approve="Approve1" <div v-if="buttonSwitch2 === '中期申请完成'">
@Reject="Reject1" <div style="display: flex;justify-content: center;margin-top: 15px">
@download="console.log('下载成功')" <el-button type="primary" style="margin-top: 20px" @click="passMidtermApplication">通过中期申请</el-button>
/> <el-button type="primary" style="margin-top: 20px" @click="rejectMidtermApplication">驳回中期申请</el-button>
</div>
</div>
<div v-if="buttonSwitch2 === '中期评审中'">
<div style="display: flex;justify-content: center;margin-top: 15px">
<el-button type="primary" @click="saveProjectApprovalResult">保存中期评审结果</el-button>
<el-button type="primary" @click="publishProjectApprovalResult">公布中期评审结果</el-button>
</div>
</div>
</el-tab-pane> </el-tab-pane>
<el-tab-pane label="项目验收"> <el-tab-pane label="项目验收" name="fifth" v-if="thirdReview ==='中期评审完成'">
<Acceptance /> <Acceptance />
</el-tab-pane> </el-tab-pane>
</el-tabs> </el-tabs>
...@@ -475,6 +611,7 @@ ...@@ -475,6 +611,7 @@
> >
返回 返回
</el-button> </el-button>
<el-backtop target=".page-component__scroll .el-scrollbar__wrap"></el-backtop>
</div> </div>
</div> </div>
</template> </template>
...@@ -495,6 +632,8 @@ export default { ...@@ -495,6 +632,8 @@ export default {
data() { data() {
return { return {
active: 0, active: 0,
// 标签页顺序
activeName: 'first',
// 通过不通过 // 通过不通过
selectedValue: '1', selectedValue: '1',
// 初审 // 初审
...@@ -503,8 +642,9 @@ export default { ...@@ -503,8 +642,9 @@ export default {
secondReview: '中期评审完成', secondReview: '中期评审完成',
// 验收 // 验收
thirdReview: '验收完成', thirdReview: '验收完成',
// (初审到中期审核)按钮显示状态
buttonSwitch: '', buttonSwitch: '',
buttonSwitch2: '',
dialogAddExpert: false, dialogAddExpert: false,
// 显示搜索条件 // 显示搜索条件
showSearch: true, showSearch: true,
...@@ -626,33 +766,78 @@ export default { ...@@ -626,33 +766,78 @@ export default {
workUnit: '某科技公司人工智能研究院', workUnit: '某科技公司人工智能研究院',
researchExpertise: '自然语言处理与数据挖掘' researchExpertise: '自然语言处理与数据挖掘'
} }
],
// 立项评审结果-评审专家列表
listOfReviewers: [
{
nameOfTheExpert: '张3',
expertSMobilePhoneNumber: '13688888888',
jobTitle: '教授',
office: '123',
unit: '123',
researchInterests: '12',
email: '123@qq.com'
},
{
nameOfTheExpert: '张3',
expertSMobilePhoneNumber: '13688888888',
jobTitle: '教授',
office: '123',
unit: '123',
researchInterests: '12',
email: '123@qq.com'
}
],
// 立项评审结果-专家评审结果
listOfReviewExperts: [
{
nameOfTheExpert: '张3',
expertSMobilePhoneNumber: '13688888888',
score: 90,
comments: '建议立为重点课题',
guidanceSpecialists: '是',
annex: ''
},
{
nameOfTheExpert: 'asdf22223',
expertSMobilePhoneNumber: '18882459532',
score: 80,
comments: '建议立为一般课题',
guidanceSpecialists: '是',
annex: ''
}
] ]
} }
}, },
created() {
// 申请材料
if (this.$route.query.state === '申请信息') {
this.state = 0
this.active = 0
this.activeName = 'first'
}
// 初审两步骤
if (this.$route.query.state === '立项审批中') {
this.state = 1
this.active = 2
this.activeName = 'second'
}
if (this.$route.query.state === '立项审核结果') {
this.state = 1
this.active = 2
this.activeName = 'third'
}
// 中期申请
if (this.$route.query.state === '中期申请中') {
this.state = 1
this.active = 2
this.activeName = 'fourth'
}
},
methods: { methods: {
goBack() { goBack() {
this.$router.go(-1) this.$router.go(-1)
}, },
/** 通过*/
Approve() {
this.Success()
this.firstReview = '立项审批中(立项评审专家指定中)'
this.active = 1
},
/** 驳回*/
Reject() {
this.Success()
},
/** 通过项目中期*/
Approve1() {
this.Success()
this.secondReview = '中期评审中'
this.active = 2
},
/** 驳回项目中期*/
Reject1() {
this.Success()
},
/** 操作成功*/ /** 操作成功*/
Success() { Success() {
this.$alert( this.$alert(
...@@ -746,11 +931,23 @@ export default { ...@@ -746,11 +931,23 @@ export default {
}) })
}) })
}, },
/** 通过*/
Approve() {
this.Success()
this.firstReview = '立项审批中(立项评审专家指定中)'
this.activeName = 'second'
this.active = 1
},
/** 驳回*/
Reject() {
this.Success()
},
/** 提交给专家*/ /** 提交给专家*/
submitToExperts() { submitToExperts() {
this.Success() this.Success()
this.firstReview = '立项审批中(专家立项评审中)' this.firstReview = '立项审批中(专家立项评审中)'
this.buttonSwitch = '保存立项审批结果' this.buttonSwitch = '保存立项审批结果'
this.activeName = 'third'
this.active = 1 this.active = 1
}, },
/** 保存立项评审结果*/ /** 保存立项评审结果*/
...@@ -769,10 +966,23 @@ export default { ...@@ -769,10 +966,23 @@ export default {
/** 开始中期评审*/ /** 开始中期评审*/
startMidTermReview() { startMidTermReview() {
this.Success() this.Success()
this.activeName = 'fourth'
this.firstReview = '立项评审完成' this.firstReview = '立项评审完成'
this.secondReview = '中期申请中' this.secondReview = '中期申请中'
this.buttonSwitch2 = '中期申请完成'
this.active = 2 this.active = 2
}, },
/** 通过项目中期*/
passMidtermApplication() {
this.Success()
this.buttonSwitch2 = '中期评审中'
this.secondReview = '中期评审中'
this.active = 2
},
/** 驳回项目中期*/
rejectMidtermApplication() {
this.Success()
},
/** 勾选专家列表数据*/ /** 勾选专家列表数据*/
selectionChange(val) { selectionChange(val) {
this.selectExpertIds = val.map(item => item.id) this.selectExpertIds = val.map(item => item.id)
......
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