在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中的对应的类SkuEsModel,把该类加在webshop-common项目中,具体如下:
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()方法中的逻辑了。