第一步:创建商品表和商品图片表
第二步: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;
}
}