| @@ -2160,8 +2160,6 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||||
| List<Map<String,Object>> grantItemObjectList = new ArrayList<>(); | List<Map<String,Object>> grantItemObjectList = new ArrayList<>(); | ||||
| //单笔订单 | |||||
| Map<Long, List<OfflineActivityGrantItemVo>> grantItemMap; | |||||
| WxOfflineActivityGrantSettlement grantSettlement = new WxOfflineActivityGrantSettlement(); | WxOfflineActivityGrantSettlement grantSettlement = new WxOfflineActivityGrantSettlement(); | ||||
| grantSettlement.updateTenantInfo(activityItem); | grantSettlement.updateTenantInfo(activityItem); | ||||
| grantSettlement.setActivityItemId(activityItem.getId()); | grantSettlement.setActivityItemId(activityItem.getId()); | ||||
| @@ -2172,10 +2170,9 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||||
| } | } | ||||
| List<OfflineActivityGrantItemVo> grantItemList = wxOfflineActivityGrantSettlementMapper.findAwardItemGrantList(grantSettlement); | List<OfflineActivityGrantItemVo> grantItemList = wxOfflineActivityGrantSettlementMapper.findAwardItemGrantList(grantSettlement); | ||||
| if(grantItemList != null && !grantItemList.isEmpty()){ | if(grantItemList != null && !grantItemList.isEmpty()){ | ||||
| grantItemMap = grantItemList.stream().collect(groupingBy(OfflineActivityGrantItemVo::getRecordId)); | |||||
| //订单表头 | //订单表头 | ||||
| Map<Long, Long> grantItemSizeMap = grantItemList.stream().collect(groupingBy(OfflineActivityGrantItemVo::getRecordId, counting())); | |||||
| Map<String, Long> grantItemSizeMap = grantItemList.stream().collect(groupingBy(e -> String.valueOf(e.getGrantId())+String.valueOf(e.getRecordId()), counting())); | |||||
| Long maxGrantItemSize = Collections.max(grantItemSizeMap.values()); | Long maxGrantItemSize = Collections.max(grantItemSizeMap.values()); | ||||
| for (int i = 0; i < maxGrantItemSize.intValue(); i++) { | for (int i = 0; i < maxGrantItemSize.intValue(); i++) { | ||||
| ExcelExportEntity entity_1 = new ExcelExportEntity("奖品名称","awardName_"+i,20); | ExcelExportEntity entity_1 = new ExcelExportEntity("奖品名称","awardName_"+i,20); | ||||
| @@ -2196,7 +2193,7 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||||
| exportHead.add(entity_7); | exportHead.add(entity_7); | ||||
| } | } | ||||
| List<Long> recordIds = new ArrayList<>(grantItemMap.keySet()); | |||||
| List<Long> recordIds = grantItemList.stream().map(OfflineActivityGrantItemVo::getRecordId).distinct().collect(toList()); | |||||
| List<Long> grantIds = grantItemList.stream().map(OfflineActivityGrantItemVo::getGrantId).distinct().collect(toList()); | List<Long> grantIds = grantItemList.stream().map(OfflineActivityGrantItemVo::getGrantId).distinct().collect(toList()); | ||||
| List<WxOfflineActivityRecord> recordList = wxOfflineActivityRecordService.selectListByIds(recordIds,activityItem); | List<WxOfflineActivityRecord> recordList = wxOfflineActivityRecordService.selectListByIds(recordIds,activityItem); | ||||
| @@ -2205,27 +2202,50 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity | |||||
| List<WxOfflineActivityGrantAward> grantList = this.selectListByIds(grantIds,activityItem); | List<WxOfflineActivityGrantAward> grantList = this.selectListByIds(grantIds,activityItem); | ||||
| Map<Long, WxOfflineActivityGrantAward> grantMap = grantList.stream().collect(toMap(WxOfflineActivityGrantAward::getId, Function.identity())); | Map<Long, WxOfflineActivityGrantAward> grantMap = grantList.stream().collect(toMap(WxOfflineActivityGrantAward::getId, Function.identity())); | ||||
| recordIds.forEach(recordId -> { | |||||
| List<OfflineActivityGrantItemVo> recordgrantItemList = grantItemMap.get(recordId); | |||||
| Long grantId = recordgrantItemList.get(0).getGrantId(); | |||||
| WxOfflineActivityRecord record = recordMap.get(recordId); | |||||
| WxOfflineActivityGrantAward grant = grantMap.get(grantId); | |||||
| Map<String,Object> grantItemObject= getGrantItemExportObject(record,grant); | |||||
| for (int i=0;i<recordgrantItemList.size();i++){ | |||||
| OfflineActivityGrantItemVo grantItem = recordgrantItemList.get(i); | |||||
| grantItemObject.put("awardName_"+i,grantItem.getAwardName()); | |||||
| grantItemObject.put("awardCount_"+i,grantItem.getAwardCount()); | |||||
| grantItemObject.put("awardPrice_"+i,grantItem.getAwardPrice()); | |||||
| grantItemObject.put("realGrantPrice_"+i,grantItem.getRealGrantPrice()); | |||||
| grantItemObject.put("mallShareRate_"+i,grantItem.getMallShareRate()); | |||||
| grantItemObject.put("merchantShareRate_"+i,grantItem.getMerchantShareRate()); | |||||
| grantItemObject.put("realMallSharePrice_"+i,grantItem.getRealMallSharePrice()); | |||||
| grantItemObject.put("realMerchantSharePrice_"+i,grantItem.getRealMerchantSharePrice()); | |||||
| } | |||||
| grantItemObjectList.add(grantItemObject); | |||||
| Map<Long, List<OfflineActivityGrantItemVo>> grantItemMap = grantItemList.stream().collect(groupingBy(OfflineActivityGrantItemVo::getGrantId)); | |||||
| grantItemMap.keySet().forEach(grantId -> { | |||||
| List<OfflineActivityGrantItemVo> offlineActivityGrantItemVos = grantItemMap.get(grantId); | |||||
| Map<Long, List<OfflineActivityGrantItemVo>> recordGrantItemMap = offlineActivityGrantItemVos.stream().collect(groupingBy(OfflineActivityGrantItemVo::getRecordId)); | |||||
| recordGrantItemMap.keySet().forEach(recordId -> { | |||||
| List<OfflineActivityGrantItemVo> recordGrantItemList = recordGrantItemMap.get(recordId); | |||||
| WxOfflineActivityRecord record = recordMap.get(recordId); | |||||
| WxOfflineActivityGrantAward grant = grantMap.get(grantId); | |||||
| Map<String,Object> grantItemObject= getGrantItemExportObject(record,grant); | |||||
| for (int i=0;i<recordGrantItemList.size();i++){ | |||||
| OfflineActivityGrantItemVo grantItem = recordGrantItemList.get(i); | |||||
| grantItemObject.put("awardName_"+i,grantItem.getAwardName()); | |||||
| grantItemObject.put("awardCount_"+i,grantItem.getAwardCount()); | |||||
| grantItemObject.put("awardPrice_"+i,grantItem.getAwardPrice()); | |||||
| grantItemObject.put("realGrantPrice_"+i,grantItem.getRealGrantPrice()); | |||||
| grantItemObject.put("mallShareRate_"+i,grantItem.getMallShareRate()); | |||||
| grantItemObject.put("merchantShareRate_"+i,grantItem.getMerchantShareRate()); | |||||
| grantItemObject.put("realMallSharePrice_"+i,grantItem.getRealMallSharePrice()); | |||||
| grantItemObject.put("realMerchantSharePrice_"+i,grantItem.getRealMerchantSharePrice()); | |||||
| } | |||||
| grantItemObjectList.add(grantItemObject); | |||||
| }); | |||||
| }); | }); | ||||
| // recordIds.forEach(recordId -> { | |||||
| // List<OfflineActivityGrantItemVo> recordgrantItemList = grantItemMap.get(recordId); | |||||
| // Long grantId = recordgrantItemList.get(0).getGrantId(); | |||||
| // WxOfflineActivityRecord record = recordMap.get(recordId); | |||||
| // WxOfflineActivityGrantAward grant = grantMap.get(grantId); | |||||
| // Map<String,Object> grantItemObject= getGrantItemExportObject(record,grant); | |||||
| // | |||||
| // for (int i=0;i<recordgrantItemList.size();i++){ | |||||
| // OfflineActivityGrantItemVo grantItem = recordgrantItemList.get(i); | |||||
| // grantItemObject.put("awardName_"+i,grantItem.getAwardName()); | |||||
| // grantItemObject.put("awardCount_"+i,grantItem.getAwardCount()); | |||||
| // grantItemObject.put("awardPrice_"+i,grantItem.getAwardPrice()); | |||||
| // grantItemObject.put("realGrantPrice_"+i,grantItem.getRealGrantPrice()); | |||||
| // grantItemObject.put("mallShareRate_"+i,grantItem.getMallShareRate()); | |||||
| // grantItemObject.put("merchantShareRate_"+i,grantItem.getMerchantShareRate()); | |||||
| // grantItemObject.put("realMallSharePrice_"+i,grantItem.getRealMallSharePrice()); | |||||
| // grantItemObject.put("realMerchantSharePrice_"+i,grantItem.getRealMerchantSharePrice()); | |||||
| // } | |||||
| // grantItemObjectList.add(grantItemObject); | |||||
| // }); | |||||
| } | } | ||||
| excelService.exportExcel(exportHead, grantItemObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response); | excelService.exportExcel(exportHead, grantItemObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response); | ||||