package com.eksad.masterdata.repository;

import com.eksad.masterdata.common.dto.*;
import com.eksad.masterdata.domain.workorder.WorkOrder;
import org.springframework.stereotype.Component;

import java.util.Date;
import java.util.List;

@Component
public interface WorkOrderRepo {
    WorkOrder findOneWoByWoID(String WoID);

    WorkOrder findOneWoByWoIDOptimis(String WoID);

    void updateWorkOrderOnly(WorkOrder data) throws Exception;

    MappingCustomerAddressDTO getCustomerAddressCode(String provName, String kabkotName, String kecName, String kelName);

    List<WorkOrderSparepartDTO> findWoSparepartExcludeBOHotline(String woID);

    WorkorderQueue findWoAndQueueWithDifferentStatus(String woid);

    JasaOrafinDTO getJasaIDAndJasaName(String woid, String wsid, String packageCode);

    List<SalesOrderWorkOrderAhassDTO> getSoWoWithoutHaveStockflow(String ahassCode, Date searchDate);

    void updateWorkOrderOnlyV2(WorkOrder data) throws Exception;
}