fix: replace member.save() with findByIdAndUpdate in Slack invite helper
This commit is contained in:
parent
e592b962ec
commit
bc887ca1d4
1 changed files with 20 additions and 10 deletions
|
|
@ -29,15 +29,19 @@ async function inviteToSlack(member) {
|
|||
if (inviteResult.status === 'existing_user_added_to_channel' ||
|
||||
inviteResult.status === 'user_already_in_channel' ||
|
||||
inviteResult.status === 'new_user_invited_to_workspace') {
|
||||
member.slackInviteStatus = 'sent'
|
||||
member.slackUserId = inviteResult.userId
|
||||
member.slackInvited = true
|
||||
await Member.findByIdAndUpdate(
|
||||
member._id,
|
||||
{ $set: { slackInviteStatus: 'sent', slackUserId: inviteResult.userId, slackInvited: true } },
|
||||
{ runValidators: false }
|
||||
)
|
||||
} else {
|
||||
// Manual invitation required
|
||||
member.slackInviteStatus = 'pending'
|
||||
member.slackInvited = false
|
||||
await Member.findByIdAndUpdate(
|
||||
member._id,
|
||||
{ $set: { slackInviteStatus: 'pending', slackInvited: false } },
|
||||
{ runValidators: false }
|
||||
)
|
||||
}
|
||||
await member.save()
|
||||
|
||||
// Send notification to vetting channel
|
||||
await slackService.notifyNewMember(
|
||||
|
|
@ -51,8 +55,11 @@ async function inviteToSlack(member) {
|
|||
console.warn(`Slack invitation processed: ${inviteResult.status}`)
|
||||
} else {
|
||||
// Update member record to reflect failed invitation
|
||||
member.slackInviteStatus = 'failed'
|
||||
await member.save()
|
||||
await Member.findByIdAndUpdate(
|
||||
member._id,
|
||||
{ $set: { slackInviteStatus: 'failed' } },
|
||||
{ runValidators: false }
|
||||
)
|
||||
|
||||
console.error(`Failed to process Slack invitation: ${inviteResult.error}`)
|
||||
// Don't throw error - member creation should still succeed
|
||||
|
|
@ -62,8 +69,11 @@ async function inviteToSlack(member) {
|
|||
|
||||
// Update member record to reflect failed invitation
|
||||
try {
|
||||
member.slackInviteStatus = 'failed'
|
||||
await member.save()
|
||||
await Member.findByIdAndUpdate(
|
||||
member._id,
|
||||
{ $set: { slackInviteStatus: 'failed' } },
|
||||
{ runValidators: false }
|
||||
)
|
||||
} catch (saveError) {
|
||||
console.error('Failed to update member Slack status:', saveError)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue