|
@@ -3,10 +3,11 @@
|
|
|
<div style="display: flex;justify-content: space-between;margin-bottom: 8px">
|
|
<div style="display: flex;justify-content: space-between;margin-bottom: 8px">
|
|
|
<div style="font-size: 24px">{{ m.meetingName }}</div>
|
|
<div style="font-size: 24px">{{ m.meetingName }}</div>
|
|
|
<div>
|
|
<div>
|
|
|
|
|
+ <el-button v-if="m.status===1" size="mini" type="primary" @click="endMeetingClick(m)">结束会议
|
|
|
|
|
+ </el-button>
|
|
|
<el-button size="mini" @click="meetingResultConfirm" v-if="meetingResultConfirmVisible" type="primary" style="margin-right: 20px">会议结果确认</el-button>
|
|
<el-button size="mini" @click="meetingResultConfirm" v-if="meetingResultConfirmVisible" type="primary" style="margin-right: 20px">会议结果确认</el-button>
|
|
|
<el-button size="mini" @click="exportPdf" style="margin-right: 20px" v-if="workScoreVisible">导出</el-button>
|
|
<el-button size="mini" @click="exportPdf" style="margin-right: 20px" v-if="workScoreVisible">导出</el-button>
|
|
|
</div>
|
|
</div>
|
|
|
-
|
|
|
|
|
</div>
|
|
</div>
|
|
|
<el-descriptions title="" :column="2" :size="size" border>
|
|
<el-descriptions title="" :column="2" :size="size" border>
|
|
|
<el-descriptions-item>
|
|
<el-descriptions-item>
|
|
@@ -43,10 +44,10 @@
|
|
|
参会人员
|
|
参会人员
|
|
|
</template>
|
|
</template>
|
|
|
<span v-if="m.innerAttendees!=''" v-for="(item,index) in JSON.parse(m.innerAttendees)">
|
|
<span v-if="m.innerAttendees!=''" v-for="(item,index) in JSON.parse(m.innerAttendees)">
|
|
|
- <el-badge is-dot v-if="item.flag==='1'">
|
|
|
|
|
|
|
+ <el-badge is-dot v-if="item.flag==='1'" type="success">
|
|
|
{{ item.name }}
|
|
{{ item.name }}
|
|
|
</el-badge>
|
|
</el-badge>
|
|
|
- <el-badge is-dot v-else type="info">
|
|
|
|
|
|
|
+ <el-badge is-dot v-else type="danger">
|
|
|
{{ item.name }}
|
|
{{ item.name }}
|
|
|
</el-badge>
|
|
</el-badge>
|
|
|
</span>
|
|
</span>
|
|
@@ -102,7 +103,7 @@
|
|
|
</el-table-column>
|
|
</el-table-column>
|
|
|
<el-table-column prop="scores" label="评分" width="150" align="center" v-if="workScoreVisible">
|
|
<el-table-column prop="scores" label="评分" width="150" align="center" v-if="workScoreVisible">
|
|
|
<template slot-scope="scope">
|
|
<template slot-scope="scope">
|
|
|
- <el-input-number size="mini" :precision="2" :step="0.1" :max="10" :min="0" v-model="scope.row.score"
|
|
|
|
|
|
|
+ <el-input-number size="mini" :precision="2" :step="0.1" :max="10" :min="0" v-model="scope.row.score" :value="0"
|
|
|
@change="workComment(scope.row)">
|
|
@change="workComment(scope.row)">
|
|
|
{{ scope.row.score }}
|
|
{{ scope.row.score }}
|
|
|
</el-input-number>
|
|
</el-input-number>
|
|
@@ -195,6 +196,7 @@
|
|
|
<script>
|
|
<script>
|
|
|
|
|
|
|
|
import {
|
|
import {
|
|
|
|
|
+ endMeeting,
|
|
|
getMeetingByWeekss,
|
|
getMeetingByWeekss,
|
|
|
getTaskScheduleRemark,
|
|
getTaskScheduleRemark,
|
|
|
getWeeksRecordsByWeeks, meetingAuthById, weekMeetingConfirms,
|
|
getWeeksRecordsByWeeks, meetingAuthById, weekMeetingConfirms,
|
|
@@ -256,19 +258,25 @@ export default {
|
|
|
projects:[],
|
|
projects:[],
|
|
|
row:null,
|
|
row:null,
|
|
|
workScoreVisible:false,
|
|
workScoreVisible:false,
|
|
|
- meetingConfirms:[]
|
|
|
|
|
|
|
+ meetingConfirms:[],
|
|
|
|
|
+ permissions:null
|
|
|
}
|
|
}
|
|
|
},
|
|
},
|
|
|
created() {
|
|
created() {
|
|
|
|
|
|
|
|
},
|
|
},
|
|
|
- mounted() {
|
|
|
|
|
- this.meetingId = this.$route.query.meetingId;
|
|
|
|
|
- this.weeks = this.$route.query.weeks;
|
|
|
|
|
- this.getData()
|
|
|
|
|
|
|
+ mounted() {
|
|
|
|
|
+ this.meetingId = this.$route.query.meetingId;
|
|
|
|
|
+ this.weeks = this.$route.query.weeks;
|
|
|
|
|
+ this.getData()
|
|
|
},
|
|
},
|
|
|
methods: {
|
|
methods: {
|
|
|
- getData() {
|
|
|
|
|
|
|
+ async executeCreate(){
|
|
|
|
|
+ await this.getData()
|
|
|
|
|
+ this.setPermissions()
|
|
|
|
|
+ },
|
|
|
|
|
+ setPermissions(){
|
|
|
|
|
+ let loginUserId=this.$store.getters.userId
|
|
|
//获取工作评分与工作评论权限
|
|
//获取工作评分与工作评论权限
|
|
|
let permissions= this.$store.getters.permissions;
|
|
let permissions= this.$store.getters.permissions;
|
|
|
for(let i=0;i<permissions.length;i++){
|
|
for(let i=0;i<permissions.length;i++){
|
|
@@ -278,25 +286,39 @@ export default {
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ let meeting=this.m;
|
|
|
|
|
+ let meetingStatus=meeting.status
|
|
|
|
|
+ let workScoreVisible=this.workScoreVisible
|
|
|
|
|
+ if(meetingStatus===2 && workScoreVisible===true){
|
|
|
|
|
+ this.workScoreVisible=true
|
|
|
|
|
+ }else{
|
|
|
|
|
+ this.workScoreVisible=false
|
|
|
|
|
+ }
|
|
|
|
|
+ let innerAttendess=JSON.parse(meeting.innerAttendees)
|
|
|
|
|
+ for(let i=0;i<innerAttendess.length;i++){
|
|
|
|
|
+ let user=innerAttendess[i]
|
|
|
|
|
+ if(Number(user.id)===Number(loginUserId)){
|
|
|
|
|
+ if(user.flag==='0' && meetingStatus===2){
|
|
|
|
|
+ this.meetingResultConfirmVisible=true
|
|
|
|
|
+ break
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ },
|
|
|
|
|
+ getData() {
|
|
|
let loginUserId=this.$store.getters.userId
|
|
let loginUserId=this.$store.getters.userId
|
|
|
let meetingId = this.meetingId
|
|
let meetingId = this.meetingId
|
|
|
let weeks = this.weeks
|
|
let weeks = this.weeks
|
|
|
if (meetingId != null && weeks != null) {
|
|
if (meetingId != null && weeks != null) {
|
|
|
- getWeeksRecordsByWeeks(meetingId, weeks).then(res => {
|
|
|
|
|
|
|
+ getWeeksRecordsByWeeks(meetingId, weeks).then(res => {
|
|
|
this.tableData = res.data.workContent
|
|
this.tableData = res.data.workContent
|
|
|
this.getSpanArr(this.tableData);
|
|
this.getSpanArr(this.tableData);
|
|
|
this.m = res.data.meeting
|
|
this.m = res.data.meeting
|
|
|
- let innerAttendess=JSON.parse(this.m.innerAttendees)
|
|
|
|
|
- for(let i=0;i<innerAttendess.length;i++){
|
|
|
|
|
- let user=innerAttendess[i]
|
|
|
|
|
- if(Number(user.id)===Number(loginUserId)){
|
|
|
|
|
- if(user.flag==='0'){
|
|
|
|
|
- this.meetingResultConfirmVisible=true
|
|
|
|
|
- break
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
|
|
+ let permissions=this.permissions;
|
|
|
|
|
+ if(permissions===null){
|
|
|
|
|
+ this.setPermissions();
|
|
|
|
|
+ this.permissions=1
|
|
|
|
|
+ }
|
|
|
})
|
|
})
|
|
|
} else {
|
|
} else {
|
|
|
//获取当前周会会议id与所属周数
|
|
//获取当前周会会议id与所属周数
|
|
@@ -313,16 +335,6 @@ export default {
|
|
|
this.tableData = res.data.workContent
|
|
this.tableData = res.data.workContent
|
|
|
this.getSpanArr(this.tableData);
|
|
this.getSpanArr(this.tableData);
|
|
|
this.m = res.data.meeting
|
|
this.m = res.data.meeting
|
|
|
- let innerAttendess=JSON.parse(this.m.innerAttendees)
|
|
|
|
|
- for(let i=0;i<innerAttendess.length;i++){
|
|
|
|
|
- let user=innerAttendess[i]
|
|
|
|
|
- if(Number(user.id)===Number(loginUserId)){
|
|
|
|
|
- if(user.flag==='0'){
|
|
|
|
|
- this.meetingResultConfirmVisible=true
|
|
|
|
|
- break
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
})
|
|
})
|
|
|
} else {
|
|
} else {
|
|
|
this.tableData = []
|
|
this.tableData = []
|
|
@@ -410,6 +422,11 @@ export default {
|
|
|
});
|
|
});
|
|
|
},
|
|
},
|
|
|
workMeetingsUpdate(m){
|
|
workMeetingsUpdate(m){
|
|
|
|
|
+ let status=m.status
|
|
|
|
|
+ if(status===2){
|
|
|
|
|
+ this.$message.error("会议已经结束,不能更改会议相关信息!")
|
|
|
|
|
+ return
|
|
|
|
|
+ }
|
|
|
workMeetingsUpdates(m).then(res => {
|
|
workMeetingsUpdates(m).then(res => {
|
|
|
this.$message({
|
|
this.$message({
|
|
|
message: '操作成功!',
|
|
message: '操作成功!',
|
|
@@ -596,7 +613,28 @@ export default {
|
|
|
},
|
|
},
|
|
|
closeWorkPlanWin(){
|
|
closeWorkPlanWin(){
|
|
|
this.getData()
|
|
this.getData()
|
|
|
- }
|
|
|
|
|
|
|
+ },
|
|
|
|
|
+ endMeetingClick(row) {
|
|
|
|
|
+ let id = row.id;
|
|
|
|
|
+ let remark=row.remark
|
|
|
|
|
+ meetingAuthById(id).then(res => {
|
|
|
|
|
+ if (res.success === false) {
|
|
|
|
|
+ this.$message.error(res.data)
|
|
|
|
|
+ } else {
|
|
|
|
|
+ if(remark===undefined || remark===null || remark==='' || remark.replace(/\s+/g, "")===''){
|
|
|
|
|
+ this.$message.error("请将参会情况填写完整!")
|
|
|
|
|
+ }else{
|
|
|
|
|
+ endMeeting(id).then(res => {
|
|
|
|
|
+ this.$message({
|
|
|
|
|
+ message: '操作成功!',
|
|
|
|
|
+ type: 'success'
|
|
|
|
|
+ });
|
|
|
|
|
+ this.getData();
|
|
|
|
|
+ })
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+ },
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
</script>
|
|
</script>
|