Grand.Web.Store - Product attributes/Product specifications per store#604
Merged
KrzysztofPajak merged 5 commits intodevelopfrom Jun 4, 2025
Merged
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR adds store-level filtering and management UI for product attributes and specification attributes in the Store area.
- Introduces new views and popups for predefined product attribute values and a shared AccessDenied modal.
- Extends service interfaces and implementations to accept a
storeIdparameter and apply store-based filtering. - Updates controllers to remove the
IGroupServicedependency, adjust API calls, and revise cache keys for product attributes.
Reviewed Changes
Copilot reviewed 34 out of 34 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/Web/Grand.Web.Store/Areas/Store/Views/Shared/AccessDenied.cshtml | New modal view for access denied messages. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/PredefinedProductAttributeValueCreatePopup.cshtml | Popup form for creating predefined attribute values. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/PredefinedProductAttributeValueEditPopup.cshtml | Popup form for editing predefined attribute values. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdatePredefinedProductAttributeValue.cshtml | Partial for the create/update form of predefined values. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdate.cshtml | Main partial for product attribute form layout and tabs. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdate.TabInfo.cshtml | Tab content for attribute info and localization. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdate.TabUsedByProducts.cshtml | Tab showing products using the attribute. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdate.TabPredefinedValues.cshtml | Tab for managing predefined attribute values grid. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/List.cshtml | Store-area list view with Kendo grid for attributes. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Edit.cshtml | Store-area edit view for product attributes. |
| src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Create.cshtml | Store-area create view for product attributes. |
| src/Web/Grand.Web.Admin/Controllers/SpecificationAttributeController.cs | Removed groupService, updated list and store filtering calls. |
| src/Web/Grand.Web.Admin/Controllers/ProductAttributeController.cs | Removed groupService, updated paging calls and store filter in API. |
| src/Core/Grand.Infrastructure/Caching/Constants/ProductAttributeCacheKey.cs | Cache key updated to include storeId. |
| src/Business/Grand.Business.Core/Interfaces/Catalog/Products/ISpecificationAttributeService.cs | Interface updated with storeId parameter. |
| src/Business/Grand.Business.Core/Interfaces/Catalog/Products/IProductService.cs | Interface updated with storeId parameter. |
| src/Business/Grand.Business.Core/Interfaces/Catalog/Products/IProductAttributeService.cs | Interface updated with storeId parameter. |
| src/Business/Grand.Business.Catalog/Services/Products/SpecificationAttributeService.cs | Implementation applies storeId filter and ordering. |
| src/Business/Grand.Business.Catalog/Services/Products/ProductService.cs | Implementation applies storeId filter to product queries. |
| src/Business/Grand.Business.Catalog/Services/Products/ProductAttributeService.cs | Implementation applies storeId filter, updated cache key usage. |
Comments suppressed due to low confidence (2)
src/Business/Grand.Web.Admin/Controllers/ProductAttributeController.cs:207
- Passing an empty string for the storeId bypasses store filtering; consider supplying the current staff store ID to limit results appropriately.
await _productService.GetProductsByProductAttributeId(productAttributeId, "", command.Page - 1, command.PageSize);
src/Web/Grand.Web.Store/Areas/Store/Views/ProductAttribute/Partials/CreateOrUpdate.TabPredefinedValues.cshtml:69
- The schema fields 'Product2Name' and 'ProductId2' don’t match the actual properties ('Name' and 'Id'); update them to reflect correct field names.
Product2Name: { editable: false, type: "string" },
src/Business/Grand.Business.Catalog/Services/Products/ProductAttributeService.cs
Outdated
Show resolved
Hide resolved
…ttributeService.cs Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



No description provided.