【功能优化】商城:拼团中时,禁止发起售后

This commit is contained in:
YunaiV
2024-09-07 14:07:16 +08:00
parent d2f0c00d8f
commit ef3d712e42
8 changed files with 143 additions and 19 deletions

View File

@@ -3,6 +3,7 @@ package cn.iocoder.yudao.module.promotion.api.combination;
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
import cn.iocoder.yudao.module.promotion.api.combination.dto.CombinationRecordCreateReqDTO;
import cn.iocoder.yudao.module.promotion.api.combination.dto.CombinationRecordCreateRespDTO;
import cn.iocoder.yudao.module.promotion.api.combination.dto.CombinationRecordRespDTO;
import cn.iocoder.yudao.module.promotion.api.combination.dto.CombinationValidateJoinRespDTO;
import cn.iocoder.yudao.module.promotion.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
@@ -43,14 +44,14 @@ public interface CombinationRecordApi {
CommonResult<CombinationRecordCreateRespDTO> createCombinationRecord(
@RequestBody @Valid CombinationRecordCreateReqDTO reqDTO);
@GetMapping(PREFIX + "/is-success")
@Operation(summary = "查询拼团记录是否成功")
@GetMapping(PREFIX + "/get-by-order-id")
@Operation(summary = "基于订单编号,查询拼团记录")
@Parameters({
@Parameter(name = "userId", description = "用户编号", required = true, example = "1024"),
@Parameter(name = "orderId", description = "订单编号", required = true, example = "2048"),
})
CommonResult<Boolean> isCombinationRecordSuccess(@RequestParam("userId") Long userId,
@RequestParam("orderId") Long orderId);
CommonResult<CombinationRecordRespDTO> getCombinationRecordByOrderId(@RequestParam("userId") Long userId,
@RequestParam("orderId") Long orderId);
@GetMapping(PREFIX + "/validate-join")
@Operation(summary = "【下单前】校验是否满足拼团活动条件") // 如果校验失败,则抛出业务异常

View File

@@ -1,8 +1,7 @@
package cn.iocoder.yudao.module.promotion.api.combination.dto;
import lombok.Data;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
/**
* 拼团记录的创建 Request DTO

View File

@@ -0,0 +1,110 @@
package cn.iocoder.yudao.module.promotion.api.combination.dto;
import cn.iocoder.yudao.module.promotion.enums.combination.CombinationRecordStatusEnum;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 拼团记录 Response DTO
*
* @author 芋道源码
*/
@Data
public class CombinationRecordRespDTO {
/**
* 编号,主键自增
*/
private Long id;
/**
* 拼团活动编号
*
* 关联 CombinationActivityDO 的 id 字段
*/
private Long activityId;
/**
* 拼团商品单价
*
* 冗余 CombinationProductDO 的 combinationPrice 字段
*/
private Integer combinationPrice;
/**
* SPU 编号
*/
private Long spuId;
/**
* 商品名字
*/
private String spuName;
/**
* 商品图片
*/
private String picUrl;
/**
* SKU 编号
*/
private Long skuId;
/**
* 购买的商品数量
*/
private Integer count;
/**
* 用户编号
*/
private Long userId;
/**
* 用户昵称
*/
private String nickname;
/**
* 用户头像
*/
private String avatar;
/**
* 团长编号
*/
private Long headId;
/**
* 开团状态
*
* 关联 {@link CombinationRecordStatusEnum}
*/
private Integer status;
/**
* 订单编号
*/
private Long orderId;
/**
* 开团需要人数
*
* 关联 CombinationActivityDO 的 userSize 字段
*/
private Integer userSize;
/**
* 已加入拼团人数
*/
private Integer userCount;
/**
* 是否虚拟成团
*/
private Boolean virtualGroup;
/**
* 过期时间
*/
private LocalDateTime expireTime;
/**
* 开始时间 (订单付款后开始的时间)
*/
private LocalDateTime startTime;
/**
* 结束时间(成团时间/失败时间)
*/
private LocalDateTime endTime;
}