Merge remote-tracking branch 'origin/test' into test

This commit is contained in:
张松
2025-10-22 09:41:34 +08:00
19 changed files with 615 additions and 31 deletions

View File

@@ -59,9 +59,9 @@ public class ShopInfoEditDTO {
*/
private Integer isEnableDiscount;
/**
* 是否启用限时折扣 1-是 0-否
* 点餐智能推荐 1-是 0-否
*/
private Integer isLimitTimeDiscount;
private Integer isProductSuggest;
/**
* 台桌预订短信
*/

View File

@@ -47,10 +47,9 @@ public class ShopConfig implements Serializable {
*/
private Integer isEnableDiscount;
/**
* 是否启用限时折扣 1-是 0-否
* 点餐智能推荐 1-是 0-否
*/
private Integer isLimitTimeDiscount;
private Integer isProductSuggest;
/**
* 是否允许账号登录 1-是 0-否
*/

View File

@@ -262,11 +262,12 @@ public class ShopInfo implements Serializable {
*/
@Column(ignore = true)
private Integer isEnableDiscount;
/**
* 是否启用限时折扣 1-是 0-否
* 点餐智能推荐 1-是 0-否
*/
@Column(ignore = true)
private Integer isLimitTimeDiscount;
private Integer isProductSuggest;
/**
* 是否允许账号登录 1-是 0-否
*/

View File

@@ -0,0 +1,105 @@
package com.czg.market.dto;
import java.io.Serializable;
import java.sql.Time;
import java.time.LocalDateTime;
import com.alibaba.fastjson2.annotation.JSONField;
import com.czg.validator.group.InsertGroup;
import com.czg.validator.group.UpdateGroup;
import jakarta.validation.constraints.NotBlank;
import lombok.experimental.Accessors;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 点单智能推荐 实体类。
*
* @author ww
* @since 2025-10-21
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class MkProductSmartSuggestDTO implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 自增主键
*/
private Long id;
/**
* 店铺ID
*/
private Long shopId;
/**
* 模板名称
*/
private String title;
/**
* 商品集合
*/
@NotBlank(message = "商品集合不能为空", groups = {InsertGroup.class, UpdateGroup.class})
private String foods;
/**
* 自定义引导语
*/
private String guideDetail;
/**
* 可用周期,如:周一,周二,周三,周四,周五,周六,周日
*/
@NotBlank(message = "可用周期不能为空", groups = {InsertGroup.class, UpdateGroup.class})
private String useDays;
/**
* 时间段类型all-全时段custom-指定时段
*/
@NotBlank(message = "时间段类型不能为空", groups = {InsertGroup.class, UpdateGroup.class})
private String useTimeType;
/**
* 开始时间
*/
private String useStartTime;
/**
* 结束时间
*/
private String useEndTime;
/**
* 状态0禁用 1开启
*/
private Integer status;
/**
* 创建时间
*/
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createTime;
/**
* 更新时间
*/
@JSONField(format = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updateTime;
/**
* 0否1是
*/
private Boolean isDel;
}

View File

@@ -9,6 +9,7 @@ import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.io.Serial;
import java.io.Serializable;
@@ -27,6 +28,7 @@ import java.time.LocalTime;
@NoArgsConstructor
@AllArgsConstructor
@Table("mk_limit_time_discount")
@Accessors(chain = true)
public class MkLimitTimeDiscount implements Serializable {
@Serial

View File

@@ -0,0 +1,105 @@
package com.czg.market.entity;
import com.alibaba.fastjson2.annotation.JSONField;
import com.mybatisflex.annotation.Column;
import com.mybatisflex.annotation.Id;
import com.mybatisflex.annotation.KeyType;
import com.mybatisflex.annotation.Table;
import java.io.Serializable;
import java.sql.Time;
import java.time.LocalDateTime;
import java.io.Serial;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* 点单智能推荐 实体类。
*
* @author ww
* @since 2025-10-21
*/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table("mk_product_smart_suggest")
public class MkProductSmartSuggest implements Serializable {
@Serial
private static final long serialVersionUID = 1L;
/**
* 自增主键
*/
@Id(keyType = KeyType.Auto)
private Long id;
/**
* 店铺ID
*/
private Long shopId;
/**
* 模板名称
*/
private String title;
/**
* 商品集合
*/
private String foods;
/**
* 自定义引导语
*/
private String guideDetail;
/**
* 可用周期,如:周一,周二,周三,周四,周五,周六,周日
*/
private String useDays;
/**
* 时间段类型all-全时段custom-指定时段
*/
private String useTimeType;
/**
* 开始时间
*/
@JSONField(format = "HH:mm")
private Time useStartTime;
/**
* 结束时间
*/
@JSONField(format = "HH:mm")
private Time useEndTime;
/**
* 状态0禁用 1开启
*/
private Integer status;
/**
* 创建时间
*/
@Column(onInsertValue = "now()")
private LocalDateTime createTime;
/**
* 更新时间
*/
@Column(onInsertValue = "now()", onUpdateValue = "now()")
private LocalDateTime updateTime;
/**
* 0否1是
*/
private Boolean isDel;
}

View File

@@ -0,0 +1,27 @@
package com.czg.market.service;
import com.czg.BaseQueryParam;
import com.czg.market.dto.MkProductSmartSuggestDTO;
import com.czg.market.entity.MkProductSmartSuggest;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import java.util.List;
/**
* 点单智能推荐 服务层。
*
* @author ww
* @since 2025-10-21
*/
public interface MkProductSmartSuggestService extends IService<MkProductSmartSuggest> {
Page<MkProductSmartSuggestDTO> getProductSmartSuggestPage(BaseQueryParam param, Long shopId);
List<MkProductSmartSuggest> getProductSmartSuggestByShopId(Long shopId);
void addProductSmartSuggest(MkProductSmartSuggestDTO param);
void updateProductSmartSuggestById(MkProductSmartSuggestDTO param);
void deleteProductSmartSuggest(Long id);
}

View File

@@ -22,6 +22,10 @@ import java.util.List;
@AllArgsConstructor
@Accessors(chain = true)
public class CheckOrderPay implements Serializable {
//限时折扣部分
private LimitRateDTO limitRate;
/**
* 是否霸王餐
*/

View File

@@ -0,0 +1,34 @@
package com.czg.order.dto;
import lombok.Data;
/**
* 限时折扣dto
* order专用 对应mk_limit_time_discount
* @author ww
* @description
*/
@Data
public class LimitRateDTO {
private Long id;
/**
* 折扣% 范围1-99
*/
private Integer discountRate;
/**
* 折扣优先级 limit-time/vip-price
*/
private String discountPriority;
/**
* 参与商品 1全部 2部分
*/
private Integer foodType;
/**
* 参与商品
*/
private String foods;
}