using Biskilog_Accounting.Shared.CustomModels; using Biskilog_Accounting.Shared.POSModels; namespace Biskilog_Accounting.Shared.Interfaces { public interface IAnalytics { /// /// Fetches a collection of sales transaction made from the specified start date to the end date /// /// Specified Start Date /// Specified end Date /// IEnumerable GetSalesTransaction(DateTime a_start, DateTime a_end); /// /// Fetches a collection of in-debt customers /// IEnumerable GetInDebtCustomers(); /// /// Fetches a collection of Product Items which are currently out of stock /// /// IEnumerable GetOutOfStockItems(); /// /// Fetches a collection of the most purchased Product Items within a specified date range /// /// /// /// IEnumerable GetMostPurchasedItem(DateTime a_start, DateTime a_end); /// /// Fetches a collection of cancelled transaction within a specified date range /// /// /// /// IEnumerable GetCancelledSales(DateTime a_start, DateTime a_end); /// /// Fetches a collection of transaction made by employees within a specified date range /// /// /// /// A dictionary of transactions made by employees with employee name as key Dictionary> GetEmployeeSales(DateTime a_start, DateTime a_end); /// /// Fetches a collection of product price changes with a specified date range /// /// /// /// IEnumerable GetPriceChanges(DateTime a_start, DateTime a_end); /// /// Fetch the trade summary which is made of the total sales made currently and previous trade /// /// TradeSummary GetTradeSummary(); } }