版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/a656678879/article/details/82979455
java基础知识总结一
MultiValueMap<String, String> stringMultiValueMap = new LinkedMultiValueMap<>();
// 添加Key为name的
stringMultiValueMap.add("name", "yolanda");
stringMultiValueMap.add("name", "yanzhenjie");
private List<ExportAllOrder> constructDetailData(List<ExportAllOrder> listOrder) {
final Map<Long, OrderAllGoodsSpecVo> integerOrderAllGoodsSpecVoMap = orderMapper.listAllBossOrderGoodsSpec();
List<ExportAllOrder> groupList = new ArrayList<ExportAllOrder>();
//主要看下面这一行,设置LinkedHashMap(有序的map),不在使用默认的HashMap(无序)
listOrder.stream().collect(Collectors.groupingBy(ExportAllOrder::getOrderCode, LinkedHashMap::new, Collectors.toList())).forEach((orderCode, orderListByorderCode) -> {
final int[] i = {0};
orderListByorderCode.stream().forEach(o -> {
//保留父订单的数据,清空子订单数据
if (i[0] != 0) {
o.setOrderCode("");
o.setCustomerNickName("");
o.setShippingPerson("");
o.setShippingPhone("");
o.setShippingMobile("");
o.setShippingProvince("");
o.setShippingCity("");
o.setShippingCounty("");
o.setShippingAddress("");
o.setShippingPostcode("");
o.setExpressPrice(null);
o.setOrderPrice(null);
o.setCustomerRemark("");
o.setRemark("");
o.setOrderLinePay(null);
o.setInfoRealname("");
o.setWxNo("");
o.setOrderStatus("");
o.setOrderLinePayStr("");
o.setIsExamine("");
o.setAgainBuy("");
o.setBackOrderStatus("");
}
if (integerOrderAllGoodsSpecVoMap.containsKey(o.getGoodsInfoId())) {
o.setSpecInfo(integerOrderAllGoodsSpecVoMap.get(o.getGoodsInfoId()).getSpecInfo());
}
i[0]++;
groupList.add(o);
});
});
return groupList;
}
SELECT
goods_info.goods_info_id,
GROUP_CONCAT(goods_spec.spec_name,":",goods_info_rele_spec_detail.spec_value_remark) specInfo
FROM
np_goods_info goods_info
INNER JOIN np_goods goods ON goods_info.goods_id = goods.goods_id
INNER JOIN np_goods_info_rele_spec_detail goods_info_rele_spec_detail ON goods_info.goods_info_id = goods_info_rele_spec_detail.goods_info_id
INNER JOIN np_goods_spec goods_spec ON goods_info_rele_spec_detail.spec_id = goods_spec.spec_id
GROUP BY goods_info.goods_info_id;
- 先查询数据在处理数据,不要查询数据之后,数据不够时在处理数据中(循环中)再次查询