using CashLineERP.Contracts.Finance;

namespace CashLineERP.Application.Finance;

public interface IFinanceCloseJournalService
{
    IReadOnlyCollection<FinanceCloseJournalResponse> GetCloseJournals();

    FinanceCloseJournalResponse? GetCloseJournal(long financeCloseJournalId);

    FinanceCloseJournalResponse CreateCloseJournal(CreateFinanceCloseJournalRequest request);

    FinanceCloseJournalResponse SubmitCloseJournal(long financeCloseJournalId, long actorUserId);

    FinanceCloseJournalResponse ApproveCloseJournal(long financeCloseJournalId, long actorUserId);

    FinanceCloseJournalResponse PostCloseJournal(long financeCloseJournalId, long actorUserId);
}
