Просмотр исходного кода

//activity v.2

release_toaliyun_real
xiaohu 1 год назад
Родитель
Сommit
c81e4a949e
7 измененных файлов: 18 добавлений и 10 удалений
  1. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java
  2. +1
    -1
      mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java
  3. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoSettlementStatistics.java
  4. +4
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java
  5. +3
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantStatisticsServiceImpl.java
  6. +3
    -3
      mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java
  7. +3
    -3
      mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml

+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderBusinessStatistics.java Просмотреть файл

@@ -14,7 +14,7 @@ public class WxVtwoOrderBusinessStatistics implements Serializable {
private String businessName;

private Integer businessCount;
private BigDecimal sumMoney;
private BigDecimal orderMoney;

private Double countRatio;
private Double moneyRatio;


+ 1
- 1
mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoOrderCountStatistics.java Просмотреть файл

@@ -14,6 +14,6 @@ public class WxVtwoOrderCountStatistics implements Serializable {

private Integer userCount;
private Integer orderCount;
private BigDecimal sumMoney;
private BigDecimal orderMoney;
private Integer merchantCount;
}

+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/vo/WxVtwoSettlementStatistics.java Просмотреть файл

@@ -15,4 +15,7 @@ public class WxVtwoSettlementStatistics implements Serializable {
private Integer merchantCount;
private BigDecimal mallPrice;
private BigDecimal merchantPrice;

private double mallRatio;
private double merchantRatio;
}

+ 4
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantSettlementServiceImpl.java Просмотреть файл

@@ -222,7 +222,10 @@ public class WxVtwoActivityGrantSettlementServiceImpl extends ServiceImpl<WxVtwo
@Override
public WxVtwoSettlementStatistics activitySettlementStatistics(WxVtwoActivityStatisticsVo statisticsVo) {
WxVtwoActivityGrantSettlement grantSettlement = handleStatisticsVo(statisticsVo);
return wxVtwoActivityGrantSettlementMapper.settlementStatistics(grantSettlement);
WxVtwoSettlementStatistics settlementStatistics = wxVtwoActivityGrantSettlementMapper.settlementStatistics(grantSettlement);
settlementStatistics.setMallRatio(settlementStatistics.getMallPrice().divide(settlementStatistics.getGrantPrice(),4,RoundingMode.HALF_UP).doubleValue());
settlementStatistics.setMerchantRatio(1-settlementStatistics.getMallRatio());
return settlementStatistics;
}

@Override


+ 3
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityGrantStatisticsServiceImpl.java Просмотреть файл

@@ -6,6 +6,7 @@ import com.iformall.domain.po.WxVtwoCashBackAward;
import com.iformall.domain.vo.WxVtwoActivityStatisticsVo;
import com.iformall.domain.vo.WxVtwoAwardStatistics;
import com.iformall.domain.vo.WxVtwoAwardGrantStatistics;
import com.iformall.domain.vo.WxVtwoOrderBusinessStatistics;
import com.iformall.enums.EnumOfflineActivityType;
import com.iformall.service.*;
import com.iformall.utils.DateUtils;
@@ -176,6 +177,7 @@ public class WxVtwoActivityGrantStatisticsServiceImpl implements WxVtwoActivityG
}
awardGrantStatisticsList.add(awardGrantStatisticsItem);
}
return awardGrantStatisticsList.stream().sorted(Comparator.comparing(WxVtwoAwardGrantStatistics::getPriceRatio).reversed()).collect(Collectors.toList());
}else{
List<WxVtwoActivityAward> activityAwardList = wxVtwoActivityAwardService.findActivityAwardList(statisticsVo.getActivityId(), statisticsVo.getTenantId());
List<WxVtwoAwardGrantStatistics> awardGrantStatistics = wxVtwoActivityGrantAwardService.awardItemStatistics(statisticsVo);
@@ -204,8 +206,8 @@ public class WxVtwoActivityGrantStatisticsServiceImpl implements WxVtwoActivityG
}
awardGrantStatisticsList.add(awardGrantStatisticsItem);
}
return awardGrantStatisticsList.stream().sorted(Comparator.comparing(WxVtwoAwardGrantStatistics::getCountRatio).reversed()).collect(Collectors.toList());
}
return awardGrantStatisticsList;
}
}



+ 3
- 3
mallinkService/src/main/java/com/iformall/service/impl/WxVtwoActivityOrderServiceImpl.java Просмотреть файл

@@ -473,7 +473,7 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl<WxVtwoActivityOr
countStatistics = new WxVtwoOrderCountStatistics();
countStatistics.setUserCount(0);
countStatistics.setOrderCount(0);
countStatistics.setSumMoney(BigDecimal.ZERO);
countStatistics.setOrderMoney(BigDecimal.ZERO);
countStatistics.setMerchantCount(0);
}
countStatistics.setXTime(date.substring(5).replace("-", "/"));
@@ -488,11 +488,11 @@ public class WxVtwoActivityOrderServiceImpl extends ServiceImpl<WxVtwoActivityOr
List<WxVtwoOrderBusinessStatistics> businessStatistics = wxVtwoActivityOrderMapper.getBusinessStatistics(activityOrder);
if(businessStatistics != null && !businessStatistics.isEmpty()){
Map<Integer, WxBusiness> bussinessMap = wxBusinessService.findAllMap(activityOrder);
BigDecimal totalMoney = businessStatistics.stream().map(WxVtwoOrderBusinessStatistics::getSumMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
BigDecimal totalMoney = businessStatistics.stream().map(WxVtwoOrderBusinessStatistics::getOrderMoney).reduce(BigDecimal.ZERO, BigDecimal::add);
int totalCount = businessStatistics.size();
for (WxVtwoOrderBusinessStatistics statistics : businessStatistics){
statistics.setBusinessName(statistics.getBusinessId() == null?"其他":bussinessMap.get(statistics.getBusinessId()).getTitle());
statistics.setMoneyRatio(statistics.getSumMoney().divide(totalMoney,4, RoundingMode.HALF_UP).doubleValue());
statistics.setMoneyRatio(statistics.getOrderMoney().divide(totalMoney,4, RoundingMode.HALF_UP).doubleValue());
statistics.setCountRatio(new BigDecimal(statistics.getBusinessCount()).divide(new BigDecimal(totalCount),4, RoundingMode.HALF_UP).doubleValue());
}
return businessStatistics.stream().sorted(Comparator.comparing(WxVtwoOrderBusinessStatistics::getMoneyRatio).reversed()).collect(Collectors.toList());


+ 3
- 3
mallinkService/src/main/resources/mapper/WxVtwoActivityOrderMapper.xml Просмотреть файл

@@ -188,7 +188,7 @@
<select id="getCountStatistics" parameterType="com.iformall.domain.po.WxVtwoActivityOrder" resultType="com.iformall.domain.vo.WxVtwoOrderCountStatistics">
select count(DISTINCT cus_phone) userCount,
count(1) orderCount,
IFNULL(sum(order_money),0) sumMoney,
IFNULL(sum(order_money),0) orderMoney,
count(DISTINCT merchant_id) merchantCount
from wx_vtwo_activity_order
<include refid="dynamicWhereConditions" />
@@ -197,7 +197,7 @@
select DATE_FORMAT(create_date,'%Y-%m-%d') as xTime,
count(DISTINCT cus_phone) userCount,
count(1) orderCount,
IFNULL(sum(order_money),0) sumMoney,
IFNULL(sum(order_money),0) orderMoney,
count(DISTINCT merchant_id) merchantCount
from wx_vtwo_activity_order
<include refid="dynamicWhereConditions" />
@@ -206,7 +206,7 @@
<select id="getBusinessStatistics" parameterType="com.iformall.domain.po.WxVtwoActivityOrder" resultType="com.iformall.domain.vo.WxVtwoOrderBusinessStatistics">
select business_id businessId,
count(1) businessCount,
IFNULL(sum(order_money),0) sumMoney
IFNULL(sum(order_money),0) orderMoney
from wx_vtwo_activity_order
<include refid="dynamicWhereConditions" />
group by business_id


Загрузка…
Отмена
Сохранить