|
@@ -159,13 +159,16 @@ export default {
|
|
|
//日历事件点击事件
|
|
|
eventClick({ event }) {
|
|
|
let arr = this.events.filter(fil => fil.id == event.id);
|
|
|
- if (arr.length > 0) this.form = arr[0];
|
|
|
- else {
|
|
|
+ if (arr.length > 0) {
|
|
|
+ if (_.get(arr[0], 'editable', true)) {
|
|
|
+ this.form = arr[0];
|
|
|
+ this.drawer = true;
|
|
|
+ this.formIsNew = false;
|
|
|
+ } else this.$message.warning('请在设置假期中修改假期信息');
|
|
|
+ } else {
|
|
|
console.warn(`无对应id事件`);
|
|
|
return;
|
|
|
}
|
|
|
- this.drawer = true;
|
|
|
- this.formIsNew = false;
|
|
|
},
|
|
|
//列表编辑事件
|
|
|
toEdit({ data, index }) {
|
|
@@ -240,6 +243,7 @@ export default {
|
|
|
//关闭抽屉函数
|
|
|
toClose() {
|
|
|
this.drawer = false;
|
|
|
+ this.form = {};
|
|
|
this.formIsNew = true;
|
|
|
this.setHeight();
|
|
|
},
|
|
@@ -248,15 +252,28 @@ export default {
|
|
|
this.$set(this, `heights`, heights);
|
|
|
},
|
|
|
//更新假期列表
|
|
|
- setVacation(data) {
|
|
|
- console.log(data);
|
|
|
+ setVacation({ data, type }) {
|
|
|
this.$set(this, `vacation`, data);
|
|
|
- let arr = data.map(i => {
|
|
|
- i.color = `red`;
|
|
|
- i.editable = false;
|
|
|
- return i;
|
|
|
- });
|
|
|
- this.$set(this, `events`, this.events.concat(arr));
|
|
|
+ let arr = [];
|
|
|
+ if (type === 'add') {
|
|
|
+ arr = data.map(i => {
|
|
|
+ i.color = `red`;
|
|
|
+ i.editable = false;
|
|
|
+ i.id ? '' : (i.id = `p${new Date().getTime()}`);
|
|
|
+ return i;
|
|
|
+ });
|
|
|
+ this.$set(this, `events`, this.selectList.concat(arr));
|
|
|
+ } else if (type === 'edit') {
|
|
|
+ for (const i of data) {
|
|
|
+ this.$set(
|
|
|
+ this.events,
|
|
|
+ _.findIndex(this.events, item => item.id == i.id),
|
|
|
+ i
|
|
|
+ );
|
|
|
+ }
|
|
|
+ } else if (type === 'delete') {
|
|
|
+ this.$set(this, `events`, this.selectList.concat(data));
|
|
|
+ }
|
|
|
},
|
|
|
//判断是否在假期中
|
|
|
inVacation(start, end) {
|
|
@@ -283,6 +300,7 @@ export default {
|
|
|
// console.log(startTime < vacE);
|
|
|
if (startTime < vacE) {
|
|
|
res = false;
|
|
|
+ console.warn(`case2`);
|
|
|
break;
|
|
|
}
|
|
|
} else {
|
|
@@ -290,8 +308,9 @@ export default {
|
|
|
// console.log(`in else`);
|
|
|
// console.log(`endTime:${endTime}`);
|
|
|
// console.log(`vacS:${vacS}`);
|
|
|
- if (endTime < vacS) {
|
|
|
+ if (endTime > vacS) {
|
|
|
res = false;
|
|
|
+ console.warn(`case1`);
|
|
|
break;
|
|
|
}
|
|
|
}
|