jiangqs
2023-06-05 61b57c78d685cffe45bf923ac379f108f6dfa558
商品管理
5个文件已修改
2个文件已添加
173 ■■■■■ 已修改文件
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/constant/AppErrorConstant.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/controller/management/MgtGoodsController.java 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsEditDto.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/goods/GoodsService.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/service/impl/goods/GoodsServiceImpl.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
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 = "商品已被删除";
}
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();
    }
}
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;
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsRecommendDto.java
New file
@@ -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;
}
ruoyi-modules/ruoyi-goods/src/main/java/com/ruoyi/goods/domain/dto/MgtGoodsUpDownDto.java
New file
@@ -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;
}
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);
}
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);
    }
}