Skip to content
Extraits de code Groupes Projets
Valider d9feb058 rédigé par Mohamed Lemine BAILLAHI's avatar Mohamed Lemine BAILLAHI
Parcourir les fichiers

Merge branch 'feature/MS-35' into 'develop'

MS-35/Add delete item functionality in back office and display sale session ID

Closes MS-35

See merge request !115
parents c23820c9 5c27f84e
Branches
1 requête de fusion!115MS-35/Add delete item functionality in back office and display sale session ID
Pipeline #12279 en échec avec les étapes
in 30 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