last works on Category and SubCategory Completion ...

This commit is contained in:
2026-07-08 02:47:15 +03:30
parent fdd76137e0
commit 234f39876b
5 changed files with 37 additions and 7 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ using xPushService.Interfaces;
namespace xCategoryService.Interfaces namespace xCategoryService.Interfaces
{ {
public interface IXCategoryProvider : IXBaseProvided<XCategory, XCategoryDto, int, XCategoryDtoHub> public interface IXCategoryProvider : IXBaseProvided<XCategory, XCategoryDto, int, XCategoryDtoHub>, IXCategorySubCategoryReferenceProvider
{ {
/// <summary> /// <summary>
/// Check Has Specified Locale or not ... /// Check Has Specified Locale or not ...
@@ -1,16 +1,26 @@
using xCategoryService.Models.Dtos;
using xModels.Base; using xModels.Base;
using xModels.Dtos; using xModels.Dtos;
namespace xCategoryService.Providers.Dtos namespace xCategoryService.Models.Dtos
{ {
/// <summary> /// <summary>
/// Represent a Category by all of it's Resources ... /// Represent a Category by all of it's Resources ...
/// </summary> /// </summary>
public class XCategoryResourceDto : XBaseDto public class XCategoryResourceDto : XBaseDto
{ {
/// <summary>
/// Category Dto Item for Add or Update ...
/// </summary>
public XCategoryDto Item { get; set; } public XCategoryDto Item { get; set; }
/// <summary>
/// Exists Category Titles ...
/// </summary>
public XResourceDto Titles { get; set; } public XResourceDto Titles { get; set; }
/// <summary>
/// Exists Category Description ...
/// </summary>
public XResourceDto Descriptions { get; set; } public XResourceDto Descriptions { get; set; }
} }
} }
@@ -1,8 +1,7 @@
using xCategoryService.Models.Dtos;
using xModels.Base; using xModels.Base;
using xModels.Dtos; using xModels.Dtos;
namespace xCategoryService.Providers.Dtos namespace xCategoryService.Models.Dtos
{ {
public class XSubCategoryResourceDto : XBaseDto public class XSubCategoryResourceDto : XBaseDto
{ {
+2
View File
@@ -32,6 +32,8 @@ namespace xCategoryService.Providers
private readonly IXCategoryDescriptionResourceProvider descriptionResourceProvider; private readonly IXCategoryDescriptionResourceProvider descriptionResourceProvider;
private readonly IXCategorySubCategoryReferenceProvider categorySubCategoryReferenceProvider; private readonly IXCategorySubCategoryReferenceProvider categorySubCategoryReferenceProvider;
public string Provider => categorySubCategoryReferenceProvider.Provider;
public XCategoryProvider( public XCategoryProvider(
XAppConfiguration appConfiguration, XAppConfiguration appConfiguration,
IXCategoryServiceProvider provider, IXCategoryServiceProvider provider,
+21 -2
View File
@@ -25,6 +25,7 @@ namespace xCategoryService.Providers
public class XSubCategoryProvider : XBaseProvided<XSubCategory, XSubCategoryDto, int, XSubCategoryDtoHub>, IXSubCategoryProvider public class XSubCategoryProvider : XBaseProvided<XSubCategory, XSubCategoryDto, int, XSubCategoryDtoHub>, IXSubCategoryProvider
{ {
private readonly XAppConfiguration appConfiguration; private readonly XAppConfiguration appConfiguration;
private readonly IXCategoryProvider categoryProvider;
private readonly IXSubCategoryServiceProvider provider; private readonly IXSubCategoryServiceProvider provider;
private readonly XDataServiceConfiguration dataServiceConfiguration; private readonly XDataServiceConfiguration dataServiceConfiguration;
private readonly IXSubCategoryTitleResourceProvider titleResourceProvider; private readonly IXSubCategoryTitleResourceProvider titleResourceProvider;
@@ -32,6 +33,7 @@ namespace xCategoryService.Providers
public XSubCategoryProvider( public XSubCategoryProvider(
XAppConfiguration appConfiguration, XAppConfiguration appConfiguration,
IXCategoryProvider categoryProvider,
IXSubCategoryServiceProvider provider, IXSubCategoryServiceProvider provider,
XDataServiceConfiguration dataServiceConfiguration, XDataServiceConfiguration dataServiceConfiguration,
IXSubCategoryTitleResourceProvider titleResourceProvider, IXSubCategoryTitleResourceProvider titleResourceProvider,
@@ -41,10 +43,11 @@ namespace xCategoryService.Providers
permittedRoles: new string[] { } permittedRoles: new string[] { }
) )
{ {
this.appConfiguration = appConfiguration;
this.provider = provider; this.provider = provider;
this.dataServiceConfiguration = dataServiceConfiguration; this.appConfiguration = appConfiguration;
this.categoryProvider = categoryProvider;
this.titleResourceProvider = titleResourceProvider; this.titleResourceProvider = titleResourceProvider;
this.dataServiceConfiguration = dataServiceConfiguration;
this.descriptionResourceProvider = descriptionResourceProvider; this.descriptionResourceProvider = descriptionResourceProvider;
} }
@@ -137,11 +140,27 @@ namespace xCategoryService.Providers
cancellationToken: cancellationToken cancellationToken: cancellationToken
); );
//
// Reading Category Resource ...
XCategoryResourceDto categoryResourceDto = null;
var categoryDto = await categoryProvider.GetReference(
providedForId: id,
cancellationToken: cancellationToken
);
if (!categoryDto.IsNullOrDefault())
{
categoryResourceDto = await categoryProvider.GetResource(
id: categoryDto.Id,
cancellationToken: cancellationToken
);
}
// //
var result = new XSubCategoryResourceDto var result = new XSubCategoryResourceDto
{ {
Item = item, Item = item,
Titles = titleResource, Titles = titleResource,
Category = categoryResourceDto,
Descriptions = descriptionResource Descriptions = descriptionResource
}; };