using AccountsDAL.DTO.Warehouse; using GB5Shared.DTO.Framework.Login; namespace AccountsBLL.Warehouse { public interface IWarehouseAdminBLL { // ─── Fact ──────────────────────────────────────────────────────────── Task GetWarehouseFactsAsync(LoginDTO login, CancellationToken ct); Task SaveWarehouseFactAsync(SaveWarehouseFactDTO dto, LoginDTO login, CancellationToken ct); Task DeleteWarehouseFactAsync(int factId, LoginDTO login, CancellationToken ct); // ─── Measure ───────────────────────────────────────────────────────── Task GetWarehouseMeasuresByFactAsync(int factId, LoginDTO login, CancellationToken ct); Task SaveWarehouseMeasureAsync(SaveWarehouseMeasureDTO dto, LoginDTO login, CancellationToken ct); Task DeleteWarehouseMeasureAsync(int measureId, LoginDTO login, CancellationToken ct); // ─── Posting Rule ───────────────────────────────────────────────────── Task GetWarehousePostingRulesByFactAsync(int factId, LoginDTO login, CancellationToken ct); Task SaveWarehousePostingRuleAsync(SaveWarehousePostingRuleDTO dto, LoginDTO login, CancellationToken ct); Task DeleteWarehousePostingRuleAsync(int postingRuleId, LoginDTO login, CancellationToken ct); // ─── DIMOU ETL ──────────────────────────────────────────────────────── Task PopulateDimOuAsync(LoginDTO login, CancellationToken ct); } }