using GB5Shared.DTO.Framework.Criteria; using GB5Shared.DTO.Framework.Login; namespace MMBLL.Allocation { /// /// Interface defining the Business Logic Layer contract for Allocation operations. /// Supports both SQL Server (GB5 default) and Oracle database routing. /// public interface IAllocationBLL { /// /// Retrieves a single allocation record by its unique identifier. /// Task GetAllocation(int AllocationId, LoginDTO LoginDTO); /// /// Loads paginated allocation picklist data for the "Load From Allocation" screen. /// Routes to the appropriate DAL method based on database type: /// - SQL Server → LoadFromAllocationPicklist (optimized lazy-load query) /// - Oracle → GetPendingNew (trigger-based pending allocation logic) /// /// Zero-based starting index for pagination. /// Maximum number of records to return per page. /// Filter criteria including OU, item, header, biz type filters. /// Current user session and database connection context. /// JSON-serialized list of . Task LoadFromAllocationPicklist(int FirstNumber, int MaxResult, CriteriaDTO CriteriaDTO, LoginDTO LoginDTO); /// /// GB4 Source: AllocationService.GetPendingNewListForProductionPlan (Allocation.svc.cs), /// GB4 route /Allocation/PendingAllocationSelectList. Returns AllocationNewDTO rows — /// wired to GB5's /Allocation/GetSelectListTPendingAllocation endpoint since that route /// name is the closest textual match to GB4's actual URL. /// Task GetPendingNewListForProductionPlan(CriteriaDTO CriteriaDTO, LoginDTO LoginDTO); } }