- ➕ Add `MudAutocomplete` for brand selection in UI
Introduced a new component in `DiscountActionDialogBox.razor`.
- 🆕 Introduce `IsBrandEnable` property in ViewModel
Added to manage the state of brand-specific discounts.
- 🔄 Update ViewModel logic for `IsBrandEnable`
Ensured mutual exclusivity with other discount types.
- 🛠️ Handle brand selection in `SubmitEditAsync`
Added logic for brand selection and validation.
- 🔍 Modify `SearchBrand` method in ViewModel
Fetch and return brand data for selection.
- 📦 Change target framework to `net5.0`
Updated `Netina.Common.csproj` and `Netina.Domain.csproj`.
- 🆙 Update `UpdateDiscountCommand` and `DiscountLDto`
Included `BrandId` and `BrandName` properties.
- 🛠️ Modify `UpdateDiscountCommandHandler`
Handle brand-specific discount updates.
- 🆕 Add `SubmitEditAsync` method in ViewModel
For handling discount edits.
Changes made by Amir.H Khademi
- 🖼️ Update SubProductActionDialogBox.razor layout
Adjust grid item sizes and add new input field for DiversitySecondaryValue.
- 🧑💻 Update SubProductActionDialogBoxViewModel
Include DiversitySecondaryValue parameter in command constructors.
- 📈 Increment version in Netina.AdminPanel.PWA.csproj
Update AssemblyVersion and FileVersion to 1.12.22.38.
- 🆕 Add BrandDiscountMapper.g.cs
Introduce static partial class BrandDiscountMapper in Netina.Domain.Mappers.
- 🗃️ Add migration 20250414120653_EditSubProductValue.cs
Add DiversitySecondaryValue column to Products table.
- 🏷️ Update SubProduct related classes and methods
Add DiversitySecondaryValue property to CreateSubProductCommand, UpdateSubProductCommand, and SubProductSDto.
- 🛠️ Modify command handlers
Update CreateSubProductCommandHandler and UpdateSubProductCommandHandler to handle DiversitySecondaryValue.
- 🗄️ Update Product.Aggregate.cs and SubProduct.cs
Include DiversitySecondaryValue property in SubProduct class.
- 🔄 Update SubProductMapper.g.cs
Map DiversitySecondaryValue property in SubProductMapper.
Changes made by Amir.H Khademi
* 🆕 Added support for brand discounts in `CalculateOrderDiscountCommandHandler`
* 🏷️ Updated `DiscountCommands` class to include `BrandId` property
* 🏗️ Introduced `BrandDiscount` class in `Discount.Aggregate.cs` with `Create` method
* 🛠️ Modified `Order` class in `Order.Aggregate.cs` to handle `BrandId`
* 🏷️ Updated `OrderProduct` class in `Order.Aggregate.cs` to include `BrandId` property
* 🆕 Added `Brand` discount type to `DiscountType` enum
* ✨ Enhanced `CreateDiscountCommandHandler` and `UpdateDiscountCommandHandler` for brand discounts
* 🆕 Introduced `BrandDiscount` class in `BrandDiscount.cs` to represent brand-specific discounts
Changes made by Amir.h Khademi
Introduced a new feature for managing sub-products within the application. This includes:
- Added a new tab panel for "Sub Products" in `ProductActionDialogBox.razor`.
- Created `SubProductActionDialogBox` component for sub-product creation and editing.
- Updated `ProductActionDialogBoxViewModel` to handle sub-product operations.
- Modified `Address` class and `IProductRestApi` interface to support sub-products.
- Added `SubProductController` for API requests related to sub-products.
- Introduced command and query classes for sub-product operations.
- Created `SubProductSDto` for sub-product data transfer.
- Added `SubProduct` class inheriting from `Product` with additional properties.
- Introduced `ProductDiversity` and `ColorDiversity` enums.
- Added `SubProductMapper` for mapping between `SubProduct` and `SubProductSDto`.
- Implemented command handlers for sub-product CRUD operations.
- Added migration script `20241217212716_AddSubProduct` to update the database schema.
- Updated `ProductController`, `SiteMapService`, and `Product` class to support sub-products.
- Added `SubProductActionDialogBox.razor` for sub-product UI management.
-ADD FAST PRODUCT CREATE DIALOG
-Refactor page and layout and fix some responsive issues
-Refactor brand and product command and return Guid in response create
- NEW VERSION OF PRODUCT CATEGORIES PAGE
- Change products categories page style and ux
- Change icrud api rest and get guid in instead of dto or model