分离子任务缓存
This commit is contained in:
parent
06663dd1a9
commit
db37cce011
@ -81,9 +81,6 @@ export default {
|
||||
list() {
|
||||
let datas = $A.cloneJSON(this.tasks);
|
||||
datas = datas.filter((data) => {
|
||||
if (data.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (data.complete_at) {
|
||||
return false;
|
||||
}
|
||||
|
@ -444,9 +444,6 @@ export default {
|
||||
myList() {
|
||||
const {projectId, tasks, searchText, projectCompleteShow, userId} = this;
|
||||
const array = tasks.filter((task) => {
|
||||
if (task.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (task.project_id != projectId) {
|
||||
return false;
|
||||
}
|
||||
@ -476,9 +473,6 @@ export default {
|
||||
undoneList() {
|
||||
const {projectId, tasks, searchText, projectCompleteShow} = this;
|
||||
const array = tasks.filter((task) => {
|
||||
if (task.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (task.project_id != projectId) {
|
||||
return false;
|
||||
}
|
||||
@ -508,9 +502,6 @@ export default {
|
||||
completedCount() {
|
||||
const {projectId, tasks} = this;
|
||||
return tasks.filter((task) => {
|
||||
if (task.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (task.project_id != projectId) {
|
||||
return false;
|
||||
}
|
||||
@ -521,9 +512,6 @@ export default {
|
||||
completedList() {
|
||||
const {projectId, tasks, searchText} = this;
|
||||
const array = tasks.filter((task) => {
|
||||
if (task.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (task.project_id != projectId) {
|
||||
return false;
|
||||
}
|
||||
|
@ -466,7 +466,7 @@ export default {
|
||||
},
|
||||
|
||||
computed: {
|
||||
...mapState(['userId', 'projects', 'columns', 'taskId', 'tasks', 'taskContents', 'taskFiles', 'taskPriority']),
|
||||
...mapState(['userId', 'projects', 'columns', 'taskId', 'taskSubs', 'taskContents', 'taskFiles', 'taskPriority']),
|
||||
|
||||
projectName() {
|
||||
if (!this.taskDetail.project_id) {
|
||||
@ -513,7 +513,7 @@ export default {
|
||||
if (!this.taskId) {
|
||||
return [];
|
||||
}
|
||||
return this.tasks.filter(({parent_id}) => {
|
||||
return this.taskSubs.filter(({parent_id}) => {
|
||||
return parent_id == this.taskId
|
||||
}).sort((a, b) => {
|
||||
return a.id - b.id;
|
||||
|
@ -142,11 +142,11 @@ export default {
|
||||
},
|
||||
|
||||
computed: {
|
||||
...mapState(['tasks', 'columns']),
|
||||
...mapState(['taskSubs', 'columns']),
|
||||
|
||||
subTask() {
|
||||
return function(task_id) {
|
||||
return this.tasks.filter(({parent_id}) => {
|
||||
return this.taskSubs.filter(({parent_id}) => {
|
||||
return parent_id == task_id
|
||||
}).sort((a, b) => {
|
||||
return a.id - b.id;
|
||||
|
@ -139,9 +139,6 @@ export default {
|
||||
todayEnd = new Date($A.formatDate("Y-m-d 23:59:59"));
|
||||
let datas = $A.cloneJSON(this.tasks);
|
||||
datas = datas.filter((data) => {
|
||||
if (data.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
if (data.complete_at) {
|
||||
return false;
|
||||
}
|
||||
|
31
resources/assets/js/store/actions.js
vendored
31
resources/assets/js/store/actions.js
vendored
@ -275,7 +275,6 @@ export default {
|
||||
data.forEach((project) => {
|
||||
dispatch("saveProject", project)
|
||||
});
|
||||
return;
|
||||
} else if (state.method.isJson(data)) {
|
||||
let index = state.projects.findIndex(({id}) => id == data.id);
|
||||
if (index > -1) {
|
||||
@ -283,10 +282,10 @@ export default {
|
||||
} else {
|
||||
state.projects.push(data);
|
||||
}
|
||||
}
|
||||
setTimeout(() => {
|
||||
state.method.setStorage("cacheProjects", state.cacheProjects = state.projects);
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
@ -433,7 +432,6 @@ export default {
|
||||
data.forEach((column) => {
|
||||
dispatch("saveColumn", column)
|
||||
});
|
||||
return;
|
||||
} else if (state.method.isJson(data)) {
|
||||
let index = state.columns.findIndex(({id}) => id == data.id);
|
||||
if (index > -1) {
|
||||
@ -441,10 +439,10 @@ export default {
|
||||
} else {
|
||||
state.columns.push(data);
|
||||
}
|
||||
}
|
||||
setTimeout(() => {
|
||||
state.method.setStorage("cacheColumns", state.cacheColumns = state.columns);
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
@ -485,6 +483,9 @@ export default {
|
||||
}
|
||||
}).then(result => {
|
||||
const ids = result.data.data.map(({id}) => id)
|
||||
if (ids.length == 0) {
|
||||
return;
|
||||
}
|
||||
state.columns = state.columns.filter((item) => item.project_id != project_id || ids.includes(item.id));
|
||||
dispatch("saveColumn", result.data.data);
|
||||
}).catch(e => {
|
||||
@ -530,13 +531,13 @@ export default {
|
||||
data.forEach((task) => {
|
||||
dispatch("saveTask", task)
|
||||
});
|
||||
return;
|
||||
} else if (state.method.isJson(data)) {
|
||||
let index = state.tasks.findIndex(({id}) => id == data.id);
|
||||
let key = data.parent_id > 0 ? 'taskSubs' : 'tasks';
|
||||
let index = state[key].findIndex(({id}) => id == data.id);
|
||||
if (index > -1) {
|
||||
state.tasks.splice(index, 1, Object.assign(state.tasks[index], data));
|
||||
state[key].splice(index, 1, Object.assign(state[key][index], data));
|
||||
} else {
|
||||
state.tasks.push(data);
|
||||
state[key].push(data);
|
||||
}
|
||||
//
|
||||
if (data.is_subtask) {
|
||||
@ -548,10 +549,15 @@ export default {
|
||||
if (data.is_update_content) {
|
||||
dispatch("getTaskContent", data.id);
|
||||
}
|
||||
}
|
||||
//
|
||||
setTimeout(() => {
|
||||
state.method.setStorage("cacheTasks", state.cacheTasks = state.tasks);
|
||||
if (data.parent_id > 0) {
|
||||
state.method.setStorage("cacheTaskSubs", state.cacheTaskSubs = state[key]);
|
||||
} else {
|
||||
state.method.setStorage("cacheTasks", state.cacheTasks = state[key]);
|
||||
}
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
/**
|
||||
@ -595,11 +601,14 @@ export default {
|
||||
}).then(result => {
|
||||
const resData = result.data;
|
||||
const ids = resData.data.map(({id}) => id)
|
||||
if (ids.length == 0) {
|
||||
return;
|
||||
}
|
||||
if (data.project_id) {
|
||||
state.tasks = state.tasks.filter((item) => item.project_id != data.project_id || ids.includes(item.id));
|
||||
}
|
||||
if (data.parent_id) {
|
||||
state.tasks = state.tasks.filter((item) => item.parent_id != data.parent_id || ids.includes(item.id));
|
||||
state.taskSubs = state.taskSubs.filter((item) => item.parent_id != data.parent_id || ids.includes(item.id));
|
||||
}
|
||||
dispatch("saveTask", resData.data);
|
||||
//
|
||||
|
4
resources/assets/js/store/getters.js
vendored
4
resources/assets/js/store/getters.js
vendored
@ -1,6 +1,5 @@
|
||||
export default {
|
||||
projectData(state) {
|
||||
console.log(111);
|
||||
let projectId = state.projectId;
|
||||
if (projectId == 0) {
|
||||
projectId = state.method.runNum(window.__projectId);
|
||||
@ -19,9 +18,6 @@ export default {
|
||||
});
|
||||
project.columns.forEach((column) => {
|
||||
column.tasks = state.method.cloneJSON(state.tasks.filter((task) => {
|
||||
if (task.parent_id > 0) {
|
||||
return false;
|
||||
}
|
||||
return task.column_id == column.id;
|
||||
})).sort((a, b) => {
|
||||
if (a.sort != b.sort) {
|
||||
|
2
resources/assets/js/store/state.js
vendored
2
resources/assets/js/store/state.js
vendored
@ -254,6 +254,7 @@ state.cacheDialogMsg = state.method.getStorageJson("cacheDialogMsg");
|
||||
state.cacheProjects = state.method.getStorageArray("cacheProjects");
|
||||
state.cacheColumns = state.method.getStorageArray("cacheColumns");
|
||||
state.cacheTasks = state.method.getStorageArray("cacheTasks");
|
||||
state.cacheTaskSubs = state.method.getStorageArray("cacheTaskSubs");
|
||||
|
||||
// 会员信息
|
||||
state.userInfo = state.method.getStorageJson("userInfo");
|
||||
@ -276,6 +277,7 @@ state.projects = [];
|
||||
state.projectStatistics = {};
|
||||
state.columns = [];
|
||||
state.tasks = [];
|
||||
state.taskSubs = [];
|
||||
state.taskContents = [];
|
||||
state.taskFiles = [];
|
||||
state.taskLogs = [];
|
||||
|
Loading…
x
Reference in New Issue
Block a user