import { Injectable } from '@angular/core';
import { DomainOmsService } from '../oms.service';
import { OrderItemListItemDTO, StatusValues } from '@generated/swagger/oms-api';
import { ChangeOrderItemStatusBaseActionHandler } from './change-order-item-status-base.action-handler';
import { OrderItemsContext } from './order-items.context';

@Injectable()
export class ReOrderedActionHandler extends ChangeOrderItemStatusBaseActionHandler {
  constructor(domainOmsService: DomainOmsService) {
    super(domainOmsService, 'REORDERED');
  }

  getStatusValues(orderItem: OrderItemListItemDTO, context: OrderItemsContext): StatusValues {
    return {
      processingStatus: 8192,
      quantity: context.itemQuantity?.get(orderItem.orderItemSubsetId) || orderItem.quantity,
      compartmentNumber: '',
      compartmentInfo: '',
    };
  }
}
