修改砍价活动

This commit is contained in:
lifenlong 2021-07-13 16:17:53 +08:00
parent 656e2a9307
commit 4718ce292d
27 changed files with 478 additions and 384 deletions

View File

@ -1,58 +0,0 @@
package cn.lili.controller.promotion;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityQuery;
import cn.lili.modules.promotion.service.KanJiaActivityService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 买家端,砍价活动
*
* @author qiuqiu
* @date 2021/7/12
**/
@RestController
@Api(tags = "买家端,砍价活动参与记录接口")
@RequestMapping("/buyer/promotion/kanJiaActivity")
public class KanJiaActivityBuyerController {
@Autowired
private KanJiaActivityService kanJiaActivityService;
@GetMapping
@ApiOperation(value = "分页获取为参与的砍价活动")
public ResultMessage<IPage<KanJiaActivity>> getPointsGoodsPage(KanJiaActivityQuery kanJiaActivityQuery, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityQuery.setMemberId(UserContext.getCurrentUser().getId());
IPage<KanJiaActivity> kanJiaActivityIPage = kanJiaActivityService.getForPage(kanJiaActivityQuery, page);
return ResultUtil.data(kanJiaActivityIPage);
}
@PostMapping
@ApiOperation(value = "发起砍价活动")
public ResultMessage<KanJiaActivityLog> launchKanJiaActivity(String skuId) {
KanJiaActivityLog kanJiaActivityLog = kanJiaActivityService.add(skuId);
return ResultUtil.data(kanJiaActivityLog);
}
@PostMapping("/help")
@ApiOperation(value = "帮砍一刀")
public ResultMessage<KanJiaActivityLog> helpKanJia(String kanJiaActivityId) {
KanJiaActivityLog kanJiaActivityLog = kanJiaActivityService.helpKanJia(kanJiaActivityId);
return ResultUtil.data(kanJiaActivityLog);
}
}

View File

@ -1,46 +0,0 @@
package cn.lili.controller.promotion;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityLogQuery;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityQuery;
import cn.lili.modules.promotion.service.KanJiaActivityLogService;
import cn.lili.modules.promotion.service.KanJiaActivityService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 买家端,砍价活动
*
* @author qiuqiu
* @date 2021/7/12
**/
@RestController
@Api(tags = "买家端,砍价活动帮砍记录接口")
@RequestMapping("/buyer/promotion/kanJiaActivityLog")
public class KanJiaActivityLogBuyerController {
@Autowired
private KanJiaActivityLogService kanJiaActivityLogService;
@GetMapping
@ApiOperation(value = "分页获取为参与的帮砍记录")
public ResultMessage<IPage<KanJiaActivityLog>> getPointsGoodsPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityLogQuery.setMemberId(UserContext.getCurrentUser().getId());
IPage<KanJiaActivityLog> kanJiaActivityLogIPage = kanJiaActivityLogService.getForPage(kanJiaActivityLogQuery, page);
return ResultUtil.data(kanJiaActivityLogIPage);
}
}

View File

@ -1,42 +0,0 @@
package cn.lili.controller.promotion;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import cn.lili.modules.promotion.entity.vos.KanJiaActivityGoodsParams;
import cn.lili.modules.promotion.service.KanJiaActivityGoodsService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 买家端,砍价活动商品
*
* @author qiuqiu
* @date 2021/7/12
**/
@RestController
@Api(tags = "买家端,砍价商品接口")
@RequestMapping("/buyer/promotion/kanJiaGoods")
public class KanJiaGoodsActivityBuyerController {
@Autowired
private KanJiaActivityGoodsService kanJiaActivityGoodsService;
@GetMapping
@ApiOperation(value = "分页获取砍价商品")
public ResultMessage<IPage<KanJiaActivityGoodsDTO>> getPointsGoodsPage(KanJiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityGoodsParams.setPromotionStatus(PromotionStatusEnum.START.name());
IPage<KanJiaActivityGoodsDTO> kanJiaActivityGoodsDTOIPage = kanJiaActivityGoodsService.getForPage(kanJiaActivityGoodsParams, page);
return ResultUtil.data(kanJiaActivityGoodsDTOIPage);
}
}

View File

@ -0,0 +1,111 @@
package cn.lili.controller.promotion;
import cn.hutool.core.util.StrUtil;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.promotion.entity.dos.KanjiaActivity;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityLogQuery;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityQuery;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsListVO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsParams;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsVO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivitySearchParams;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanjiaActivityLogService;
import cn.lili.modules.promotion.service.KanjiaActivityService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* 买家端,砍价活动商品
*
* @author qiuqiu
* @date 2021/7/12
**/
@RestController
@Api(tags = "买家端,砍价商品接口")
@RequestMapping("/buyer/promotion/kanjiaGoods")
public class KanjiaGoodsActivityBuyerController {
/**
* 砍价活动商品
*/
@Autowired
private KanjiaActivityGoodsService kanJiaActivityGoodsService;
/**
* 帮砍记录
*/
@Autowired
private KanjiaActivityLogService kanJiaActivityLogService;
/**
* 砍价活动
*/
@Autowired
private KanjiaActivityService kanJiaActivityService;
@GetMapping
@ApiOperation(value = "分页获取砍价商品")
public ResultMessage<IPage<KanjiaActivityGoodsListVO>> kanJiaActivityGoodsPage(KanjiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityGoodsParams.setPromotionStatus(PromotionStatusEnum.START.name());
return ResultUtil.data(kanJiaActivityGoodsService.kanJiaGoodsVOPage(kanJiaActivityGoodsParams, page));
}
@GetMapping("/{id}")
@ApiOperation(value = "获取砍价活动商品")
@ApiImplicitParam(name = "id", value = "砍价活动商品ID", required = true, paramType = "path")
public ResultMessage<KanjiaActivityGoodsVO> getPointsGoodsPage(@PathVariable String id) {
return ResultUtil.data(kanJiaActivityGoodsService.getKanJiaGoodsVO(id));
}
@GetMapping("/getKanjiaActivity/logs")
@ApiOperation(value = "分页获取砍价活动-帮砍记录")
public ResultMessage<IPage<KanjiaActivityLog>> getPointsGoodsPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityLogQuery.setMemberId(UserContext.getCurrentUser().getId());
return ResultUtil.data(kanJiaActivityLogService.getForPage(kanJiaActivityLogQuery, page));
}
@PostMapping("/getKanjiaActivity")
@ApiOperation(value = "获取砍价活动")
public ResultMessage<KanjiaActivity> getKanJiaActivity(KanjiaActivitySearchParams kanJiaActivitySearchParams) {
//如果是非被邀请关系则填写会员ID
if (StrUtil.isEmpty(kanJiaActivitySearchParams.getKanjiaActivityId())) {
kanJiaActivitySearchParams.setMemberId(UserContext.getCurrentUser().getId());
}
return ResultUtil.data(kanJiaActivityService.getKanjiaActivity(kanJiaActivitySearchParams));
}
@PostMapping
@ApiImplicitParam(name = "id", value = "砍价活动商品ID", required = true, paramType = "path")
@ApiOperation(value = "发起砍价活动")
public ResultMessage<KanjiaActivityLog> launchKanJiaActivity(String id) {
KanjiaActivityLog kanJiaActivityLog = kanJiaActivityService.add(id);
return ResultUtil.data(kanJiaActivityLog);
}
@PostMapping("/help")
@ApiOperation(value = "帮砍一刀")
public ResultMessage<KanjiaActivityLog> helpKanJia(String kanJiaActivityId) {
KanjiaActivityLog kanJiaActivityLog = kanJiaActivityService.helpKanJia(kanJiaActivityId);
return ResultUtil.data(kanJiaActivityLog);
}
@GetMapping("/kanjiaActivity/mine/")
@ApiOperation(value = "分页获取已参与的砍价活动")
public ResultMessage<IPage<KanjiaActivity>> getPointsGoodsPage(KanjiaActivityQuery kanJiaActivityQuery, PageVO page) {
// 会员端查询到的肯定是已经开始的活动商品
kanJiaActivityQuery.setMemberId(UserContext.getCurrentUser().getId());
IPage<KanjiaActivity> kanJiaActivityIPage = kanJiaActivityService.getForPage(kanJiaActivityQuery, page);
return ResultUtil.data(kanJiaActivityIPage);
}
}

View File

@ -20,13 +20,13 @@ import javax.persistence.Table;
@Table(name = "li_kanjia_activity")
@TableName("li_kanjia_activity")
@ApiModel(value = "砍价活动参与对象")
public class KanJiaActivity extends BaseEntity {
public class KanjiaActivity extends BaseEntity {
private static final long serialVersionUID = -1583030890805926292L;
@ApiModelProperty(value = "砍价商品id")
private String kanJiaActivityGoodsId;
private String kanjiaActivityGoodsId;
@ApiModelProperty(value = "参与砍价活动会员id")
private String memberId;

View File

@ -26,7 +26,7 @@ import java.util.Date;
@Table(name = "li_kanjia_activity_goods")
@TableName("li_kanjia_activity_goods")
@ApiModel(value = "砍价活动商品对象")
public class KanJiaActivityGoods extends BaseEntity {
public class KanjiaActivityGoods extends BaseEntity {
private static final long serialVersionUID = 6694714877345423488L;

View File

@ -1,19 +1,13 @@
package cn.lili.modules.promotion.entity.dos;
import cn.lili.base.BaseEntity;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* 砍价活动商品实体类
@ -26,25 +20,25 @@ import java.util.Date;
@Table(name = "li_kanjia_activity_log")
@TableName("li_kanjia_activity_log")
@ApiModel(value = "砍价活动日志对象")
public class KanJiaActivityLog extends BaseEntity {
public class KanjiaActivityLog extends BaseEntity {
private static final long serialVersionUID = 3977352717995562783L;
@ApiModelProperty(value = "砍价活动参与记录id")
private String kanJiaActivityId;
private String kanjiaActivityId;
@ApiModelProperty(value = "砍价会员id")
private String kanJiaMemberId;
private String kanjiaMemberId;
@ApiModelProperty(value = "砍价会员名称")
private String kanJiaMemberName;
private String kanjiaMemberName;
@ApiModelProperty(value = "砍价会员头像")
private String kanJiaMemberFace;
private String kanjiaMemberFace;
@ApiModelProperty(value = "砍价金额")
private Double kanJiaPrice;
private Double kanjiaPrice;
@ApiModelProperty(value = "剩余购买金额")
private Double surplusPrice;

View File

@ -1,7 +1,7 @@
package cn.lili.modules.promotion.entity.dto;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -15,9 +15,9 @@ import lombok.Data;
*/
@Data
@ApiModel(value = "砍价活动参与记录对象")
public class KanJiaActivityDTO extends KanJiaActivityLog {
public class KanjiaActivityDTO extends KanjiaActivityLog {
@ApiModelProperty(value = "砍价金额")
private String kanJiaActivityGoodsId;
private String kanjiaActivityGoodsId;
}

View File

@ -2,7 +2,7 @@ package cn.lili.modules.promotion.entity.dto;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ -15,7 +15,7 @@ import java.io.Serializable;
* @date 2020/8/21
**/
@Data
public class KanJiaActivityGoodsDTO extends KanJiaActivityGoods implements Serializable {
public class KanjiaActivityGoodsDTO extends KanjiaActivityGoods implements Serializable {
private static final long serialVersionUID = 1969340823809319805L;

View File

@ -17,7 +17,7 @@ import java.util.List;
* @date 2020/8/21
**/
@Data
public class KanJiaActivityGoodsOperationDTO implements Serializable {
public class KanjiaActivityGoodsOperationDTO implements Serializable {
private static final long serialVersionUID = -1378599087650538592L;
@ -33,6 +33,6 @@ public class KanJiaActivityGoodsOperationDTO implements Serializable {
private Date endTime;
@ApiModelProperty(value = "砍价活动商品列表")
List<KanJiaActivityGoodsDTO> promotionGoodsList;
List<KanjiaActivityGoodsDTO> promotionGoodsList;
}

View File

@ -17,7 +17,7 @@ import java.util.Date;
*/
@Data
@ApiModel(value = "砍价活动参与记录查询对象")
public class KanJiaActivityQuery {
public class KanjiaActivityQuery {
private static final long serialVersionUID = -1583030890805926292L;

View File

@ -0,0 +1,30 @@
package cn.lili.modules.promotion.entity.vos;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 砍价商品视图对象
*
* @author paulG
* @date 2021/1/13
**/
@Data
public class KanjiaActivityGoodsListVO {
@ApiModelProperty(value = "货品id")
private String skuId;
@ApiModelProperty(value = "货品名称")
private String goodsName;
@ApiModelProperty(value = "缩略图")
private String thumbnail;
@ApiModelProperty(value = "最低购买金额")
private Double purchasePrice;
@ApiModelProperty(value = "活动库存")
private Integer stock;
}

View File

@ -1,19 +1,14 @@
package cn.lili.modules.promotion.entity.vos;
import org.springframework.data.domain.Sort;
import org.springframework.data.domain.Sort.Direction;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import cn.hutool.core.text.CharSequenceUtil;
import cn.lili.modules.promotion.entity.enums.*;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.data.domain.Sort;
import org.springframework.data.mongodb.core.query.Criteria;
import org.springframework.data.mongodb.core.query.Query;
import java.io.Serializable;
import java.util.Date;
@ -26,17 +21,17 @@ import java.util.regex.Pattern;
* @date 2020/8/21
**/
@Data
public class KanJiaActivityGoodsParams implements Serializable {
public class KanjiaActivityGoodsParams implements Serializable {
private static final long serialVersionUID = 1344104067705714289L;
@ApiModelProperty(value = "活动商品")
private String goodsName;
@ApiModelProperty(value = "活动开始时间", required = true)
@ApiModelProperty(value = "活动开始时间")
private Long startTime;
@ApiModelProperty(value = "活动结束时间", required = true)
@ApiModelProperty(value = "活动结束时间")
private Long endTime;
@ApiModelProperty(value = "skuId")

View File

@ -1,10 +1,8 @@
package cn.lili.modules.promotion.entity.vos;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* 砍价商品视图对象
@ -12,13 +10,16 @@ import lombok.EqualsAndHashCode;
* @author paulG
* @date 2021/1/13
**/
@EqualsAndHashCode(callSuper = true)
@Data
public class KanJiaGoodsVO extends KanJiaActivityGoods {
private static final long serialVersionUID = -5163709626742905057L;
public class KanjiaActivityGoodsVO {
@ApiModelProperty(value = "商品规格详细信息")
private GoodsSku goodsSku;
@ApiModelProperty(value = "最低购买金额")
private Double purchasePrice;
@ApiModelProperty(value = "活动库存")
private Integer stock;
}

View File

@ -0,0 +1,42 @@
package cn.lili.modules.promotion.entity.vos;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 砍价活动搜索参数
*
* @author Bulbasaur
* @date: 2021/7/13 2:41 下午
*/
@Data
public class KanjiaActivitySearchParams {
@ApiModelProperty(value = "砍价活动ID")
private String id;
@ApiModelProperty(value = "砍价商品SkuID")
private String kanjiaActivityGoodsId;
@ApiModelProperty(value = "会员ID" ,hidden = true)
private String memberId;
@ApiModelProperty(value = "状态")
private String status;
@ApiModelProperty(value = "邀请活动ID有值说明是被邀请人")
private String kanjiaActivityId;
public <T> QueryWrapper<T> wrapper() {
QueryWrapper<T> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(StrUtil.isNotEmpty(id), "id", id);
queryWrapper.eq(StrUtil.isNotEmpty(kanjiaActivityId), "id", kanjiaActivityId);
queryWrapper.eq(StrUtil.isNotEmpty(kanjiaActivityGoodsId), "kanJia_activity_goods_id", kanjiaActivityGoodsId);
queryWrapper.eq(StrUtil.isNotEmpty(memberId), "member_id", memberId);
queryWrapper.eq(StrUtil.isNotEmpty(status), "status", status);
return wrapper();
}
}

View File

@ -1,7 +1,13 @@
package cn.lili.modules.promotion.mapper;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsListVO;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
/**
*
@ -10,6 +16,15 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author qiuqiu
* @date 2021/7/1
*/
public interface KanJiaActivityGoodsMapper extends BaseMapper<KanJiaActivityGoods> {
public interface KanJiaActivityGoodsMapper extends BaseMapper<KanjiaActivityGoods> {
/**
* 获取砍价商品VO分页
* @param page 分页
* @param queryWrapper 查询条件
* @return 砍价商品VO分页
*/
@Select("SELECT * FROM li_kanjia_activity_goods ${ew.customSqlSegment}")
IPage<KanjiaActivityGoodsListVO> kanjiaActivityGoodsVOPage(IPage<KanjiaActivityGoods> page, @Param(Constants.WRAPPER) Wrapper<KanjiaActivityGoods> queryWrapper);
}

View File

@ -1,6 +1,6 @@
package cn.lili.modules.promotion.mapper;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
@ -10,6 +10,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author qiuqiu
* @date 2021/7/1
*/
public interface KanJiaActivityLogMapper extends BaseMapper<KanJiaActivityLog> {
public interface KanJiaActivityLogMapper extends BaseMapper<KanjiaActivityLog> {
}

View File

@ -1,6 +1,6 @@
package cn.lili.modules.promotion.mapper;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanjiaActivity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
@ -10,6 +10,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* @author qiuqiu
* @date 2021/7/1
*/
public interface KanJiaActivityMapper extends BaseMapper<KanJiaActivity> {
public interface KanJiaActivityMapper extends BaseMapper<KanjiaActivity> {
}

View File

@ -1,47 +0,0 @@
package cn.lili.modules.promotion.service;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityQuery;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 砍价活动参与记录业务层
*
* @author qiuqiu
* @date 2021/7/1 9:45 上午
*/
public interface KanJiaActivityService extends IService<KanJiaActivity> {
/**
* 发起人发起砍价活动
*
* @param skuId 商品skuId
* @return
*/
KanJiaActivityLog add(String skuId);
/**
* 帮砍
*
* @param kanJiaActivityId 活动id
* @return 砍价详细
*/
KanJiaActivityLog helpKanJia(String kanJiaActivityId);
/**
* 根据条件查询我参与的砍价活动
*
* @param kanJiaActivityQuery 砍价活动查询条件
* @param page 分页对象
* @return 我参与的砍价活动信息
*/
IPage<KanJiaActivity> getForPage(KanJiaActivityQuery kanJiaActivityQuery, PageVO page);
}

View File

@ -2,11 +2,12 @@ package cn.lili.modules.promotion.service;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.vos.KanJiaActivityGoodsParams;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsListVO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsParams;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@ -19,7 +20,7 @@ import java.util.List;
* @author qiuqiu
* @date 2021/7/1 9:45 上午
*/
public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods> {
public interface KanjiaActivityGoodsService extends IService<KanjiaActivityGoods> {
/**
@ -28,7 +29,7 @@ public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods
* @param kanJiaActivityGoodsDTOS 砍价商品
* @return 是否添加成功
*/
boolean add(KanJiaActivityGoodsOperationDTO kanJiaActivityGoodsDTOS);
boolean add(KanjiaActivityGoodsOperationDTO kanJiaActivityGoodsDTOS);
/**
* 查询砍价活动商品分页信息
@ -37,7 +38,16 @@ public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods
* @param pageVO 分页信息
* @return 砍价商品
*/
IPage<KanJiaActivityGoodsDTO> getForPage(KanJiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO pageVO);
IPage<KanjiaActivityGoodsDTO> getForPage(KanjiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO pageVO);
/**
* 查询砍价活动商品分页信息
*
* @param kanJiaActivityGoodsParams 砍价活动商品
* @param pageVO 分页信息
* @return 砍价商品
*/
IPage<KanjiaActivityGoodsListVO> kanJiaGoodsVOPage(KanjiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO pageVO);
/**
* 查询砍价活动商品
@ -45,7 +55,14 @@ public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods
* @param goodsId 砍价活动商品id
* @return 砍价活动商品信息
*/
KanJiaActivityGoodsDTO getKanJiaGoodsDetail(String goodsId);
KanjiaActivityGoodsDTO getKanJiaGoodsDetail(String goodsId);
/**
* 查询砍价活动商品VO
* @param id 砍价活动商品ID
* @return 砍价活动商品
*/
KanjiaActivityGoodsVO getKanJiaGoodsVO(String id);
/**
* 修改看见商品信息
@ -53,7 +70,7 @@ public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods
* @param kanJiaActivityGoodsDTO 砍价商品信息
* @return 是否修改成功
*/
boolean updateKanJiaActivityGoods(KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO);
boolean updateKanJiaActivityGoods(KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO);
/**
* 删除砍价商品
@ -69,6 +86,6 @@ public interface KanJiaActivityGoodsService extends IService<KanJiaActivityGoods
* @param skuId 商品skuId
* @return
*/
KanJiaActivityGoodsDTO getKanJiaGoodsBySku(String skuId);
KanjiaActivityGoodsDTO getKanJiaGoodsBySku(String skuId);
}

View File

@ -2,8 +2,8 @@ package cn.lili.modules.promotion.service;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityDTO;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityLogQuery;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@ -15,7 +15,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
* @author qiuqiu
* @date 2021/7/1 9:45 上午
*/
public interface KanJiaActivityLogService extends IService<KanJiaActivityLog> {
public interface KanjiaActivityLogService extends IService<KanjiaActivityLog> {
/**
* 根据砍价参与记录id查询砍价记录
@ -24,7 +24,7 @@ public interface KanJiaActivityLogService extends IService<KanJiaActivityLog> {
* @param pageVO 分页信息
* @return 砍价日志
*/
IPage<KanJiaActivityLog> getForPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO pageVO);
IPage<KanjiaActivityLog> getForPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO pageVO);
/**
* 砍一刀
@ -32,5 +32,5 @@ public interface KanJiaActivityLogService extends IService<KanJiaActivityLog> {
* @param kanJiaActivityDTO 砍价记录
* @return
*/
KanJiaActivityLog addKanJiaActivityLog(KanJiaActivityDTO kanJiaActivityDTO);
KanjiaActivityLog addKanJiaActivityLog(KanjiaActivityDTO kanJiaActivityDTO);
}

View File

@ -0,0 +1,58 @@
package cn.lili.modules.promotion.service;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.promotion.entity.dos.KanjiaActivity;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityQuery;
import cn.lili.modules.promotion.entity.vos.KanjiaActivitySearchParams;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 砍价活动参与记录业务层
*
* @author qiuqiu
* @date 2021/7/1 9:45 上午
*/
public interface KanjiaActivityService extends IService<KanjiaActivity> {
/**
* 获取砍价活动
*
* 有值说明是已参加的砍价活动
* 没有值说明是未参加的砍价活动
*
* @param kanJiaActivitySearchParams 砍价活动搜索参数
* @return 砍价活动
*/
KanjiaActivity getKanjiaActivity(KanjiaActivitySearchParams kanJiaActivitySearchParams);
/**
* 发起人发起砍价活动
*
* @param id 活动ID
* @return
*/
KanjiaActivityLog add(String id);
/**
* 帮砍
*
* @param kanJiaActivityId 活动id
* @return 砍价详细
*/
KanjiaActivityLog helpKanJia(String kanJiaActivityId);
/**
* 根据条件查询我参与的砍价活动
*
* @param kanJiaActivityQuery 砍价活动查询条件
* @param page 分页对象
* @return 我参与的砍价活动信息
*/
IPage<KanjiaActivity> getForPage(KanjiaActivityQuery kanJiaActivityQuery, PageVO page);
}

View File

@ -11,19 +11,22 @@ import cn.lili.common.trigger.model.TimeExecuteConstant;
import cn.lili.common.trigger.model.TimeTriggerMsg;
import cn.lili.common.trigger.util.DelayQueueTools;
import cn.lili.common.utils.DateUtil;
import cn.lili.common.utils.PageUtil;
import cn.lili.common.vo.PageVO;
import cn.lili.config.rocketmq.RocketmqCustomProperties;
import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.goods.entity.enums.GoodsStatusEnum;
import cn.lili.modules.goods.service.GoodsSkuService;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import cn.lili.modules.promotion.entity.enums.PromotionTypeEnum;
import cn.lili.modules.promotion.entity.vos.KanJiaActivityGoodsParams;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsListVO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsParams;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsVO;
import cn.lili.modules.promotion.mapper.KanJiaActivityGoodsMapper;
import cn.lili.modules.promotion.service.KanJiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import cn.lili.modules.promotion.tools.PromotionTools;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -47,7 +50,7 @@ import java.util.List;
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGoodsMapper, KanJiaActivityGoods> implements KanJiaActivityGoodsService {
public class KanjiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGoodsMapper, KanjiaActivityGoods> implements KanjiaActivityGoodsService {
//规格商品
@Autowired
@ -67,9 +70,9 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
@Override
public boolean add(KanJiaActivityGoodsOperationDTO kanJiaActivityGoodsOperationDTO) {
List<KanJiaActivityGoods> kanJiaActivityGoodsList = new ArrayList<>();
for (KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO : kanJiaActivityGoodsOperationDTO.getPromotionGoodsList()) {
public boolean add(KanjiaActivityGoodsOperationDTO kanJiaActivityGoodsOperationDTO) {
List<KanjiaActivityGoods> kanjiaActivityGoodsList = new ArrayList<>();
for (KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO : kanJiaActivityGoodsOperationDTO.getPromotionGoodsList()) {
//根据skuId查询商品信息
GoodsSku goodsSku = this.checkSkuExist(kanJiaActivityGoodsDTO.getSkuId());
//参数检测
@ -87,12 +90,12 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
kanJiaActivityGoodsDTO.setThumbnail(goodsSku.getThumbnail());
kanJiaActivityGoodsDTO.setGoodsName(goodsSku.getGoodsName());
kanJiaActivityGoodsDTO.setPromotionStatus(PromotionStatusEnum.NEW.name());
kanJiaActivityGoodsList.add(kanJiaActivityGoodsDTO);
kanjiaActivityGoodsList.add(kanJiaActivityGoodsDTO);
}
Boolean result = this.saveBatch(kanJiaActivityGoodsList);
Boolean result = this.saveBatch(kanjiaActivityGoodsList);
if (result) {
//发送砍价延迟任务消息
for (KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO : kanJiaActivityGoodsOperationDTO.getPromotionGoodsList()) {
for (KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO : kanJiaActivityGoodsOperationDTO.getPromotionGoodsList()) {
this.mongoTemplate.save(kanJiaActivityGoodsDTO);
this.addKanJiaGoodsPromotionTask(kanJiaActivityGoodsDTO);
}
@ -106,7 +109,7 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
*
* @param kanJiaActivityGoods 砍价商品信息
*/
private void addKanJiaGoodsPromotionTask(KanJiaActivityGoodsDTO kanJiaActivityGoods) {
private void addKanJiaGoodsPromotionTask(KanjiaActivityGoodsDTO kanJiaActivityGoods) {
PromotionMessage promotionMessage = new PromotionMessage(kanJiaActivityGoods.getId(), PromotionTypeEnum.KAN_JIA.name(),
PromotionStatusEnum.START.name(),
kanJiaActivityGoods.getStartTime(), kanJiaActivityGoods.getEndTime());
@ -120,21 +123,26 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
}
@Override
public IPage<KanJiaActivityGoodsDTO> getForPage(KanJiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO pageVO) {
IPage<KanJiaActivityGoodsDTO> kanJiaActivityGoodsDTOIPage = new Page<>();
public IPage<KanjiaActivityGoodsDTO> getForPage(KanjiaActivityGoodsParams kanJiaActivityGoodsParams, PageVO pageVO) {
IPage<KanjiaActivityGoodsDTO> kanJiaActivityGoodsDTOIPage = new Page<>();
Query query = kanJiaActivityGoodsParams.mongoQuery();
if (pageVO != null) {
PromotionTools.mongoQueryPageParam(query, pageVO);
kanJiaActivityGoodsDTOIPage.setSize(pageVO.getPageSize());
kanJiaActivityGoodsDTOIPage.setCurrent(pageVO.getPageNumber());
}
List<KanJiaActivityGoodsDTO> kanJiaActivityGoodsDTOS = this.mongoTemplate.find(query, KanJiaActivityGoodsDTO.class);
List<KanjiaActivityGoodsDTO> kanJiaActivityGoodsDTOS = this.mongoTemplate.find(query, KanjiaActivityGoodsDTO.class);
kanJiaActivityGoodsDTOIPage.setRecords(kanJiaActivityGoodsDTOS);
kanJiaActivityGoodsDTOIPage.setTotal(this.mongoTemplate.count(kanJiaActivityGoodsParams.mongoQuery(), KanJiaActivityGoodsDTO.class));
kanJiaActivityGoodsDTOIPage.setTotal(this.mongoTemplate.count(kanJiaActivityGoodsParams.mongoQuery(), KanjiaActivityGoodsDTO.class));
return kanJiaActivityGoodsDTOIPage;
}
@Override
public IPage<KanjiaActivityGoodsListVO> kanJiaGoodsVOPage(KanjiaActivityGoodsParams kanjiaActivityGoodsParams, PageVO pageVO) {
return this.baseMapper.kanjiaActivityGoodsVOPage(PageUtil.initPage(pageVO),kanjiaActivityGoodsParams.wrapper());
}
/**
* 检查商品Sku是否存
@ -157,7 +165,7 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
* @param kanJiaActivityGoodsDTO 砍价商品信息
* @param goodsSku 商品sku信息
*/
private void checkParam(KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO, GoodsSku goodsSku) {
private void checkParam(KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO, GoodsSku goodsSku) {
//校验商品是否存在
if (goodsSku == null) {
throw new ServiceException(ResultCode.PROMOTION_GOODS_NOT_EXIT);
@ -199,25 +207,25 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
* @param kanJiaActivityGoodsDTO 砍价商品
* @return 积分商品信息
*/
private KanJiaActivityGoods checkSkuDuplicate(String skuId, KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
LambdaQueryWrapper<KanJiaActivityGoods> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(KanJiaActivityGoods::getSkuId, skuId);
private KanjiaActivityGoods checkSkuDuplicate(String skuId, KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
LambdaQueryWrapper<KanjiaActivityGoods> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(KanjiaActivityGoods::getSkuId, skuId);
if (kanJiaActivityGoodsDTO != null && StrUtil.isNotEmpty(kanJiaActivityGoodsDTO.getId())) {
queryWrapper.ne(KanJiaActivityGoods::getId, kanJiaActivityGoodsDTO.getId());
queryWrapper.ne(KanjiaActivityGoods::getId, kanJiaActivityGoodsDTO.getId());
}
queryWrapper.ne(KanJiaActivityGoods::getPromotionStatus, PromotionStatusEnum.END.name());
queryWrapper.ne(KanjiaActivityGoods::getPromotionStatus, PromotionStatusEnum.END.name());
queryWrapper.ge(KanJiaActivityGoods::getStartTime, kanJiaActivityGoodsDTO.getStartTime());
queryWrapper.ge(KanjiaActivityGoods::getStartTime, kanJiaActivityGoodsDTO.getStartTime());
queryWrapper.le(KanJiaActivityGoods::getEndTime, kanJiaActivityGoodsDTO.getEndTime());
queryWrapper.le(KanjiaActivityGoods::getEndTime, kanJiaActivityGoodsDTO.getEndTime());
return this.getOne(queryWrapper);
}
@Override
public KanJiaActivityGoodsDTO getKanJiaGoodsDetail(String goodsId) {
KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.mongoTemplate.findById(goodsId, KanJiaActivityGoodsDTO.class);
public KanjiaActivityGoodsDTO getKanJiaGoodsDetail(String goodsId) {
KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.mongoTemplate.findById(goodsId, KanjiaActivityGoodsDTO.class);
if (kanJiaActivityGoodsDTO == null) {
log.error("id为" + goodsId + "的砍价商品不存在!");
throw new ServiceException();
@ -226,9 +234,26 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
}
@Override
public boolean updateKanJiaActivityGoods(KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
public KanjiaActivityGoodsVO getKanJiaGoodsVO(String id) {
KanjiaActivityGoodsVO kanJiaActivityGoodsVO = new KanjiaActivityGoodsVO();
//获取砍价商品
KanjiaActivityGoods kanJiaActivityGoods=this.getById(id);
//获取商品SKU
GoodsSku goodsSku = this.goodsSkuService.getGoodsSkuByIdFromCache(kanJiaActivityGoods.getSkuId());
//填写活动商品价格剩余数量
kanJiaActivityGoodsVO.setGoodsSku(goodsSku);
kanJiaActivityGoodsVO.setStock(kanJiaActivityGoods.getStock());
kanJiaActivityGoodsVO.setPurchasePrice(kanJiaActivityGoods.getPurchasePrice());
//返回商品数据
return kanJiaActivityGoodsVO;
}
@Override
public boolean updateKanJiaActivityGoods(KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
//校验砍价商品是否存在
KanJiaActivityGoodsDTO dbKanJiaActivityGoods = this.getKanJiaGoodsDetail(kanJiaActivityGoodsDTO.getId());
KanjiaActivityGoodsDTO dbKanJiaActivityGoods = this.getKanJiaGoodsDetail(kanJiaActivityGoodsDTO.getId());
//校验当前活动是否已经开始,只有新建的未开始的活动可以编辑
if (!dbKanJiaActivityGoods.getPromotionStatus().equals(PromotionStatusEnum.NEW.name())) {
throw new ServiceException(ResultCode.PROMOTION_UPDATE_ERROR);
@ -271,7 +296,7 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
public boolean deleteKanJiaGoods(List<String> ids) {
List<String> skuIds = new ArrayList<>();
for (String id : ids) {
KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.getKanJiaGoodsDetail(id);
KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.getKanJiaGoodsDetail(id);
this.timeTrigger.delete(TimeExecuteConstant.PROMOTION_EXECUTOR,
kanJiaActivityGoodsDTO.getStartTime().getTime(),
DelayQueueTools.wrapperUniqueKey(DelayTypeEnums.PROMOTION, (PromotionTypeEnum.KAN_JIA.name() + kanJiaActivityGoodsDTO.getId())),
@ -282,21 +307,21 @@ public class KanJiaActivityGoodsServiceImpl extends ServiceImpl<KanJiaActivityGo
if (result) {
Query query = new Query();
query.addCriteria(new Criteria("id").in(ids));
this.mongoTemplate.remove(query, KanJiaActivityGoodsDTO.class);
this.mongoTemplate.remove(query, KanjiaActivityGoodsDTO.class);
}
return result;
}
@Override
public KanJiaActivityGoodsDTO getKanJiaGoodsBySku(String skuId) {
public KanjiaActivityGoodsDTO getKanJiaGoodsBySku(String skuId) {
//构建查询条件
KanJiaActivityGoodsParams kanJiaActivityGoodsParams = new KanJiaActivityGoodsParams();
KanjiaActivityGoodsParams kanJiaActivityGoodsParams = new KanjiaActivityGoodsParams();
kanJiaActivityGoodsParams.setSkuId(skuId);
kanJiaActivityGoodsParams.setPromotionStatus(PromotionStatusEnum.START.name());
//查询相关数据
Query query = kanJiaActivityGoodsParams.mongoQuery();
List<KanJiaActivityGoodsDTO> kanJiaActivityGoodsDTOS = this.mongoTemplate.find(query, KanJiaActivityGoodsDTO.class);
List<KanjiaActivityGoodsDTO> kanJiaActivityGoodsDTOS = this.mongoTemplate.find(query, KanjiaActivityGoodsDTO.class);
// 为了担心会查到多条数据 所以查询集合 正常情况下只会查询到一条
if (kanJiaActivityGoodsDTOS.size() > 0) {
return kanJiaActivityGoodsDTOS.get(0);

View File

@ -3,20 +3,19 @@ package cn.lili.modules.promotion.serviceimpl;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.utils.BeanUtil;
import cn.lili.common.utils.PageUtil;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityDTO;
import cn.lili.modules.promotion.entity.dos.KanjiaActivity;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityLogQuery;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import cn.lili.modules.promotion.mapper.KanJiaActivityLogMapper;
import cn.lili.modules.promotion.service.KanJiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanJiaActivityLogService;
import cn.lili.modules.promotion.service.KanJiaActivityService;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanjiaActivityLogService;
import cn.lili.modules.promotion.service.KanjiaActivityService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -33,41 +32,41 @@ import org.springframework.transaction.annotation.Transactional;
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class KanJiaActivityLogServiceImpl extends ServiceImpl<KanJiaActivityLogMapper, KanJiaActivityLog> implements KanJiaActivityLogService {
public class KanjiaActivityLogServiceImpl extends ServiceImpl<KanJiaActivityLogMapper, KanjiaActivityLog> implements KanjiaActivityLogService {
@Autowired
private KanJiaActivityGoodsService kanJiaActivityGoodsService;
private KanjiaActivityGoodsService kanJiaActivityGoodsService;
@Autowired
private KanJiaActivityService kanJiaActivityService;
private KanjiaActivityService kanJiaActivityService;
@Override
public IPage<KanJiaActivityLog> getForPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO pageVO) {
QueryWrapper<KanJiaActivityLog> queryWrapper = kanJiaActivityLogQuery.wrapper();
public IPage<KanjiaActivityLog> getForPage(KanJiaActivityLogQuery kanJiaActivityLogQuery, PageVO pageVO) {
QueryWrapper<KanjiaActivityLog> queryWrapper = kanJiaActivityLogQuery.wrapper();
return this.page(PageUtil.initPage(pageVO), queryWrapper);
}
@Override
public KanJiaActivityLog addKanJiaActivityLog(KanJiaActivityDTO kanJiaActivityDTO) {
public KanjiaActivityLog addKanJiaActivityLog(KanjiaActivityDTO kanjiaActivityDTO) {
//校验当前会员是否已经参与过此次砍价
QueryWrapper<KanJiaActivityLog> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(kanJiaActivityDTO.getKanJiaMemberId() != null, "kan_jia_member_id", kanJiaActivityDTO.getKanJiaMemberId());
queryWrapper.eq(kanJiaActivityDTO.getKanJiaActivityId() != null, "kan_jia_activity_id", kanJiaActivityDTO.getKanJiaActivityId());
QueryWrapper<KanjiaActivityLog> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(kanjiaActivityDTO.getKanjiaMemberId() != null, "kan_jia_member_id", kanjiaActivityDTO.getKanjiaMemberId());
queryWrapper.eq(kanjiaActivityDTO.getKanjiaActivityId() != null, "kan_jia_activity_id", kanjiaActivityDTO.getKanjiaActivityId());
Integer count = this.baseMapper.selectCount(queryWrapper);
if (count > 0) {
throw new ServiceException(ResultCode.KANJIA_ACTIVITY_LOG_MEMBER_ERROR);
}
//校验当前砍价商品是否有效
KanJiaActivityGoods kanJiaActivityGoods = kanJiaActivityGoodsService.getById(kanJiaActivityDTO.getKanJiaActivityGoodsId());
KanjiaActivityGoods kanjiaActivityGoods = kanJiaActivityGoodsService.getById(kanjiaActivityDTO.getKanjiaActivityGoodsId());
//如果当前活动不为空且还在活动时间内 才可以参与砍价活动
if (kanJiaActivityGoods != null && kanJiaActivityGoods.getPromotionStatus().equals(PromotionStatusEnum.START.name())) {
if (kanjiaActivityGoods != null && kanjiaActivityGoods.getPromotionStatus().equals(PromotionStatusEnum.START.name())) {
//获取砍价参与者记录
KanJiaActivity kanJiaActivity = kanJiaActivityService.getById(kanJiaActivityDTO.getKanJiaActivityId());
if (kanJiaActivity != null) {
KanJiaActivityLog kanJiaActivityLog = new KanJiaActivityLog();
kanJiaActivityLog.setKanJiaActivityId(kanJiaActivity.getId());
BeanUtil.copyProperties(kanJiaActivityDTO, kanJiaActivityLog);
KanjiaActivity kanjiaActivity = kanJiaActivityService.getById(kanjiaActivityDTO.getKanjiaActivityId());
if (kanjiaActivity != null) {
KanjiaActivityLog kanJiaActivityLog = new KanjiaActivityLog();
kanJiaActivityLog.setKanjiaActivityId(kanjiaActivity.getId());
BeanUtil.copyProperties(kanjiaActivityDTO, kanJiaActivityLog);
boolean result = this.save(kanJiaActivityLog);
if (result) {
return kanJiaActivityLog;

View File

@ -11,17 +11,18 @@ import cn.lili.modules.goods.entity.dos.GoodsSku;
import cn.lili.modules.goods.service.GoodsSkuService;
import cn.lili.modules.member.entity.dos.Member;
import cn.lili.modules.member.service.MemberService;
import cn.lili.modules.promotion.entity.dos.KanJiaActivity;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanJiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityQuery;
import cn.lili.modules.promotion.entity.dos.KanjiaActivity;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityGoods;
import cn.lili.modules.promotion.entity.dos.KanjiaActivityLog;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityDTO;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityQuery;
import cn.lili.modules.promotion.entity.enums.KanJiaStatusEnum;
import cn.lili.modules.promotion.entity.enums.PromotionStatusEnum;
import cn.lili.modules.promotion.entity.vos.KanjiaActivitySearchParams;
import cn.lili.modules.promotion.mapper.KanJiaActivityMapper;
import cn.lili.modules.promotion.service.KanJiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanJiaActivityLogService;
import cn.lili.modules.promotion.service.KanJiaActivityService;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import cn.lili.modules.promotion.service.KanjiaActivityLogService;
import cn.lili.modules.promotion.service.KanjiaActivityService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -38,45 +39,44 @@ import org.springframework.transaction.annotation.Transactional;
*/
@Service
@Transactional(rollbackFor = Exception.class)
public class KanJiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper, KanJiaActivity> implements KanJiaActivityService {
public class KanjiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper, KanjiaActivity> implements KanjiaActivityService {
@Autowired
private KanJiaActivityGoodsService kanJiaActivityGoodsService;
private KanjiaActivityGoodsService kanjiaActivityGoodsService;
@Autowired
private KanJiaActivityLogService kanJiaActivityLogService;
private KanjiaActivityLogService kanjiaActivityLogService;
@Autowired
private MemberService memberService;
//规格商品
@Autowired
private GoodsSkuService goodsSkuService;
@Override
public KanJiaActivityLog add(String skuId) {
public KanjiaActivity getKanjiaActivity(KanjiaActivitySearchParams kanJiaActivitySearchParams) {
return this.getOne(kanJiaActivitySearchParams.wrapper());
}
@Override
public KanjiaActivityLog add(String id) {
//根据skuId查询当前sku是否参与活动并且是在活动进行中
KanJiaActivityGoods kanJiaActivityGoods = kanJiaActivityGoodsService.getKanJiaGoodsBySku(skuId);
KanjiaActivityGoods kanJiaActivityGoods = kanjiaActivityGoodsService.getById(id);
//只有砍价商品存在且已经开始的活动才可以发起砍价
if (kanJiaActivityGoods != null && kanJiaActivityGoods.getPromotionStatus().equals(PromotionStatusEnum.START.name())) {
//获取会员信息
Member member = memberService.getById(UserContext.getCurrentUser().getId());
//校验此活动是否已经发起过
QueryWrapper<KanJiaActivity> queryWrapper = new QueryWrapper<>();
QueryWrapper<KanjiaActivity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("kan_jia_activity_goods_id", kanJiaActivityGoods.getId());
queryWrapper.eq("member_id", member.getId());
if (this.count(queryWrapper) > 0) {
throw new ServiceException(ResultCode.KANJIA_ACTIVITY_MEMBER_ERROR);
}
KanJiaActivity kanJiaActivity = new KanJiaActivity();
KanjiaActivity kanJiaActivity = new KanjiaActivity();
//获取商品信息
GoodsSku goodsSku = goodsSkuService.getGoodsSkuByIdFromCache(skuId);
GoodsSku goodsSku = goodsSkuService.getGoodsSkuByIdFromCache(kanJiaActivityGoods.getSkuId());
if (goodsSku != null && member != null) {
kanJiaActivity.setSkuId(skuId);
kanJiaActivity.setSkuId(kanJiaActivityGoods.getSkuId());
kanJiaActivity.setGoodsName(goodsSku.getGoodsName());
kanJiaActivity.setKanJiaActivityGoodsId(kanJiaActivityGoods.getId());
kanJiaActivity.setKanjiaActivityGoodsId(kanJiaActivityGoods.getId());
kanJiaActivity.setThumbnail(goodsSku.getThumbnail());
kanJiaActivity.setMemberId(UserContext.getCurrentUser().getId());
kanJiaActivity.setMemberName(member.getUsername());
@ -84,22 +84,22 @@ public class KanJiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper,
//剩余砍价金额 开始 是商品金额-最低购买金额
Double surplusPrice = CurrencyUtil.sub(goodsSku.getPrice(), kanJiaActivityGoods.getPurchasePrice());
//获取砍价金额因为自己要给自己砍一刀 所以需要在可砍金额范围内 砍一刀
Double price = this.getKanJiaPrice(kanJiaActivityGoods, surplusPrice);
Double price = this.getKanjiaPrice(kanJiaActivityGoods, surplusPrice);
//剩余可砍金额就是 砍一刀后的金额
kanJiaActivity.setSurplusPrice(CurrencyUtil.sub(surplusPrice, price));
//保存我的砍价活动
boolean result = this.save(kanJiaActivity);
//因为发起砍价就是自己给自己砍一刀所以要添加砍价记录信息
if (result) {
KanJiaActivityDTO kanJiaActivityDTO = new KanJiaActivityDTO();
kanJiaActivityDTO.setKanJiaActivityGoodsId(kanJiaActivityGoods.getId());
kanJiaActivityDTO.setKanJiaActivityId(kanJiaActivity.getId());
kanJiaActivityDTO.setKanJiaPrice(price);
kanJiaActivityDTO.setSurplusPrice(kanJiaActivity.getSurplusPrice());
kanJiaActivityDTO.setKanJiaMemberId(kanJiaActivity.getMemberId());
kanJiaActivityDTO.setKanJiaMemberName(kanJiaActivity.getMemberName());
kanJiaActivityDTO.setKanJiaMemberFace(member.getFace());
return kanJiaActivityLogService.addKanJiaActivityLog(kanJiaActivityDTO);
KanjiaActivityDTO kanjiaActivityDTO = new KanjiaActivityDTO();
kanjiaActivityDTO.setKanjiaActivityGoodsId(kanJiaActivityGoods.getId());
kanjiaActivityDTO.setKanjiaActivityId(kanJiaActivity.getId());
kanjiaActivityDTO.setKanjiaPrice(price);
kanjiaActivityDTO.setSurplusPrice(kanJiaActivity.getSurplusPrice());
kanjiaActivityDTO.setKanjiaMemberId(kanJiaActivity.getMemberId());
kanjiaActivityDTO.setKanjiaMemberName(kanJiaActivity.getMemberName());
kanjiaActivityDTO.setKanjiaMemberFace(member.getFace());
return kanjiaActivityLogService.addKanJiaActivityLog(kanjiaActivityDTO);
}
}
@ -110,37 +110,37 @@ public class KanJiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper,
@Override
public KanJiaActivityLog helpKanJia(String kanJiaActivityId) {
public KanjiaActivityLog helpKanJia(String kanjiaActivityId) {
//获取会员信息
Member member = memberService.getById(UserContext.getCurrentUser().getId());
//根据砍价发起活动id查询砍价活动信息
KanJiaActivity kanJiaActivity = this.getById(kanJiaActivityId);
if (kanJiaActivity != null && kanJiaActivity.getStatus().equals(PromotionStatusEnum.START.name())) {
KanjiaActivity kanjiaActivity = this.getById(kanjiaActivityId);
if (kanjiaActivity != null && kanjiaActivity.getStatus().equals(PromotionStatusEnum.START.name())) {
if (member == null) {
throw new ServiceException(ResultCode.USER_NOT_EXIST);
}
//根据skuId查询当前sku是否参与活动并且是在活动进行中
KanJiaActivityGoods kanJiaActivityGoods = kanJiaActivityGoodsService.getById(kanJiaActivity.getKanJiaActivityGoodsId());
KanjiaActivityGoods kanJiaActivityGoods = kanjiaActivityGoodsService.getById(kanjiaActivity.getKanjiaActivityGoodsId());
if (kanJiaActivityGoods == null) {
throw new ServiceException(ResultCode.PROMOTION_STATUS_END);
}
KanJiaActivityDTO kanJiaActivityDTO = new KanJiaActivityDTO();
kanJiaActivityDTO.setKanJiaActivityGoodsId(kanJiaActivity.getKanJiaActivityGoodsId());
kanJiaActivityDTO.setKanJiaActivityId(kanJiaActivityId);
KanjiaActivityDTO kanjiaActivityDTO = new KanjiaActivityDTO();
kanjiaActivityDTO.setKanjiaActivityGoodsId(kanjiaActivity.getKanjiaActivityGoodsId());
kanjiaActivityDTO.setKanjiaActivityId(kanjiaActivityId);
//获取砍价金额
Double price = this.getKanJiaPrice(kanJiaActivityGoods, kanJiaActivity.getSurplusPrice());
kanJiaActivityDTO.setKanJiaPrice(price);
Double price = this.getKanjiaPrice(kanJiaActivityGoods, kanjiaActivity.getSurplusPrice());
kanjiaActivityDTO.setKanjiaPrice(price);
//获取可砍金额
kanJiaActivityDTO.setSurplusPrice(CurrencyUtil.sub(kanJiaActivity.getSurplusPrice(), price));
kanjiaActivityDTO.setSurplusPrice(CurrencyUtil.sub(kanjiaActivity.getSurplusPrice(), price));
//如果可砍金额为0的话说明活动成功了
if (Double.doubleToLongBits(kanJiaActivityDTO.getSurplusPrice()) == Double.doubleToLongBits(0D)) {
kanJiaActivity.setStatus(KanJiaStatusEnum.SUCCESS.name());
this.updateById(kanJiaActivity);
if (Double.doubleToLongBits(kanjiaActivityDTO.getSurplusPrice()) == Double.doubleToLongBits(0D)) {
kanjiaActivity.setStatus(KanJiaStatusEnum.SUCCESS.name());
this.updateById(kanjiaActivity);
}
kanJiaActivityDTO.setKanJiaMemberId(member.getId());
kanJiaActivityDTO.setKanJiaMemberName(member.getUsername());
kanJiaActivityDTO.setKanJiaMemberFace(member.getFace());
return kanJiaActivityLogService.addKanJiaActivityLog(kanJiaActivityDTO);
kanjiaActivityDTO.setKanjiaMemberId(member.getId());
kanjiaActivityDTO.setKanjiaMemberName(member.getUsername());
kanjiaActivityDTO.setKanjiaMemberFace(member.getFace());
return kanjiaActivityLogService.addKanJiaActivityLog(kanjiaActivityDTO);
}
throw new ServiceException(ResultCode.PROMOTION_STATUS_END);
}
@ -148,20 +148,20 @@ public class KanJiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper,
/**
* 随机获取砍一刀价格
*
* @param kanJiaActivityGoods 砍价商品信息
* @param kanjiaActivityGoods 砍价商品信息
* @param surplusPrice 剩余可砍金额
* @return
*/
private Double getKanJiaPrice(KanJiaActivityGoods kanJiaActivityGoods, Double surplusPrice) {
double result = kanJiaActivityGoods.getHighestPrice() - kanJiaActivityGoods.getLowestPrice();
private Double getKanjiaPrice(KanjiaActivityGoods kanjiaActivityGoods, Double surplusPrice) {
double result = kanjiaActivityGoods.getHighestPrice() - kanjiaActivityGoods.getLowestPrice();
double num = (Math.random() * result);
//如果剩余金额小于最低可砍价金额则直接返回最小金额 砍价成功
if (kanJiaActivityGoods.getLowestPrice() > surplusPrice) {
if (kanjiaActivityGoods.getLowestPrice() > surplusPrice) {
return surplusPrice;
}
Double price = 0D;
while (true) {
price = CurrencyUtil.round(num + kanJiaActivityGoods.getLowestPrice(), 2);
price = CurrencyUtil.round(num + kanjiaActivityGoods.getLowestPrice(), 2);
//从最大金额和最小金额之间获取随机砍价金额
if (price < surplusPrice) {
break;
@ -176,8 +176,8 @@ public class KanJiaActivityServiceImpl extends ServiceImpl<KanJiaActivityMapper,
@Override
public IPage<KanJiaActivity> getForPage(KanJiaActivityQuery kanJiaActivityQuery, PageVO page) {
QueryWrapper<KanJiaActivity> queryWrapper = kanJiaActivityQuery.wrapper();
public IPage<KanjiaActivity> getForPage(KanjiaActivityQuery kanjiaActivityQuery, PageVO page) {
QueryWrapper<KanjiaActivity> queryWrapper = kanjiaActivityQuery.wrapper();
return this.page(PageUtil.initPage(page), queryWrapper);
}

View File

@ -9,7 +9,7 @@ import cn.lili.common.exception.ServiceException;
import cn.lili.common.trigger.message.PromotionMessage;
import cn.lili.modules.order.cart.entity.vo.FullDiscountVO;
import cn.lili.modules.promotion.entity.dos.*;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.enums.*;
import cn.lili.modules.promotion.entity.vos.CouponVO;
import cn.lili.modules.promotion.entity.vos.PintuanVO;
@ -98,7 +98,7 @@ public class PromotionServiceImpl implements PromotionService {
@Autowired
private MongoTemplate mongoTemplate;
@Autowired
private KanJiaActivityGoodsService kanJiaActivityGoodsService;
private KanjiaActivityGoodsService kanJiaActivityGoodsService;
@Override
@ -465,7 +465,7 @@ public class PromotionServiceImpl implements PromotionService {
* @return 修改结果
*/
private boolean updateKanJiaGoods(PromotionMessage promotionMessage, PromotionTypeEnum promotionTypeEnum) {
KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.mongoTemplate.findById(promotionMessage.getPromotionId(), KanJiaActivityGoodsDTO.class);
KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO = this.mongoTemplate.findById(promotionMessage.getPromotionId(), KanjiaActivityGoodsDTO.class);
if (kanJiaActivityGoodsDTO == null) {
this.throwPromotionException(promotionTypeEnum, promotionMessage.getPromotionId(), promotionMessage.getPromotionStatus());
return false;

View File

@ -6,10 +6,10 @@ import cn.lili.common.enums.ResultUtil;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanJiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.vos.KanJiaActivityGoodsParams;
import cn.lili.modules.promotion.service.KanJiaActivityGoodsService;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsDTO;
import cn.lili.modules.promotion.entity.dto.KanjiaActivityGoodsOperationDTO;
import cn.lili.modules.promotion.entity.vos.KanjiaActivityGoodsParams;
import cn.lili.modules.promotion.service.KanjiaActivityGoodsService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@ -31,11 +31,11 @@ import java.util.Arrays;
public class KanJiaActivityGoodsManagerController {
@Autowired
private KanJiaActivityGoodsService kanJiaActivityGoodsService;
private KanjiaActivityGoodsService kanJiaActivityGoodsService;
@PostMapping
@ApiOperation(value = "添加砍价活动")
public ResultMessage<Object> add(@RequestBody KanJiaActivityGoodsOperationDTO kanJiaActivityGoodsOperationDTO) {
public ResultMessage<Object> add(@RequestBody KanjiaActivityGoodsOperationDTO kanJiaActivityGoodsOperationDTO) {
kanJiaActivityGoodsService.add(kanJiaActivityGoodsOperationDTO);
return ResultUtil.success();
}
@ -43,7 +43,7 @@ public class KanJiaActivityGoodsManagerController {
@ApiOperation(value = "获取砍价活动分页")
@GetMapping
public ResultMessage<IPage<KanJiaActivityGoodsDTO>> getKanJiaActivityPage(KanJiaActivityGoodsParams KanJiaActivityParams, PageVO page) {
public ResultMessage<IPage<KanjiaActivityGoodsDTO>> getKanJiaActivityPage(KanjiaActivityGoodsParams KanJiaActivityParams, PageVO page) {
return ResultUtil.data(kanJiaActivityGoodsService.getForPage(KanJiaActivityParams, page));
}
@ -51,14 +51,14 @@ public class KanJiaActivityGoodsManagerController {
@GetMapping("/{id}")
@ApiOperation(value = "获取积分商品详情")
public ResultMessage<Object> getPointsGoodsDetail(@PathVariable("id") String goodsId) {
KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO = kanJiaActivityGoodsService.getKanJiaGoodsDetail(goodsId);
KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO = kanJiaActivityGoodsService.getKanJiaGoodsDetail(goodsId);
return ResultUtil.data(kanJiaActivityGoodsDTO);
}
@PutMapping
@ApiOperation(value = "修改砍价商品")
public ResultMessage<Object> updatePointsGoods(@RequestBody KanJiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
public ResultMessage<Object> updatePointsGoods(@RequestBody KanjiaActivityGoodsDTO kanJiaActivityGoodsDTO) {
kanJiaActivityGoodsService.updateKanJiaActivityGoods(kanJiaActivityGoodsDTO);
return ResultUtil.success();
}