|
|
@ -2,7 +2,7 @@ |
|
|
|
<view :style="{ height: height }" class="flex flex-col overflow-hidden"> |
|
|
|
<Title /> |
|
|
|
<view class="container flex flex-col flex-1 overflow-hidden bg-gray-100"> |
|
|
|
<Roles /> |
|
|
|
<Roles @getTasks="getTasks" /> |
|
|
|
<Globals :plugins="plugins" /> |
|
|
|
<TimeLine @getTasks="getTasks" class="flex-1 overflow-hidden" ref="child" /> |
|
|
|
</view> |
|
|
@ -18,7 +18,7 @@ export default { |
|
|
|
|
|
|
|
computed: { |
|
|
|
...mapState('user', ['user', 'token']), |
|
|
|
...mapState('home', ['visibleRoles', 'roleId', 'timeNode', 'timeUnit']), |
|
|
|
...mapState('home', ['visibleRoles', 'roleId', 'timeNode', 'timeUnit', 'tasks']), |
|
|
|
}, |
|
|
|
|
|
|
|
async onLoad(options) { |
|
|
@ -29,18 +29,26 @@ export default { |
|
|
|
await this.getUserId(options.u); |
|
|
|
} |
|
|
|
const params = { projectId: options.p }; |
|
|
|
this.setProjectName(options.pname); |
|
|
|
// 根据项目id获取项目信息 |
|
|
|
await this.getProjectById(params); |
|
|
|
// 根据项目id获取角色列表 |
|
|
|
await this.getRoles(params); |
|
|
|
this.setInitialRoleId(this.visibleRoles); |
|
|
|
// 根据时间基准点和角色查找定期任务 |
|
|
|
await this.getTasks(0); |
|
|
|
await this.getTasks(1); |
|
|
|
await this.getTasks({ queryType: 0 }); |
|
|
|
await this.getTasks({ queryType: 1 }); |
|
|
|
// 根据角色查找永久的日常任务 |
|
|
|
await this.getPermanent(); |
|
|
|
// 根据时间和角色查找日常任务 |
|
|
|
await this.getGlobal(); |
|
|
|
// 查上下的定期任务 |
|
|
|
if (this.tasks && this.tasks.length) { |
|
|
|
console.log('this.tasks[0].planStart: ', this.tasks[0].planStart); |
|
|
|
await this.getTasks({ timeNode: +this.tasks[0].planStart, queryType: 0, queryNum: 6 }); |
|
|
|
console.log('this.tasks[this.tasks.length - 1].planStart: ', this.tasks[this.tasks.length - 1].planStart); |
|
|
|
await this.getTasks({ timeNode: +this.tasks[this.tasks.length - 1].planStart, queryType: 1, queryNum: 6 }); |
|
|
|
} |
|
|
|
}, |
|
|
|
|
|
|
|
mounted() { |
|
|
@ -56,6 +64,7 @@ export default { |
|
|
|
'setUpTasks', |
|
|
|
'setDownTasks', |
|
|
|
'setDailyTasks', |
|
|
|
'setProjectName', |
|
|
|
]), |
|
|
|
...mapActions('user', ['getUserId']), |
|
|
|
...mapActions('home', ['getProjectById', 'getRoles', 'handleRegularTask']), |
|
|
@ -81,18 +90,17 @@ export default { |
|
|
|
* @param {string} queryNum 查找颗粒度数量 默认3个 |
|
|
|
* @param {string} queryType 0向上查找 1向下查找(默认) 下查包含自己,上查不包含 |
|
|
|
*/ |
|
|
|
async getTasks(queryType) { |
|
|
|
async getTasks(query) { |
|
|
|
try { |
|
|
|
const { roleId, timeNode, timeUnit } = this; |
|
|
|
const params = { |
|
|
|
roleId, |
|
|
|
timeNode, |
|
|
|
timeUnit, |
|
|
|
queryNum: 3, |
|
|
|
queryType, |
|
|
|
}; |
|
|
|
const params = { roleId }; |
|
|
|
params.timeNode = query.timeNode || timeNode; |
|
|
|
params.timeUnit = query.timeUnit || timeUnit; |
|
|
|
params.queryNum = query.queryNum || 3; |
|
|
|
params.queryType = query.queryType; |
|
|
|
console.log('params: ', params); |
|
|
|
const res = await this.handleRegularTask(params); |
|
|
|
queryType === 0 ? this.setUpTasks(res) : this.setDownTasks(res); |
|
|
|
query.queryType === 0 ? this.setUpTasks(res) : this.setDownTasks(res); |
|
|
|
this.$refs.child.setDatumPoint(); |
|
|
|
} catch (error) { |
|
|
|
console.log('error: ', error); |
|
|
|