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' ||
|
if (inviteResult.status === 'existing_user_added_to_channel' ||
|
||||||
inviteResult.status === 'user_already_in_channel' ||
|
inviteResult.status === 'user_already_in_channel' ||
|
||||||
inviteResult.status === 'new_user_invited_to_workspace') {
|
inviteResult.status === 'new_user_invited_to_workspace') {
|
||||||
member.slackInviteStatus = 'sent'
|
await Member.findByIdAndUpdate(
|
||||||
member.slackUserId = inviteResult.userId
|
member._id,
|
||||||
member.slackInvited = true
|
{ $set: { slackInviteStatus: 'sent', slackUserId: inviteResult.userId, slackInvited: true } },
|
||||||
|
{ runValidators: false }
|
||||||
|
)
|
||||||
} else {
|
} else {
|
||||||
// Manual invitation required
|
// Manual invitation required
|
||||||
member.slackInviteStatus = 'pending'
|
await Member.findByIdAndUpdate(
|
||||||
member.slackInvited = false
|
member._id,
|
||||||
|
{ $set: { slackInviteStatus: 'pending', slackInvited: false } },
|
||||||
|
{ runValidators: false }
|
||||||
|
)
|
||||||
}
|
}
|
||||||
await member.save()
|
|
||||||
|
|
||||||
// Send notification to vetting channel
|
// Send notification to vetting channel
|
||||||
await slackService.notifyNewMember(
|
await slackService.notifyNewMember(
|
||||||
|
|
@ -51,8 +55,11 @@ async function inviteToSlack(member) {
|
||||||
console.warn(`Slack invitation processed: ${inviteResult.status}`)
|
console.warn(`Slack invitation processed: ${inviteResult.status}`)
|
||||||
} else {
|
} else {
|
||||||
// Update member record to reflect failed invitation
|
// Update member record to reflect failed invitation
|
||||||
member.slackInviteStatus = 'failed'
|
await Member.findByIdAndUpdate(
|
||||||
await member.save()
|
member._id,
|
||||||
|
{ $set: { slackInviteStatus: 'failed' } },
|
||||||
|
{ runValidators: false }
|
||||||
|
)
|
||||||
|
|
||||||
console.error(`Failed to process Slack invitation: ${inviteResult.error}`)
|
console.error(`Failed to process Slack invitation: ${inviteResult.error}`)
|
||||||
// Don't throw error - member creation should still succeed
|
// Don't throw error - member creation should still succeed
|
||||||
|
|
@ -62,8 +69,11 @@ async function inviteToSlack(member) {
|
||||||
|
|
||||||
// Update member record to reflect failed invitation
|
// Update member record to reflect failed invitation
|
||||||
try {
|
try {
|
||||||
member.slackInviteStatus = 'failed'
|
await Member.findByIdAndUpdate(
|
||||||
await member.save()
|
member._id,
|
||||||
|
{ $set: { slackInviteStatus: 'failed' } },
|
||||||
|
{ runValidators: false }
|
||||||
|
)
|
||||||
} catch (saveError) {
|
} catch (saveError) {
|
||||||
console.error('Failed to update member Slack status:', saveError)
|
console.error('Failed to update member Slack status:', saveError)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue