记得上下班打卡 | git大法好,push需谨慎

Commit b697edf1 authored by 胡佳晨's avatar 胡佳晨

提交 商铺 限时秒杀活动相关文档

parent b301981a
package com.liquidnet.service.goblin.dto.manage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@ApiModel(value = "GoblinStorePurchaseItemParam")
@Data
public class GoblinStorePurchaseItemParam {
@ApiModelProperty(required = true, value = "商铺活动Id", example = "1")
@NotBlank(message = "商铺活动Id不能为空")
private String storeMarketId;
@ApiModelProperty(required = true, value = "商铺Id", example = "1")
@NotBlank(message = "商铺id不能为空")
private String storeId;
@ApiModelProperty(required = true, value = "skuId", example = "1")
@NotBlank(message = "skuId不能为空")
private String skuId;
@ApiModelProperty(required = true, value = "活动价格", example = "1.00")
@NotBlank(message = "活动价格不能为空")
private String priceMarketing;
@ApiModelProperty(required = true, value = "活动库存", example = "1.00")
@NotBlank(message = "活动库存不能为空")
private String stockMarketing;
@ApiModelProperty(required = true, value = "用户限购[0-不限购|x-限购数量]", example = "1")
@NotBlank(message = "用户限购类型不能为空")
private String buyLimit;
@ApiModelProperty(required = true, value = "购买条件[0-全部用户|1-仅支持会员|2-指定用户可买]", example = "1")
@NotBlank(message = "购买条件不能为空")
private String buyType;
}
package com.liquidnet.service.goblin.dto.manage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "GoblinStorePurchaseParam")
@Data
public class GoblinStorePurchaseParam {
@ApiModelProperty(required = false, value = "活动id[添加操作不需要]", example = "1")
private String marketId;
@ApiModelProperty(required = true, value = "商铺id", example = "活动名称")
private String storeId;
@ApiModelProperty(required = true, value = "活动名称", example = "活动名称")
private String name;
@ApiModelProperty(required = true, value = "活动开始时间", example = "2021-12-11 12:00:00")
private String startTime;
@ApiModelProperty(required = true, value = "活动结束时间", example = "2021-12-12 12:00:00")
private String endTime;
@ApiModelProperty(required = true, value = "是否预热", example = "0")
private Integer isPre;
@ApiModelProperty(required = false, value = "预热时间(不能早于开始时间7天)[开启预热必填]", example = "2021-12-10 12:00:00")
private String preTime;
}
package com.liquidnet.service.goblin.dto.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@ApiModel
public class GoblinPurchasingVo {
@ApiModelProperty(value = "活动id")
String marketId;
@ApiModelProperty(value = "活动状态[-1-全部|0-等待开始|1-活动中|2-活动结束|7-停用]")
Integer status;
@ApiModelProperty(value = "开始时间")
String startTime;
@ApiModelProperty(value = "结束时间")
String endTime;
@ApiModelProperty(value = "是否预热")
Integer isPre;
@ApiModelProperty(value = "预热时间")
String preTime;
@ApiModelProperty(value = "创建时间")
String createdAt;
}
package com.liquidnet.service.goblin.service.manage;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinStorePurchaseItemParam;
import com.liquidnet.service.goblin.dto.vo.GoblinPurchasingVo;
import java.util.List;
public interface IGoblinStorePurchasingService {
/**
* 活动列表
*
* @param page 页数
* @param purchaseName 活动名称
* @param status 状态
* @param st 开始时间
* @param et 结束时间
* @param ct 创建时间
* @return
*/
ResponseDto<List<GoblinPurchasingVo>> purchasingList(int page, String purchaseName, int status, String st, String et, String ct);
/**
* 活动状态操作
*
* @param marketId 活动秒杀id
* @param status 状态
* @return
*/
ResponseDto<Boolean> purchasingStatus(String marketId, int status);
/**
* 添加 显示秒杀活动
*
* @param purchaseName 秒杀活动名称
* @param storeId 商铺id
* @param st 开始时间
* @param et 结束时间
* @param isPre 是否预热
* @param preTime 预热时间
* @return
*/
ResponseDto<Boolean> purchasingInsert(String purchaseName, String storeId, String st, String et, Integer isPre, String preTime);
/**
* @param marketId 活动id
* @param purchaseName 秒杀活动名称
* @param storeId 商铺id
* @param st 开始时间
* @param et 结束时间
* @param isPre 是否预热
* @param preTime 预热时间
* @return
*/
ResponseDto<Boolean> purchasingUpdate(String marketId, String purchaseName, String storeId, String st, String et, Integer isPre, String preTime);
/**
* 获取 限时秒杀 详情
*
* @param marketId 活动秒杀id
* @return
*/
ResponseDto<GoblinPurchasingVo> purchasingDetails(String marketId);
/**
* 获取活动内sku列表
*
* @param marketId 活动秒杀id
* @param page 页数
* @return
*/
ResponseDto<String> purchasingSkuList(String marketId, int page);//TODO 返回值
/**
* 配置活动相关sku
*
* @param params
* @return
*/
ResponseDto<Boolean> purchasingSkuOperation(List<GoblinStorePurchaseItemParam> params);
/**
* 删除活动内sku
*
* @param marketId 活动秒杀id
* @param skuId skuId
* @return
*/
ResponseDto<Boolean> purchasingSkuDel(String marketId, String skuId);
}
...@@ -18,7 +18,7 @@ import lombok.EqualsAndHashCode; ...@@ -18,7 +18,7 @@ import lombok.EqualsAndHashCode;
*/ */
@Data @Data
@EqualsAndHashCode(callSuper = false) @EqualsAndHashCode(callSuper = false)
public class GoblinStoreMarketRelation implements Serializable { public class GoblinStoreMarketPurchasing implements Serializable {
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
...@@ -26,9 +26,9 @@ public class GoblinStoreMarketRelation implements Serializable { ...@@ -26,9 +26,9 @@ public class GoblinStoreMarketRelation implements Serializable {
private Long mid; private Long mid;
/** /**
* 营销关联表id * 限时秒杀表id
*/ */
private String relationId; private String purchaseId;
/** /**
* 商铺营销表id * 商铺营销表id
......
...@@ -2,8 +2,10 @@ package com.liquidnet.service.goblin.entity; ...@@ -2,8 +2,10 @@ package com.liquidnet.service.goblin.entity;
import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.io.Serializable; import java.io.Serializable;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
...@@ -39,6 +41,11 @@ public class GoblinStoreMarketing implements Serializable { ...@@ -39,6 +41,11 @@ public class GoblinStoreMarketing implements Serializable {
*/ */
private Integer type; private Integer type;
/**
* 活动状态[-1-全部|0-等待开始|1-活动中|2-活动结束|7-停用]
*/
private Integer status;
/** /**
* 商铺id * 商铺id
*/ */
...@@ -64,6 +71,16 @@ public class GoblinStoreMarketing implements Serializable { ...@@ -64,6 +71,16 @@ public class GoblinStoreMarketing implements Serializable {
*/ */
private Integer delFlag; private Integer delFlag;
/**
* 活动是否预热[0-否|1-是]
*/
private Integer isPre;
/**
* 活动预热时间
*/
private LocalDateTime preTime;
private LocalDateTime createdAt; private LocalDateTime createdAt;
private LocalDateTime updatedAt; private LocalDateTime updatedAt;
......
package com.liquidnet.service.goblin.mapper; package com.liquidnet.service.goblin.mapper;
import com.liquidnet.service.goblin.entity.GoblinStoreMarketRelation; import com.liquidnet.service.goblin.entity.GoblinStoreMarketPurchasing;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/** /**
...@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; ...@@ -11,6 +11,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author liquidnet * @author liquidnet
* @since 2021-12-27 * @since 2021-12-27
*/ */
public interface GoblinStoreMarketRelationMapper extends BaseMapper<GoblinStoreMarketRelation> { public interface GoblinStoreMarketPurchasingMapper extends BaseMapper<GoblinStoreMarketPurchasing> {
} }
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.liquidnet.service.goblin.mapper.GoblinStoreMarketRelationMapper"> <mapper namespace="com.liquidnet.service.goblin.mapper.GoblinStoreMarketPurchasingMapper">
</mapper> </mapper>
package com.liquidnet.service.goblin.controller.manage;
import com.github.pagehelper.PageInfo;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinStorePurchaseItemParam;
import com.liquidnet.service.goblin.dto.manage.GoblinStorePurchaseParam;
import com.liquidnet.service.goblin.dto.vo.GoblinPurchasingVo;
import com.liquidnet.service.goblin.dto.vo.GoblinStoreInfoVo;
import com.liquidnet.service.goblin.service.manage.IGoblinStorePurchasingService;
import com.sun.org.apache.xpath.internal.operations.Bool;
import io.swagger.annotations.*;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* 商铺活动管理
*/
@Slf4j
@RestController
@Api(tags = "活动-限时秒杀")
@RequestMapping("store/marketing")
public class GoblinStorePurchasingController {
@Autowired
IGoblinStorePurchasingService goblinStorePurchasingService;
@GetMapping("purchasing/list")
@ApiOperation("活动详情-限时秒杀")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "page", value = "页数", example = "1"),
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "purchaseName", value = "活动名称", example = ""),
@ApiImplicitParam(type = "form", required = false, dataType = "Integer", name = "status", value = "活动状态[-1-全部|0-等待开始|1-活动中|2-活动结束|7-停用]", example = ""),
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "startTime", value = "活动开始时间", example = ""),
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "endTime", value = "活动结束时间", example = ""),
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "createdAt", value = "活动创建时间", example = ""),
})
public ResponseDto<PageInfo<GoblinPurchasingVo>> purchasingList(@RequestParam(value = "page", required = false) @Valid Integer page,
@RequestParam(value = "purchaseName", required = false) String purchaseName,
@RequestParam(value = "status", required = false) Integer status,
@RequestParam(value = "startTime", required = false) String st,
@RequestParam(value = "endTime", required = false) String et,
@RequestParam(value = "createdAt", required = false) String ct) {
PageInfo<GoblinPurchasingVo> data = new PageInfo<>();
data.setList(goblinStorePurchasingService.purchasingList(page, purchaseName, status, st, et, ct).getData());
return ResponseDto.success(data);
}
@PutMapping("purchasing/status")
@ApiOperation("活动操作-限时秒杀")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动id", example = "1"),
@ApiImplicitParam(type = "form", required = true, dataType = "Integer", name = "status", value = "活动状态[0-等待开始|7-停用]", example = ""),
})
public ResponseDto<Boolean> purchasingStatus(@RequestParam(value = "marketId") @Valid String marketId,
@RequestParam(value = "status") @Valid Integer status) {
return goblinStorePurchasingService.purchasingStatus(marketId, status);
}
@PostMapping("purchasing")
@ApiOperation("创建活动-限时秒杀")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ResponseBody
public ResponseDto<Boolean> purchasingInsert(GoblinStorePurchaseParam goblinStorePurchaseParam) {
return goblinStorePurchasingService.purchasingInsert(goblinStorePurchaseParam.getName(), goblinStorePurchaseParam.getStoreId(), goblinStorePurchaseParam.getStartTime(), goblinStorePurchaseParam.getEndTime(), goblinStorePurchaseParam.getIsPre(), goblinStorePurchaseParam.getPreTime());
}
@PutMapping("purchasing")
@ApiOperation("修改活动-限时秒杀")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ResponseBody
public ResponseDto<String> purchasingUpdate(GoblinStorePurchaseParam goblinStorePurchaseParam) {
goblinStorePurchasingService.purchasingUpdate(goblinStorePurchaseParam.getMarketId(), goblinStorePurchaseParam.getName(), goblinStorePurchaseParam.getStoreId(), goblinStorePurchaseParam.getStartTime(), goblinStorePurchaseParam.getEndTime(), goblinStorePurchaseParam.getIsPre(), goblinStorePurchaseParam.getPreTime());
return ResponseDto.success();
}
@GetMapping("purchasing/details")
@ApiOperation("活动详情-限时秒杀")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动id", example = "1"),
})
public ResponseDto<GoblinPurchasingVo> purchasingDetails(@RequestParam("marketId") @Valid String marketId) {
return goblinStorePurchasingService.purchasingDetails(marketId);
}
@GetMapping("purchasing/sku")
@ApiOperation("活动详情-限时秒杀-sku列表")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动id", example = "1"),
@ApiImplicitParam(type = "form", required = true, dataType = "Integer", name = "page", value = "页数", example = "1"),
})
public ResponseDto<String> purchasingSkuList(@RequestParam("marketId") @Valid String marketId,
@RequestParam("page") @Valid Integer page) {
return goblinStorePurchasingService.purchasingSkuList(marketId, page);
}
@PostMapping("purchasing/sku")
@ApiOperation("活动详情-限时秒杀-sku配置")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ResponseBody
public ResponseDto<Boolean> purchasingSkuOperation(List<GoblinStorePurchaseItemParam> params) {
return goblinStorePurchasingService.purchasingSkuOperation(params);
}
@DeleteMapping("purchasing/sku")
@ApiOperation("活动详情-限时秒杀-sku删除")
@ApiResponse(code = 200, message = "接口返回对象参数")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "marketId", value = "活动id", example = "1"),
@ApiImplicitParam(type = "form", required = true, dataType = "String", name = "skuId", value = "skuId", example = "1"),
})
public ResponseDto<Boolean> purchasingSkuDel(@RequestParam("marketId") @Valid String marketId,
@RequestParam("skuId") @Valid String skuId) {
return goblinStorePurchasingService.purchasingSkuDel(marketId, skuId);
}
}
package com.liquidnet.service.goblin.service.manage;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.goblin.dto.manage.GoblinStorePurchaseItemParam;
import com.liquidnet.service.goblin.dto.vo.GoblinPurchasingVo;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class GoblinStorePurchasingServiceImpl implements IGoblinStorePurchasingService {
@Override
public ResponseDto<List<GoblinPurchasingVo>> purchasingList(int page, String purchaseName, int status, String st, String et, String ct) {
return null;
}
@Override
public ResponseDto<Boolean> purchasingStatus(String marketId, int status) {
return null;
}
@Override
public ResponseDto<Boolean> purchasingInsert(String purchaseName, String storeId, String st, String et, Integer isPre, String preTime) {
return null;
}
@Override
public ResponseDto<Boolean> purchasingUpdate(String marketId, String purchaseName, String storeId, String st, String et, Integer isPre, String preTime) {
return null;
}
@Override
public ResponseDto<GoblinPurchasingVo> purchasingDetails(String marketId) {
return null;
}
@Override
public ResponseDto<String> purchasingSkuList(String marketId, int page) {
return null;
}
@Override
public ResponseDto<Boolean> purchasingSkuOperation(List<GoblinStorePurchaseItemParam> params) {
return null;
}
@Override
public ResponseDto<Boolean> purchasingSkuDel(String marketId, String skuId) {
return null;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment