feat: Implement Discount Product and Shopping Cart functionalities
- Added UpdateDiscountProductCommandValidator for validating discount product updates. - Created GetDiscountProductByIdQuery and its handler for retrieving discount product details by ID. - Implemented GetDiscountProductsQuery and handler for fetching a list of discount products with filtering options. - Developed AddToCartCommand and handler for adding products to the shopping cart. - Implemented ClearCartCommand and handler for clearing the shopping cart. - Created RemoveFromCartCommand and handler for removing items from the cart. - Added UpdateCartItemCountCommand and handler for updating the quantity of items in the cart. - Developed GetUserCartQuery and handler for retrieving the user's shopping cart details. - Implemented Product Tag functionalities including assigning tags to products, creating, updating, and deleting tags. - Added queries for fetching all tags and products by tag.
This commit is contained in:
@@ -7,14 +7,20 @@ using CMSMicroservice.Protobuf.Protos.UserOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.UserRole;
|
||||
using CMSMicroservice.Protobuf.Protos.Products;
|
||||
using CMSMicroservice.Protobuf.Protos.ProductImages;
|
||||
using CMSMicroservice.Protobuf.Protos.ProductGallerys;
|
||||
using CMSMicroservice.Protobuf.Protos.ProductGalleries;
|
||||
using CMSMicroservice.Protobuf.Protos.Category;
|
||||
using CMSMicroservice.Protobuf.Protos.PruductCategory;
|
||||
using CMSMicroservice.Protobuf.Protos.ProductCategory;
|
||||
using BackOffice.BFF.Commission.Protobuf;
|
||||
using BackOffice.BFF.NetworkMembership.Protobuf;
|
||||
using BackOffice.BFF.ClubMembership.Protobuf;
|
||||
using BackOffice.BFF.Configuration.Protobuf;
|
||||
using FMSMicroservice.Protobuf.Protos.FileInfo;
|
||||
using CMSMicroservice.Protobuf.Protos.DiscountProduct;
|
||||
using CMSMicroservice.Protobuf.Protos.DiscountCategory;
|
||||
using CMSMicroservice.Protobuf.Protos.DiscountShoppingCart;
|
||||
using CMSMicroservice.Protobuf.Protos.DiscountOrder;
|
||||
using CMSMicroservice.Protobuf.Protos.Tag;
|
||||
using CMSMicroservice.Protobuf.Protos.ProductTag;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace BackOffice.BFF.Infrastructure.Services;
|
||||
@@ -50,10 +56,10 @@ public class ApplicationContractContext : IApplicationContractContext
|
||||
public PackageContract.PackageContractClient Packages => GetService<PackageContract.PackageContractClient>();
|
||||
public ProductsContract.ProductsContractClient Products => GetService<ProductsContract.ProductsContractClient>();
|
||||
public ProductImagesContract.ProductImagesContractClient ProductImages => GetService<ProductImagesContract.ProductImagesContractClient>();
|
||||
public ProductGallerysContract.ProductGallerysContractClient ProductGallerys => GetService<ProductGallerysContract.ProductGallerysContractClient>();
|
||||
public ProductGalleriesContract.ProductGalleriesContractClient ProductGalleries => GetService<ProductGalleriesContract.ProductGalleriesContractClient>();
|
||||
public RoleContract.RoleContractClient Roles => GetService<RoleContract.RoleContractClient>();
|
||||
public CategoryContract.CategoryContractClient Categories => GetService<CategoryContract.CategoryContractClient>();
|
||||
public PruductCategoryContract.PruductCategoryContractClient ProductCategories => GetService<PruductCategoryContract.PruductCategoryContractClient>();
|
||||
public ProductCategoryContract.ProductCategoryContractClient ProductCategories => GetService<ProductCategoryContract.ProductCategoryContractClient>();
|
||||
public UserAddressContract.UserAddressContractClient UserAddress => GetService<UserAddressContract.UserAddressContractClient>();
|
||||
public UserContract.UserContractClient Users => GetService<UserContract.UserContractClient>();
|
||||
public UserOrderContract.UserOrderContractClient UserOrders => GetService<UserOrderContract.UserOrderContractClient>();
|
||||
@@ -64,5 +70,15 @@ public class ApplicationContractContext : IApplicationContractContext
|
||||
public NetworkMembershipContract.NetworkMembershipContractClient NetworkMemberships => GetService<NetworkMembershipContract.NetworkMembershipContractClient>();
|
||||
public ClubMembershipContract.ClubMembershipContractClient ClubMemberships => GetService<ClubMembershipContract.ClubMembershipContractClient>();
|
||||
public ConfigurationContract.ConfigurationContractClient Configurations => GetService<ConfigurationContract.ConfigurationContractClient>();
|
||||
|
||||
// Discount Shop System (Phase 9)
|
||||
public DiscountProductContract.DiscountProductContractClient DiscountProducts => GetService<DiscountProductContract.DiscountProductContractClient>();
|
||||
public DiscountCategoryContract.DiscountCategoryContractClient DiscountCategories => GetService<DiscountCategoryContract.DiscountCategoryContractClient>();
|
||||
public DiscountShoppingCartContract.DiscountShoppingCartContractClient DiscountShoppingCarts => GetService<DiscountShoppingCartContract.DiscountShoppingCartContractClient>();
|
||||
public DiscountOrderContract.DiscountOrderContractClient DiscountOrders => GetService<DiscountOrderContract.DiscountOrderContractClient>();
|
||||
|
||||
// Tag Management System
|
||||
public TagContract.TagContractClient Tags => GetService<TagContract.TagContractClient>();
|
||||
public ProductTagContract.ProductTagContractClient ProductTags => GetService<ProductTagContract.ProductTagContractClient>();
|
||||
#endregion
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user