刷新可售时间
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
package com.czg.product.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalTime;
|
||||
|
||||
/**
|
||||
* 分组可售时间管控
|
||||
* @author tankaikai
|
||||
* @since 2025-04-07 16:04
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class GroupIsSaleTimeDTO implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Integer useTime;
|
||||
private LocalTime startTime;
|
||||
private LocalTime endTime;
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.czg.product.dto;
|
||||
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serial;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalTime;
|
||||
|
||||
/**
|
||||
* 商品可售时间管控
|
||||
* @author tankaikai
|
||||
* @since 2025-04-07 16:03
|
||||
*/
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
public class ProdIsSaleTimeDTO implements Serializable {
|
||||
|
||||
@Serial
|
||||
private static final long serialVersionUID = 1L;
|
||||
private String days;
|
||||
private LocalTime startTime;
|
||||
private LocalTime endTime;
|
||||
}
|
||||
@@ -8,11 +8,13 @@ import com.czg.product.vo.ShopProductSkuInfoVo;
|
||||
import com.czg.product.vo.ShopProductVo;
|
||||
import com.mybatisflex.core.service.IService;
|
||||
|
||||
import java.time.LocalTime;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 用户端商品Service
|
||||
*
|
||||
* @author tankaikai
|
||||
* @since 2025-02-17 14:57
|
||||
*/
|
||||
@@ -28,6 +30,7 @@ public interface UProductService extends IService<Product> {
|
||||
|
||||
/**
|
||||
* 用户端获取分组商品
|
||||
*
|
||||
* @param shopId 店铺ID
|
||||
* @return 分组商品
|
||||
*/
|
||||
@@ -35,6 +38,7 @@ public interface UProductService extends IService<Product> {
|
||||
|
||||
/**
|
||||
* 用户端获取商品详情
|
||||
*
|
||||
* @param id 商品ID
|
||||
* @return 商品详情
|
||||
*/
|
||||
@@ -42,6 +46,7 @@ public interface UProductService extends IService<Product> {
|
||||
|
||||
/**
|
||||
* 用户端获取商品SKU详情
|
||||
*
|
||||
* @param param 商品SKU查询参数
|
||||
* @return 商品详情
|
||||
*/
|
||||
@@ -49,21 +54,44 @@ public interface UProductService extends IService<Product> {
|
||||
|
||||
/**
|
||||
* 刷新商品库存
|
||||
*
|
||||
* @param shopId 店铺id
|
||||
*/
|
||||
Map<Long, Integer> findShopProductStock(Long shopId);
|
||||
|
||||
/**
|
||||
* 刷新商品库存
|
||||
* @param shopId 店铺id
|
||||
*
|
||||
* @param shopId 店铺id
|
||||
* @param productList 商品列表
|
||||
*/
|
||||
void refreshProductStock(Long shopId,List<ShopProductVo> productList);
|
||||
void refreshProductStock(Long shopId, List<ShopProductVo> productList);
|
||||
|
||||
/**
|
||||
* 刷新商品库存
|
||||
*
|
||||
* @param productStock 商品库存
|
||||
* @param productList 商品列表
|
||||
* @param productList 商品列表
|
||||
*/
|
||||
void refreshProductStock(Map<Long, Integer> productStock,List<ShopProductVo> productList);
|
||||
void refreshProductStock(Map<Long, Integer> productStock, List<ShopProductVo> productList);
|
||||
|
||||
/**
|
||||
* 分组计算是否在可售时间内
|
||||
*
|
||||
* @param useTime 开启时间管控 0:否;1:是
|
||||
* @param startTime 起售时间
|
||||
* @param endTime 停售时间
|
||||
* @return 是否可售时间 1-是,0-否
|
||||
*/
|
||||
Integer calcIsSaleTime(Integer useTime, LocalTime startTime, LocalTime endTime);
|
||||
|
||||
/**
|
||||
* 商品计算是否在可售时间内
|
||||
*
|
||||
* @param days 星期几,例如 "Monday,Tuesday"
|
||||
* @param startTime 起售时间
|
||||
* @param endTime 停售时间
|
||||
* @return 是否可售时间 1-是,0-否
|
||||
*/
|
||||
Integer calcIsSaleTime(String days, LocalTime startTime, LocalTime endTime);
|
||||
}
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
package com.czg.product.vo;
|
||||
|
||||
import com.alibaba.fastjson2.annotation.JSONField;
|
||||
import com.czg.product.dto.GroupIsSaleTimeDTO;
|
||||
import com.czg.product.dto.ProdIsSaleTimeDTO;
|
||||
import com.czg.product.dto.ProdSkuDTO;
|
||||
import lombok.Data;
|
||||
|
||||
@@ -113,4 +115,10 @@ public class ShopProductVo implements Serializable {
|
||||
* 销量
|
||||
*/
|
||||
private BigDecimal salesVolume;
|
||||
|
||||
@JSONField(serialize = false)
|
||||
private ProdIsSaleTimeDTO prodIsSaleTimeDTO;
|
||||
|
||||
@JSONField(serialize = false)
|
||||
private GroupIsSaleTimeDTO groupIsSaleTimeDTO;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user