From e57938be15b84bac2882f750dda994eb1d5eb868 Mon Sep 17 00:00:00 2001 From: winter Date: Mon, 29 Apr 2024 16:49:43 +0800 Subject: [PATCH] fix --- .../domain/po/WxRaffleActivityRecord.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxRaffleActivityRecord.java b/mallinkService/src/main/java/com/iformall/domain/po/WxRaffleActivityRecord.java index 5cf4bb598..7dd0f0f0c 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxRaffleActivityRecord.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxRaffleActivityRecord.java @@ -85,7 +85,7 @@ public class WxRaffleActivityRecord extends TenantEntity { @TableField(exist = false) private List recordItemList; @TableField(exist = false) - private List recordItemIdList; + private Map recordItemIdCountMap; public String generateItemDetaiJson() { if (null != recordItemList && recordItemList.size() > 0 ) { @@ -103,10 +103,17 @@ public class WxRaffleActivityRecord extends TenantEntity { public void generateItemIds() { if (null != recordItemList && recordItemList.size() > 0 ) { - recordItemIdList = new ArrayList(); + recordItemIdCountMap = new HashMap(); for (int i = 0 ; i < recordItemList.size() ; i++) { WxRaffleActivityRecordItem ri = recordItemList.get(i); - recordItemIdList.add(ri.getItemId()); + String key = this.id+"&"+ri.getItemId(); + if (recordItemIdCountMap.containsKey(key)) { + Integer c = recordItemIdCountMap.get(key); + c = c + 1; + recordItemIdCountMap.put(key, c); + }else { + recordItemIdCountMap.put(key, 1); + } } } } @@ -152,8 +159,9 @@ public class WxRaffleActivityRecord extends TenantEntity { for (Iterator it = itemMap.keySet().iterator();it.hasNext();) { Long itemId = it.next(); WxRaffleActivityItem item = itemMap.get(itemId); - if (null != recordItemIdList && recordItemIdList.contains(itemId)) { - excelObject.put(String.valueOf(item.getId()), 1); + String key = this.id+"&"+item.getId(); + if (null != recordItemIdCountMap && recordItemIdCountMap.containsKey(key)) { + excelObject.put(String.valueOf(item.getId()), recordItemIdCountMap.get(key)); }else { excelObject.put(String.valueOf(item.getId()), 0); }