From 3e23ab5c847818e5af05d5fa30a6c3841cf444f0 Mon Sep 17 00:00:00 2001 From: masoodafar-web Date: Fri, 21 Nov 2025 07:06:31 +0330 Subject: [PATCH] update --- .../CreateNewUserCartsCommandHandler.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/CMSMicroservice.Application/UserCartsCQ/Commands/CreateNewUserCarts/CreateNewUserCartsCommandHandler.cs b/src/CMSMicroservice.Application/UserCartsCQ/Commands/CreateNewUserCarts/CreateNewUserCartsCommandHandler.cs index 0cb9f48..702237f 100644 --- a/src/CMSMicroservice.Application/UserCartsCQ/Commands/CreateNewUserCarts/CreateNewUserCartsCommandHandler.cs +++ b/src/CMSMicroservice.Application/UserCartsCQ/Commands/CreateNewUserCarts/CreateNewUserCartsCommandHandler.cs @@ -13,6 +13,16 @@ public class CreateNewUserCartsCommandHandler : IRequestHandler(); + var existingUserCart = await _context.UserCartss + .FirstOrDefaultAsync(x => x.UserId == entity.UserId && x.ProductId == entity.ProductId && !x.IsDeleted, cancellationToken); + if (existingUserCart != null) + { + existingUserCart.Count += entity.Count; + _context.UserCartss.Update(existingUserCart); + existingUserCart.AddDomainEvent(new UpdateUserCartsEvent(existingUserCart)); + await _context.SaveChangesAsync(cancellationToken); + return existingUserCart.Adapt(); + } await _context.UserCartss.AddAsync(entity, cancellationToken); entity.AddDomainEvent(new CreateNewUserCartsEvent(entity)); await _context.SaveChangesAsync(cancellationToken);