Skip to content
Extraits de code Groupes Projets
Valider bdc40b2a rédigé par aya zouity's avatar aya zouity
Parcourir les fichiers

Add delete item functionality in back office and display sale session ID

parent c23820c9
Branches
1 requête de fusion!115MS-35/Add delete item functionality in back office and display sale session ID
Pipeline #12275 réussi avec les étapes
in 1 minute et 2 secondes
## [1.0.73-RELEASE]
### Added
- MYD-739/Fix List with sale sessions stats
- Add delete item functionality in back office and display sale session ID
### Changed
- Changes in existing functionality.
......
......@@ -18,7 +18,7 @@
<dependency>
<groupId>com.marketingconfort</groupId>
<artifactId>mydressin-common</artifactId>
<version>1.0.206-RELEASE</version>
<version>1.0.212-RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
......
package com.marketingconfort.mydressin.dtos;
import com.marketingconfort.mydressin.common.cart.dtos.ProductCartDTO;
import com.marketingconfort.mydressin.common.cart.enumurations.ItemCartStatus;
import com.marketingconfort.mydressin.common.cart.enumurations.ItemSource;
import lombok.*;
......@@ -16,4 +17,6 @@ public class ProductDetailsCartDTO {
private long quantity;
private double totalPrice;
private ItemSource source;
private ItemCartStatus status;
private Long sessionOrderId;
}
......@@ -60,14 +60,9 @@ public class CartMapper {
public ClientCartDTO cartToClientCartDTO(Cart cart)
{
List<ItemCart> itemCarts = cart.getItems()
.stream()
.filter(itemCart -> itemCart.getStatus()!=ItemCartStatus.DELETED_SITE && itemCart.getStatus()!=ItemCartStatus.DELETED_BO )
.toList();
ClientCartDTO clientCartDTO = new ClientCartDTO();
clientCartDTO.setId(cart.getId());
clientCartDTO.setItemsCount(itemCarts.size());
clientCartDTO.setItemsCount(cart.getItems().size());
return clientCartDTO;
}
......
......@@ -78,7 +78,7 @@ public interface CartRepository extends JpaRepository<Cart, Long>, JpaSpecificat
ItemSource source);
@Query("SELECT c FROM Cart c " +
"WHERE EXISTS (SELECT ic1 FROM c.items ic1 WHERE ic1.status != 'DELETED_SITE' AND ic1.status != 'DELETED_BO' ) " +
"WHERE EXISTS (SELECT ic1 FROM c.items ic1) " +
" AND LOWER(c.status) = 'open' " +
" AND ((-1L) in :clientIds OR c.clientId IN :clientIds) " +
" AND ((-1L) in :productIds OR EXISTS (SELECT ic2 FROM c.items ic2 WHERE ic2.productId IN :productIds))")
......
......@@ -21,4 +21,5 @@ public interface SessionOrderRepository extends JpaRepository<SessionOrder,Long>
void updateItemCartExpirationDateBySaleSessionId(@Param("sessionId") Long sessionId,
@Param("expirationDate") LocalDateTime expirationDate);
List<SessionOrder> findAll();
SessionOrder findSessionOrderByItemCart_Id(Long id);
}
......@@ -16,6 +16,7 @@ import com.marketingconfort.mydressin.common.cart.enumurations.OrderStatus;
import com.marketingconfort.mydressin.common.cart.enumurations.Status;
import com.marketingconfort.mydressin.common.cart.models.Cart;
import com.marketingconfort.mydressin.common.cart.models.ItemCart;
import com.marketingconfort.mydressin.common.cart.models.SessionOrder;
import com.marketingconfort.mydressin.common.constant.urlServiceConstant.NameUri;
import com.marketingconfort.mydressin.common.constant.urlServiceConstant.NameUrl;
import com.marketingconfort.mydressin.common.constant.urlServiceConstant.Path.AddonsServicePath;
......@@ -29,6 +30,7 @@ import com.marketingconfort.mydressin.exceptions.InsufficientBalanceException;
import com.marketingconfort.mydressin.mappers.CartMapper;
import com.marketingconfort.mydressin.mappers.ProductDTOMapper;
import com.marketingconfort.mydressin.repositories.CartRepository;
import com.marketingconfort.mydressin.repositories.SessionOrderRepository;
import com.marketingconfort.mydressin.services.*;
import com.marketingconfort.starter.core.exceptions.TechnicalException;
import com.marketingconfort.starter.core.services.MCRestTemplateService;
......@@ -64,9 +66,10 @@ public class CartServiceImp implements CartService {
private final NameUrl nameUrl;
private final ExternalApiService externalApiService;
private final PromoCodeUtilService promoCodeUtilService;
private final SessionOrderRepository sessionOrderRepository;
public CartServiceImp(CartRepository cartRepository, ProductStockService productStockService, CartMapper cartMapper, CartCountConfigService cartCountConfigService,
MCRestTemplateService mcRestTemplateService, NameUrl nameUrl, ExternalApiService externalApiService, PromoCodeUtilService promoCodeUtilService) {
MCRestTemplateService mcRestTemplateService, NameUrl nameUrl, ExternalApiService externalApiService, PromoCodeUtilService promoCodeUtilService, SessionOrderRepository sessionOrderRepository) {
this.cartRepository = cartRepository;
this.productStockService = productStockService;
this.cartMapper = cartMapper;
......@@ -75,6 +78,7 @@ public class CartServiceImp implements CartService {
this.nameUrl = nameUrl;
this.externalApiService = externalApiService;
this.promoCodeUtilService = promoCodeUtilService;
this.sessionOrderRepository = sessionOrderRepository;
}
......@@ -1059,11 +1063,16 @@ public class CartServiceImp implements CartService {
? productCart.getPromoPrice() * item.getQuantity()
: productCart.getRegularPrice() * item.getQuantity();
ProductDetailsCartDTO detailsDTO = new ProductDetailsCartDTO();
detailsDTO.setItemId(item.getProductId());
detailsDTO.setItemId(item.getId());
detailsDTO.setQuantity(item.getQuantity());
detailsDTO.setSource(item.getSource());
detailsDTO.setTotalPrice(price);
detailsDTO.setProductCartDTOS(productCart);
detailsDTO.setStatus(item.getStatus());
SessionOrder sessionOrderByItemCartId = sessionOrderRepository.findSessionOrderByItemCart_Id(item.getId());
if(sessionOrderByItemCartId!=null){
detailsDTO.setSessionOrderId(sessionOrderByItemCartId.getSaleSession().getId());
}
return detailsDTO;
}
......
0% ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter