import { Injectable } from '@nestjs/common';
import { InventoryMonitoringRepository } from './inventory-monitoring.repository';
import { InventoryMonitoringListQueryDto } from './dto/request';
import { InventoryMonitoringListResponseDto } from './dto/response';
import { transformInventoryListRows } from './transformers/inventory-list.transformer';

@Injectable()
export class InventoryMonitoringService {
  constructor(private readonly repository: InventoryMonitoringRepository) {}

  async findInventoryList(
    query: InventoryMonitoringListQueryDto,
  ): Promise<InventoryMonitoringListResponseDto> {
    const from = query.from.replace(/-/g, '');
    const to = query.to.replace(/-/g, '');
    const rows = await this.repository.findInventoryList({ from, to });
    return transformInventoryListRows(rows);
  }
}
