Browse Source

修正商品管理列表超时

master
xyiege 3 years ago
parent
commit
4bc35c7409
  1. 11
      src/main/java/cn/chjyj/szwh/mapper/GoodsMapper.java
  2. 2
      src/main/java/cn/chjyj/szwh/service/impl/GoodsServiceImpl.java
  3. 41
      src/main/resources/mapper/szwh/GoodsMapper.xml
  4. 2
      src/test/java/cn/chjyj/szwh/mapper/GoodsMapperTest.java

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

@ -94,6 +94,17 @@ public interface GoodsMapper {
@Param("startrs")int start,
@Param("limit") int limit);
/**
* 简版获取列表信息
* @param gmap
* @param start
* @param limit
* @return
*/
List<GoodsListVo> getGoodsSimpleVo(@Param("map")Map gmap,
@Param("startrs")int start,
@Param("limit") int limit);
/**
* 筛选产品列表
* @param listmap

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

@ -260,7 +260,7 @@ public class GoodsServiceImpl implements GoodsService {
public Map getAdminGoodsByMap(Map map, int page, int limit) {
int startrs = page>1?(page-1)*limit:0;
int end = page * limit;
List<Goods> goodsList = goodsMapper.getGoodsListByMap(map,startrs,limit);
List<GoodsListVo> goodsList = goodsMapper.getGoodsSimpleVo(map,startrs,limit);
//
Map rtmap = new HashMap();

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

@ -13,7 +13,7 @@
contract_status as contractStatus,contractual_start_time as contractualStartTime, contractualtime_end_time as contractualtimeEndTime
</sql>
<!-- simple columns-->
<sql id="scols">id,username,createtime,goods_status as goodsStatus</sql>
<sql id="scols">id,username,createtime</sql>
<sql id="tbName">goods</sql>
<!-- 统计条件总数 -->
@ -38,7 +38,7 @@
<!--根据map组装条件进行查询-->
<select id="getGoodsListByMap" parameterType="java.util.Map" resultType="cn.chjyj.szwh.bean.Goods">
SELECT <include refid="scols"/>
SELECT <include refid="column"/>
FROM <include refid="tbName"/>
<where>
<foreach collection="map" item="v" index="k" separator="and">
@ -64,6 +64,43 @@
limit 1;
</select>
<!-- 简版筛选商品列表 -->
<select id="getGoodsSimpleVo" parameterType="java.util.Map" resultType="cn.chjyj.szwh.vo.GoodsListVo">
SELECT g.id,g.username,gd.goods_name,gd.price,gd.createtime,
gd.updatetime,gd.goods_islicode,gd.goods_entrust,gd.goods_type,gd.charges_type
FROM goods as g
INNER JOIN goods_detail as gd
ON g.goods_detail_id=gd.id
<where>
<if test="map!=null">
<foreach collection="map" item="v" index="k" separator="and">
<if test="v != null and v != '' and k!='orderway' and k!='id'
and k!='gd.goods_name' and k!='g.entrust_name' and k!='g.gisli'
and k!='createtime' and k!='ishow'">
${k} = #{v}
</if>
<if test="k=='ishow'">
g.is_recommend=#{v}
</if>
<if test="k=='gd.goods_name'">
gd.goods_name like concat('%',#{v},'%')
OR g.goods_islicode like concat('%',#{v},'%')
</if>
<if test="k=='g.gisli'">
g.goods_islicode=#{v}
</if>
<if test="k=='g.entrust_name'">
g.username like concat('%',#{v},'%')
</if>
<if test="k=='createtime'">
${v}
</if>
</foreach>
</if>
</where>
limit #{startrs},#{limit}
</select>
<!-- 筛选商品列表 -->
<select id="getGoodsVoList" parameterType="java.util.Map" resultType="cn.chjyj.szwh.vo.GoodsListVo">
SELECT g.id,g.username,g.recommend_sort,g.sale_count,g.click_count,g.is_recommend,gd.goods_name,gd.goods_image,gd.price,gd.createtime,

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

@ -74,7 +74,7 @@ public class GoodsMapperTest {
xmap.put("islicode","010007-00000000005300000101-6");
xmap.put("id",0);
List<Goods> goodsList= goodsMapper.getGoodsListByMap(xmap,10);
List<Goods> goodsList= goodsMapper.getGoodsListByMap(xmap,0,10);
for(Goods g:goodsList){
System.out.println(g.getUsername());
}

Loading…
Cancel
Save