Browse Source

对商品关联订单查询到所有订单bug 进行修复

master
xyiege 3 years ago
parent
commit
447e212335
  1. 7
      src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java
  2. 19
      src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java
  3. 10
      src/main/resources/mapper/szwh/OrderMapper.xml

7
src/main/java/cn/chjyj/szwh/mapper/OrderMapper.java

@ -32,6 +32,13 @@ public interface OrderMapper {
@Param("pageSize") Integer pagesize
);
/**
* 查询商品的关联订单
* @param goodsIsliCode 商品编号
* @return
*/
List<Order> getGoodsInnerOrderList(String goodsIsliCode);
/**
* 查找某个时间前的订单
* @param sdate

19
src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java

@ -136,11 +136,6 @@ public class OrderServiceImpl implements OrderService {
Integer ichargeType = Integer.valueOf(chargeType);
somap.put("charges_type", ichargeType);
}
//商品编号
String gsid=(String) qumap.get("goods_islicode");
if(gsid!=null){
somap.put("goods_islicode",gsid);
}
// 如果订单商品查询条件存在
if(somap.size()>0){
List<OrderGoodsDetail> sogdlist = orderGoodsDetailMapper.searchOrderGoodsInKey(somap);
@ -151,10 +146,20 @@ public class OrderServiceImpl implements OrderService {
}
qumap.put("bcin", sbarr);
}
log.info("sogdlist is null");
}
// 重新组合筛选条件
List<Order> orderList = orderMapper.getOrderList(qumap, starrs, limit);
List<Order> orderList = new ArrayList<>();
//商品编号
String gsid=(String) qumap.get("goods_islicode");
if(gsid!=null){
// 查询商品关联订单
orderList = orderMapper.getGoodsInnerOrderList(gsid);
somap.put("goods_islicode",gsid);
}else {
// 重新组合筛选条件
orderList = orderMapper.getOrderList(qumap, starrs, limit);
}
// 统计符合条件的总数
int total = orderMapper.countOrderByMap(qumap);

10
src/main/resources/mapper/szwh/OrderMapper.xml

@ -52,6 +52,14 @@
where batchcode=#{batchcode} limit 1
</select>
<!-- 查询商品关联订单 -->
<select id="getGoodsInnerOrderList" resultType="cn.chjyj.szwh.bean.Order">
SELECT o.* FROM order_goods_detail og
LEFT JOIN `order` o ON o.batchcode = og.batchcode
WHERE og.goods_islicode=#{goodsIsliCode}
LIMIT 0,10
</select>
<!-- 统计订单总数 -->
<select id="countAllOrder" resultType="java.lang.Integer">
select count(*) from <include refid="tbName"/>
@ -69,7 +77,7 @@
<foreach collection="map" item="v" index="k" separator="and">
<if test="v != null and v != '' and k!='id' and k!='charges_type'
and k!='buyin' and k!='bcin' and k!='name' and k!='createtime' and k!='ordstatus'
and k!='goods_name' and k!='goods_entrust' and k!='paymenttime' and k!='goods_islicode'">
and k!='goods_name' and k!='goods_entrust' and k!='paymenttime' ">
${k} = #{v}
</if>
<if test="k=='id'">

Loading…
Cancel
Save