diff --git a/mallinkService/src/main/java/com/iformall/domain/vo/OfflineActivityGrantRecord.java b/mallinkService/src/main/java/com/iformall/domain/vo/OfflineActivityGrantRecord.java index d31b06996..a44facc43 100644 --- a/mallinkService/src/main/java/com/iformall/domain/vo/OfflineActivityGrantRecord.java +++ b/mallinkService/src/main/java/com/iformall/domain/vo/OfflineActivityGrantRecord.java @@ -4,6 +4,7 @@ import lombok.Data; import java.io.Serializable; import java.math.BigDecimal; +import java.util.Date; @Data public class OfflineActivityGrantRecord implements Serializable { @@ -13,5 +14,16 @@ public class OfflineActivityGrantRecord implements Serializable { private Long grantId; private Long recordId; private String orderNo; + private BigDecimal orderMoney; + private String cusName; + private String realCusName; + private String cusPhone; + private String cusAddress; + private String cusCard; + private Long createBy; private Long merchantId; + private Integer businessId; + private Date createDate; + private Long auditBy; + private Date auditTime; } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java index 3c706eb19..484c6d770 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxOfflineActivityGrantAwardServiceImpl.java @@ -53,6 +53,9 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity @Autowired private WxOfflineActivityGrantItemMapper wxOfflineActivityGrantItemMapper; + @Autowired + WxOfflineActivityGrantSettlementMapper wxOfflineActivityGrantSettlementMapper; + @Autowired private WxOfflineActivityGrantCashBackMapper wxOfflineActivityGrantCashBackMapper; @@ -89,6 +92,8 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity @Autowired WxMerchantService wxMerchantService; @Autowired + WxBusinessService wxBusinessService; + @Autowired WxShopService wxShopService; @Autowired MallUserInfoService mallUserInfoService; @@ -885,6 +890,8 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity merchantQ.updateTenantInfo(wxOfflineActivity); Map merchantMap = wxMerchantService.getIdAndNamesMap(merchantQ); + Map bussinessMap = wxBusinessService.findAllMap(wxOfflineActivity); + MallUserInfo userInfoQ = new MallUserInfo(); userInfoQ.updateTenantInfo(wxOfflineActivity); Map userMap = mallUserInfoService.getUserMap(userInfoQ); @@ -893,71 +900,230 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity grantItemQ.updateTenantInfo(wxOfflineActivity); grantItemQ.setActivityId(wxOfflineActivity.getId()); grantItemQ.setStatus(EnumYesOrNo.YES.getCode()); - List grantItem = wxOfflineActivityGrantItemMapper.findList(grantItemQ); - Map> grantItemMap = grantItem.stream().collect(groupingBy(WxOfflineActivityGrantItem::getGrantId)); - List grantRecordList = wxOfflineActivityRecordGrantMapper.findGrantRecordList(wxOfflineActivity.getId(),wxOfflineActivity.getTenantId()); - Map> grantRecordMap = grantRecordList.stream().collect(groupingBy(OfflineActivityGrantRecord::getGrantId)); + List grantItems = wxOfflineActivityGrantItemMapper.findList(grantItemQ); + Map> grantItemMap = grantItems.stream().collect(groupingBy(WxOfflineActivityGrantItem::getGrantId)); + List grantRecords = wxOfflineActivityRecordGrantMapper.findGrantRecordList(wxOfflineActivity.getId(),wxOfflineActivity.getTenantId()); + Map> grantRecordMap = grantRecords.stream().collect(groupingBy(OfflineActivityGrantRecord::getGrantId)); + WxOfflineActivityGrantCashBack cashBackQ = new WxOfflineActivityGrantCashBack(); + cashBackQ.updateTenantInfo(wxOfflineActivity); + cashBackQ.setActivityId(wxOfflineActivity.getId()); + List cashBacks = wxOfflineActivityGrantCashBackMapper.findList(cashBackQ); + Map> cashBackMap = cashBacks.stream().collect(groupingBy(WxOfflineActivityGrantCashBack::getGrantId)); + WxOfflineActivityGrantSettlement settlementQ = new WxOfflineActivityGrantSettlement(); + settlementQ.updateTenantInfo(wxOfflineActivity); + settlementQ.setActivityId(wxOfflineActivity.getId()); + settlementQ.setStatus(EnumYesOrNo.YES.getCode()); + List settlements = wxOfflineActivityGrantSettlementMapper.findList(settlementQ); + Map> settlementMap = settlements.stream().collect(groupingBy(WxOfflineActivityGrantSettlement::getGrantId)); + for (WxOfflineActivityGrantAward grantAward : grantAwardList) { -// List recordList = wxOfflineActivityRecordMapper.findGrantList(grantAward.getId(),grantAward.getTenantId()); + List grantRecordList = grantRecordMap.get(grantAward.getId()); List grantItemList = grantItemMap.get(grantAward.getId()); - List recordList = grantRecordMap.get(grantAward.getId()); + List cashBackList = cashBackMap.get(grantAward.getId()); + List settlementList = settlementMap.get(grantAward.getId()); + Map activityGrantObject = new HashMap<>(); - activityGrantObject.put("activityName",activity.getName()); - List merchantOrder = new ArrayList<>(); - for (OfflineActivityGrantRecord record : recordList) { - merchantOrder.add(record.getOrderNo()+"["+merchantMap.get(record.getMerchantId())+"]"); - } - activityGrantObject.put("merchantOrder", String.join(";", merchantOrder)); - activityGrantObject.put("orderMoneySum",grantAward.getOrderMoneySum()); activityGrantObject.put("cusName",grantAward.getCusName()); activityGrantObject.put("cusPhone",grantAward.getCusPhone()); + activityGrantObject.put("orderCount",grantAward.getOrderCount()); + activityGrantObject.put("orderMoneySum",grantAward.getOrderMoneySum()); activityGrantObject.put("realName",grantAward.getRealName()); activityGrantObject.put("realCard",grantAward.getRealCard()); activityGrantObject.put("createByName",grantAward.getCreateBy()!=null?userMap.get(grantAward.getCreateBy()).getName():""); activityGrantObject.put("createDate",DateUtils.date2String(grantAward.getCreateDate())); + if(grantAward.getLotteryNumList() != null && !grantAward.getLotteryNumList().isEmpty()){ + activityGrantObject.put("lotteryNum",String.join(";", grantAward.getLotteryNumList())); + } + activityGrantObject.put("lotteryCount",grantAward.getLotteryCount()); + if(grantAward.getAnniversaryLotteryNumList() != null && !grantAward.getAnniversaryLotteryNumList().isEmpty()){ + activityGrantObject.put("anniversaryLotteryNum",String.join(";", grantAward.getAnniversaryLotteryNumList())); + } + activityGrantObject.put("signImg",grantAward.getSignImg()); + + List> orderList = new ArrayList<>(); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map orderMap = new HashMap<>(); + orderMap.put("orderNo",offlineActivityGrantRecord.getOrderNo()); + orderMap.put("orderMoney",offlineActivityGrantRecord.getOrderMoney()); + orderMap.put("merchantName",offlineActivityGrantRecord.getMerchantId()!=null?merchantMap.get(offlineActivityGrantRecord.getMerchantId()):""); + orderMap.put("businessName",offlineActivityGrantRecord.getBusinessId()!=null?bussinessMap.get(offlineActivityGrantRecord.getBusinessId()).getTitle():""); + orderMap.put("createDate",offlineActivityGrantRecord.getCreateDate()); + orderMap.put("auditByName",offlineActivityGrantRecord.getAuditBy()!=null?userMap.get(offlineActivityGrantRecord.getAuditBy()).getName():""); + orderMap.put("auditTime",offlineActivityGrantRecord.getAuditTime()); + orderList.add(orderMap); + } + activityGrantObject.put("orderList",orderList); + Map> granActivityItemMap = grantItemList.stream().collect(groupingBy(WxOfflineActivityGrantItem::getActivityItemId)); + Map> grantSettlementMap = settlementList.stream().collect(groupingBy(WxOfflineActivityGrantSettlement::getActivityItemId)); + Map grantCashMap = cashBackList.stream().collect(toMap(WxOfflineActivityGrantCashBack::getActivityItemId, Function.identity())); + for (WxOfflineActivityItem activityItem : activity.getActivityItemList()) { List granActivityItemList = granActivityItemMap.get(activityItem.getId()); + List grantSettlementList = grantSettlementMap.get(activityItem.getId()); + Map> grantSettlementItemMap = new HashMap<>(); + if(grantSettlementList != null && !grantSettlementList.isEmpty()){ + grantSettlementItemMap = grantSettlementList.stream().collect(groupingBy(WxOfflineActivityGrantSettlement::getAwardItamId)); + } if(EnumOfflineActivityType.LOTTERY_DRAW.getCode().equals(activityItem.getType())){ + Map granAwardItamMap = new HashMap<>(); if(granActivityItemList != null && !granActivityItemList.isEmpty()){ granAwardItamMap = granActivityItemList.stream().collect(toMap(WxOfflineActivityGrantItem::getAwardItamId, Function.identity())); } + for (WxOfflineActivityAwardsItem awardsItem : activityItem.getActivityAwardsItemList()) { + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_activityItemName",activityItem.getName()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemName",awardsItem.getName()); WxOfflineActivityGrantItem grantAwardsItem = granAwardItamMap.get(awardsItem.getId()); if(grantAwardsItem != null){ - activityGrantObject.put(String.valueOf(activityItem.getId())+String.valueOf(awardsItem.getId()),grantAwardsItem.getAwardCount()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemCount",grantAwardsItem.getAwardCount()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemPrice",grantAwardsItem.getAwardPrice()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_mallRate",grantAwardsItem.getMallShareRate()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_merchantRate",grantAwardsItem.getMerchantShareRate()); } else { - activityGrantObject.put(String.valueOf(activityItem.getId())+String.valueOf(awardsItem.getId()),0); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemCount",0); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemPrice",0); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_mallRate",0); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_merchantRate",0); } + Map grantSettlementOrderMap = new HashMap<>(); + List grantSettlementItemList = grantSettlementItemMap.get(awardsItem.getId()); + if(grantSettlementItemList != null && !grantSettlementItemList.isEmpty()){ + grantSettlementOrderMap = grantSettlementItemList.stream().collect(toMap(WxOfflineActivityGrantSettlement::getRecordId, Function.identity())); + } + List> sharePriceList = new ArrayList<>(); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map sharePriceObject = new HashMap<>(); + WxOfflineActivityGrantSettlement settlementOrder = grantSettlementOrderMap.get(offlineActivityGrantRecord.getRecordId()); + if(settlementOrder != null){ + sharePriceObject.put("mallSharePrice",settlementOrder.getRealMallSharePrice()); + sharePriceObject.put("merchantSharePrice",settlementOrder.getRealMerchantSharePrice()); + }else{ + sharePriceObject.put("mallSharePrice",0); + sharePriceObject.put("merchantSharePrice",0); + } + sharePriceList.add(sharePriceObject); + } + activityGrantObject.put(String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_sharePriceList",sharePriceList); } }else if(EnumOfflineActivityType.GIFT.getCode().equals(activityItem.getType())){ + activityGrantObject.put(String.valueOf(activityItem.getId())+"_activityItemName",activityItem.getName()); if(granActivityItemList != null && !granActivityItemList.isEmpty()){ - activityGrantObject.put(String.valueOf(activityItem.getId()),granActivityItemList.get(0).getAwardName()); + WxOfflineActivityGrantItem grantItem = granActivityItemList.get(0); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_awardsGrade",grantItem.getAwardGrade()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_awardsItemName",grantItem.getAwardName()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_awardsItemPrice",grantItem.getAwardPrice()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_mallRate",grantItem.getMallShareRate()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_merchantRate",grantItem.getMerchantShareRate()); + + List grantSettlementItemList = grantSettlementItemMap.get(grantItem.getAwardItamId()); + Map grantSettlementOrderMap = grantSettlementItemList.stream().collect(toMap(WxOfflineActivityGrantSettlement::getRecordId, Function.identity())); + List> sharePriceList = new ArrayList<>(); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map sharePriceObject = new HashMap<>(); + WxOfflineActivityGrantSettlement settlementOrder = grantSettlementOrderMap.get(offlineActivityGrantRecord.getRecordId()); + sharePriceObject.put("mallSharePrice",settlementOrder.getRealMallSharePrice()); + sharePriceObject.put("merchantSharePrice",settlementOrder.getRealMerchantSharePrice()); + sharePriceList.add(sharePriceObject); + } + activityGrantObject.put(String.valueOf(activityItem.getId())+"_sharePriceList",sharePriceList); } }else if(EnumOfflineActivityType.CASHBACK.getCode().equals(activityItem.getType())){ + Map> granAwardItamMap = new HashMap<>(); if(granActivityItemList != null && !granActivityItemList.isEmpty()){ - activityGrantObject.put("r"+String.valueOf(activityItem.getId()),granActivityItemList.get(0).getCashBackRatio().toString()+"%"); - activityGrantObject.put("p"+String.valueOf(activityItem.getId()),granActivityItemList.get(0).getAwardPrice()); - }else{ - activityGrantObject.put("r"+String.valueOf(activityItem.getId()),"%"); - activityGrantObject.put("p"+String.valueOf(activityItem.getId()),0); + granAwardItamMap = granActivityItemList.stream().collect(groupingBy(WxOfflineActivityGrantItem::getAwardItamId)); + } + + activityGrantObject.put(String.valueOf(activityItem.getId())+"_activityItemName",activityItem.getName()); + List granActivityItemFirstList = new ArrayList<>(); + List grantSettlementItemFirstList = new ArrayList<>(); + for (WxOfflineActivityAwardsItem awardsItem : activityItem.getActivityAwardsItemList()) { + List grantItemList1 = granAwardItamMap.get(awardsItem.getId()); + if(grantItemList1 != null && !grantItemList1.isEmpty()){ + granActivityItemFirstList.addAll(grantItemList1); + } + List grantSettlementItemList1 = grantSettlementItemMap.get(awardsItem.getId()); + if(grantSettlementItemList1 != null && !grantSettlementItemList1.isEmpty()){ + grantSettlementItemFirstList.addAll(grantSettlementItemList1); + } + } + List> cashBackOrderList = new ArrayList<>(); + if(!granActivityItemFirstList.isEmpty()){ + Map grantSettlementOrderFirstMap = grantSettlementItemFirstList.stream().collect(toMap(WxOfflineActivityGrantSettlement::getRecordId, Function.identity())); + if(granActivityItemFirstList.size() == 1){ + WxOfflineActivityGrantItem grantItem = granActivityItemFirstList.get(0); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map cashBackObject = new HashMap<>(); + WxOfflineActivityGrantSettlement settlement = grantSettlementOrderFirstMap.get(offlineActivityGrantRecord.getRecordId()); + cashBackObject.put("awardsItemName",grantItem.getAwardName()); + cashBackObject.put("awardsItemPrice",settlement.getRealGrantPrice()); + cashBackObject.put("mallRate",grantItem.getMallShareRate()); + cashBackObject.put("merchantRate",grantItem.getMerchantShareRate()); + cashBackObject.put("mallSharePrice",settlement.getRealMallSharePrice()); + cashBackObject.put("merchantSharePrice",settlement.getRealMerchantSharePrice()); + cashBackOrderList.add(cashBackObject); + } + }else{ + Map granActivityItemFirstMap = granActivityItemFirstList.stream().collect(toMap(WxOfflineActivityGrantItem::getRecordId, Function.identity())); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map cashBackObject = new HashMap<>(); + WxOfflineActivityGrantItem grantItem = granActivityItemFirstMap.get(offlineActivityGrantRecord.getRecordId()); + WxOfflineActivityGrantSettlement settlement = grantSettlementOrderFirstMap.get(offlineActivityGrantRecord.getRecordId()); + cashBackObject.put("awardsItemName",grantItem.getAwardName()); + cashBackObject.put("awardsItemPrice",settlement.getRealGrantPrice()); + cashBackObject.put("mallRate",grantItem.getMallShareRate()); + cashBackObject.put("merchantRate",grantItem.getMerchantShareRate()); + cashBackObject.put("mallSharePrice",settlement.getRealMallSharePrice()); + cashBackObject.put("merchantSharePrice",settlement.getRealMerchantSharePrice()); + cashBackOrderList.add(cashBackObject); + } + } + } + activityGrantObject.put(String.valueOf(activityItem.getId())+"_cashBackList",cashBackOrderList); + + WxOfflineActivityGrantItem granActivityItemSecond = null; + List grantSettlementItemSecondList = new ArrayList<>(); + if(activityItem.getActivityAwardsItemSecondList() != null && !activityItem.getActivityAwardsItemSecondList().isEmpty()){ + for (WxOfflineActivityAwardsItem awardsItem : activityItem.getActivityAwardsItemSecondList()) { + List grantItemList1 = granAwardItamMap.get(awardsItem.getId()); + if(grantItemList1 != null && !grantItemList1.isEmpty()){ + granActivityItemSecond = grantItemList1.get(0); + } + List grantSettlementItemList1 = grantSettlementItemMap.get(awardsItem.getId()); + if(grantSettlementItemList1 != null && !grantSettlementItemList1.isEmpty()){ + grantSettlementItemSecondList.addAll(grantSettlementItemList1); + } + } + } + if(granActivityItemSecond != null){ + activityGrantObject.put(String.valueOf(activityItem.getId())+"_awardsItemName",granActivityItemSecond.getAwardName()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_awardsItemPrice",granActivityItemSecond.getAwardPrice()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_mallRate",granActivityItemSecond.getMallShareRate()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_merchantRate",granActivityItemSecond.getMerchantShareRate()); + + Map grantSettlementOrderSecondMap = grantSettlementItemSecondList.stream().collect(toMap(WxOfflineActivityGrantSettlement::getRecordId, Function.identity())); + List> sharePriceList = new ArrayList<>(); + for (OfflineActivityGrantRecord offlineActivityGrantRecord : grantRecordList) { + Map sharePriceObject = new HashMap<>(); + WxOfflineActivityGrantSettlement settlementOrder = grantSettlementOrderSecondMap.get(offlineActivityGrantRecord.getRecordId()); + sharePriceObject.put("mallSharePrice",settlementOrder.getRealMallSharePrice()); + sharePriceObject.put("merchantSharePrice",settlementOrder.getRealMerchantSharePrice()); + sharePriceList.add(sharePriceObject); + } + activityGrantObject.put(String.valueOf(activityItem.getId())+"_sharePriceList",sharePriceList); + } + + WxOfflineActivityGrantCashBack cashBack = grantCashMap.get(activityItem.getId()); + if(cashBack != null){ + activityGrantObject.put(String.valueOf(activityItem.getId())+"_cashBackPrice",cashBack.getCashBackPrice()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_startingTaxPoint",cashBack.getStartingTaxPoint()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_taxPoints",cashBack.getTaxPoints()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_taxPointsAmount",cashBack.getTaxPointsAmount()); + activityGrantObject.put(String.valueOf(activityItem.getId())+"_realCashBackPrice",cashBack.getCashBackPrice().subtract(cashBack.getTaxPointsAmount())); } } } - if(grantAward.getLotteryNumList() != null && !grantAward.getLotteryNumList().isEmpty()){ - activityGrantObject.put("lotteryNum",String.join(";", grantAward.getLotteryNumList())); - } - activityGrantObject.put("lotteryCount",grantAward.getLotteryCount()); - if(grantAward.getAnniversaryLotteryNumList() != null && !grantAward.getAnniversaryLotteryNumList().isEmpty()){ - activityGrantObject.put("anniversaryLotteryNum",String.join(";", grantAward.getAnniversaryLotteryNumList())); - } -// if(StringUtils.isNotBlank(grantAward.getSignImg())){ -// try{ -// activityGrantObject.put("signImg",DownFileUtil.url2byte(grantAward.getSignImg())); -// }catch (Exception e){} -// } - activityGrantObject.put("signImg",grantAward.getSignImg()); activityGrantObjectList.add(activityGrantObject); } } @@ -967,66 +1133,219 @@ public class WxOfflineActivityGrantAwardServiceImpl implements WxOfflineActivity private List getActivityGrantExportHead(WxOfflineActivity activity){ List headList = new ArrayList<>(); - ExcelExportEntity entity1 = new ExcelExportEntity("活动名称","activityName",20); + ExcelExportEntity entity1 = new ExcelExportEntity("客户姓名","cusName",20); + entity1.setNeedMerge(true); headList.add(entity1); - ExcelExportEntity entity2 = new ExcelExportEntity("订单[门店]","merchantOrder",30); + ExcelExportEntity entity2 = new ExcelExportEntity("客户电话","cusPhone",20); + entity2.setNeedMerge(true); headList.add(entity2); - ExcelExportEntity entity3 = new ExcelExportEntity("订单总金额","orderMoneySum",20); + ExcelExportEntity entity3 = new ExcelExportEntity("订单数量","orderCount",20); + entity3.setNeedMerge(true); headList.add(entity3); - ExcelExportEntity entity4 = new ExcelExportEntity("客户姓名","cusName",20); + ExcelExportEntity entity4 = new ExcelExportEntity("订单总金额","orderMoneySum",20); + entity4.setNeedMerge(true); headList.add(entity4); - ExcelExportEntity entity5 = new ExcelExportEntity("客户电话","cusPhone",20); + ExcelExportEntity entity5 = new ExcelExportEntity("领奖人","realName",20); + entity5.setNeedMerge(true); headList.add(entity5); - ExcelExportEntity entity6 = new ExcelExportEntity("实际领奖人","realName",20); + ExcelExportEntity entity6 = new ExcelExportEntity("领奖人身份证号","realCard",20); + entity6.setNeedMerge(true); headList.add(entity6); - ExcelExportEntity entity7 = new ExcelExportEntity("实际领奖人身份证号","realCard",20); + ExcelExportEntity entity7 = new ExcelExportEntity("发奖人","createByName",20); + entity7.setNeedMerge(true); headList.add(entity7); - ExcelExportEntity entity8 = new ExcelExportEntity("发奖人","createByName",20); + ExcelExportEntity entity8 = new ExcelExportEntity("发奖时间","createDate",20); + entity8.setNeedMerge(true); headList.add(entity8); - ExcelExportEntity entity9 = new ExcelExportEntity("发奖时间","createDate",20); + ExcelExportEntity entity9 = new ExcelExportEntity("抽奖券编码","lotteryNum",20); + entity9.setNeedMerge(true); headList.add(entity9); + ExcelExportEntity entity10 = new ExcelExportEntity("抽奖券数量","lotteryCount",20); + entity10.setNeedMerge(true); + headList.add(entity10); + ExcelExportEntity entity11 = new ExcelExportEntity("周年庆抽奖编码","anniversaryLotteryNum",20); + entity11.setNeedMerge(true); + headList.add(entity11); + ExcelExportEntity entity12 = new ExcelExportEntity("签名图片","signImg",40); +// entity12.setType(BaseEntityTypeConstants.IMAGE_TYPE); +// entity12.setExportImageType(1); +// entity12.setHeight(20); + entity12.setNeedMerge(true); + headList.add(entity12); + + //订单 + ExcelExportEntity entity13 = new ExcelExportEntity(null,"orderList",160); + List entity13_list = new ArrayList<>(); + ExcelExportEntity entity13_1 = new ExcelExportEntity("订单编号","orderNo",20); + entity13_list.add(entity13_1); + ExcelExportEntity entity13_2 = new ExcelExportEntity("订单金额","orderMoney",20); + entity13_list.add(entity13_2); + ExcelExportEntity entity13_3 = new ExcelExportEntity("商户名称","merchantName",20); + entity13_list.add(entity13_3); +// ExcelExportEntity entity13_4 = new ExcelExportEntity("铺位号","shopNumber",20); +// entity13_list.add(entity13_4); + ExcelExportEntity entity13_5 = new ExcelExportEntity("业态","businessName",20); + entity13_list.add(entity13_5); + ExcelExportEntity entity13_6 = new ExcelExportEntity("提交时间","createDate",20); + entity13_list.add(entity13_6); + ExcelExportEntity entity13_7 = new ExcelExportEntity("审核人","auditByName",20); + entity13_list.add(entity13_7); + ExcelExportEntity entity13_8 = new ExcelExportEntity("审核时间","auditTime",20); + entity13_list.add(entity13_8); + entity13.setList(entity13_list); + headList.add(entity13); for (WxOfflineActivityItem activityItem : activity.getActivityItemList()) { //抽奖活动 - //【活动项名称】【奖项名称】数量 if(EnumOfflineActivityType.LOTTERY_DRAW.getCode().equals(activityItem.getType())){ for (WxOfflineActivityAwardsItem awardsItem : activityItem.getActivityAwardsItemList()) { - ExcelExportEntity entity10 = new ExcelExportEntity("【"+activityItem.getName()+"】【"+awardsItem.getName()+"】数量", - String.valueOf(activityItem.getId())+String.valueOf(awardsItem.getId()),20); - headList.add(entity10); + ExcelExportEntity entity14 = new ExcelExportEntity("抽奖活动名称", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_activityItemName",20); + entity14.setNeedMerge(true); + headList.add(entity14); + ExcelExportEntity entity15 = new ExcelExportEntity("奖品名称", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemName",20); + entity15.setNeedMerge(true); + headList.add(entity15); + ExcelExportEntity entity16 = new ExcelExportEntity("数量", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemCount",20); + entity16.setNeedMerge(true); + headList.add(entity16); + ExcelExportEntity entity17 = new ExcelExportEntity("抽奖价值", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_awardsItemPrice",20); + entity17.setNeedMerge(true); + headList.add(entity17); + ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_mallRate",20); + entity18.setNeedMerge(true); + headList.add(entity18); + ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)", + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_merchantRate",20); + entity19.setNeedMerge(true); + headList.add(entity19); + + ExcelExportEntity entity20 = new ExcelExportEntity(null, + String.valueOf(activityItem.getId())+"_"+String.valueOf(awardsItem.getId())+"_sharePriceList",40); + List entity20_list = new ArrayList<>(); + ExcelExportEntity entity20_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20); + entity20_list.add(entity20_1); + ExcelExportEntity entity20_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20); + entity20_list.add(entity20_2); + entity20.setList(entity20_list); + headList.add(entity20); } } //满额赠礼活动 - //【活动项名称】奖项 else if (EnumOfflineActivityType.GIFT.getCode().equals(activityItem.getType())) { - ExcelExportEntity entity11 = new ExcelExportEntity("【"+activityItem.getName()+"】奖项", - String.valueOf(activityItem.getId()),20); - headList.add(entity11); + ExcelExportEntity entity14 = new ExcelExportEntity("满额赠礼活动名称", + String.valueOf(activityItem.getId())+"_activityItemName",20); + entity14.setNeedMerge(true); + headList.add(entity14); + ExcelExportEntity entity15 = new ExcelExportEntity("礼品等级", + String.valueOf(activityItem.getId())+"_awardsGrade",20); + entity15.setNeedMerge(true); + headList.add(entity15); + ExcelExportEntity entity16 = new ExcelExportEntity("礼品名称", + String.valueOf(activityItem.getId())+"_awardsItemName",20); + entity16.setNeedMerge(true); + headList.add(entity16); + ExcelExportEntity entity17 = new ExcelExportEntity("礼品价值", + String.valueOf(activityItem.getId())+"_awardsItemPrice",20); + entity17.setNeedMerge(true); + headList.add(entity17); + ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)", + String.valueOf(activityItem.getId())+"_mallRate",20); + entity18.setNeedMerge(true); + headList.add(entity18); + ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)", + String.valueOf(activityItem.getId())+"_merchantRate",20); + entity19.setNeedMerge(true); + headList.add(entity19); + + ExcelExportEntity entity20 = new ExcelExportEntity(null, + String.valueOf(activityItem.getId())+"_sharePriceList",40); + List entity20_list = new ArrayList<>(); + ExcelExportEntity entity20_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20); + entity20_list.add(entity20_1); + ExcelExportEntity entity20_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20); + entity20_list.add(entity20_2); + entity20.setList(entity20_list); + headList.add(entity20); } //返现活动 - //【活动项名称】返现比例 - //【活动项名称】返现金额 else if (EnumOfflineActivityType.CASHBACK.getCode().equals(activityItem.getType())) { - ExcelExportEntity entity12 = new ExcelExportEntity("【"+activityItem.getName()+"】返现比例", - "r"+String.valueOf(activityItem.getId()),20); - headList.add(entity12); - ExcelExportEntity entity13 = new ExcelExportEntity("【"+activityItem.getName()+"】返现金额", - "p"+String.valueOf(activityItem.getId()),20); - headList.add(entity13); + ExcelExportEntity entity14 = new ExcelExportEntity("返现活动名称", + String.valueOf(activityItem.getId())+"_activityItemName",20); + entity14.setNeedMerge(true); + headList.add(entity14); + + ExcelExportEntity entity15 = new ExcelExportEntity(null, + String.valueOf(activityItem.getId())+"_cashBackList",120); + List entity15_list = new ArrayList<>(); + ExcelExportEntity entity15_1 = new ExcelExportEntity("返现奖项名称","awardsItemName",20); + entity15_list.add(entity15_1); + ExcelExportEntity entity15_2 = new ExcelExportEntity("返现金额","awardsItemPrice",20); + entity15_list.add(entity15_2); + ExcelExportEntity entity15_3 = new ExcelExportEntity("商管承担比例","mallRate(%)",20); + entity15_list.add(entity15_3); + ExcelExportEntity entity15_4 = new ExcelExportEntity("商户承担比例","merchantRate(%)",20); + entity15_list.add(entity15_4); + ExcelExportEntity entity15_5 = new ExcelExportEntity("商管承担金额","mallSharePrice",20); + entity15_list.add(entity15_5); + ExcelExportEntity entity15_6 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20); + entity15_list.add(entity15_6); + entity15.setList(entity15_list); + headList.add(entity15); + + ExcelExportEntity entity16 = new ExcelExportEntity("联单奖项名称", + String.valueOf(activityItem.getId())+"_awardsItemName",20); + entity16.setNeedMerge(true); + headList.add(entity16); + ExcelExportEntity entity17 = new ExcelExportEntity("联单返现金额", + String.valueOf(activityItem.getId())+"_awardsItemPrice",20); + entity17.setNeedMerge(true); + headList.add(entity17); + ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)", + String.valueOf(activityItem.getId())+"_mallRate",20); + entity18.setNeedMerge(true); + headList.add(entity18); + ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)", + String.valueOf(activityItem.getId())+"_merchantRate",20); + entity19.setNeedMerge(true); + headList.add(entity19); + + ExcelExportEntity entity20 = new ExcelExportEntity(null, + String.valueOf(activityItem.getId())+"_sharePriceList",40); + List entity20_list = new ArrayList<>(); + ExcelExportEntity entity20_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20); + entity20_list.add(entity20_1); + ExcelExportEntity entity20_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20); + entity20_list.add(entity20_2); + entity20.setList(entity20_list); + headList.add(entity20); + + ExcelExportEntity entity21 = new ExcelExportEntity("应返现总额", + String.valueOf(activityItem.getId())+"_cashBackPrice",20); + entity21.setNeedMerge(true); + headList.add(entity21); + ExcelExportEntity entity22 = new ExcelExportEntity("起征税点金额", + String.valueOf(activityItem.getId())+"_startingTaxPoint",20); + entity22.setNeedMerge(true); + headList.add(entity22); + ExcelExportEntity entity23 = new ExcelExportEntity("税点比例(%)", + String.valueOf(activityItem.getId())+"_taxPoints",20); + entity23.setNeedMerge(true); + headList.add(entity23); + ExcelExportEntity entity24 = new ExcelExportEntity("税点金额", + String.valueOf(activityItem.getId())+"_taxPointsAmount",20); + entity24.setNeedMerge(true); + headList.add(entity24); + ExcelExportEntity entity25 = new ExcelExportEntity("实际返现金额", + String.valueOf(activityItem.getId())+"_realCashBackPrice",20); + entity25.setNeedMerge(true); + headList.add(entity25); } } - ExcelExportEntity entity14 = new ExcelExportEntity("抽奖券编码","lotteryNum",20); - headList.add(entity14); - ExcelExportEntity entity15 = new ExcelExportEntity("抽奖券数量","lotteryCount",20); - headList.add(entity15); - ExcelExportEntity entity16 = new ExcelExportEntity("周年庆抽奖编码","anniversaryLotteryNum",20); - headList.add(entity16); - ExcelExportEntity entity17 = new ExcelExportEntity("签名图片","signImg",40); -// entity17.setType(BaseEntityTypeConstants.IMAGE_TYPE); -// entity17.setExportImageType(1); -// entity17.setHeight(20); - - headList.add(entity17); return headList; } diff --git a/mallinkService/src/main/resources/mapper/WxOfflineActivityRecordGrantMapper.xml b/mallinkService/src/main/resources/mapper/WxOfflineActivityRecordGrantMapper.xml index b84ca5716..f6ea82b3a 100644 --- a/mallinkService/src/main/resources/mapper/WxOfflineActivityRecordGrantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOfflineActivityRecordGrantMapper.xml @@ -42,7 +42,18 @@ select rg.grant_id as grantId, r.id as recordId, r.order_no as orderNo, - r.merchant_id as merchantId + r.order_money as orderMoney, + r.cus_name as cusName, + r.real_cus_name as realCusName, + r.cus_phone as cusPhone, + r.cus_address as cusAddress, + r.cus_card as cusCard, + r.create_by as createBy, + r.merchant_id as merchantId, + r.business_id as businessId, + r.create_date as createDate, + r.audit_by as auditBy, + r.audit_time as auditTime from wx_offline_activity_record_grant rg left join wx_offline_activity_record r on rg.record_id = r.id where rg.activity_id = #{activityId} and rg.tenant_id=#{tenantId}