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

feat:修改统计sql

release_toaliyun_real
xmzhao71 2 лет назад
Родитель
Сommit
944682e27d
5 измененных файлов: 31 добавлений и 31 удалений
  1. +6
    -6
      mallinkService/src/main/java/com/iformall/domain/vo/cockpit/CountBasicVO.java
  2. +12
    -12
      mallinkService/src/main/java/com/iformall/service/impl/CockpitScreenServiceImpl.java
  3. +6
    -11
      mallinkService/src/main/java/com/iformall/utils/DateUtils.java
  4. +5
    -1
      mallinkService/src/main/resources/mapper/WxMerchantMapper.xml
  5. +2
    -1
      mallinkService/src/main/resources/mapper/WxShopMapper.xml

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

@@ -24,10 +24,10 @@ public class CountBasicVO {
@ApiModelProperty(value = "总有车会员数")
private Integer carUserCount;

@ApiModelProperty(value = "日访问量")
private Integer todayPvCount;
@ApiModelProperty(value = "日会员数")
private Integer todayUserCount;
@ApiModelProperty(value = "日交易金额")
private BigDecimal todayTradingAmount;
@ApiModelProperty(value = "日访问量")
private Integer yesterdayPvCount;
@ApiModelProperty(value = "日会员数")
private Integer yesterdayUserCount;
@ApiModelProperty(value = "日交易金额")
private BigDecimal yesterdayTradingAmount;
}

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

@@ -193,12 +193,12 @@ public class CockpitScreenServiceImpl implements CockpitScreenService {

CountOrderTrendVO.OrderInfo orderInfo = new CountOrderTrendVO.OrderInfo();
BigDecimal orderAmount = tradeOrder.stream().map(MonthOrderMapping::getAmount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
orderInfo.setAmount(orderAmount.divide(BigDecimal.valueOf(100)));
orderInfo.setAmount(orderAmount.divide(BigDecimal.valueOf(100), CommonConstant.SCALE_2, RoundingMode.HALF_UP));
orderInfo.setCount(tradeOrder.stream().map(MonthOrderMapping::getCount).reduce(Integer::sum).orElse(0));

CountOrderTrendVO.VerifiedOrderInfo verifiedOrderInfo = new CountOrderTrendVO.VerifiedOrderInfo();
BigDecimal verifiedOrderAmount = verifiedOrder.stream().map(MonthOrderMapping::getAmount).reduce(BigDecimal::add).orElse(BigDecimal.ZERO);
verifiedOrderInfo.setAmount(verifiedOrderAmount.divide(BigDecimal.valueOf(100)));
verifiedOrderInfo.setAmount(verifiedOrderAmount.divide(BigDecimal.valueOf(100), CommonConstant.SCALE_2, RoundingMode.HALF_UP));
verifiedOrderInfo.setCount(verifiedOrder.stream().map(MonthOrderMapping::getCount).reduce(Integer::sum).orElse(0));
verifiedOrderInfo.setUserCount(verifiedOrder.stream().map(MonthOrderMapping::getUserCount).reduce(Integer::sum).orElse(0));

@@ -217,11 +217,11 @@ public class CockpitScreenServiceImpl implements CockpitScreenService {

BigDecimal totalTradingAmount = BigDecimal.ZERO;
BigDecimal totalVerifiedAmount = BigDecimal.ZERO;
BigDecimal todayTradingAmount = BigDecimal.ZERO;
BigDecimal yesterdayTradingAmount = BigDecimal.ZERO;
for (String tenantId : tenantIds) {
totalTradingAmount = totalTradingAmount.add(wxCouponOrderMapper.sumOrderAmount(tenantId, null, null));
totalVerifiedAmount = totalVerifiedAmount.add(wxCouponOrderMapper.sumOrderAmount(tenantId, EnumCouponOrderStatus.COUPON_ORDER_USED.getCode(), new Date()));
todayTradingAmount = todayTradingAmount.add(wxCouponOrderMapper.sumOrderAmount(tenantId, null, new Date()));
totalVerifiedAmount = totalVerifiedAmount.add(wxCouponOrderMapper.sumOrderAmount(tenantId, EnumCouponOrderStatus.COUPON_ORDER_USED.getCode(), null));
yesterdayTradingAmount = yesterdayTradingAmount.add(wxCouponOrderMapper.sumOrderAmount(tenantId, null, DateUtils.getPreviousDay()));
}

if(wxMallService.isgroupSupport(tenantInfo)){
@@ -229,26 +229,26 @@ public class CockpitScreenServiceImpl implements CockpitScreenService {
tenantInfo.setTenantId(null);
}
Integer totalUserCount = wxCUserBasicInfoMapper.countUser(tenantInfo.getTenantId(), tenantInfo.getFinalTenantId(), null, null);
Integer todayUserCount = wxCUserBasicInfoMapper.countUser(tenantInfo.getTenantId(), tenantInfo.getFinalTenantId(), new Date(), new Date());
Integer yesterdayUserCount = wxCUserBasicInfoMapper.countUser(tenantInfo.getTenantId(), tenantInfo.getFinalTenantId(), DateUtils.getPreviousDay(), DateUtils.getPreviousDay());
Integer weekUserCount = wxCUserBasicInfoMapper.countUser(tenantInfo.getTenantId(), tenantInfo.getFinalTenantId(), DateUtils.getFirstDayForCurrWeek(), DateUtils.getLastDayForCurrWeek());

Integer totalMerchantCount = wxMerchantMapper.countMerchant(tenantIds);
SumVisitDTO sumVisit = wxUserVisitMapper.sumVisit(tenantIds, null);
SumVisitDTO todaySumVisit = wxUserVisitMapper.sumVisit(tenantIds, new Date());
SumVisitDTO yesterdaySumVisit = wxUserVisitMapper.sumVisit(tenantIds, DateUtils.getPreviousDay());
Integer carUserCount = wxCUserCarMapper.countCarUser(tenantIds);

CountBasicVO vo = new CountBasicVO();
vo.setTotalTradingAmount(totalTradingAmount.divide(BigDecimal.valueOf(100)));
vo.setTotalVerifiedAmount(totalVerifiedAmount.divide(BigDecimal.valueOf(100)));
vo.setTotalTradingAmount(totalTradingAmount.divide(BigDecimal.valueOf(100), CommonConstant.SCALE_2, RoundingMode.HALF_UP));
vo.setTotalVerifiedAmount(totalVerifiedAmount.divide(BigDecimal.valueOf(100), CommonConstant.SCALE_2, RoundingMode.HALF_UP));
vo.setTotalMerchantCount(totalMerchantCount);
vo.setTotalUserCount(totalUserCount);
vo.setTotalReachUserCount(sumVisit.getUv());
vo.setWeekUserCount(weekUserCount);
vo.setCarUserCount(carUserCount);

vo.setTodayPvCount(todaySumVisit.getPv());
vo.setTodayUserCount(todayUserCount);
vo.setTodayTradingAmount(todayTradingAmount.divide(BigDecimal.valueOf(100)));
vo.setYesterdayPvCount(yesterdaySumVisit.getPv());
vo.setYesterdayUserCount(yesterdayUserCount);
vo.setYesterdayTradingAmount(yesterdayTradingAmount.divide(BigDecimal.valueOf(100), CommonConstant.SCALE_2, RoundingMode.HALF_UP));
return vo;
}



+ 6
- 11
mallinkService/src/main/java/com/iformall/utils/DateUtils.java Просмотреть файл

@@ -1347,17 +1347,6 @@ public class DateUtils {
return startLocalDate.until(endLocalDate, ChronoUnit.DAYS);
}

/*
public static void main(String[] args) throws Exception {
SimpleDateFormat dd = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
Date ll;
ll = dd.parse("2019-07-27 11:00:00");
Date next = DateUtils.getTimeAfterDays(30, ll);
System.out.println(next);
}
*/


/**
* 获取多少岁
* @param birthDay
@@ -1555,4 +1544,10 @@ public class DateUtils {
c.add(Calendar.DATE, 1);
return c.getTime();
}

public static Date getPreviousDay() {
Calendar c = Calendar.getInstance();
c.add(Calendar.DAY_OF_MONTH, -1);
return c.getTime();
}
}

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

@@ -503,7 +503,11 @@
FROM
wx_merchant
WHERE
tenant_id IN
is_del = 0
AND ( `car_vendor_type` = 0 OR `car_vendor_type` IS NULL )
AND `is_private` = 0
AND `is_admin` IN (0, 1)
AND tenant_id IN
<foreach collection="tenantIds" index="index" item="tenantId" open="(" separator="," close=")">
#{tenantId}
</foreach>


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

@@ -625,7 +625,8 @@
FROM
wx_shop
WHERE
tenant_id IN
is_del = 0
AND tenant_id IN
<foreach collection="tenantIds" index="index" item="tenantId" open="(" separator="," close=")">
#{tenantId}
</foreach>


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