src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java | ●●●●● patch | view | raw | blame | history |
src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java
@@ -1,18 +1,18 @@ package cc.mrbird.febs.mall.controller; import cc.mrbird.febs.common.entity.FebsResponse; import cc.mrbird.febs.mall.dto.ApiMallActListDto; import cc.mrbird.febs.mall.dto.ApiMallActWinDetailsDto; import cc.mrbird.febs.mall.dto.MallGoodsQueryDto; import cc.mrbird.febs.mall.service.IApiMallActService; import cc.mrbird.febs.mall.vo.*; import cc.mrbird.febs.mall.vo.ApiActivityVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import io.swagger.annotations.ApiResponses; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @Slf4j @RestController @@ -22,42 +22,13 @@ public class ApiMallActController { private final IApiMallActService iApiMallActService; @ApiOperation(value = "获取活动列表", notes = "获取活动列表") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMallActListVo.class) }) @PostMapping(value = "/findMallGoodsList") public FebsResponse findMallGoodsList(@RequestBody ApiMallActListDto apiMallActListDto) { return new FebsResponse().success().data(iApiMallActService.findApiMallActListInPage(apiMallActListDto)); } @ApiOperation(value = "获取活动详情", notes = "获取活动详情") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMallActDetailsVo.class) @ApiResponse(code = 200, message = "success", response = ApiActivityVo.class) }) @GetMapping(value = "/findApiMallActDetailsById/{id}") public FebsResponse findApiMallActDetailsById(@PathVariable("id") Long id) { @GetMapping(value = "/getActiy/{id}") public FebsResponse getActivity(@PathVariable("id") Long id) { return new FebsResponse().success().data(iApiMallActService.findApiMallActDetailsById(id)); } @ApiOperation(value = "我的抽奖记录", notes = "我的抽奖记录") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMallActWinDetailsVo.class) }) @PostMapping(value = "/findApiMallActWinDetailsById") public FebsResponse findApiMallActWinDetailsById(@RequestBody ApiMallActWinDetailsDto apiMallActWinDetailsDto) { return new FebsResponse().success().data(iApiMallActService.findApiMallActWinDetailsInPage(apiMallActWinDetailsDto)); } @ApiOperation(value = "抽奖", notes = "抽奖") @ApiResponses({ @ApiResponse(code = 200, message = "success", response = ApiMallAwardDetailsVo.class) }) @GetMapping(value = "/luckDraw/{actId}") public FebsResponse luckDraw(@PathVariable("actId") long actId) { return new FebsResponse().success().data(iApiMallActService.luckDraw(actId)); } } src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java
New file @@ -0,0 +1,17 @@ package cc.mrbird.febs.mall.conversion; import cc.mrbird.febs.mall.entity.MallActivity; import cc.mrbird.febs.mall.vo.ApiActivityVo; import org.mapstruct.Mapper; import org.mapstruct.factory.Mappers; /** * @author wzy * @date 2021-09-18 **/ @Mapper public abstract class MallActivityConversion { public static final MallActivityConversion INSTANCE = Mappers.getMapper(MallActivityConversion.class); public abstract ApiActivityVo entityToApiActivityVo(MallActivity mallActivity); } src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java
@@ -2,7 +2,7 @@ import cc.mrbird.febs.mall.dto.ApiMallActListDto; import cc.mrbird.febs.mall.dto.ApiMallActWinDetailsDto; import cc.mrbird.febs.mall.vo.ApiMallActDetailsVo; import cc.mrbird.febs.mall.vo.ApiActivityVo; import cc.mrbird.febs.mall.vo.ApiMallActListVo; import cc.mrbird.febs.mall.vo.ApiMallActWinDetailsVo; import cc.mrbird.febs.mall.vo.ApiMallAwardDetailsVo; @@ -12,7 +12,7 @@ IPage<ApiMallActListVo> findApiMallActListInPage(ApiMallActListDto apiMallActListDto); ApiMallActDetailsVo findApiMallActDetailsById(Long id); ApiActivityVo findApiMallActDetailsById(Long id); IPage<ApiMallActWinDetailsVo> findApiMallActWinDetailsInPage(ApiMallActWinDetailsDto apiMallActWinDetailsDto); src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java
@@ -5,6 +5,7 @@ import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum; import cc.mrbird.febs.common.exception.FebsException; import cc.mrbird.febs.common.utils.LoginUserUtil; import cc.mrbird.febs.mall.conversion.MallActivityConversion; import cc.mrbird.febs.mall.dto.ApiMallActListDto; import cc.mrbird.febs.mall.dto.ApiMallActWinDetailsDto; import cc.mrbird.febs.mall.entity.*; @@ -12,9 +13,13 @@ import cc.mrbird.febs.mall.service.IApiMallActService; import cc.mrbird.febs.mall.service.IApiMallMemberWalletService; import cc.mrbird.febs.mall.service.IMallMoneyFlowService; import cc.mrbird.febs.mall.vo.*; import cn.hutool.core.util.*; import cc.mrbird.febs.mall.vo.ApiActivityVo; import cc.mrbird.febs.mall.vo.ApiMallActListVo; import cc.mrbird.febs.mall.vo.ApiMallActWinDetailsVo; import cc.mrbird.febs.mall.vo.ApiMallAwardDetailsVo; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.RandomUtil; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -40,6 +45,7 @@ private final DataDictionaryCustomMapper dataDictionaryCustomMapper; private final IMallMoneyFlowService mallMoneyFlowService; private final IApiMallMemberWalletService mallMemberWalletService; private final MallActivityMapper mallActivityMapper; @Override public IPage<ApiMallActListVo> findApiMallActListInPage(ApiMallActListDto apiMallActListDto) { @@ -48,38 +54,10 @@ } @Override public ApiMallActDetailsVo findApiMallActDetailsById(Long id) { MallActSet mallActSet = this.baseMapper.selectById(id); if(ObjectUtil.isEmpty(mallActSet)){ throw new FebsException("活动不存在"); } ApiMallActDetailsVo apiMallActDetailsVo = new ApiMallActDetailsVo(); apiMallActDetailsVo.setId(mallActSet.getId()); apiMallActDetailsVo.setActName(mallActSet.getActName()); apiMallActDetailsVo.setActCode(mallActSet.getActCode()); apiMallActDetailsVo.setActImage(mallActSet.getActImage()); apiMallActDetailsVo.setActStartTime(mallActSet.getActStartTime()); apiMallActDetailsVo.setActEndTime(mallActSet.getActEndTime()); apiMallActDetailsVo.setActScoreCnt(mallActSet.getActScoreCnt()); apiMallActDetailsVo.setActRemark(mallActSet.getActRemark()); List<MallActAwardSet> mallActAwardSets = mallActAwardSetMapper.selectMallActAwardByActId(id); if(CollUtil.isNotEmpty(mallActAwardSets)){ List<ApiMallActAwardListDto> apiMallActAwardListDtos = new ArrayList<>(); for(MallActAwardSet mallActAwardSet : mallActAwardSets){ ApiMallActAwardListDto apiMallActAwardListDto = new ApiMallActAwardListDto(); apiMallActAwardListDto.setId(mallActAwardSet.getId()); apiMallActAwardListDto.setAwardName(mallActAwardSet.getAwardName()); apiMallActAwardListDto.setAwardImage(mallActAwardSet.getAwardImage()); apiMallActAwardListDto.setAwardTotal(mallActAwardSet.getAwardTotal()); apiMallActAwardListDto.setAwardCnt(mallActAwardSet.getAwardCnt()); apiMallActAwardListDto.setAwardType(mallActAwardSet.getAwardType()); apiMallActAwardListDto.setAwardValue(mallActAwardSet.getAwardValue()); apiMallActAwardListDtos.add(apiMallActAwardListDto); } apiMallActDetailsVo.setApiMallActAwardListDtos(apiMallActAwardListDtos); } return apiMallActDetailsVo; public ApiActivityVo findApiMallActDetailsById(Long id) { MallActivity mallActivity = mallActivityMapper.selectById(id); ApiActivityVo apiActivityVo = MallActivityConversion.INSTANCE.entityToApiActivityVo(mallActivity); return apiActivityVo; } @Override src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java
New file @@ -0,0 +1,48 @@ package cc.mrbird.febs.mall.vo; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.Date; @Data @ApiModel(value = "AdminSelectListLeaderVo", description = "信息返回类") public class ApiActivityVo { //活动名称 @ApiModelProperty(value = "活动名称") private String name; //开始时间 @ApiModelProperty(value = "活动开始时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date startTime; //结束时间 @ApiModelProperty(value = "活动结束时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") private Date endTime; //活动大图 @ApiModelProperty(value = "活动大图") private String maxImage; //活动小图 @ApiModelProperty(value = "活动小图") private String minImage; //活动状态 1-开启 0-关闭 @ApiModelProperty(value = "活动状态 1-开启 0-关闭") private Integer state; //活动说明 @ApiModelProperty(value = "活动说明") private String actRemark; /** * 活动类型 1、折扣 2、优惠券 */ @ApiModelProperty(value = "活动类型 1、折扣 2、优惠券") private Integer type; @ApiModelProperty(value = "优惠券id") private Long couponId;//优惠券id @ApiModelProperty(value = "折扣粒度") private BigDecimal discountSize;//折扣粒度 }