From 44300720085ec4ed5f97810f383973d088ba711f Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 08 Jan 2025 14:00:38 +0800 Subject: [PATCH] refactor(mall): 重构活动详情接口返回值 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java | 46 ++++----------- src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java | 45 ++------------ src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java | 4 src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java | 48 ++++++++++++++++ src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java | 17 +++++ 5 files changed, 87 insertions(+), 73 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java b/src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java index 6c8d0fe..860cb91 100644 --- a/src/main/java/cc/mrbird/febs/mall/controller/ApiMallActController.java +++ b/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)); - } - } diff --git a/src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java b/src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java new file mode 100644 index 0000000..b63e8a4 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/mall/conversion/MallActivityConversion.java @@ -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); +} diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java index 4df8cf3..3b11a9d 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallActService.java +++ b/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); diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java index 137e07b..4e54820 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallActServiceImpl.java +++ b/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 diff --git a/src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java b/src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java new file mode 100644 index 0000000..ff5bfa6 --- /dev/null +++ b/src/main/java/cc/mrbird/febs/mall/vo/ApiActivityVo.java @@ -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;//折扣粒度 +} -- Gitblit v1.9.1