Browse Source

修正取金额的bug3

master
xyiege 4 years ago
parent
commit
86480b8a27
  1. 6
      src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java
  2. 12
      src/main/java/cn/chjyj/szwh/service/impl/OrderServiceImpl.java
  3. 10
      src/main/resources/mapper/szwh/OrderGoodsDetailMapper.xml
  4. 10
      src/test/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapperTest.java

6
src/main/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapper.java

@ -7,6 +7,7 @@ import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
import java.util.List;
import java.util.Map;
/**
* 交易快照订单产品
@ -81,9 +82,8 @@ public interface OrderGoodsDetailMapper {
/**
* search order goods detail in something field
* @param key
* @param soval
* @param klist
* @return
*/
List<OrderGoodsDetail> searchOrderGoodsInKey(@Param("key") String key,@Param("soval") String soval);
List<OrderGoodsDetail> searchOrderGoodsInKey(@Param("somap") Map<String,String> somap);
}

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

@ -89,10 +89,15 @@ public class OrderServiceImpl implements OrderService {
qumap.put("bcin",buyinArr);
}
//组织搜索条件
Map somap = new HashMap();
// 如果是商品名称
String gname = (String)qumap.get("goods_name");
if(StringUtils.isNotBlank(gname)){
List<OrderGoodsDetail> sogdlist = orderGoodsDetailMapper.searchOrderGoodsInKey("goods_name",gname);
somap.put("goods_name",gname); //按名称搜索
somap.put("goods_islicode",gname); //按编号搜索
List<OrderGoodsDetail> sogdlist = orderGoodsDetailMapper.searchOrderGoodsInKey(somap);
if (sogdlist!=null) {
List sbarr = new ArrayList();
for(OrderGoodsDetail ogd:sogdlist){
@ -105,7 +110,8 @@ public class OrderServiceImpl implements OrderService {
// 交易类型
String gtype =(String)qumap.get("goods_entrust");
if(gtype !=null){
List<OrderGoodsDetail> tsolist = orderGoodsDetailMapper.searchOrderGoodsInKey("goods_entrust",gtype);
somap.put("goods_entrust",gtype);
List<OrderGoodsDetail> tsolist = orderGoodsDetailMapper.searchOrderGoodsInKey(somap);
if(tsolist!=null){
List tsarr=new ArrayList();
for(OrderGoodsDetail ogd:tsolist){
@ -232,7 +238,7 @@ public class OrderServiceImpl implements OrderService {
//来源集合
List<OrderGoodsSource> orgslist = orderGoodsSourceMapper.getOrderGoodsSourceList(dv.getSource_id());
//存储整理后的订单商品
List gatherList = new ArrayList();
Set gatherList = new HashSet();
List oneSource = new ArrayList();
Map info = new HashMap();
// 罗列出goodssource

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

@ -95,10 +95,16 @@
</select>
<!-- search in few somthing fields -->
<select id="searchOrderGoodsInKey" parameterType="java.lang.String" resultType="cn.chjyj.szwh.bean.OrderGoodsDetail">
<select id="searchOrderGoodsInKey" parameterType="java.util.Map" resultType="cn.chjyj.szwh.bean.OrderGoodsDetail">
select <include refid="column"/>
from <include refid="tbName"/>
where ${key} like concat ('%',#{soval},'%')
<where>
<foreach collection="somap" item="v" index="k" separator="OR">
${k} like concat("%",#{v},"%")
</foreach>
</where>
</select>
<!--新增用户-->

10
src/test/java/cn/chjyj/szwh/mapper/OrderGoodsDetailMapperTest.java

@ -11,7 +11,9 @@ import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static org.junit.Assert.*;
@ -65,9 +67,11 @@ public class OrderGoodsDetailMapperTest {
@Test
public void searchOrderGoodsInKey(){
String key="goods_name";
String soval="709394";
List<OrderGoodsDetail> oglist = orderGoodsDetailMapper.searchOrderGoodsInKey(key,soval);
Map somap = new HashMap<>();
somap.put("goods_name","709394");
somap.put("goods_islicode","709394");
List<OrderGoodsDetail> oglist = orderGoodsDetailMapper.searchOrderGoodsInKey(somap);
System.out.println(oglist.size());
}
}
Loading…
Cancel
Save