电商商城之商品推荐

第一步:创建商品表和商品图片表

第二步:mapper

    <select id="getSixNewItemsLazy" resultMap="myNewItemsVO" parameterType="Map">
      select
        f.id as rootCatId,
        f.name as rootCatName,
        f.slogan as slogan,
        f.cat_image as catImage,
        f.bg_color as bgColor,
        i.id as itemId,
        i.item_name as itemName,
        ii.url as itemUrl,
        i.created_time as createdTime
      from category f
      left join  items i on f.id=i.root_cat_id
      left join  items_img ii on i.id=ii.item_id
      where
        f.type=1
      and
        i.root_cat_id=#{paramsMap.rootCatId}
      and
        ii.is_main=1
      order by i.created_time
      DESC
      LIMIT 0,6
    </select>

第三步:service层

/**
     * 查询首页每个一级分类下的6条最新商品数据
     * @param rootCatId
     * @return
     */
    public List<NewItemsVO> getSixNewItemsLazy(Integer rootCatId);

第四步:service实现层

    @Transactional(propagation = Propagation.SUPPORTS)
    @Override
    public List getSixNewItemsLazy(Integer rootCatId) {

        Map<String,Object> map=new HashMap<>();
        map.put("rootCatId",rootCatId);
        return categoryMapperCustom.getSixNewItemsLazy(map);
    }

第五步:controller层

   @ApiOperation(value = "查询每个一级分类下的最新6条商品数据",notes="查询每个一级分类下的最新6条商品数据",httpMethod="GET")
    @GetMapping("/sixNewItems/{rootCatId}") //表示取得路径参数
    public JSONResult sixNewItems(
            @ApiParam(name="rootCatId",value="一级分类id",required = true)
            @PathVariable Integer rootCatId){
        if(rootCatId==null){
            return JSONResult.errorMsg("分类不存在");
        }
        List<NewItemsVO> list=categoryService.getSixNewItemsLazy(rootCatId);
        return JSONResult.ok(list);
    }

备注:VO类

package com.ljl.pojo.vo;
import java.util.List;

/**
 * 最新商品VO
 */
public class NewItemsVO {

    private Integer rootCatId;
    private String  rootCatName;
    private String  slogan;
    private String  catImage;
    private String  bgColor;
    private List<SimpleItemVO> SimpleItemList;

    public Integer getRootCatId() {
        return rootCatId;
    }

    public void setRootCatId(Integer rootCatId) {
        this.rootCatId = rootCatId;
    }

    public String getRootCatName() {
        return rootCatName;
    }

    public void setRootCatName(String rootCatName) {
        this.rootCatName = rootCatName;
    }

    public String getSlogan() {
        return slogan;
    }

    public void setSlogan(String slogan) {
        this.slogan = slogan;
    }

    public String getCatImage() {
        return catImage;
    }

    public void setCatImage(String catImage) {
        this.catImage = catImage;
    }

    public String getBgColor() {
        return bgColor;
    }

    public void setBgColor(String bgColor) {
        this.bgColor = bgColor;
    }

    public List<SimpleItemVO> getSimpleItemList() {
        return SimpleItemList;
    }

    public void setSimpleItemList(List<SimpleItemVO> simpleItemList) {
        SimpleItemList = simpleItemList;
    }
}

 

package com.ljl.pojo.vo;
import java.util.List;

/**
 * 6个最新商品的简单数据类型
 */
public class SimpleItemVO {

    private Integer itemId;
    private String  itemName;
    private String  itemUrl;

    public Integer getItemId() {
        return itemId;
    }

    public void setItemId(Integer itemId) {
        this.itemId = itemId;
    }

    public String getItemName() {
        return itemName;
    }

    public void setItemName(String itemName) {
        this.itemName = itemName;
    }

    public String getItemUrl() {
        return itemUrl;
    }

    public void setItemUrl(String itemUrl) {
        this.itemUrl = itemUrl;
    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值