Pārlūkot izejas kodu

fix

release_toaliyun_real
winter pirms 7 mēnešiem
vecāks
revīzija
62c06bf65d
8 mainītis faili ar 617 papildinājumiem un 392 dzēšanām
  1. +2
    -2
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java
  2. +102
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawMainData.java
  3. +104
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawOrderData.java
  4. +28
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawPrizeDetailData.java
  5. +3
    -0
      mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportTwoService.java
  6. +1
    -1
      mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java
  7. +37
    -0
      mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportTwoServiceImpl.java
  8. +340
    -389
      mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java

+ 2
- 2
mallinkAdmin/src/main/java/com/iformall/controller/market/WxVtwoPrizeDrawActivityController.java Parādīt failu

@@ -326,8 +326,8 @@ public class WxVtwoPrizeDrawActivityController extends BaseController {
throw new MallinkException(Result.ERROR,"活动ID 为空");
}
activityGrant.updateTenantInfo(getTenantInfo());
wxVtwoPrizeDrawActivityService.grantExportTwo(request,response,activityGrant);
//wxVtwoPrizeDrawActivityService.grantExportTwoNew(request,response,activityGrant);
//wxVtwoPrizeDrawActivityService.grantExportTwo(request,response,activityGrant);
wxVtwoPrizeDrawActivityService.grantExportTwoNew(request,response,activityGrant);
}

}

+ 102
- 0
mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawMainData.java Parādīt failu

@@ -0,0 +1,102 @@
package com.iformall.domain.vo.excel.vtwoPrize;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelCollection;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.iformall.domain.po.WxVtwoActivityGrantExportTwo;
import com.iformall.domain.po.WxVtwoActivityOrder;

import lombok.Data;
import lombok.ToString;

@Data
@ToString(callSuper = true)
public class WxVtwoActivityPrizeDrawMainData implements Serializable {

private static final long serialVersionUID = 1L;

@Excel(name="客户姓名",width = 20,orderNum = "1")
private String cusName;
@Excel(name="客户电话",width = 20,orderNum = "2")
private String cusPhone;
@Excel(name="订单数量",width = 20,orderNum = "3")
private Integer orderCount;
@Excel(name="订单总金额",width = 20,orderNum = "4")
private BigDecimal orderMoneySum;
@Excel(name="领奖人",width = 20,orderNum = "5")
private String realName;
@Excel(name="领奖人身份证号",width = 20,orderNum = "6")
private String realCard;
@Excel(name="发奖人",width = 20,orderNum = "7")
private String grantByName;
@Excel(name="发奖时间",width = 20,orderNum = "8")
private Date grantTime;
@Excel(name="抽奖券编码",width = 20,orderNum = "9")
private String lotteryNum;
@Excel(name="抽奖券数量",width = 20,orderNum = "10")
private Integer lotteryCount;
@Excel(name="周年庆抽奖编码",width = 20,orderNum = "11")
private String anniversaryLotteryNum;
@Excel(name="签名图片",width = 20,orderNum = "12")
private String signImg;
@Excel(name="发奖备注",width = 20,orderNum = "13")
private String remark;
//发奖明细
private String orderGrantDetail;
//联单发奖
private String jointGrantDetail;
@ExcelCollection(name="订单列表")
private List<WxVtwoActivityPrizeDrawOrderData> orderList;
public void initByWxVtwoActivityGrantExportTwo(WxVtwoActivityGrantExportTwo aget) {
this.cusName = aget.getCusName();
this.cusPhone = aget.getCusPhone();
this.orderCount = aget.getOrderCount();
this.orderMoneySum = aget.getOrderMoneySum();
this.realName = aget.getRealName();
this.realCard = aget.getRealCard();
this.grantByName = aget.getGrantByName();
this.grantTime = aget.getGrantTime();
this.lotteryNum = aget.getLotteryNum();
this.lotteryCount = aget.getLotteryCount();
this.anniversaryLotteryNum = aget.getAnniversaryLotteryNum();
this.signImg = aget.getSignImg();
this.remark = aget.getRemark();
this.orderGrantDetail = aget.getOrderGrantDetail();
this.jointGrantDetail = aget.getJointGrantDetail();
}
public void initOrderListByWxVtwoActivityOrder(List<WxVtwoActivityOrder> aoList) {
if (null != aoList && aoList.size() > 0 ) {
this.orderList = new ArrayList<WxVtwoActivityPrizeDrawOrderData>();
for (int i = 0 ; i < aoList.size(); i++) {
WxVtwoActivityOrder ao = aoList.get(i);
WxVtwoActivityPrizeDrawOrderData pdod = new WxVtwoActivityPrizeDrawOrderData();
pdod.initByWxVtwoActivityOrder(ao);
orderList.add(pdod);
}
}
}

}

+ 104
- 0
mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawOrderData.java Parādīt failu

@@ -0,0 +1,104 @@
package com.iformall.domain.vo.excel.vtwoPrize;

import cn.afterturn.easypoi.excel.annotation.Excel;
import cn.afterturn.easypoi.excel.annotation.ExcelCollection;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.TableField;
import com.iformall.domain.po.WxVtwoActivityOrder;

import lombok.Data;
import lombok.ToString;

@Data
@ToString(callSuper = true)
public class WxVtwoActivityPrizeDrawOrderData implements Serializable {

private static final long serialVersionUID = 1L;

private Long id;

@Excel(name="订单编号",width = 20,orderNum = "1")
private String orderNo;
@Excel(name="订单金额",width = 20,orderNum = "2")
private BigDecimal orderMoney;
@Excel(name="客户姓名",width = 20,orderNum = "3")
private String cusName;
@Excel(name="客户电话",width = 20,orderNum = "4")
private String cusPhone;
@Excel(name="vip卡",width = 20,orderNum = "5")
private String vipNum;
@Excel(name="所属军团",width = 20,orderNum = "6")
private String legionName;
@Excel(name="所属联盟",width = 20,orderNum = "7")
private String unionName;
@Excel(name="订单地址",width = 20,orderNum = "8")
private String cusAddress;
@Excel(name="商户名称",width = 20,orderNum = "9")
private String merchantName;
@Excel(name="铺位号",width = 20,orderNum = "10")
private String shopNumber;
@Excel(name="业态",width = 20,orderNum = "11")
private String businessName;
@Excel(name="抽奖券编码",width = 20,orderNum = "12")
private String lotteryNum;
@Excel(name="抽奖券数量",width = 20,orderNum = "13")
private Integer lotteryCount;
@Excel(name="周年庆抽奖编码",width = 20,orderNum = "14")
private String anniversaryLotteryNum;
@Excel(name="提交时间",format = "yyyy-MM-dd HH:mm:ss",width = 20,orderNum = "15")
private Date createDate;
@Excel(name="订单状态",width = 20,orderNum = "16", replace = {"审核中_0", "已审批_1", "已驳回_2", "已退单_3", "已发奖_10"})
private Integer auditStatus;
@Excel(name="审核人",width = 20,orderNum = "17")
private String auditByName;
@Excel(name="审核时间",format = "yyyy-MM-dd HH:mm:ss", width = 20,orderNum = "18")
private Date auditTime;
@ExcelCollection(name="发奖列表")
private List<WxVtwoActivityPrizeDrawPrizeDetailData> orderGrantList;
public void initByWxVtwoActivityOrder(WxVtwoActivityOrder ao) {
this.id = ao.getId();
this.orderNo = ao.getOrderNo();
this.orderMoney = ao.getOrderMoney();
this.cusName = ao.getCusName();
this.cusPhone = ao.getCusPhone();
this.vipNum = ao.getVipNum();
this.legionName = ao.getLegionName();
this.unionName = ao.getUnionName();
this.cusAddress = ao.getCusAddress();
this.merchantName = ao.getMerchantName();
this.shopNumber = ao.getShopNumber();
this.businessName = ao.getBusinessName();
this.lotteryNum = ao.getLotteryNum();
this.lotteryCount = ao.getLotteryCount();
this.anniversaryLotteryNum = ao.getAnniversaryLotteryNum();
this.createDate = ao.getCreateDate();
this.auditStatus = ao.getAuditStatus();
this.auditByName = ao.getAuditByName();
this.auditTime = ao.getAuditTime();
}

}

+ 28
- 0
mallinkService/src/main/java/com/iformall/domain/vo/excel/vtwoPrize/WxVtwoActivityPrizeDrawPrizeDetailData.java Parādīt failu

@@ -0,0 +1,28 @@
package com.iformall.domain.vo.excel.vtwoPrize;

import cn.afterturn.easypoi.excel.annotation.Excel;

import java.io.Serializable;
import java.util.List;

import lombok.Data;
import lombok.ToString;

@Data
@ToString(callSuper = true)
public class WxVtwoActivityPrizeDrawPrizeDetailData implements Serializable {

private static final long serialVersionUID = 1L;
public WxVtwoActivityPrizeDrawPrizeDetailData(String key,Object value) {
this.key = key;
this.value = value;
}

@Excel(name="属性名")
private String key;
@Excel(name="属性值")
private Object value;
}

+ 3
- 0
mallinkService/src/main/java/com/iformall/service/WxVtwoActivityGrantExportTwoService.java Parādīt failu

@@ -6,6 +6,7 @@ import com.iformall.domain.po.WxVtwoActivityGrantExportTwo;
import com.baomidou.mybatisplus.extension.service.IService;
import com.iformall.domain.po.WxVtwoActivityGrantSettlement;
import com.iformall.domain.po.WxVtwoCashBackGrant;
import com.iformall.domain.vo.excel.vtwoPrize.WxVtwoActivityPrizeDrawMainData;

import java.util.List;

@@ -23,6 +24,8 @@ public interface WxVtwoActivityGrantExportTwoService extends IService<WxVtwoActi
List<ExcelExportEntity> getExportHeadList();

List<WxVtwoActivityGrantExportTwo> findActivityGrantList(Long activityId, String tenantId);
List<WxVtwoActivityPrizeDrawMainData> findActivityGrantExportList(Long activityId, String tenantId);

Integer selectMaxOrderGrantCount(Long activityId, String tenantId);



+ 1
- 1
mallinkService/src/main/java/com/iformall/service/WxVtwoPrizeDrawActivityService.java Parādīt failu

@@ -33,7 +33,7 @@ public interface WxVtwoPrizeDrawActivityService extends IService<WxVtwoPrizeDraw

void grantExport(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant);

void grantExportTwo(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant);
//void grantExportTwo(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant);
void grantExportTwoNew(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant);
}

+ 37
- 0
mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantExportTwoServiceImpl.java Parādīt failu

@@ -4,6 +4,7 @@ import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.iformall.domain.po.*;
import com.iformall.domain.vo.excel.vtwoPrize.WxVtwoActivityPrizeDrawMainData;
import com.iformall.enums.EnumOfflineActivityAwardsModeType;
import com.iformall.mapper.WxVtwoActivityGrantOrderMapper;
import com.iformall.service.WxVtwoActivityGrantExportTwoService;
@@ -250,6 +251,42 @@ public class WxVtwoActivityGrantExportTwoServiceImpl extends ServiceImpl<WxVtwoA
}
return exportList;
}
@Override
public List<WxVtwoActivityPrizeDrawMainData> findActivityGrantExportList(Long activityId, String tenantId) {
WxVtwoActivityGrantExportTwo exportQ = new WxVtwoActivityGrantExportTwo();
exportQ.setTenantId(tenantId);
exportQ.setActivityId(activityId);
List<WxVtwoActivityGrantExportTwo> exportList = wxVtwoActivityGrantExportTwoMapper.findList(exportQ);
List<WxVtwoActivityPrizeDrawMainData> retList = null;
if(exportList != null && !exportList.isEmpty()){
retList = new ArrayList<WxVtwoActivityPrizeDrawMainData>();
WxVtwoActivityGrantOrder grantOrderQ = new WxVtwoActivityGrantOrder();
exportQ.setTenantId(tenantId);
exportQ.setActivityId(activityId);
List<Long> orderIds = wxVtwoActivityGrantOrderMapper.findOrderIdList(grantOrderQ);

Map<Long,WxVtwoActivityOrder> auditDetailMap = wxVtwoActivityOrderService.findAuditDetailMap(orderIds,tenantId);
for(WxVtwoActivityGrantExportTwo export : exportList){
WxVtwoActivityPrizeDrawMainData pdmd = new WxVtwoActivityPrizeDrawMainData();
pdmd.initByWxVtwoActivityGrantExportTwo(export);
pdmd.initOrderListByWxVtwoActivityOrder(JSONObject.parseArray(export.getOrderDetail(),WxVtwoActivityOrder.class));
if (null != pdmd.getOrderList()) {
pdmd.getOrderList().forEach(e -> {
WxVtwoActivityOrder order = auditDetailMap.get(e.getId());
e.setAuditStatus(order.getAuditStatus());
//e.setAuditRemark(order.getAuditRemark());
//e.setAuditBy(order.getAuditBy());
e.setAuditByName(order.getAuditByName());
e.setAuditTime(order.getAuditTime());
});
}
retList.add(pdmd);
}
}
return retList;
}

@Override
public Integer selectMaxOrderGrantCount(Long activityId, String tenantId) {


+ 340
- 389
mallinkService/src/main/java/com/iformall/service/impl/WxVtwoPrizeDrawActivityServiceImpl.java Parādīt failu

@@ -14,6 +14,8 @@ import com.iformall.domain.po.*;
import com.iformall.domain.po.base.BaseEntity;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.*;
import com.iformall.domain.vo.excel.vtwoPrize.WxVtwoActivityPrizeDrawMainData;
import com.iformall.domain.vo.excel.vtwoPrize.WxVtwoActivityPrizeDrawPrizeDetailData;
import com.iformall.enums.*;
import com.iformall.exception.MallinkException;
import com.iformall.mapper.*;
@@ -408,212 +410,212 @@ public class WxVtwoPrizeDrawActivityServiceImpl extends ServiceImpl<WxVtwoPrizeD
excelService.exportExcel(headList, grantObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response);
}

@Override
public void grantExportTwo(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant) {
WxVtwoPrizeDrawActivity activity = this.getById(activityGrant.getActivityId(), activityGrant.getTenantId());
if(activity == null){
throw new MallinkException(Result.ERROR,"未查询到活动");
}
List<ExcelExportEntity> headList = wxVtwoActivityGrantExportTwoService.getExportHeadList();
//获得最大奖项数量
Integer orderGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxOrderGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());
Integer jointGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxJointGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());
for(int i=1;i<=orderGrantCount;i++){
if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
ExcelExportEntity entity14 = new ExcelExportEntity(null,"orderGrantList"+i,220);
List<ExcelExportEntity> entity14_list = new ArrayList<>();
ExcelExportEntity entity14_2 = new ExcelExportEntity("订单奖项名称","awardName",20);
entity14_list.add(entity14_2);
ExcelExportEntity entity14_3 = new ExcelExportEntity("订单奖项数量","awardCount",20);
entity14_list.add(entity14_3);
ExcelExportEntity entity14_4 = new ExcelExportEntity("订单奖项价值","grantPrice",20);
entity14_list.add(entity14_4);
ExcelExportEntity entity14_5 = new ExcelExportEntity("商管承担比例(%)","mallShareRate",20);
entity14_list.add(entity14_5);
ExcelExportEntity entity14_6 = new ExcelExportEntity("商户承担比例(%)","merchantShareRate",20);
entity14_list.add(entity14_6);
ExcelExportEntity entity14_7 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
entity14_list.add(entity14_7);
ExcelExportEntity entity14_8 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
entity14_list.add(entity14_8);
entity14.setList(entity14_list);
headList.add(entity14);
}else{
// ExcelExportEntity entity14 = new ExcelExportEntity("活动名称",
// "activityName_o",20);
// entity14.setNeedMerge(true);
// headList.add(entity14);
ExcelExportEntity entity16 = new ExcelExportEntity("订单奖项名称",
"awardName_o"+i,20);
entity16.setNeedMerge(true);
headList.add(entity16);
ExcelExportEntity entity16_ = new ExcelExportEntity("订单奖项数量",
"awardCount_o"+i,20);
entity16_.setNeedMerge(true);
headList.add(entity16_);
ExcelExportEntity entity17 = new ExcelExportEntity("订单奖项价值",
"grantPrice_o"+i,20);
entity17.setNeedMerge(true);
headList.add(entity17);
ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)",
"mallShareRate_o"+i,20);
entity18.setNeedMerge(true);
headList.add(entity18);
ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)",
"merchantShareRate_o"+i,20);
entity19.setNeedMerge(true);
headList.add(entity19);
ExcelExportEntity entity20 = new ExcelExportEntity(null,
"sharePriceList_o"+i,40);
List<ExcelExportEntity> 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);
}
}
//联单
for(int j=1;j<=jointGrantCount;j++){
ExcelExportEntity entity15_c = new ExcelExportEntity("联单奖项名称",
"awardName_c"+j,20);
entity15_c.setNeedMerge(true);
headList.add(entity15_c);
ExcelExportEntity entity16_c = new ExcelExportEntity("联单奖项数量",
"awardCount_c"+j,20);
entity16_c.setNeedMerge(true);
headList.add(entity16_c);
ExcelExportEntity entity17_c = new ExcelExportEntity("联单奖项价值",
"grantPrice_c"+j,20);
entity17_c.setNeedMerge(true);
headList.add(entity17_c);
ExcelExportEntity entity18_c = new ExcelExportEntity("商管承担比例(%)",
"mallShareRate_c"+j,20);
entity18_c.setNeedMerge(true);
headList.add(entity18_c);
ExcelExportEntity entity19_c = new ExcelExportEntity("商户承担比例(%)",
"merchantShareRate_c"+j,20);
entity19_c.setNeedMerge(true);
headList.add(entity19_c);
ExcelExportEntity entity20_c = new ExcelExportEntity(null,
"sharePriceList_c"+j,40);
List<ExcelExportEntity> entity20_c_list = new ArrayList<>();
ExcelExportEntity entity20_c_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
entity20_c_list.add(entity20_c_1);
ExcelExportEntity entity20_c_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
entity20_c_list.add(entity20_c_2);
entity20_c.setList(entity20_c_list);
headList.add(entity20_c);
}
List<WxVtwoActivityGrantExportTwo> activityGrantExportList = wxVtwoActivityGrantExportTwoService.findActivityGrantList(activityGrant.getActivityId(),activityGrant.getTenantId());
List<Map<String, Object>> grantObjectList = new ArrayList<>();
if(activityGrantExportList != null && !activityGrantExportList.isEmpty()){
grantObjectList = activityGrantExportList.stream().map(e -> {
Map<String, Object> map = new HashMap<>();
try {
map = BeanUtils.toMap(e);
} catch (Exception ex) {
}
List<WxVtwoActivityGrantAward> orderGrantAward = JSONObject.parseArray(e.getOrderGrantDetail(), WxVtwoActivityGrantAward.class);
if(orderGrantAward != null && !orderGrantAward.isEmpty()){
if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
Map<Long, List<WxVtwoActivityGrantAward>> orderGrantAwardMap = orderGrantAward.stream().collect(groupingBy(WxVtwoActivityGrantAward::getOrderId));
for(int i=1;i<=orderGrantCount;i++){
List<WxVtwoActivityGrantAward> sortList = new ArrayList<>();
int finalI = i-1;
e.getOrderList().forEach(order -> {
List<WxVtwoActivityGrantAward> grantAwardList = orderGrantAwardMap.get(order.getId());
WxVtwoActivityGrantAward grantAward = null;
if(grantAwardList != null && !grantAwardList.isEmpty() && grantAwardList.size() > finalI){
grantAward = grantAwardList.get(finalI);
}
if(grantAward != null){
WxVtwoActivityGrantSettlement grantSettlement = grantAward.getGrantSettlementList().get(0);
grantAward.setMallSharePrice(grantSettlement.getOrderMallSharePrice());
grantAward.setMerchantSharePrice(grantSettlement.getOrderMerchantSharePrice());
sortList.add(grantAward);
} else{
sortList.add(new WxVtwoActivityGrantAward());
}
});
map.put("orderGrantList"+i,sortList);
}
}else{
for(int i=1;i<=orderGrantAward.size();i++){
WxVtwoActivityGrantAward grantAward = orderGrantAward.get(i - 1);
map.put("awardName_o"+i,grantAward.getAwardName());
map.put("awardCount_o"+i,grantAward.getAwardCount());
map.put("grantPrice_o"+i,grantAward.getGrantPrice());
map.put("mallShareRate_o"+i,grantAward.getMallShareRate());
map.put("merchantShareRate_o"+i,grantAward.getMerchantShareRate());
List<Map<String,Object>> sharePriceList = new ArrayList<>();
Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = grantAward.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
e.getOrderList().forEach(order -> {
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
Map<String,Object> sharePriceObject = new HashMap<>();
if(grantSettlement != null){
sharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
sharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
}else{
sharePriceObject.put("mallSharePrice",0);
sharePriceObject.put("merchantSharePrice",0);
}
sharePriceList.add(sharePriceObject);
});
map.put("sharePriceList_o"+i,sharePriceList);
}
}
}
List<WxVtwoActivityGrantAward> jointGrantAward = JSONObject.parseArray(e.getJointGrantDetail(), WxVtwoActivityGrantAward.class);
if(jointGrantAward != null && !jointGrantAward.isEmpty()){
for(int j=1;j<=jointGrantAward.size();j++){
WxVtwoActivityGrantAward jointOne = jointGrantAward.get(j-1);
map.put("awardName_c"+j,jointOne.getAwardName());
map.put("awardCount_c"+j,jointOne.getAwardCount());
map.put("grantPrice_c"+j,jointOne.getGrantPrice());
map.put("mallShareRate_c"+j,jointOne.getMallShareRate());
map.put("merchantShareRate_c"+j,jointOne.getMerchantShareRate());
List<Map<String,Object>> jointSharePriceList = new ArrayList<>();
Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = jointOne.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
e.getOrderList().forEach(order -> {
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
Map<String,Object> jointSharePriceObject = new HashMap<>();
if(grantSettlement != null){
jointSharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
jointSharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
}else{
jointSharePriceObject.put("mallSharePrice",0);
jointSharePriceObject.put("merchantSharePrice",0);
}
jointSharePriceList.add(jointSharePriceObject);
});
map.put("sharePriceList_c"+j,jointSharePriceList);
}
}
return map;
}).collect(toList());
}
excelService.exportExcel(headList, grantObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response);
}
// @Override
// public void grantExportTwo(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant) {
// WxVtwoPrizeDrawActivity activity = this.getById(activityGrant.getActivityId(), activityGrant.getTenantId());
// if(activity == null){
// throw new MallinkException(Result.ERROR,"未查询到活动");
// }
//
// List<ExcelExportEntity> headList = wxVtwoActivityGrantExportTwoService.getExportHeadList();
// //获得最大奖项数量
// Integer orderGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxOrderGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());
// Integer jointGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxJointGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());
// for(int i=1;i<=orderGrantCount;i++){
// if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
// ExcelExportEntity entity14 = new ExcelExportEntity(null,"orderGrantList"+i,220);
// List<ExcelExportEntity> entity14_list = new ArrayList<>();
// ExcelExportEntity entity14_2 = new ExcelExportEntity("订单奖项名称","awardName",20);
// entity14_list.add(entity14_2);
// ExcelExportEntity entity14_3 = new ExcelExportEntity("订单奖项数量","awardCount",20);
// entity14_list.add(entity14_3);
// ExcelExportEntity entity14_4 = new ExcelExportEntity("订单奖项价值","grantPrice",20);
// entity14_list.add(entity14_4);
// ExcelExportEntity entity14_5 = new ExcelExportEntity("商管承担比例(%)","mallShareRate",20);
// entity14_list.add(entity14_5);
// ExcelExportEntity entity14_6 = new ExcelExportEntity("商户承担比例(%)","merchantShareRate",20);
// entity14_list.add(entity14_6);
// ExcelExportEntity entity14_7 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
// entity14_list.add(entity14_7);
// ExcelExportEntity entity14_8 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
// entity14_list.add(entity14_8);
//
// entity14.setList(entity14_list);
// headList.add(entity14);
// }else{
//// ExcelExportEntity entity14 = new ExcelExportEntity("活动名称",
//// "activityName_o",20);
//// entity14.setNeedMerge(true);
//// headList.add(entity14);
// ExcelExportEntity entity16 = new ExcelExportEntity("订单奖项名称",
// "awardName_o"+i,20);
// entity16.setNeedMerge(true);
// headList.add(entity16);
// ExcelExportEntity entity16_ = new ExcelExportEntity("订单奖项数量",
// "awardCount_o"+i,20);
// entity16_.setNeedMerge(true);
// headList.add(entity16_);
// ExcelExportEntity entity17 = new ExcelExportEntity("订单奖项价值",
// "grantPrice_o"+i,20);
// entity17.setNeedMerge(true);
// headList.add(entity17);
// ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)",
// "mallShareRate_o"+i,20);
// entity18.setNeedMerge(true);
// headList.add(entity18);
// ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)",
// "merchantShareRate_o"+i,20);
// entity19.setNeedMerge(true);
// headList.add(entity19);
//
// ExcelExportEntity entity20 = new ExcelExportEntity(null,
// "sharePriceList_o"+i,40);
// List<ExcelExportEntity> 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);
// }
// }
//
// //联单
// for(int j=1;j<=jointGrantCount;j++){
// ExcelExportEntity entity15_c = new ExcelExportEntity("联单奖项名称",
// "awardName_c"+j,20);
// entity15_c.setNeedMerge(true);
// headList.add(entity15_c);
// ExcelExportEntity entity16_c = new ExcelExportEntity("联单奖项数量",
// "awardCount_c"+j,20);
// entity16_c.setNeedMerge(true);
// headList.add(entity16_c);
// ExcelExportEntity entity17_c = new ExcelExportEntity("联单奖项价值",
// "grantPrice_c"+j,20);
// entity17_c.setNeedMerge(true);
// headList.add(entity17_c);
// ExcelExportEntity entity18_c = new ExcelExportEntity("商管承担比例(%)",
// "mallShareRate_c"+j,20);
// entity18_c.setNeedMerge(true);
// headList.add(entity18_c);
// ExcelExportEntity entity19_c = new ExcelExportEntity("商户承担比例(%)",
// "merchantShareRate_c"+j,20);
// entity19_c.setNeedMerge(true);
// headList.add(entity19_c);
//
// ExcelExportEntity entity20_c = new ExcelExportEntity(null,
// "sharePriceList_c"+j,40);
// List<ExcelExportEntity> entity20_c_list = new ArrayList<>();
// ExcelExportEntity entity20_c_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
// entity20_c_list.add(entity20_c_1);
// ExcelExportEntity entity20_c_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
// entity20_c_list.add(entity20_c_2);
// entity20_c.setList(entity20_c_list);
// headList.add(entity20_c);
// }
//
// List<WxVtwoActivityGrantExportTwo> activityGrantExportList = wxVtwoActivityGrantExportTwoService.findActivityGrantList(activityGrant.getActivityId(),activityGrant.getTenantId());
// List<Map<String, Object>> grantObjectList = new ArrayList<>();
// if(activityGrantExportList != null && !activityGrantExportList.isEmpty()){
// grantObjectList = activityGrantExportList.stream().map(e -> {
// Map<String, Object> map = new HashMap<>();
// try {
// map = BeanUtils.toMap(e);
// } catch (Exception ex) {
// }
//
// List<WxVtwoActivityGrantAward> orderGrantAward = JSONObject.parseArray(e.getOrderGrantDetail(), WxVtwoActivityGrantAward.class);
// if(orderGrantAward != null && !orderGrantAward.isEmpty()){
// if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
// Map<Long, List<WxVtwoActivityGrantAward>> orderGrantAwardMap = orderGrantAward.stream().collect(groupingBy(WxVtwoActivityGrantAward::getOrderId));
// for(int i=1;i<=orderGrantCount;i++){
// List<WxVtwoActivityGrantAward> sortList = new ArrayList<>();
// int finalI = i-1;
// e.getOrderList().forEach(order -> {
// List<WxVtwoActivityGrantAward> grantAwardList = orderGrantAwardMap.get(order.getId());
// WxVtwoActivityGrantAward grantAward = null;
// if(grantAwardList != null && !grantAwardList.isEmpty() && grantAwardList.size() > finalI){
// grantAward = grantAwardList.get(finalI);
// }
// if(grantAward != null){
// WxVtwoActivityGrantSettlement grantSettlement = grantAward.getGrantSettlementList().get(0);
// grantAward.setMallSharePrice(grantSettlement.getOrderMallSharePrice());
// grantAward.setMerchantSharePrice(grantSettlement.getOrderMerchantSharePrice());
// sortList.add(grantAward);
// } else{
// sortList.add(new WxVtwoActivityGrantAward());
// }
// });
//
// map.put("orderGrantList"+i,sortList);
// }
//
// }else{
// for(int i=1;i<=orderGrantAward.size();i++){
// WxVtwoActivityGrantAward grantAward = orderGrantAward.get(i - 1);
// map.put("awardName_o"+i,grantAward.getAwardName());
// map.put("awardCount_o"+i,grantAward.getAwardCount());
// map.put("grantPrice_o"+i,grantAward.getGrantPrice());
// map.put("mallShareRate_o"+i,grantAward.getMallShareRate());
// map.put("merchantShareRate_o"+i,grantAward.getMerchantShareRate());
//
// List<Map<String,Object>> sharePriceList = new ArrayList<>();
//
// Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = grantAward.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
// e.getOrderList().forEach(order -> {
// WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
// Map<String,Object> sharePriceObject = new HashMap<>();
// if(grantSettlement != null){
// sharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
// sharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
// }else{
// sharePriceObject.put("mallSharePrice",0);
// sharePriceObject.put("merchantSharePrice",0);
// }
// sharePriceList.add(sharePriceObject);
// });
//
// map.put("sharePriceList_o"+i,sharePriceList);
// }
// }
// }
//
// List<WxVtwoActivityGrantAward> jointGrantAward = JSONObject.parseArray(e.getJointGrantDetail(), WxVtwoActivityGrantAward.class);
// if(jointGrantAward != null && !jointGrantAward.isEmpty()){
// for(int j=1;j<=jointGrantAward.size();j++){
// WxVtwoActivityGrantAward jointOne = jointGrantAward.get(j-1);
// map.put("awardName_c"+j,jointOne.getAwardName());
// map.put("awardCount_c"+j,jointOne.getAwardCount());
// map.put("grantPrice_c"+j,jointOne.getGrantPrice());
// map.put("mallShareRate_c"+j,jointOne.getMallShareRate());
// map.put("merchantShareRate_c"+j,jointOne.getMerchantShareRate());
//
// List<Map<String,Object>> jointSharePriceList = new ArrayList<>();
//
// Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = jointOne.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
// e.getOrderList().forEach(order -> {
// WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
// Map<String,Object> jointSharePriceObject = new HashMap<>();
// if(grantSettlement != null){
// jointSharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
// jointSharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
// }else{
// jointSharePriceObject.put("mallSharePrice",0);
// jointSharePriceObject.put("merchantSharePrice",0);
// }
// jointSharePriceList.add(jointSharePriceObject);
// });
//
// map.put("sharePriceList_c"+j,jointSharePriceList);
// }
// }
//
// return map;
// }).collect(toList());
// }
// excelService.exportExcel(headList, grantObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response);
//
// }
@Override
public void grantExportTwoNew(HttpServletRequest request, HttpServletResponse response, WxVtwoActivityGrant activityGrant) {
@@ -623,196 +625,145 @@ public class WxVtwoPrizeDrawActivityServiceImpl extends ServiceImpl<WxVtwoPrizeD
}

List<ExcelExportEntity> headList = wxVtwoActivityGrantExportTwoService.getExportHeadList();
// //获得最大奖项数量
Integer orderGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxOrderGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());
Integer jointGrantCount = wxVtwoActivityGrantExportTwoService.selectMaxJointGrantCount(activityGrant.getActivityId(),activityGrant.getTenantId());

if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
ExcelExportEntity entity14 = new ExcelExportEntity(null,"orderGrantList",220);
List<ExcelExportEntity> entity14_list = new ArrayList<>();
ExcelExportEntity entity14_2 = new ExcelExportEntity("订单奖项名称","awardName",20);
entity14_list.add(entity14_2);
ExcelExportEntity entity14_3 = new ExcelExportEntity("订单奖项数量","awardCount",20);
entity14_list.add(entity14_3);
ExcelExportEntity entity14_4 = new ExcelExportEntity("订单奖项价值","grantPrice",20);
entity14_list.add(entity14_4);
ExcelExportEntity entity14_5 = new ExcelExportEntity("商管承担比例(%)","mallShareRate",20);
entity14_list.add(entity14_5);
ExcelExportEntity entity14_6 = new ExcelExportEntity("商户承担比例(%)","merchantShareRate",20);
entity14_list.add(entity14_6);
ExcelExportEntity entity14_7 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
entity14_list.add(entity14_7);
ExcelExportEntity entity14_8 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
entity14_list.add(entity14_8);

entity14.setList(entity14_list);
headList.add(entity14);
}else{
// ExcelExportEntity entity14 = new ExcelExportEntity("活动名称",
// "activityName_o",20);
// entity14.setNeedMerge(true);
// headList.add(entity14);
ExcelExportEntity entity16 = new ExcelExportEntity("订单奖项名称",
"awardName_o",20);
entity16.setNeedMerge(true);
headList.add(entity16);
ExcelExportEntity entity16_ = new ExcelExportEntity("订单奖项数量",
"awardCount_o",20);
entity16_.setNeedMerge(true);
headList.add(entity16_);
ExcelExportEntity entity17 = new ExcelExportEntity("订单奖项价值",
"grantPrice_o",20);
entity17.setNeedMerge(true);
headList.add(entity17);
ExcelExportEntity entity18 = new ExcelExportEntity("商管承担比例(%)",
"mallShareRate_o",20);
entity18.setNeedMerge(true);
headList.add(entity18);
ExcelExportEntity entity19 = new ExcelExportEntity("商户承担比例(%)",
"merchantShareRate_o",20);
entity19.setNeedMerge(true);
headList.add(entity19);

ExcelExportEntity entity20 = new ExcelExportEntity(null,
"sharePriceList_o",40);
List<ExcelExportEntity> 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 entity14 = new ExcelExportEntity(null,"orderGrantList",220);
List<ExcelExportEntity> entity14_list = new ArrayList<>();
ExcelExportEntity entity14_2 = new ExcelExportEntity("订单奖项名称","awardName",20);
entity14_list.add(entity14_2);
ExcelExportEntity entity14_3 = new ExcelExportEntity("订单奖项数量","awardCount",20);
entity14_list.add(entity14_3);
ExcelExportEntity entity14_4 = new ExcelExportEntity("订单奖项价值","grantPrice",20);
entity14_list.add(entity14_4);
ExcelExportEntity entity14_5 = new ExcelExportEntity("商管承担比例(%)","mallShareRate",20);
entity14_list.add(entity14_5);
ExcelExportEntity entity14_6 = new ExcelExportEntity("商户承担比例(%)","merchantShareRate",20);
entity14_list.add(entity14_6);
ExcelExportEntity entity14_7 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
entity14_list.add(entity14_7);
ExcelExportEntity entity14_8 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
entity14_list.add(entity14_8);
entity14.setList(entity14_list);
headList.add(entity14);
//联单
ExcelExportEntity entity15_c = new ExcelExportEntity("联单奖项名称",
"awardName_c",20);
entity15_c.setNeedMerge(true);
headList.add(entity15_c);
ExcelExportEntity entity16_c = new ExcelExportEntity("联单奖项数量",
"awardCount_c",20);
entity16_c.setNeedMerge(true);
headList.add(entity16_c);
ExcelExportEntity entity17_c = new ExcelExportEntity("联单奖项价值",
"grantPrice_c",20);
entity17_c.setNeedMerge(true);
headList.add(entity17_c);
ExcelExportEntity entity18_c = new ExcelExportEntity("商管承担比例(%)",
"mallShareRate_c",20);
entity18_c.setNeedMerge(true);
headList.add(entity18_c);
ExcelExportEntity entity19_c = new ExcelExportEntity("商户承担比例(%)",
"merchantShareRate_c",20);
entity19_c.setNeedMerge(true);
headList.add(entity19_c);

ExcelExportEntity entity20_c = new ExcelExportEntity(null,
"sharePriceList_c",40);
List<ExcelExportEntity> entity20_c_list = new ArrayList<>();
ExcelExportEntity entity20_c_1 = new ExcelExportEntity("商管承担金额","mallSharePrice",20);
entity20_c_list.add(entity20_c_1);
ExcelExportEntity entity20_c_2 = new ExcelExportEntity("商户承担金额","merchantSharePrice",20);
entity20_c_list.add(entity20_c_2);
entity20_c.setList(entity20_c_list);
headList.add(entity20_c);

List<WxVtwoActivityGrantExportTwo> activityGrantExportList = wxVtwoActivityGrantExportTwoService.findActivityGrantList(activityGrant.getActivityId(),activityGrant.getTenantId());
List<Map<String, Object>> grantObjectList = new ArrayList<>();
ExcelExportEntity entity15_c = new ExcelExportEntity("联单奖项名称","awardNameLink",20);
entity15_c.setNeedMerge(true);
headList.add(entity15_c);
ExcelExportEntity entity16_c = new ExcelExportEntity("联单奖项数量","awardCountLink",20);
entity16_c.setNeedMerge(true);
headList.add(entity16_c);
ExcelExportEntity entity17_c = new ExcelExportEntity("联单奖项价值","grantPriceLink",20);
entity17_c.setNeedMerge(true);
headList.add(entity17_c);
ExcelExportEntity entity18_c = new ExcelExportEntity("商管承担比例(%)","mallShareRateLink",20);
entity18_c.setNeedMerge(true);
headList.add(entity18_c);
ExcelExportEntity entity19_c = new ExcelExportEntity("商户承担比例(%)","merchantShareRateLink",20);
entity19_c.setNeedMerge(true);
headList.add(entity19_c);
ExcelExportEntity entity20_c = new ExcelExportEntity("商管承担金额","mallSharePriceLink",20);
entity19_c.setNeedMerge(true);
headList.add(entity20_c);
ExcelExportEntity entity21_c = new ExcelExportEntity("商户承担金额","merchantSharePriceLink",20);
entity19_c.setNeedMerge(true);
headList.add(entity21_c);

List<WxVtwoActivityPrizeDrawMainData> activityGrantExportList = wxVtwoActivityGrantExportTwoService.findActivityGrantExportList(activityGrant.getActivityId(),activityGrant.getTenantId());
if(activityGrantExportList != null && !activityGrantExportList.isEmpty()){
grantObjectList = activityGrantExportList.stream().map(e -> {
Map<String, Object> map = new HashMap<>();
try {
map = BeanUtils.toMap(e);
} catch (Exception ex) {
}

List<WxVtwoActivityGrantAward> orderGrantAward = JSONObject.parseArray(e.getOrderGrantDetail(), WxVtwoActivityGrantAward.class);
for (int k = 0 ; k < activityGrantExportList.size(); k++) {
WxVtwoActivityPrizeDrawMainData aget = activityGrantExportList.get(k);
//发奖记录,针对客户发奖,可一次发多个订单
List<WxVtwoActivityGrantAward> orderGrantAward = JSONObject.parseArray(aget.getOrderGrantDetail(), WxVtwoActivityGrantAward.class);
if(orderGrantAward != null && !orderGrantAward.isEmpty()){
if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
//统计每个订单发奖的列表
Map<Long, List<WxVtwoActivityGrantAward>> orderGrantAwardMap = orderGrantAward.stream().collect(groupingBy(WxVtwoActivityGrantAward::getOrderId));
List<WxVtwoActivityGrantAward> sortList = new ArrayList<>();
for(int i=1;i<=orderGrantCount;i++){
int finalI = i-1;
e.getOrderList().forEach(order -> {
List<WxVtwoActivityGrantAward> grantAwardList = orderGrantAwardMap.get(order.getId());
WxVtwoActivityGrantAward grantAward = null;
if(grantAwardList != null && !grantAwardList.isEmpty() && grantAwardList.size() > finalI){
grantAward = grantAwardList.get(finalI);
}
if(grantAward != null){
WxVtwoActivityGrantSettlement grantSettlement = grantAward.getGrantSettlementList().get(0);
grantAward.setMallSharePrice(grantSettlement.getOrderMallSharePrice());
grantAward.setMerchantSharePrice(grantSettlement.getOrderMerchantSharePrice());
sortList.add(grantAward);
} else{
sortList.add(new WxVtwoActivityGrantAward());
}
});
//联单
List<WxVtwoActivityGrantAward> jointGrantAward = JSONObject.parseArray(aget.getJointGrantDetail(), WxVtwoActivityGrantAward.class);
//根据每个订单发奖的列表来循环生成多行
if (null != aget.getOrderList()) {
aget.getOrderList().forEach(order -> {
List<WxVtwoActivityPrizeDrawPrizeDetailData> prizeDetailList = new ArrayList<WxVtwoActivityPrizeDrawPrizeDetailData>();
//这个订单里面有多少个奖品
List<WxVtwoActivityGrantAward> grantAwardList = orderGrantAwardMap.get(order.getId());
if (null != grantAwardList && grantAwardList.size() > 0 ) {
for (int i = 0; i < grantAwardList.size(); i++) {
WxVtwoActivityGrantAward ga = grantAwardList.get(i);
WxVtwoActivityPrizeDrawPrizeDetailData awardName = new WxVtwoActivityPrizeDrawPrizeDetailData("awardName",ga.getAwardName());
prizeDetailList.add(awardName);
WxVtwoActivityPrizeDrawPrizeDetailData awardCount = new WxVtwoActivityPrizeDrawPrizeDetailData("awardCount",ga.getAwardCount());
prizeDetailList.add(awardCount);
WxVtwoActivityPrizeDrawPrizeDetailData grantPrice = new WxVtwoActivityPrizeDrawPrizeDetailData("grantPrice",ga.getGrantPrice());
prizeDetailList.add(grantPrice);
WxVtwoActivityPrizeDrawPrizeDetailData mallShareRate = new WxVtwoActivityPrizeDrawPrizeDetailData("mallShareRate",ga.getMallShareRate());
prizeDetailList.add(mallShareRate);
WxVtwoActivityPrizeDrawPrizeDetailData merchantShareRate = new WxVtwoActivityPrizeDrawPrizeDetailData("merchantShareRate",ga.getMerchantShareRate());
prizeDetailList.add(merchantShareRate);
//单笔订单计算
if(EnumOfflineActivityMode.ONE.getCode().equals(activity.getAmountModel())){
WxVtwoActivityGrantSettlement grantSettlement = ga.getGrantSettlementList().get(0);
WxVtwoActivityPrizeDrawPrizeDetailData mallSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("mallSharePrice",grantSettlement.getOrderMallSharePrice());
prizeDetailList.add(mallSharePrice);
WxVtwoActivityPrizeDrawPrizeDetailData merchantSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
prizeDetailList.add(merchantSharePrice);
}else {
Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = ga.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
if(grantSettlement != null){
WxVtwoActivityPrizeDrawPrizeDetailData _mallSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("mallSharePrice",grantSettlement.getOrderMallSharePrice());
prizeDetailList.add(_mallSharePrice);
WxVtwoActivityPrizeDrawPrizeDetailData _merchantSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
prizeDetailList.add(_merchantSharePrice);
}else{
prizeDetailList.add(new WxVtwoActivityPrizeDrawPrizeDetailData("mallSharePrice",0));
prizeDetailList.add(new WxVtwoActivityPrizeDrawPrizeDetailData("merchantSharePrice",0));
}
}
}
}
if(jointGrantAward != null && !jointGrantAward.isEmpty()){
for (int i = 0 ; i < jointGrantAward.size() ; i ++) {
WxVtwoActivityGrantAward jointOne = jointGrantAward.get(i);
WxVtwoActivityPrizeDrawPrizeDetailData awardNameLink = new WxVtwoActivityPrizeDrawPrizeDetailData("awardNameLink",jointOne.getAwardName());
prizeDetailList.add(awardNameLink);
WxVtwoActivityPrizeDrawPrizeDetailData awardCountLink = new WxVtwoActivityPrizeDrawPrizeDetailData("awardCountLink",jointOne.getAwardCount());
prizeDetailList.add(awardCountLink);
WxVtwoActivityPrizeDrawPrizeDetailData grantPriceLink = new WxVtwoActivityPrizeDrawPrizeDetailData("grantPriceLink",jointOne.getGrantPrice());
prizeDetailList.add(grantPriceLink);
WxVtwoActivityPrizeDrawPrizeDetailData mallShareRateLink = new WxVtwoActivityPrizeDrawPrizeDetailData("mallShareRateLink",jointOne.getMallShareRate());
prizeDetailList.add(mallShareRateLink);
WxVtwoActivityPrizeDrawPrizeDetailData merchantShareRateLink = new WxVtwoActivityPrizeDrawPrizeDetailData("merchantShareRateLink",jointOne.getMerchantShareRate());
prizeDetailList.add(merchantShareRateLink);
Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = jointOne.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
if(grantSettlement != null){
WxVtwoActivityPrizeDrawPrizeDetailData _mallSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("mallSharePrice",grantSettlement.getOrderMallSharePrice());
prizeDetailList.add(_mallSharePrice);
WxVtwoActivityPrizeDrawPrizeDetailData _merchantSharePrice = new WxVtwoActivityPrizeDrawPrizeDetailData("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
prizeDetailList.add(_merchantSharePrice);
}else{
prizeDetailList.add(new WxVtwoActivityPrizeDrawPrizeDetailData("mallSharePrice",0));
prizeDetailList.add(new WxVtwoActivityPrizeDrawPrizeDetailData("merchantSharePrice",0));
}
}
}
order.setOrderGrantList(prizeDetailList);
});
}
map.put("orderGrantList",sortList);

}else{
for(int i=1;i<=orderGrantAward.size();i++){
WxVtwoActivityGrantAward grantAward = orderGrantAward.get(i - 1);
map.put("awardName_o",grantAward.getAwardName());
map.put("awardCount_o",grantAward.getAwardCount());
map.put("grantPrice_o",grantAward.getGrantPrice());
map.put("mallShareRate_o",grantAward.getMallShareRate());
map.put("merchantShareRate_o",grantAward.getMerchantShareRate());

List<Map<String,Object>> sharePriceList = new ArrayList<>();

Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = grantAward.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
e.getOrderList().forEach(order -> {
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
Map<String,Object> sharePriceObject = new HashMap<>();
if(grantSettlement != null){
sharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
sharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
}else{
sharePriceObject.put("mallSharePrice",0);
sharePriceObject.put("merchantSharePrice",0);
}
sharePriceList.add(sharePriceObject);
});

map.put("sharePriceList_o",sharePriceList);
}
}
}

List<WxVtwoActivityGrantAward> jointGrantAward = JSONObject.parseArray(e.getJointGrantDetail(), WxVtwoActivityGrantAward.class);
if(jointGrantAward != null && !jointGrantAward.isEmpty()){
List<Map<String,Object>> jointSharePriceList = new ArrayList<>();
for(int j=1;j<=jointGrantAward.size();j++){
WxVtwoActivityGrantAward jointOne = jointGrantAward.get(j-1);
map.put("awardName_c",jointOne.getAwardName());
map.put("awardCount_c",jointOne.getAwardCount());
map.put("grantPrice_c",jointOne.getGrantPrice());
map.put("mallShareRate_c",jointOne.getMallShareRate());
map.put("merchantShareRate_c",jointOne.getMerchantShareRate());
Map<Long, WxVtwoActivityGrantSettlement> grantSettlementMap = jointOne.getGrantSettlementList().stream().collect(toMap(WxVtwoActivityGrantSettlement::getOrderId, Function.identity()));
e.getOrderList().forEach(order -> {
WxVtwoActivityGrantSettlement grantSettlement = grantSettlementMap.get(order.getId());
Map<String,Object> jointSharePriceObject = new HashMap<>();
if(grantSettlement != null){
jointSharePriceObject.put("mallSharePrice",grantSettlement.getOrderMallSharePrice());
jointSharePriceObject.put("merchantSharePrice",grantSettlement.getOrderMerchantSharePrice());
}else{
jointSharePriceObject.put("mallSharePrice",0);
jointSharePriceObject.put("merchantSharePrice",0);
}
jointSharePriceList.add(jointSharePriceObject);
});
}
map.put("sharePriceList_c",jointSharePriceList);
}

return map;
}).collect(toList());
}
}
excelService.exportExcel(headList, grantObjectList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response);
excelService.exportExcel(headList, activityGrantExportList, null, "抽奖活动发放明细", "抽奖活动发放明细.xlsx",true, response);

}



Notiek ielāde…
Atcelt
Saglabāt