using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using GB5Shared.ResponseStandard; using MMDAL.DTO.MMHead; namespace MMBLL.MMHead { public interface IMMHeadBLL { //Task> SaveMMheadAsync(LoginDTO loginDTO, List mmHeadDTOList); Task> SaveBatchAsync(List MMHeadDTO, LoginDTO LoginDTO, CancellationToken ct = default); Task SaveMMHead(MMHeadDTO head, LoginDTO login, CancellationToken ct = default); Task GetMMHead(int DocumentId, LoginDTO LoginDTO); Task GetSelectListForDocument(int FirstNumber, int MaxResult, CriteriaDTO CriteriaDTO, LoginDTO LoginDTO); // GB4 parity: MMHead.svc/Get/MM/Load/Picklist/In/Voucher — MM documents not yet linked to a posted voucher. Task GetSelectListMMHeadForVoucher(int FirstNumber, int MaxResult, CriteriaDTO CriteriaDTO, LoginDTO LoginDTO); // ── Load endpoints ──────────────────────────────────────────────────────── Task GetLoadMMHead( string documentIds, string? detailIds, int bizTransactionClassId, int nature, int storeId, int? partyId, LoginDTO login, CancellationToken ct); Task GetMMHeadObjectConversion( string ids, string? detailIds, string entityCode, int storeId, LoginDTO login, CancellationToken ct); Task FinalizeMMHeadAsync(int documentId, LoginDTO login, CancellationToken ct); Task CancelMMHeadAsync(int documentId, LoginDTO login, CancellationToken ct); Task DeleteMMHeadAsync(int documentId, LoginDTO login, CancellationToken ct); Task VoucherFormingFromMMHeadProcedureBased(int documentId, LoginDTO login, CancellationToken ct); Task GetSelectListMMHead(CriteriaDTO crt, LoginDTO loginDTO); // GB4 parity: POST /mms/MMHead.svc/Account/Posting/From/FE/?IsSummary= — account posting // preview for a document the FE hasn't saved yet (contrast with // VoucherFormingFromMMHeadProcedureBased, which forms a voucher from an already-saved one). Task AccountPostingFromFE(MMHeadDTO head, byte isSummary, LoginDTO login, CancellationToken ct); } }