|
@@ -97,6 +97,7 @@
|
|
|
<el-container>
|
|
|
<section class="main-section">
|
|
|
<MyFullCalendar
|
|
|
+ ref="my-FullCalendar"
|
|
|
:events="calendarEvents"
|
|
|
@dateClick="dateClick"
|
|
|
@change="queryWorkListByTime"
|
|
@@ -144,7 +145,7 @@
|
|
|
:title="'编辑日程'"
|
|
|
:visible.sync="updateSchedule.visible"
|
|
|
:data="updateSchedule.data"
|
|
|
- @confirm="queryWorkListByTime(calendarView)"
|
|
|
+ @confirm="queryWorkListByTime(calendarView);changeSuccess('update')"
|
|
|
/>
|
|
|
<calendar-dialog
|
|
|
:title="'新建日程'"
|
|
@@ -159,7 +160,7 @@
|
|
|
:visible.sync="visibleSchedule"
|
|
|
:detail-data="updateSchedule.data"
|
|
|
:title="'修改排期'"
|
|
|
- @update="queryWorkListByTime(calendarView)"
|
|
|
+ @update="queryWorkListByTime(calendarView);changeSuccess('update')"
|
|
|
/>
|
|
|
<!-- 排期操作弹框 -->
|
|
|
</el-container>
|
|
@@ -191,6 +192,11 @@ export default {
|
|
|
return Array.isArray(val) ? val.join(',') : val
|
|
|
}
|
|
|
},
|
|
|
+ provide() {
|
|
|
+ return {
|
|
|
+ control: this.control
|
|
|
+ }
|
|
|
+ },
|
|
|
data() {
|
|
|
return {
|
|
|
activeName: '1',
|
|
@@ -219,7 +225,23 @@ export default {
|
|
|
realname: localStorage.getItem('realname'),
|
|
|
nowDetailData: null, // 当前日程详情
|
|
|
showDetail: false,
|
|
|
- visibleSchedule: false // 排期任务弹框
|
|
|
+ visibleSchedule: false, // 排期任务弹框
|
|
|
+ control: {
|
|
|
+ update: null,
|
|
|
+ delete: null
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ control: {
|
|
|
+ handler(newV, oldV) {
|
|
|
+ if (newV.update) {
|
|
|
+ this.handleEdit(newV.update)
|
|
|
+ } else if (newV.delete) {
|
|
|
+ this.handleDelete(newV.delete)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ deep: true
|
|
|
}
|
|
|
},
|
|
|
created() {
|
|
@@ -227,7 +249,7 @@ export default {
|
|
|
},
|
|
|
mounted() {
|
|
|
this.$store.state.data.status = false
|
|
|
- document.body.addEventListener('click', e => {
|
|
|
+ document.body.addEventListener('click', e => { // 日历弹出层操作
|
|
|
const event = document.querySelector('.show-schedule-detail')
|
|
|
const isIn = e.target.className === 'fc-content' || e.target.className === 'fc-time' || e.target.className === 'fc-title'
|
|
|
if (!event || isIn) {
|
|
@@ -307,6 +329,7 @@ export default {
|
|
|
this.showDetail = false
|
|
|
this.queryWorkListByTime(this.calendarView)
|
|
|
this.$message({ type: 'success', message: '删除成功!' })
|
|
|
+ this.changeSuccess('delete')
|
|
|
}
|
|
|
},
|
|
|
async deleteSchedule_0() { // 删除排期
|
|
@@ -315,6 +338,7 @@ export default {
|
|
|
this.showDetail = false
|
|
|
this.queryWorkListByTime(this.calendarView)
|
|
|
this.$message({ message: '删除成功', type: 'success', duration: 1000, offset: 150 })
|
|
|
+ this.changeSuccess('delete')
|
|
|
}
|
|
|
},
|
|
|
async queryWorkListByTime(view) { // 获取指定时间段用户日程信息
|
|
@@ -388,7 +412,14 @@ export default {
|
|
|
},
|
|
|
handleDelete(data) { // 日程列表中的删除
|
|
|
this.nowDetailData = data
|
|
|
- this.deleteSchedule
|
|
|
+ this.deleteSchedule()
|
|
|
+ },
|
|
|
+ changeSuccess(control) {
|
|
|
+ if (control === 'update') {
|
|
|
+ this.control.update = null
|
|
|
+ } else if (control === 'delete') {
|
|
|
+ this.control.delete = null
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
}
|