Add validators and services for Product Galleries and Product Tags

- Implemented Create, Delete, Get, and Update validators for Product Galleries.
- Added Create, Delete, Get, and Update validators for Product Tags.
- Created service classes for handling Discount Categories, Discount Orders, Discount Products, Discount Shopping Cart, Product Categories, Product Galleries, and Product Tags.
- Each service class integrates with CQRS for command and query handling.
- Established mapping profiles for Product Galleries.
This commit is contained in:
masoodafar-web
2025-12-04 02:40:49 +03:30
parent 40d54d08fc
commit f0f48118e7
436 changed files with 33159 additions and 2005 deletions

View File

@@ -13,7 +13,7 @@ public class CreateNewFactorDetailsCommandHandler : IRequestHandler<CreateNewFac
CancellationToken cancellationToken)
{
var entity = request.Adapt<FactorDetails>();
await _context.FactorDetailss.AddAsync(entity, cancellationToken);
await _context.FactorDetails.AddAsync(entity, cancellationToken);
entity.AddDomainEvent(new CreateNewFactorDetailsEvent(entity));
await _context.SaveChangesAsync(cancellationToken);
return entity.Adapt<CreateNewFactorDetailsResponseDto>();

View File

@@ -11,10 +11,10 @@ public class DeleteFactorDetailsCommandHandler : IRequestHandler<DeleteFactorDet
public async Task<Unit> Handle(DeleteFactorDetailsCommand request, CancellationToken cancellationToken)
{
var entity = await _context.FactorDetailss
var entity = await _context.FactorDetails
.FirstOrDefaultAsync(x => x.Id == request.Id, cancellationToken) ?? throw new NotFoundException(nameof(FactorDetails), request.Id);
entity.IsDeleted = true;
_context.FactorDetailss.Update(entity);
_context.FactorDetails.Update(entity);
entity.AddDomainEvent(new DeleteFactorDetailsEvent(entity));
await _context.SaveChangesAsync(cancellationToken);
return Unit.Value;

View File

@@ -11,10 +11,10 @@ public class UpdateFactorDetailsCommandHandler : IRequestHandler<UpdateFactorDet
public async Task<Unit> Handle(UpdateFactorDetailsCommand request, CancellationToken cancellationToken)
{
var entity = await _context.FactorDetailss
var entity = await _context.FactorDetails
.FirstOrDefaultAsync(x => x.Id == request.Id, cancellationToken) ?? throw new NotFoundException(nameof(FactorDetails), request.Id);
request.Adapt(entity);
_context.FactorDetailss.Update(entity);
_context.FactorDetails.Update(entity);
entity.AddDomainEvent(new UpdateFactorDetailsEvent(entity));
await _context.SaveChangesAsync(cancellationToken);
return Unit.Value;

View File

@@ -10,7 +10,7 @@ public class GetAllFactorDetailsByFilterQueryHandler : IRequestHandler<GetAllFac
public async Task<GetAllFactorDetailsByFilterResponseDto> Handle(GetAllFactorDetailsByFilterQuery request, CancellationToken cancellationToken)
{
var query = _context.FactorDetailss
var query = _context.FactorDetails
.ApplyOrder(sortBy: request.SortBy)
.AsNoTracking()
.AsQueryable();

View File

@@ -11,7 +11,7 @@ public class GetFactorDetailsQueryHandler : IRequestHandler<GetFactorDetailsQuer
public async Task<GetFactorDetailsResponseDto> Handle(GetFactorDetailsQuery request,
CancellationToken cancellationToken)
{
var response = await _context.FactorDetailss
var response = await _context.FactorDetails
.AsNoTracking()
.Where(x => x.Id == request.Id)
.ProjectToType<GetFactorDetailsResponseDto>()