Browse Source

自定义条件查询商品

master
xyiege 4 years ago
parent
commit
d06c3d4e1d
  1. 15
      src/main/java/cn/chjyj/szwh/controller/admin/AdminGoodsController.java
  2. 8
      src/main/java/cn/chjyj/szwh/mapper/GoodsMapper.java
  3. 8
      src/main/java/cn/chjyj/szwh/service/GoodsService.java
  4. 26
      src/main/java/cn/chjyj/szwh/service/impl/GoodsServiceImpl.java
  5. 8
      src/main/resources/mapper/szwh/GoodsMapper.xml
  6. 7
      src/test/java/cn/chjyj/szwh/mapper/GoodsMapperTest.java

15
src/main/java/cn/chjyj/szwh/controller/admin/AdminGoodsController.java

@ -70,4 +70,19 @@ public class AdminGoodsController extends BaseController {
// jsonObject.put("data",goodsDetail);
return jsonObject;
}
/**
* 筛选不同类型的商品排名
* @param type
* @return
*/
@PostMapping("/rankingList")
public JSONObject rankingList(@RequestParam(value = "type",defaultValue = "1") String type){
int itype = Integer.valueOf(type);
Map retmap = goodsService.getMapDataByTyep(itype);
jsonObject.put("data",retmap);
jsonObject.put("code",200);
jsonObject.put("msg","成功");
return jsonObject;
}
}

8
src/main/java/cn/chjyj/szwh/mapper/GoodsMapper.java

@ -42,4 +42,12 @@ public interface GoodsMapper {
* @return
*/
List<Goods> isliRankList(@Param("dtzone") String dtzone,@Param("limit") int limit);
/**
* 根据where 条件查询
* 排序集合等均可以
* @param con
* @return
*/
List<Goods> getGoodsByCondition(String con);
}

8
src/main/java/cn/chjyj/szwh/service/GoodsService.java

@ -3,6 +3,7 @@ package cn.chjyj.szwh.service;
import cn.chjyj.szwh.bean.Goods;
import java.util.List;
import java.util.Map;
/**
* 商品信息
@ -26,4 +27,11 @@ public interface GoodsService {
* @return
*/
int getApiGoods();
/**
* 根据点击类型筛选商品
* @param type
* @return
*/
Map<String,Object> getMapDataByTyep(int type);
}

26
src/main/java/cn/chjyj/szwh/service/impl/GoodsServiceImpl.java

@ -67,4 +67,30 @@ public class GoodsServiceImpl implements GoodsService {
return count;
}
@Override
public Map<String, Object> getMapDataByTyep(int type) {
Map retmap = new HashMap();
String where="goods.is_deleted=0 ";//排序
int limit=10;
// 点击量倒序
if (type==1){
where+="goods.click_count desc";
}
// 销售量
if(type==2){
where+="goods.sale_count desc";
}
//推荐,just 8
if(type==3){
limit=8;
where+="goods.recommend_sort desc";
}
return null;
}
}

8
src/main/resources/mapper/szwh/GoodsMapper.xml

@ -23,6 +23,7 @@
</foreach>
</where>
</select>
<!--查询记录列表-->
<select id="getGoodsList" parameterType="java.lang.Integer" resultType="cn.chjyj.szwh.bean.Goods">
select * from (
@ -45,6 +46,13 @@
limit #{limit};
</select>
<!-- 条件查询-->
<select id="getGoodsByCondition" resultType="cn.chjyj.szwh.bean.Goods">
select <include refid="column"/>
from <include refid="tbName"/>
where #{con};
</select>
<!--根据uid查询用户-->
<select id="getUserByUid" parameterType="java.lang.Integer" resultType="cn.chjyj.szwh.bean.Goods">
select

7
src/test/java/cn/chjyj/szwh/mapper/GoodsMapperTest.java

@ -54,4 +54,11 @@ public class GoodsMapperTest {
List<Goods> grank =goodsMapper.isliRankList(dtzone,limit);
System.out.println(grank.size());
}
@Test
public void getGoodsByCon(){
String wcon="is_deleted=0 order by click_count desc";
List glist = goodsMapper.getGoodsByCondition(wcon);
System.out.println(glist.size());
}
}
Loading…
Cancel
Save