zxl
2025-08-15 c20103684b358ecf733b600bd592cf093d5e076d
抽奖活动
4个文件已修改
1个文件已添加
83 ■■■■■ 已修改文件
framework/src/main/java/cn/lili/modules/lmk/domain/entity/PrizeActivity.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/cn/lili/modules/lmk/domain/form/PrizeActivityForm.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeActivityQuery.java 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/resources/mapper/lmk/PrizeActivityMapper.xml 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
manager-api/src/main/java/cn/lili/controller/lmk/PrizeActivityController.java 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
framework/src/main/java/cn/lili/modules/lmk/domain/entity/PrizeActivity.java
@@ -5,6 +5,8 @@
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;
import lombok.Data;
/**
@@ -29,11 +31,11 @@
    @TableField("begin_time")
    /** 活动开始时间 */
    private LocalDateTime beginTime;
    private Date beginTime;
    @TableField("end_time")
    /** 活动结束时间 */
    private LocalDateTime endTime;
    private Date endTime;
    @TableField("max_prize")
    /** 每日最大抽奖上限 */
@@ -52,7 +54,7 @@
    private String activityCover;
    @TableField("enable_status")
    /** 是否开启活动 */
     /** 是否开启活动 */
    private String enableStatus;
framework/src/main/java/cn/lili/modules/lmk/domain/form/PrizeActivityForm.java
@@ -4,9 +4,12 @@
import cn.lili.group.Add;
import cn.lili.base.AbsForm;
import cn.lili.modules.lmk.domain.entity.PrizeActivity;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.beans.BeanUtils;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.lang.NonNull;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -33,10 +36,14 @@
    @NotNull(message = "活动开始时间不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("活动开始时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date beginTime;
    @NotNull(message = "活动结束时间不能为空", groups = {Add.class, Update.class})
    @ApiModelProperty("活动结束时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;
    @NotNull(message = "每日最大抽奖上限不能为空", groups = {Add.class, Update.class})
framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeActivityQuery.java
@@ -1,7 +1,12 @@
package cn.lili.modules.lmk.domain.query;
import cn.lili.base.AbsQuery;
import java.util.Date;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.lang.NonNull;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@@ -18,5 +23,15 @@
@Data
@ApiModel(value = "PrizeActivity查询参数", description = "抽奖活动查询参数")
public class PrizeActivityQuery extends AbsQuery {
    public String activityName;
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date beginTime;
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    public Date endTime;
}
framework/src/main/resources/mapper/lmk/PrizeActivityMapper.xml
@@ -57,6 +57,12 @@
            lmk_prize_activity LPA
        WHERE
            LPA.delete_flag = 0
        <if test="query.activityName != null and query.activityName !=''">
            AND LPA.activity_name LIKE CONCAT('%',#{query.ctivityName},'%')
        </if>
        <if test="query.beginTime != null">AND LPA.begin_time >= #{query.beginTime}</if>
        <if test="query.endTime != null">AND LPA.end_time &lt;= #{query.endTime}</if>
    </select>
</mapper>
manager-api/src/main/java/cn/lili/controller/lmk/PrizeActivityController.java
New file
@@ -0,0 +1,47 @@
package cn.lili.controller.lmk;
import cn.lili.base.Result;
import cn.lili.modules.lmk.domain.form.PrizeActivityForm;
import cn.lili.modules.lmk.domain.query.PrizeActivityQuery;
import cn.lili.modules.lmk.service.PrizeActivityService;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
/**
 * lmk-shop-java
 * 抽奖活动
 *
 * @author : zxl
 * @date : 2025-08-14 16:27
 **/
@Validated
@RequiredArgsConstructor
@RestController
@RequestMapping("/manager/lmk/activity-prize")
public class PrizeActivityController {
    private final PrizeActivityService prizeActivityService;
    @GetMapping
    public Result getPage(PrizeActivityQuery query){
        return prizeActivityService.page(query);
    }
    @GetMapping("/{id}")
    public Result detail(@PathVariable("id") String id){
        return prizeActivityService.detail(id);
    }
    @PutMapping
    public Result edit(@RequestBody PrizeActivityForm form){
        return prizeActivityService.update(form);
    }
    @PostMapping
    public Result add(@RequestBody PrizeActivityForm form){
        return prizeActivityService.add(form);
    }
    @DeleteMapping("/{id}")
    public Result del(@PathVariable("id") String id){
        return prizeActivityService.removeById(id);
    }
}