using CashLineERP.Contracts.Finance;

namespace CashLineERP.Application.Finance;

public interface IForeignExchangeRevaluationService
{
    IReadOnlyCollection<ForeignExchangeRevaluationResponse> GetForeignExchangeRevaluations();

    ForeignExchangeRevaluationResponse? GetForeignExchangeRevaluation(long foreignExchangeRevaluationId);

    ForeignExchangeRevaluationResponse CreateForeignExchangeRevaluation(CreateForeignExchangeRevaluationRequest request);

    ForeignExchangeRevaluationResponse SubmitForeignExchangeRevaluation(long foreignExchangeRevaluationId, long actorUserId);

    ForeignExchangeRevaluationResponse ApproveForeignExchangeRevaluation(long foreignExchangeRevaluationId, long actorUserId);

    ForeignExchangeRevaluationResponse PostForeignExchangeRevaluation(long foreignExchangeRevaluationId, long actorUserId);
}
