mirror of
https://github.com/bigcapitalhq/bigcapital.git
synced 2026-02-18 05:40:31 +00:00
75 lines
2.3 KiB
TypeScript
75 lines
2.3 KiB
TypeScript
// import events from '@/subscribers/events';
|
|
// import { Service, Inject } from 'typedi';
|
|
// import { WarehousesItemsQuantitySync } from './WarehousesItemsQuantitySync';
|
|
// import {
|
|
// IInventoryTransactionsCreatedPayload,
|
|
// IInventoryTransactionsDeletedPayload,
|
|
// } from '@/interfaces';
|
|
// import { WarehousesSettings } from '../WarehousesSettings';
|
|
|
|
// @Service()
|
|
// export class WarehousesItemsQuantitySyncSubscriber {
|
|
// @Inject()
|
|
// private warehousesItemsQuantitySync: WarehousesItemsQuantitySync;
|
|
|
|
// @Inject()
|
|
// private warehousesSettings: WarehousesSettings;
|
|
|
|
// /**
|
|
// * Attaches events with handlers.
|
|
// */
|
|
// public attach(bus) {
|
|
// bus.subscribe(
|
|
// events.inventory.onInventoryTransactionsCreated,
|
|
// this.syncWarehousesItemsQuantityOnInventoryTransCreated
|
|
// );
|
|
// bus.subscribe(
|
|
// events.inventory.onInventoryTransactionsDeleted,
|
|
// this.syncWarehousesItemsQuantityOnInventoryTransDeleted
|
|
// );
|
|
// return bus;
|
|
// }
|
|
|
|
// /**
|
|
// * Syncs warehouses items quantity once inventory transactions created.
|
|
// * @param {IInventoryTransactionsCreatedPayload}
|
|
// */
|
|
// private syncWarehousesItemsQuantityOnInventoryTransCreated = async ({
|
|
// tenantId,
|
|
// inventoryTransactions,
|
|
// trx,
|
|
// }: IInventoryTransactionsCreatedPayload) => {
|
|
// const isActive = this.warehousesSettings.isMultiWarehousesActive(tenantId);
|
|
|
|
// // Can't continue if the warehouses features is not active.
|
|
// if (!isActive) return;
|
|
|
|
// await this.warehousesItemsQuantitySync.mutateWarehousesItemsQuantityFromTransactions(
|
|
// tenantId,
|
|
// inventoryTransactions,
|
|
// trx
|
|
// );
|
|
// };
|
|
|
|
// /**
|
|
// * Syncs warehouses items quantity once inventory transactions deleted.
|
|
// * @param {IInventoryTransactionsDeletedPayload}
|
|
// */
|
|
// private syncWarehousesItemsQuantityOnInventoryTransDeleted = async ({
|
|
// tenantId,
|
|
// oldInventoryTransactions,
|
|
// trx,
|
|
// }: IInventoryTransactionsDeletedPayload) => {
|
|
// const isActive = this.warehousesSettings.isMultiWarehousesActive(tenantId);
|
|
|
|
// // Can't continue if the warehouses feature is not active yet.
|
|
// if (!isActive) return;
|
|
|
|
// await this.warehousesItemsQuantitySync.reverseWarehousesItemsQuantityFromTransactions(
|
|
// tenantId,
|
|
// oldInventoryTransactions,
|
|
// trx
|
|
// );
|
|
// };
|
|
// }
|