Skip to content

General questions #343

Open
Open
@leonardolb

Description

@leonardolb

Hi! I should I handle the following scenarios

a) User wants to create a Meeting. To create a meeting, user must have an active subscription. How should I implement this logic as Subscription and Meeting are in different modules? Should I expose in subscription module an CheckActiveSubscriptionIntegrationEvent in subscription modulo?

b) Lets says that when an user create a Meeting, user should be automatically billed a small booking fee and user must have credits.How should i implement this logic? I thought the workflow above but I don't know how to handle validations.
1) Meeting module validate Meeting creation (lets say, validate if user is allowed and if there isn't any other event in same date);
2) If valid, run an CreateBillingToUserIntegrationEvent (Payment module)
3) CreateBillingToUserIntegrationEvent should validate if there are credits. if so, create billing, if not, return an validation error;
4) If errors, rollback;

My concerns:
- It seems not too efficient as meeting would be posted to db and rolled back if CreateBillingToUserIntegrationEvent runs an error;
- Implementing "credit validation rule" in "meeting module" seems wrong as this is an payment rule .

thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions