@@ -17,32 +17,32 @@ const permissions = tcMiddleware.permissions;
17
17
/**
18
18
* Cascades endDate/completionDate changes to all milestones with a greater order than the given one.
19
19
* @param {Object } updatedMilestone the milestone that was updated
20
- * @param {Object } transaction the wrapping transaction
21
20
* @returns {Promise<void> } a promise
22
21
*/
23
- async function updateComingMilestones ( updatedMilestone , transaction ) {
24
- const comingMilestones = _ . sortBy ( await models . Milestone . findAll ( {
22
+ function updateComingMilestones ( updatedMilestone ) {
23
+ return models . Milestone . findAll ( {
25
24
where : {
26
25
timelineId : updatedMilestone . timelineId ,
27
26
order : { $gt : updatedMilestone . order } ,
28
27
} ,
29
- transaction,
30
- } ) , 'order' ) ;
31
- let startDate = moment . utc ( updatedMilestone . completionDate
32
- ? updatedMilestone . completionDate
33
- : updatedMilestone . endDate ) . add ( 1 , 'days' ) . toDate ( ) ;
34
- const promises = _ . map ( comingMilestones , ( _milestone ) => {
35
- const milestone = _milestone ;
36
- if ( milestone . startDate . getTime ( ) !== startDate . getTime ( ) ) {
37
- milestone . startDate = startDate ;
38
- milestone . endDate = moment . utc ( startDate ) . add ( milestone . duration - 1 , 'days' ) . toDate ( ) ;
39
- }
40
- startDate = moment . utc ( milestone . completionDate
41
- ? milestone . completionDate
42
- : milestone . endDate ) . add ( 1 , 'days' ) . toDate ( ) ;
43
- return milestone . save ( { transaction } ) ;
28
+ } ) . then ( ( affectedMilestones ) => {
29
+ const comingMilestones = _ . sortBy ( affectedMilestones , 'order' ) ;
30
+ let startDate = moment . utc ( updatedMilestone . completionDate
31
+ ? updatedMilestone . completionDate
32
+ : updatedMilestone . endDate ) . add ( 1 , 'days' ) . toDate ( ) ;
33
+ const promises = _ . map ( comingMilestones , ( _milestone ) => {
34
+ const milestone = _milestone ;
35
+ if ( milestone . startDate . getTime ( ) !== startDate . getTime ( ) ) {
36
+ milestone . startDate = startDate ;
37
+ milestone . endDate = moment . utc ( startDate ) . add ( milestone . duration - 1 , 'days' ) . toDate ( ) ;
38
+ }
39
+ startDate = moment . utc ( milestone . completionDate
40
+ ? milestone . completionDate
41
+ : milestone . endDate ) . add ( 1 , 'days' ) . toDate ( ) ;
42
+ return milestone . save ( ) ;
43
+ } ) ;
44
+ return Promise . all ( promises ) ;
44
45
} ) ;
45
- await Promise . all ( promises ) ;
46
46
}
47
47
48
48
const schema = {
@@ -97,7 +97,7 @@ module.exports = [
97
97
let original ;
98
98
let updated ;
99
99
100
- return models . sequelize . transaction ( transaction =>
100
+ return models . sequelize . transaction ( ( ) =>
101
101
// Find the milestone
102
102
models . Milestone . findOne ( { where } )
103
103
. then ( ( milestone ) => {
@@ -134,7 +134,7 @@ module.exports = [
134
134
}
135
135
136
136
// Update
137
- return milestone . update ( entityToUpdate , { transaction } ) ;
137
+ return milestone . update ( entityToUpdate ) ;
138
138
} )
139
139
. then ( ( updatedMilestone ) => {
140
140
// Omit deletedAt, deletedBy
@@ -151,7 +151,6 @@ module.exports = [
151
151
id : { $ne : updated . id } ,
152
152
order : updated . order ,
153
153
} ,
154
- transaction,
155
154
} )
156
155
. then ( ( count ) => {
157
156
if ( count === 0 ) {
@@ -167,7 +166,6 @@ module.exports = [
167
166
id : { $ne : updated . id } ,
168
167
order : { $between : [ original . order + 1 , updated . order ] } ,
169
168
} ,
170
- transaction,
171
169
} ) ;
172
170
}
173
171
@@ -179,7 +177,6 @@ module.exports = [
179
177
id : { $ne : updated . id } ,
180
178
order : { $between : [ updated . order , original . order - 1 ] } ,
181
179
} ,
182
- transaction,
183
180
} ) ;
184
181
} ) ;
185
182
} )
@@ -191,7 +188,7 @@ module.exports = [
191
188
original . duration === updated . duration ) {
192
189
return Promise . resolve ( ) ;
193
190
}
194
- return updateComingMilestones ( updated , transaction ) ;
191
+ return updateComingMilestones ( updated ) ;
195
192
} ) ,
196
193
)
197
194
. then ( ( ) => {
0 commit comments