FruitBankHybridApp/FruitBank.Common/Interfaces/IFruitBankDataControllerCom...

75 lines
3.5 KiB
C#

using FruitBank.Common.Dtos;
using FruitBank.Common.Entities;
using FruitBank.Common.Models;
using Mango.Nop.Core.Dtos;
using Mango.Nop.Core.Models;
using Nop.Core.Domain.Customers;
namespace FruitBank.Common.Interfaces;
public interface IFruitBankDataControllerCommon
{
public Task<List<MeasuringModel>?> GetMeasuringModels();
#region Partner
public Task<List<Partner>?> GetPartners();
public Task<Partner?> GetPartnerById(int id);
public Task<Partner?> UpdatePartner(Partner partner);
#endregion Partner
#region Shipping
public Task<List<Shipping>?> GetShippings();
Task<List<Shipping>?> GetNotMeasuredShippings();
public Task<Shipping?> GetShippingById(int id);
public Task<Shipping?> AddShipping(Shipping shipping);
public Task<Shipping?> UpdateShipping(Shipping shipping);
#endregion Shipping
#region ShippingItem
public Task<List<ShippingItem>?> GetShippingItems();
public Task<List<ShippingItem>?> GetShippingItemsByPartnerId(int partnerId);
public Task<List<ShippingItem>?> GetShippingItemsByShippingId(int shippingId);
public Task<List<ShippingItem>?> GetShippingItemsByDocumentId(int shippingDocumentId);
public Task<ShippingItem?> GetShippingItemById(int id);
public Task<ShippingItem?> AddShippingItem(ShippingItem shippingItem);
public Task<ShippingItem?> UpdateShippingItem(ShippingItem shippingItem);
public Task<ShippingItem?> UpdateMeasuredShippingItem(ShippingItem shippingItem);
#endregion ShippingItem
#region ShippingItemPallet
public Task<List<ShippingItemPallet>?> GetShippingItemPallets();
public Task<ShippingItemPallet?> AddShippingItemPallet(ShippingItemPallet shippingItemPallet);
public Task<ShippingItemPallet?> UpdateShippingItemPallet(ShippingItemPallet shippingItemPallet);
public Task<ShippingItemPallet?> AddOrUpdateMeasuredShippingItemPallet(ShippingItemPallet shippingItemPallet);
public Task<ShippingItem?> AddOrUpdateMeasuredShippingItemPallets(List<ShippingItemPallet> shippingItemPallets);
#endregion ShippingItemPallet
#region ShippingDocument
public Task<List<ShippingDocument>?> GetShippingDocuments();
public Task<ShippingDocument?> GetShippingDocumentById(int id);
public Task<List<ShippingDocument>?> GetShippingDocumentsByShippingId(int shippingId);
public Task<List<ShippingDocument>?> GetShippingDocumentsByProductId(int productId);
public Task<List<ShippingDocument>?> GetShippingDocumentsByPartnerId(int partnerId);
public Task<ShippingDocument?> AddShippingDocument(ShippingDocument shippingDocument);
public Task<ShippingDocument?> UpdateShippingDocument(ShippingDocument shippingDocument);
#endregion ShippingDocument
#region Customer
public Task<List<CustomerDto>?> GetMeasuringUsers();
public Task<List<CustomerRole>?> GetCustomerRolesByCustomerId(int customerId);
#endregion Customer
#region Product
public Task<List<ProductDto>?> GetProductDtos();
//public Task<List<MeasuringProductDto>?> GetAllMeasuringProductDtos();
public Task<ProductDto?> GetProductDtoById(int productId);
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtos();
public Task<List<StockQuantityHistoryDto>?> GetStockQuantityHistoryDtosByProductId(int productId);
#endregion Product
Task<MgLoginModelResponse?> LoginMeasuringUser(MgLoginModelRequest loginModelRequest);
Task<List<Partner>?> ProcessAndSaveFullShippingJson(string fullShippingJson, int customerId);
}