All files / src/domains/manufacturing manufacturing.module.ts

0% Statements 0/12
100% Branches 0/0
100% Functions 0/0
0% Lines 0/10

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91                                                                                                                                                                                     
import { Module } from '@nestjs/common';
import { MongooseModule } from '@nestjs/mongoose';
import { BullModule } from '@nestjs/bullmq';
import { ManufacturingController } from './controllers/manufacturing.controller';
import { MobileManufacturingController } from '../../interfaces/mobile-api/employee/mobile-manufacturing.controller';
import { EventBusModule } from '../../platform/events/event-bus.module';
import { InventoryModule } from '../inventory/inventory.module';
 
import {
  ManufacturingConfiguration, ManufacturingConfigurationSchema,
  ManufacturingPlant, ManufacturingPlantSchema,
  WorkCenter, WorkCenterSchema,
  MachineResource, MachineResourceSchema,
  BillOfMaterial, BillOfMaterialSchema,
  BomLine, BomLineSchema,
  ProductionRouting, ProductionRoutingSchema,
  RoutingOperation, RoutingOperationSchema,
  Forecast, ForecastSchema,
  MasterProductionSchedule, MasterProductionScheduleSchema,
  MrpRun, MrpRunSchema,
  PlannedOrder, PlannedOrderSchema,
  ProductionOrder, ProductionOrderSchema,
  ProductionOrderMaterial, ProductionOrderMaterialSchema,
  ShopFloorExecution, ShopFloorExecutionSchema,
  InspectionLot, InspectionLotSchema,
  NonConformance, NonConformanceSchema,
  SubcontractOrder, SubcontractOrderSchema
} from './schemas';
 
import {
  BomRoutingService,
  MpsCapacityService,
  MrpEngineService,
  ProductionExecutionService,
  CostingSubcontractService,
  TraceabilityMaintenanceService,
  ManufacturingService
} from './services';
 
@Module({
  imports: [
    MongooseModule.forFeature([
      { name: ManufacturingConfiguration.name, schema: ManufacturingConfigurationSchema },
      { name: ManufacturingPlant.name, schema: ManufacturingPlantSchema },
      { name: WorkCenter.name, schema: WorkCenterSchema },
      { name: MachineResource.name, schema: MachineResourceSchema },
      { name: BillOfMaterial.name, schema: BillOfMaterialSchema },
      { name: BomLine.name, schema: BomLineSchema },
      { name: ProductionRouting.name, schema: ProductionRoutingSchema },
      { name: RoutingOperation.name, schema: RoutingOperationSchema },
      { name: Forecast.name, schema: ForecastSchema },
      { name: MasterProductionSchedule.name, schema: MasterProductionScheduleSchema },
      { name: MrpRun.name, schema: MrpRunSchema },
      { name: PlannedOrder.name, schema: PlannedOrderSchema },
      { name: ProductionOrder.name, schema: ProductionOrderSchema },
      { name: ProductionOrderMaterial.name, schema: ProductionOrderMaterialSchema },
      { name: ShopFloorExecution.name, schema: ShopFloorExecutionSchema },
      { name: InspectionLot.name, schema: InspectionLotSchema },
      { name: NonConformance.name, schema: NonConformanceSchema },
      { name: SubcontractOrder.name, schema: SubcontractOrderSchema }
    ]),
    BullModule.registerQueue(
      { name: 'manufacturing.mrp-run' },
      { name: 'manufacturing.mps-calculate' },
      { name: 'manufacturing.capacity-calculate' }
    ),
    EventBusModule,
    InventoryModule
  ],
  controllers: [ManufacturingController, MobileManufacturingController],
  providers: [
    BomRoutingService,
    MpsCapacityService,
    MrpEngineService,
    ProductionExecutionService,
    CostingSubcontractService,
    TraceabilityMaintenanceService,
    ManufacturingService
  ],
  exports: [
    BomRoutingService,
    MpsCapacityService,
    MrpEngineService,
    ProductionExecutionService,
    CostingSubcontractService,
    TraceabilityMaintenanceService,
    ManufacturingService
  ]
})
export class ManufacturingModule {}