chore: change the quota sync to the queue
This commit is contained in:
@@ -10,6 +10,7 @@ import { DomainAutomationService } from "../../domains/services/domain-automatio
|
||||
import { DomainsService } from "../../domains/services/domains.service";
|
||||
import { UpdateUserDto } from "../../mail-server/DTO";
|
||||
import { MailServerService } from "../../mail-server/services/mail-server.service";
|
||||
import { QuotaSyncService } from "../../quota-sync/services/quota-sync.service";
|
||||
import { Template } from "../../templates/entities/template.entity";
|
||||
import { PasswordService } from "../../utils/services/password.service";
|
||||
import { CreateEmailUserDto } from "../DTO/create-email-user.dto";
|
||||
@@ -31,6 +32,7 @@ export class UsersService {
|
||||
private readonly mailServerService: MailServerService,
|
||||
private readonly domainsService: DomainsService,
|
||||
private readonly domainAutomationService: DomainAutomationService,
|
||||
private readonly quotaSyncService: QuotaSyncService,
|
||||
) {}
|
||||
|
||||
async getUserEmailIdFromId(userId: string) {
|
||||
@@ -169,6 +171,11 @@ export class UsersService {
|
||||
|
||||
await this.em.flush();
|
||||
|
||||
//sync quota
|
||||
await this.quotaSyncService.scheduleUserQuotaSync(user.id, businessId, mailServerUser.id);
|
||||
//sync business quota
|
||||
await this.quotaSyncService.scheduleBusinessQuotaSync(businessId, business.name);
|
||||
|
||||
this.logger.log(`Email user created: ${emailAddress} for business ${businessId}`);
|
||||
|
||||
await this.domainAutomationService.createDefaultMailboxes(mailServerUser.id);
|
||||
@@ -221,6 +228,11 @@ export class UsersService {
|
||||
|
||||
await this.em.persistAndFlush(user);
|
||||
|
||||
//sync quota
|
||||
await this.quotaSyncService.scheduleUserQuotaSync(user.id, businessId, user.wildduckUserId);
|
||||
//sync business quota
|
||||
await this.quotaSyncService.scheduleBusinessQuotaSync(businessId, user.business.name);
|
||||
|
||||
this.logger.log(`Email user deleted: ${user.emailAddress} for business ${businessId}`);
|
||||
|
||||
return { message: UserMessage.EMAIL_USER_DELETED_SUCCESSFULLY };
|
||||
@@ -316,6 +328,14 @@ export class UsersService {
|
||||
|
||||
await this.em.flush();
|
||||
|
||||
//sync quota
|
||||
if (user.wildduckUserId) {
|
||||
await this.quotaSyncService.scheduleUserQuotaSync(user.id, businessId, user.wildduckUserId);
|
||||
}
|
||||
|
||||
//sync business quota
|
||||
await this.quotaSyncService.scheduleBusinessQuotaSync(businessId, user.business.name);
|
||||
|
||||
this.logger.log(`Email user updated: ${user.emailAddress} for business ${businessId}`);
|
||||
|
||||
return {
|
||||
@@ -372,6 +392,14 @@ export class UsersService {
|
||||
|
||||
await this.em.persistAndFlush([user, user.business]);
|
||||
|
||||
//sync quota
|
||||
if (user.wildduckUserId) {
|
||||
await this.quotaSyncService.scheduleUserQuotaSync(user.id, businessId, user.wildduckUserId);
|
||||
}
|
||||
|
||||
//sync business quota
|
||||
await this.quotaSyncService.scheduleBusinessQuotaSync(businessId, user.business.name);
|
||||
|
||||
this.logger.log(`Email user quota updated: ${user.emailAddress} to ${newQuota} bytes`);
|
||||
|
||||
return { message: UserMessage.EMAIL_USER_QUOTA_UPDATED_SUCCESSFULLY, user };
|
||||
|
||||
Reference in New Issue
Block a user