Update ShopCartListener.java

cyj
pbvfus8to 8 months ago
parent cbe72dfc20
commit 9ec893deb7

@ -8,6 +8,7 @@
*
*/
// 该类所属的包名表明其位于商城API相关的监听器包下主要用于监听与购物车相关的事件并执行相应的业务逻辑。
package com.yami.shop.api.listener;
import com.google.common.collect.Lists;
@ -23,25 +24,38 @@ import org.springframework.stereotype.Component;
import java.util.List;
/**
*
* ShopCartListener
* ShopCartEvent
*
* @author LGH
*/
@Component("defaultShopCartListener")
// 使用@Component注解将该类标记为Spring组件使得Spring容器能够识别并管理它。同时为该组件指定了一个名称"defaultShopCartListener"
// 在其他地方可以通过这个名称来获取该组件的实例(例如在基于名称进行依赖注入时)。
public class ShopCartListener {
/**
*
* @param event#getShopCart()
* @param event#shopCartItemDtoList
* @return
* defaultShopCartEventShopCartEvent
* 便
*
* @param event ShopCartEventevent.getShopCart()event.getShopCartItemDtoList()
* event.getShopCart()ShopCartDto
* event.getShopCartItemDtoList()ShopCartItemDtoShopCartItemDtoID
*/
@EventListener(ShopCartEvent.class)
// @EventListener注解用于标记该方法为一个事件监听器方法表明它会监听指定类型这里是ShopCartEvent类型的事件。当对应的事件在Spring应用上下文中被发布时
// 该方法就会被自动调用,从而执行相应的业务逻辑来处理这个事件。
@Order(ShopCartEventOrder.DEFAULT)
// @Order注解用于指定该事件监听器的执行顺序。在存在多个相同类型事件监听器的情况下Spring会按照这个顺序来依次调用它们确保业务逻辑按照预定的顺序执行。
// 这里的ShopCartEventOrder.DEFAULT表示该监听器的执行顺序遵循默认的设定具体的顺序数值可能在ShopCartEventOrder类中定义它决定了在整个购物车相关事件处理流程中的先后顺序。
public void defaultShopCartEvent(ShopCartEvent event) {
ShopCartDto shopCart = event.getShopCartDto();
List<ShopCartItemDto> shopCartItemDtoList = event.getShopCartItemDtoList();
// 对数据进行组装
List<ShopCartItemDiscountDto> shopCartItemDiscountDtoList = Lists.newArrayList();
// 创建一个ShopCartItemDiscountDto对象用于承载要组装的商品折扣等相关信息从类名推测可能涉及商品在购物车中的折扣相关数据处理
// 这里虽然目前只看到简单的设置操作,但可能后续会根据业务需求扩展更多与折扣计算、展示等相关的逻辑。
ShopCartItemDiscountDto shopCartItemDiscountDto = new ShopCartItemDiscountDto();
shopCartItemDiscountDto.setShopCartItems(shopCartItemDtoList);
@ -49,5 +63,4 @@ public class ShopCartListener {
shopCart.setShopCartItemDiscounts(shopCartItemDiscountDtoList);
}
}
}
Loading…
Cancel
Save