@@ -29,6 +29,9 @@ const updateProjectMemberValdiations = {
29
29
) . required ( ) ,
30
30
} ) ,
31
31
} ,
32
+ query : {
33
+ fields : Joi . string ( ) . optional ( ) ,
34
+ } ,
32
35
} ;
33
36
34
37
module . exports = [
@@ -44,6 +47,7 @@ module.exports = [
44
47
const projectId = _ . parseInt ( req . params . projectId ) ;
45
48
const memberRecordId = _ . parseInt ( req . params . id ) ;
46
49
updatedProps = _ . pick ( updatedProps , [ 'isPrimary' , 'role' ] ) ;
50
+ const fields = req . query . fields ? req . query . fields . split ( ',' ) : null ;
47
51
48
52
let previousValue ;
49
53
// let newValue;
@@ -133,6 +137,16 @@ module.exports = [
133
137
. then ( ( ) => {
134
138
projectMember = projectMember . get ( { plain : true } ) ;
135
139
projectMember = _ . omit ( projectMember , [ 'deletedAt' ] ) ;
140
+ } )
141
+ . then ( ( ) => (
142
+ util . getObjectsWithMemberDetails ( [ projectMember ] , fields , req )
143
+ . then ( ( [ memberWithDetails ] ) => memberWithDetails )
144
+ . catch ( ( err ) => {
145
+ req . log . error ( 'Cannot get user details for member.' ) ;
146
+ req . log . debug ( 'Error during getting user details for member.' , err ) ;
147
+ } )
148
+ ) )
149
+ . then ( ( memberWithDetails ) => {
136
150
// emit original and updated project information
137
151
req . app . services . pubsub . publish (
138
152
EVENT . ROUTING_KEY . PROJECT_MEMBER_UPDATED ,
@@ -142,7 +156,7 @@ module.exports = [
142
156
req . app . emit ( EVENT . ROUTING_KEY . PROJECT_MEMBER_UPDATED ,
143
157
{ req, original : previousValue , updated : projectMember } ) ;
144
158
req . log . debug ( 'updated project member' , projectMember ) ;
145
- res . json ( util . wrapResponse ( req . id , projectMember ) ) ;
159
+ res . json ( util . wrapResponse ( req . id , memberWithDetails || projectMember ) ) ;
146
160
} )
147
161
. catch ( err => next ( err ) ) ) ;
148
162
} ,
0 commit comments