using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; using MMDAL.DTO.AccountBooksDetail; using MMDAL.DTO.MMHead; using MMDAL.DTO.MMReports; using System.Runtime.CompilerServices; namespace MMBLL.MMReports { public interface IMMReportsBLL { IAsyncEnumerable MMHeadRegister( int OrderbyType, int FirstNumber, int MaxResult, CriteriaDTO CriteriaDTO, LoginDTO LoginDTO, CancellationToken CancellationToken = default); //IAsyncEnumerable GetDayBooksStream( // CriteriaDTO criteriaDTO, LoginDTO loginDTO, // [EnumeratorCancellation] CancellationToken ct = default); Task<(List Items, int Total)> GetMMPendingStatusReport( int firstNumber, int maxResult, string bizTransactionClassIds, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task<(List Items, int Total)> GetMMRegisterPartyWiseSummaryReport( int firstNumber, int maxResult, string bizTransactionClassIds, int type, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task<(List Items, int Total)> GetMMRegisterItemWiseReport( int firstNumber, int maxResult, string bizTransactionClassIds, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task<(List Items, int Total)> GetMMPendingRegisterListReport( int firstNumber, int maxResult, string bizTransactionClassIds, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task> GetPendingCountsByTransactionType( IEnumerable bizTransactionTypeIds, LoginDTO loginDTO, CancellationToken ct = default); // Procurement Overview Dashboard (Phase 1) -- CSV-string ID params match this class's own // existing convention (GetMMPendingStatusReport etc. above), not a new pattern. Task GetProcurementSpendOverview( string bizTransactionClassIds, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task GetPRToPOTrackerDashboard( int firstNumber, int maxResult, int prBizTransactionClassId, int inquiryBizTransactionClassId, int quotationBizTransactionClassId, int poBizTransactionClassId, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task GetPOMonitoringDashboard( string poBizTransactionClassIds, int poBizTransactionClassId, int grnBizTransactionClassId, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); Task GetSpendAnalysisDashboard( string bizTransactionClassIds, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); // Sales Overview Dashboard (Phase 1) -- Enquiry->Quotation->Order funnel tile. Task GetSalesFunnelDashboard( int firstNumber, int maxResult, int enquiryBizTransactionClassId, int quotationBizTransactionClassId, int orderBizTransactionClassId, CriteriaDTO criteriaDTO, LoginDTO loginDTO, CancellationToken ct = default); } }