From 61b57c78d685cffe45bf923ac379f108f6dfa558 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期一, 05 六月 2023 17:44:15 +0800 Subject: [PATCH] 商品管理 --- ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java | 3 + ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java | 4 - ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java | 24 ++++++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java | 27 +++++++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java | 24 ++++++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java | 29 +++++++++ ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java | 62 ++++++++++++++++++++ 7 files changed, 169 insertions(+), 4 deletions(-) diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java index e9adbc2..f1e0aaf 100644 --- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java +++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java @@ -128,4 +128,7 @@ String NO_POSITION = "商品信息需要获取定位"; + String GOODS_DELETED = "商品已被删除"; + + } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java index e987015..4817c0e 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java @@ -5,10 +5,13 @@ import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.goods.domain.dto.MgtGoodsEditDto; import com.ruoyi.goods.domain.dto.MgtGoodsPageDto; +import com.ruoyi.goods.domain.dto.MgtGoodsRecommendDto; +import com.ruoyi.goods.domain.dto.MgtGoodsUpDownDto; import com.ruoyi.goods.domain.vo.MgtGoodsPageVo; import com.ruoyi.goods.domain.vo.MgtGoodsTotalVo; import com.ruoyi.goods.service.goods.GoodsService; import com.ruoyi.system.api.domain.dto.MgtBaseDto; +import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.web.bind.annotation.RequestBody; @@ -63,4 +66,30 @@ return R.ok(); } + @RequestMapping(value = "/upDownMgtGoods", method = RequestMethod.POST) + @ApiOperation(value = "平台上下架商品") + public R upDownMgtGoods(@RequestBody MgtGoodsUpDownDto mgtGoodsUpDownDto) { + Long userId = SecurityUtils.getUserId(); + mgtGoodsUpDownDto.setUserId(userId); + goodsService.upDownMgtGoods(mgtGoodsUpDownDto); + return R.ok(); + } + + @RequestMapping(value = "/recommendMgtGoods", method = RequestMethod.POST) + @ApiOperation(value = "平台推荐商品") + public R recommendMgtGoods(@RequestBody MgtGoodsRecommendDto mgtGoodsRecommendDto) { + Long userId = SecurityUtils.getUserId(); + mgtGoodsRecommendDto.setUserId(userId); + goodsService.recommendMgtGoods(mgtGoodsRecommendDto); + return R.ok(); + } + + @RequestMapping(value = "/deleteMgtGoods", method = RequestMethod.POST) + @ApiOperation(value = "平台推荐商品") + public R deleteMgtGoods(@RequestBody MgtBaseGetDto mgtBaseGetDto) { + Long userId = SecurityUtils.getUserId(); + mgtBaseGetDto.setUserId(userId); + goodsService.deleteMgtGoods(mgtBaseGetDto.getId(),userId); + return R.ok(); + } } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java index e654c08..ae3bc37 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java @@ -1,13 +1,10 @@ package com.ruoyi.goods.domain.dto; -import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.ruoyi.system.api.domain.dto.MgtBaseDto; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; -import java.util.Date; /** * @author jqs34 @@ -18,7 +15,6 @@ */ @Data public class MgtGoodsEditDto extends MgtBaseDto { - @ApiModelProperty(value = "商品id 新增时不传") private String goodsId; diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java new file mode 100644 index 0000000..81b4a69 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java @@ -0,0 +1,24 @@ +package com.ruoyi.goods.domain.dto; + +import com.ruoyi.system.api.domain.dto.MgtBaseDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName MgtGoodsUpDownDto + * @Description TODO + * @Author jqs + * @Date 2023/6/5 17:20 + * @Version 1.0 + */ +@Data +public class MgtGoodsRecommendDto extends MgtBaseDto { + + @ApiModelProperty(value = "商品id") + private String goodsId; + + @ApiModelProperty(value = "是否推荐0否1是") + private Integer recommendFlag; + + +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java new file mode 100644 index 0000000..0d6b5d4 --- /dev/null +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java @@ -0,0 +1,24 @@ +package com.ruoyi.goods.domain.dto; + +import com.ruoyi.system.api.domain.dto.MgtBaseDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @ClassName MgtGoodsUpDownDto + * @Description TODO + * @Author jqs + * @Date 2023/6/5 17:20 + * @Version 1.0 + */ +@Data +public class MgtGoodsUpDownDto extends MgtBaseDto { + + @ApiModelProperty(value = "商品id") + private String goodsId; + + @ApiModelProperty(value = "商品状态1上架2下架") + private Integer goodsStatus; + + +} diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java index 484bcf2..5f7c559 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java @@ -87,4 +87,31 @@ * @param mgtGoodsEditDto */ void editMgtGoods(MgtGoodsEditDto mgtGoodsEditDto); + + /** + * @description 上下架商品 + * @author jqs + * @date 2023/6/5 17:32 + * @param mgtGoodsUpDownDto + * @return void + */ + void upDownMgtGoods(MgtGoodsUpDownDto mgtGoodsUpDownDto); + + /** + * @description 推荐商品 + * @author jqs + * @date 2023/6/5 17:32 + * @param mgtGoodsRecommendDto + * @return void + */ + void recommendMgtGoods(MgtGoodsRecommendDto mgtGoodsRecommendDto); + + /** + * @description 删除商品 + * @author jqs + * @date 2023/6/5 17:36 + * @param goodsId + * @return void + */ + void deleteMgtGoods(String goodsId,Long userId); } diff --git a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java index 7604ed6..22372e0 100644 --- a/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java +++ b/ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java @@ -132,6 +132,9 @@ public AppGoodsInfoVo getGoodsInfo(AppGoodsInfoGetDto appGoodsInfoGetDto){ AppGoodsInfoVo appGoodsInfoVo = new AppGoodsInfoVo(); Goods goods = this.getById(appGoodsInfoGetDto.getId()); + if(goods.getGoodsStatus()==-1){ + throw new ServiceException(AppErrorConstant.GOODS_DELETED); + } BeanUtils.copyProperties(goods, appGoodsInfoVo); //商户定制价格 ShopGoods shopGoods = shopGoodsService.getByShopIdAndGoodsId(appGoodsInfoGetDto.getShopId(),goods.getGoodsId()); @@ -277,6 +280,9 @@ // 判断是否有商品ID 没有则新建 if (goodsId != null) { goods = this.getById(goodsId); + if(goods.getGoodsStatus()==-1){ + throw new ServiceException(AppErrorConstant.GOODS_DELETED); + } } else { goods = new Goods(); goodsId = IdUtils.simpleUUID(); @@ -348,4 +354,60 @@ goodsFileService.saveBatch(files); } } + + /** + * @description: 上下架 + * @author jqs + * @date 2023/6/5 17:21 + * @version 1.0 + */ + @Override + public void upDownMgtGoods(MgtGoodsUpDownDto mgtGoodsUpDownDto){ + Goods goods = this.getById(mgtGoodsUpDownDto.getGoodsId()); + if(goods.getGoodsStatus()==-1){ + throw new ServiceException(AppErrorConstant.GOODS_DELETED); + } + goods.setGoodsStatus(mgtGoodsUpDownDto.getGoodsStatus()); + goods.setUpdateTime(DateUtils.getNowDate()); + goods.setUpdateUserId(mgtGoodsUpDownDto.getUserId()); + this.saveOrUpdate(goods); + } + + /** + * @description 推荐商品 + * @author jqs + * @date 2023/6/5 17:32 + * @param mgtGoodsRecommendDto + * @return void + */ + @Override + public void recommendMgtGoods(MgtGoodsRecommendDto mgtGoodsRecommendDto){ + Goods goods = this.getById(mgtGoodsRecommendDto.getGoodsId()); + if(goods.getGoodsStatus()==-1){ + throw new ServiceException(AppErrorConstant.GOODS_DELETED); + } + goods.setRecommendFlag(mgtGoodsRecommendDto.getRecommendFlag()); + goods.setUpdateTime(DateUtils.getNowDate()); + goods.setUpdateUserId(mgtGoodsRecommendDto.getUserId()); + this.saveOrUpdate(goods); + } + + /** + * @description 删除商品 + * @author jqs + * @date 2023/6/5 17:36 + * @param goodsId + * @return void + */ + @Override + public void deleteMgtGoods(String goodsId,Long userId){ + Goods goods = this.getById(goodsId); + goods.setDelFlag(1); + goods.setGoodsStatus(-1); + goods.setUpdateTime(DateUtils.getNowDate()); + goods.setUpdateUserId(userId); + this.saveOrUpdate(goods); + } + + } -- Gitblit v1.7.1