From 3b9e1385a90ae84f97f2a4b8b7a35a6b13c01062 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期三, 13 五月 2020 16:39:19 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java | 70 +++++++++++++++++++++++++---------- 1 files changed, 50 insertions(+), 20 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java index 24370d2..a2bd60b 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderMoneyDailyCountServiceImpl.java @@ -1,5 +1,6 @@ package com.yeshi.fanli.service.impl.order; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; @@ -21,7 +22,6 @@ @Resource private OrderMoneyDailyCountDao orderMoneyDailyCountDao; - @Override @RequestSerializableByKeyService(key = "#record.uid") public void saveDailyCount(OrderMoneyDailyCount record) { @@ -29,48 +29,78 @@ return; // 鍙傛暟涓嶅叏 } String gernalTime = TimeUtil.getGernalTime(record.getCountDay().getTime()); - String id = StringUtil.Md5(record.getUid() + record.getSourceType().name() + gernalTime); - + String id = StringUtil.Md5(record.getUid() + "#" + record.getSourceType().name() + "#" + gernalTime); + // id record.setId(id); // 缁熻鏃ユ湡-骞存湀鏃� record.setCountDay(new Date(TimeUtil.convertDateToTemp(gernalTime))); - + SimpleDateFormat formatMonth = new SimpleDateFormat("yyyy-MM"); - record.setYearMonth(formatMonth.format(record.getCountDay()) ); - - OrderMoneyDailyCount dailyCount = orderMoneyDailyCountDao.getById(id); - if (dailyCount == null) { - // 閫夋嫨鎬ф洿鏂� - orderMoneyDailyCountDao.save(record); - } else { - // 閫夋嫨鎬ф彃鍏� + record.setYearMonth(formatMonth.format(record.getCountDay())); + + OrderMoneyDailyCount dailyCount = orderMoneyDailyCountDao.get(id); + if (dailyCount != null) { orderMoneyDailyCountDao.updateSelective(record); + } else { + initData(record); + record.setUpdateTime(new Date()); + orderMoneyDailyCountDao.save(record); } + } + + private void initData(OrderMoneyDailyCount record) { + if (record.getIncome() == null) + record.setIncome(0); + if (record.getIncomeTeam() == null) + record.setIncomeTeam(0); + if (record.getOrderNum() == null) + record.setOrderNum(0); + if (record.getOrderNumTeam() == null) + record.setOrderNumTeam(0); + if (record.getTeamReward() == null) + record.setTeamReward(0); + if (record.getTeamRewardNum() == null) + record.setTeamRewardNum(0); + if (record.getTeamSubsidy() == null) + record.setTeamSubsidy(0); + if (record.getTeamSubsidyNum() == null) + record.setTeamSubsidyNum(0); } @Override public List<OrderMoneyDailyCount> query(Long uid, Date minDay, Date maxDay) { return orderMoneyDailyCountDao.query(uid, minDay, maxDay); } - + @Override - public List<OrderMoneyDailyCount> sumGroupBySourceType(Long uid, Date minDay, Date maxDay) { + public List<OrderMoneyDailyCount> sumGroupBySourceType(Long uid, Date minDay, Date maxDay) { return orderMoneyDailyCountDao.sumGroupBySourceType(uid, minDay, maxDay); } - + @Override - public List<OrderMoneyDailyCount> sumTeamGroupBySourceType(Long uid, Date minDay, Date maxDay) { + public List<OrderMoneyDailyCount> sumTeamGroupBySourceType(Long uid, Date minDay, Date maxDay) { return orderMoneyDailyCountDao.sumTeamGroupBySourceType(uid, minDay, maxDay); } - + @Override - public List<OrderMoneyDailyCount> sumGroupByCountDay(Long uid, Date minDay, Date maxDay) { + public List<OrderMoneyDailyCount> sumGroupByCountDay(Long uid, Date minDay, Date maxDay) { return orderMoneyDailyCountDao.sumGroupByCountDay(uid, minDay, maxDay); } + + @Override + public List<OrderMoneyDailyCount> sumGroupByYearMonth(Long uid, Date minDay, Date maxDay) { + return orderMoneyDailyCountDao.sumGroupByYearMonth(uid, minDay, maxDay); + } + @Override - public List<OrderMoneyDailyCount> sumGroupByYearMonth(Long uid, Date minDay, Date maxDay) { - return orderMoneyDailyCountDao.sumGroupByYearMonth(uid, minDay, maxDay); + public List<OrderMoneyDailyCount> sumTeamGroupByCountDay(Long uid, Date minDay, Date maxDay) { + return orderMoneyDailyCountDao.sumTeamGroupByCountDay(uid, minDay, maxDay); + } + + @Override + public List<OrderMoneyDailyCount> sumTeamGroupByYearMonth(Long uid, Date minDay, Date maxDay) { + return orderMoneyDailyCountDao.sumTeamGroupByYearMonth(uid, minDay, maxDay); } } -- Gitblit v1.8.0