@@ -44,6 +44,7 @@ export const EXCHANGE_NAME =
4444enum RABBITMQ_VISIT_EVENT_TYPE {
4545 VISIT_CREATED = 'VISIT_CREATED' ,
4646 VISIT_DELETED = 'VISIT_DELETED' ,
47+ VISIT_UPDATED = 'VISIT_UPDATED' ,
4748}
4849
4950type Member = {
@@ -486,26 +487,40 @@ export async function createPostToRabbitMQHandler() {
486487 ) ;
487488 break ;
488489 }
490+ case Event . VISIT_REGISTRATION_UPDATED :
489491 case Event . VISIT_REGISTRATION_APPROVED :
490492 case Event . VISIT_REGISTRATION_CANCELLED : {
491493 const { visitregistration : visitRegistration } = event ;
494+
495+ if (
496+ event . type === Event . VISIT_REGISTRATION_UPDATED &&
497+ visitRegistration . status !== VisitRegistrationStatus . APPROVED
498+ ) {
499+ break ;
500+ }
501+
492502 const proposal = await proposalDataSource . getProposalByVisitId (
493503 visitRegistration . visitId
494504 ) ;
495505 const proposalPayload = await getProposalMessageData ( proposal ) ;
496506 const user = await userDataSource . getUser ( visitRegistration . userId ) ;
497507 const jsonMessage = JSON . stringify ( {
508+ id : visitRegistration . id ,
498509 startAt : visitRegistration . startsAt ,
499510 endAt : visitRegistration . endsAt ,
500511 visitorId : user ! . oidcSub ,
501512 proposal : JSON . parse ( proposalPayload ) ,
502513 } ) ;
514+ let rabbitMQVisitEventType = RABBITMQ_VISIT_EVENT_TYPE . VISIT_UPDATED ;
515+ if ( event . type === Event . VISIT_REGISTRATION_APPROVED ) {
516+ rabbitMQVisitEventType = RABBITMQ_VISIT_EVENT_TYPE . VISIT_CREATED ;
517+ } else if ( event . type === Event . VISIT_REGISTRATION_CANCELLED ) {
518+ rabbitMQVisitEventType = RABBITMQ_VISIT_EVENT_TYPE . VISIT_DELETED ;
519+ }
503520
504521 await rabbitMQ . sendMessageToExchange (
505522 EXCHANGE_NAME ,
506- event . type === Event . VISIT_REGISTRATION_APPROVED
507- ? RABBITMQ_VISIT_EVENT_TYPE . VISIT_CREATED
508- : RABBITMQ_VISIT_EVENT_TYPE . VISIT_DELETED ,
523+ rabbitMQVisitEventType ,
509524 jsonMessage
510525 ) ;
511526
0 commit comments