|
|
@@ -61,11 +61,7 @@ import java.math.BigDecimal;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.time.LocalDate;
|
|
|
import java.time.temporal.TemporalAdjusters;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Map;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
@Service
|
|
|
@@ -433,10 +429,24 @@ public class GoodsShopServiceImpl extends ServiceImpl<GoodsShopDao, GoodsShop> i
|
|
|
Page<TbOrder> pages = new Page<>(query.getPage(), query.getLimit());
|
|
|
IPage<TbOrder> tbOrderIPage = goodsShopDao.selectStoreMessage(pages, query.getShopId(), query.getStartTime(), query.getEndTime());
|
|
|
List<TbOrder> records = tbOrderIPage.getRecords();
|
|
|
- for(int i = 0;i<records.size();i++){
|
|
|
+ List<Long> orderIdList = records.stream().map(TbOrder::getOrderId).collect(Collectors.toList());
|
|
|
+ if (orderIdList.size()>0) {
|
|
|
List<OrderGoods> orderGoodsList = orderGoodsDao.selectList(new QueryWrapper<OrderGoods>()
|
|
|
- .eq("order_id", records.get(i).getOrderId()));
|
|
|
- tbOrderIPage.getRecords().get(i).setOrderGoodsList(orderGoodsList);
|
|
|
+ .in("order_id", orderIdList));
|
|
|
+ Map<Long, ArrayList<OrderGoods>> map = orderGoodsList.stream().collect(Collectors.toMap(
|
|
|
+ OrderGoods::getOrderId,
|
|
|
+ orderGoods -> new ArrayList<>(Collections.singletonList(orderGoods)),
|
|
|
+ (oldList, newList) -> {
|
|
|
+ oldList.addAll(newList);
|
|
|
+ return oldList;
|
|
|
+ }
|
|
|
+ ));
|
|
|
+ for(int i = 0;i<records.size();i++){
|
|
|
+// List<OrderGoods> orderGoodsList = orderGoodsDao.selectList(new QueryWrapper<OrderGoods>()
|
|
|
+// .eq("order_id", records.get(i).getOrderId()));
|
|
|
+ ArrayList<OrderGoods> orderGoods = map.get(records.get(i).getOrderId());
|
|
|
+ tbOrderIPage.getRecords().get(i).setOrderGoodsList(orderGoods);
|
|
|
+ }
|
|
|
}
|
|
|
PageUtils pageUtils = new PageUtils(tbOrderIPage);
|
|
|
return Result.success().put("data", pageUtils);
|