@@ -17,6 +17,7 @@ const { OLD_ACTIVE, OLD_BLOCKED, OLD_PENDING, OLD_COMPLETED } = TASK_STATUS_OLD;
17
17
const updateTask = async ( taskData , taskId = null ) => {
18
18
try {
19
19
taskData = await toFirestoreData ( taskData ) ;
20
+
20
21
if ( taskId ) {
21
22
const task = await tasksModel . doc ( taskId ) . get ( ) ;
22
23
if ( taskData . status === "VERIFIED" ) {
@@ -73,8 +74,15 @@ const fetchTasks = async () => {
73
74
const tasks = buildTasks ( tasksSnapshot ) ;
74
75
const promises = tasks . map ( async ( task ) => fromFirestoreData ( task ) ) ;
75
76
const updatedTasks = await Promise . all ( promises ) ;
76
- const taskList = updatedTasks . map ( ( task ) => {
77
+ const taskList = updatedTasks . map ( async ( task ) => {
77
78
task . status = TASK_STATUS [ task . status . toUpperCase ( ) ] || task . status ;
79
+ const taskId = task . id ;
80
+ const dependencySnapshot = await dependencyModel . where ( "taskId" , "==" , taskId ) . get ( ) ;
81
+ task . dependsOn = [ ] ;
82
+ dependencySnapshot . docs . forEach ( ( doc ) => {
83
+ const dependsId = doc . get ( "dependsId" ) ;
84
+ task . dependsOn . push ( dependsId ) ;
85
+ } ) ;
78
86
return task ;
79
87
} ) ;
80
88
return taskList ;
@@ -116,11 +124,16 @@ const fetchActiveTaskMembers = async () => {
116
124
const fetchTask = async ( taskId ) => {
117
125
try {
118
126
const task = await tasksModel . doc ( taskId ) . get ( ) ;
127
+ const dependencySnapshot = await dependencyModel . where ( "taskId" , "==" , taskId ) . get ( ) ;
128
+ const dependencyDocReference = dependencySnapshot . docs . map ( ( doc ) => {
129
+ const dependsId = doc . get ( "dependsId" ) ;
130
+ return dependsId ;
131
+ } ) ;
119
132
const taskData = await fromFirestoreData ( task . data ( ) ) ;
120
133
if ( taskData ?. status ) {
121
134
taskData . status = TASK_STATUS [ taskData . status . toUpperCase ( ) ] || task . status ;
122
135
}
123
- return { taskData } ;
136
+ return { taskData, dependencyDocReference } ;
124
137
} catch ( err ) {
125
138
logger . error ( "Error retrieving task data" , err ) ;
126
139
throw err ;
0 commit comments