When activating the multi-branches feature, existing bills, vendor credits, and bill payments were not being marked with the default primary branch. Changes: - Add missing @Inject decorators to BillActivateBranches, VendorCreditActivateBranches, and BillPaymentsActivateBranches services - Create BillBranchesActivateSubscriber to listen to onActivated event - Create VendorCreditBranchesActivateSubscriber to listen to onActivated event - Register BillPaymentsActivateBranches and PaymentMadeActivateBranchesSubscriber in BranchesModule - Add branch object to BillResponseDto for API responses - Add branch to BillTransformer includeAttributes Fixes: #935
29 lines
850 B
TypeScript
29 lines
850 B
TypeScript
import { IBranchesActivatedPayload } from '../../Branches.types';
|
|
import { events } from '@/common/events/events';
|
|
import { Injectable } from '@nestjs/common';
|
|
import { BillActivateBranches } from '../../integrations/Purchases/BillBranchesActivate';
|
|
import { OnEvent } from '@nestjs/event-emitter';
|
|
|
|
@Injectable()
|
|
export class BillBranchesActivateSubscriber {
|
|
constructor(
|
|
private readonly billActivateBranches: BillActivateBranches,
|
|
) { }
|
|
|
|
/**
|
|
* Updates bills transactions with the primary branch once
|
|
* the multi-branches is activated.
|
|
* @param {IBranchesActivatedPayload}
|
|
*/
|
|
@OnEvent(events.branch.onActivated)
|
|
async updateBillsWithBranchOnActivated({
|
|
primaryBranch,
|
|
trx,
|
|
}: IBranchesActivatedPayload) {
|
|
await this.billActivateBranches.updateBillsWithBranch(
|
|
primaryBranch.id,
|
|
trx,
|
|
);
|
|
}
|
|
}
|