六十三.准备商品上架功能的接口和类

一.先定义商品上架接口

webshop-prodect项目SpuInfoController类中增加如下接口:

    /**
     * 商品上架功能
     *
     * @param spuId
     * @return
     */
    @PostMapping("/{spuId}/up")
    public R spuUp(@PathVariable("spuId") Long spuId) {
        spuInfoService.spuUp(spuId);
        return R.ok();
    }

SpuInfoService类中添加如下方法:

    /**
     * 商品上架
     *
     * @param spuId
     */
    void spuUp(Long spuId);

SpuInfoServiceImpl类中添加如上方法的空实现,如下:

    @Override
    public void spuUp(Long spuId) {
        
    }

二.定义上架商品在ES中的类

上架的商品需要同步到ES中,方便检索,所以定义商品在ES中的对应的类SkuEsModel,把该类加在webshop-common项目中,具体如下:
六十三.准备商品上架功能的接口和类_第1张图片

import lombok.Data;
import java.math.BigDecimal;
import java.util.List;

@Data
public class SkuEsModel {
    private Long skuId;
    private Long spuId;
    private String skuTitle;
    private BigDecimal skuPrice;
    private String skuImg;
    private Long saleCount;
    private Boolean hasStock;
    private Long hotScore;
    private Long brandId;
    private Long catalogId;
    private String brandName;
    private String brandImg;
    private String catalogName;
    private List<Attr> attrs;

    @Data
    public static class Attr {
        private Long attrId;
        private String attrName;
        private String attrValue;
    }
}

接下来就是要整合一些其他服务的接口,具体实现spuUp()方法中的逻辑了。

你可能感兴趣的:(从零开始搭建一个电商系统)