using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using AdminDAL.DTO.FinanceBook; using System; using System.Collections.Generic; using System.Threading.Tasks; namespace AdminDAL.CustomCode.FinanceBook { /// /// Data Access Layer interface for managing Finance Book records in the database. /// Provides methods to retrieve, insert, update, and delete Finance Book entries. /// public interface IFinanceBookDAL { /// /// Retrieves a single Finance Book by its unique identifier. /// /// The unique identifier of the Finance Book. /// The current user's login details. /// A JSON string representing the Finance Book details. Task GetFinanceBook(int FinanceBookId, LoginDTO LoginDTO); /// /// Retrieves a list of Finance Books based on specified criteria. /// Typically used for populating dropdowns or picklists. /// /// Filter criteria for selecting Finance Books. /// The current user's login details. /// A JSON string representing a list of Finance Books. Task GetSelectListFinanceBook(CriteriaDTO CriteriaDTO, LoginDTO LoginDTO); /// /// Inserts a new Finance Book record into the database. /// /// The Finance Book data to save. /// The current user's login details. /// The number of rows affected (should be 1 if successful). Task SaveFinanceBook(FinanceBookDTO FinanceBookDTO, LoginDTO LoginDTO); /// /// Updates an existing Finance Book record in the database. /// /// The updated Finance Book data. /// The current user's login details. /// The number of rows affected (should be 1 if successful). Task UpdateFinanceBook(FinanceBookDTO FinanceBookDTO, LoginDTO LoginDTO); /// /// Deletes a Finance Book record by its unique identifier. /// /// The unique identifier of the Finance Book to delete. /// The current user's login details. /// A JSON string indicating success or failure of the delete operation. Task DeleteFinanceBook(int FinanceBookId, LoginDTO LoginDTO); } }