New source control repo for Biskilog POS - secure hub to store & manage source code. Streamlines dev process, tracks changes, & improves collaboration. Ensures reliable software.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
1.8 KiB

using Biskilog_Accounting.Shared.CustomModels;
using Biskilog_Accounting.Shared.POSModels;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Biskilog_Accounting.Shared.Interfaces
{
public interface IProduct
{
IEnumerable<Unitofmeasure> GetUnitofmeasures();
IEnumerable<ProductItem> GetProducts(string a_productKey = "");
IEnumerable<Tblbrand> GetBrands(string a_brandKey = "");
IEnumerable<Tblcategory> GetCategories(string a_categoryKey = "");
IEnumerable<ProductItem> GetLowstockItems();
Task FetchProducts();
Task FetchLowStockProducts();
Task FetchUnits();
Task FetchBrands();
Task FetchCategories();
void RefreshList();
ProductItem GetProductById(string a_id);
ProductItem GetProductByName(string name);
string GetUnitName(string a_unitCode);
event EventHandler ProductsChanged;
event EventHandler UnitsChanged;
event EventHandler BrandsChanged;
event EventHandler CategoriesChanged;
Task SyncProducts(List<Tblproduct> a_item);
Task SyncInventory(List<Tblinventory> a_item);
Task SyncInventoryEntries(List<Tblinventoryentry> a_item);
Task SyncPriceChanges(List<Tblpricechange> a_items);
Task SyncProductAltUnit(List<Productaltunit> a_items);
Task SyncRestockAsync(List<Restocklevel> a_items);
Task SyncUnitOfMeasureAsync(List<Unitofmeasure> a_items);
Task SyncStockAsync(List<Tbstock> a_items);
Task SyncBrandsAsync(List<Tblbrand> a_items);
Task SyncCategoriesAsync(List<Tblcategory> a_items);
DateTime GetLastSyncDate(string a_tablename);
void SetLastSyncDate(string a_tableName, DateTime a_timestamp);
}
}