From 573c491b4a1ba60e12a5678a01c1546c0077c1ee Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 30 七月 2019 09:07:42 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- fanli/src/main/java/com/yeshi/fanli/service/impl/count/HongBaoV2CountServiceImpl.java | 205 +++++++++++++++++++++++++++++++++++--------------- 1 files changed, 143 insertions(+), 62 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/count/HongBaoV2CountServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/count/HongBaoV2CountServiceImpl.java index 86d181c..3f9d96f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/count/HongBaoV2CountServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/count/HongBaoV2CountServiceImpl.java @@ -1,5 +1,6 @@ package com.yeshi.fanli.service.impl.count; +import java.math.BigDecimal; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; @@ -13,17 +14,16 @@ import org.yeshi.utils.DateUtil; import com.yeshi.fanli.dao.mybatis.HongBaoV2CountMapper; -import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper; import com.yeshi.fanli.dao.mybatis.order.CommonOrderGoodsMapper; import com.yeshi.fanli.dao.mybatis.order.CommonOrderMapper; import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper; -import com.yeshi.fanli.dao.mybatis.order.OrderItemMapper; import com.yeshi.fanli.dao.mybatis.order.OrderMapper; import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoOrderMapper; import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoWeiQuanOrderMapper; import com.yeshi.fanli.service.inter.count.HongBaoV2CountService; import com.yeshi.fanli.service.inter.order.CommonOrderService; import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.vo.order.HongBaoV2VO; @Service public class HongBaoV2CountServiceImpl implements HongBaoV2CountService { @@ -32,13 +32,7 @@ private HongBaoV2CountMapper hongBaoV2CountMapper; @Resource - private HongBaoMapper hongBaoMapper; - - @Resource private TaoBaoOrderMapper taoBaoOrderMapper; - - @Resource - private OrderItemMapper orderItemMapper; @Resource private CommonOrderMapper commonOrderMapper; @@ -61,18 +55,17 @@ @Resource private TaoBaoWeiQuanOrderMapper taoBaoWeiQuanOrderMapper; - - - public List<Map<String, Object>> dayFactory(String startTime, String endTime, List<Map<String, Object>> list) throws Exception { + public List<Map<String, Object>> dayFactory(String startTime, String endTime, List<Map<String, Object>> list) + throws Exception { List<Map<String, Object>> listObject = new ArrayList<Map<String, Object>>(); if (startTime.equals(endTime)) { Map<String, Object> map = list.get(0); - Object total = map.get("total"); + Object total = map.get("showValue"); if (total == null) { - map.put("total", 0); + map.put("showValue", 0); } listObject.add(map); return listObject; @@ -94,7 +87,7 @@ Object createDate = map.get("showDate"); String month = createDate.toString(); if (plusDay.equalsIgnoreCase(month)) { - total = map.get("total"); + total = map.get("showValue"); break; } } @@ -102,7 +95,7 @@ if (total == null) { total = 0; } - mapObject.put("total", total); + mapObject.put("showValue", total); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy/MM/dd"); @@ -133,7 +126,7 @@ Object createDate = map.get("showDate"); String month = createDate.toString(); if ((i + "").equalsIgnoreCase(month) || i == Integer.parseInt(month)) { - total = map.get("total"); + total = map.get("showValue"); break; } } @@ -141,7 +134,7 @@ if (total == null) { total = 0; } - mapObject.put("total", total); + mapObject.put("showValue", total); mapObject.put("showDate", i + "鏈�"); @@ -156,63 +149,151 @@ for (int i = 0; i < list.size(); i++) { Map<String, Object> map = list.get(i); - Object total = map.get("total"); + Object total = map.get("showValue"); if (total == null) { total = 0; } - map.put("total", total); + map.put("showValue", total); listObject.add(map); } return listObject; } - - + @Override - public List<Map<String, Object>> countHongBaoMoney(String channel, Integer dateType, Integer state, - String year, String startTime, String endTime) throws Exception { - - List<Map<String, Object>> list = hongBaoV2CountMapper.countHongBaoMoney(channel, dateType, state, year, startTime, endTime); - - if (list == null || list.size() == 0) { - return null; - } - - switch (dateType){ - case 1: // 鎸夊ぉ澶勭悊 - return dayFactory(startTime, endTime, list); - case 2: // 鎸夋湀澶勭悊 - return monthFactory(list); - case 3: - return yearFactory(list); - default: - return null; - } - } - - @Override - public List<Map<String, Object>> countHongBaoNum(String channel, Integer dateType, Integer state, - String year, String startTime, String endTime) throws Exception { - - List<Map<String, Object>> list = hongBaoV2CountMapper.countHongBaoNum(channel, dateType, state, year, startTime, endTime); - - if (list == null || list.size() == 0) { - return null; - } - - switch (dateType){ - case 1: // 鎸夊ぉ澶勭悊 - return dayFactory(startTime, endTime, list); - case 2: // 鎸夋湀澶勭悊 - return monthFactory(list); - case 3: - return yearFactory(list); - default: - return null; - } + public List<Map<String, Object>> countHongBaoMoney(String channel, Integer dateType, Integer state, String year, + String startTime, String endTime) throws Exception { + return hongBaoV2CountMapper.countHongBaoMoney(channel, dateType, state, year, startTime, endTime); } + @Override + public List<Map<String, Object>> countHongBaoNum(String channel, Integer dateType, Integer state, String year, + String startTime, String endTime) throws Exception { + return hongBaoV2CountMapper.countHongBaoNum(channel, dateType, state, year, startTime, endTime); + } + + @Override + public List<Map<String, Object>> countHongBaoType(Integer dateType, Integer type, String year, String startTime, + String endTime) throws Exception { + return hongBaoV2CountMapper.countHongBaoType(dateType, type, year, startTime, endTime); + } + + @Override + public List<Map<String, Object>> getProportionByType(Integer dateType, Integer type, String year, String startTime, + String endTime) throws Exception { + + List<Map<String, Object>> result_list = null; + + List<Map<String, Object>> listTotal = hongBaoV2CountMapper.countHongBaoTotalNum(dateType, year, startTime, + endTime); + if (listTotal == null || listTotal.size() == 0) { + return result_list; + } + + List<Map<String, Object>> type_list = hongBaoV2CountMapper.countHongBaoType(dateType, type, year, startTime, + endTime); + + if (type_list == null || type_list.size() == 0) { + return null; + } + + switch (dateType) { + case 1: // 鎸夊ぉ澶勭悊 + result_list = dayFactory(startTime, endTime, type_list); + break; + case 2: // 鎸夋湀澶勭悊 + result_list = monthFactory(type_list); + break; + case 3: + result_list = yearFactory(type_list); + break; + default: + break; + } + + for (int i = 0; i < result_list.size(); i++) { + + float proportion = 0; + Map<String, Object> resultMap = result_list.get(i); + + Object showDate = resultMap.get("showDate"); + for (int j = 0; j < listTotal.size(); j++) { + Map<String, Object> innerMap = result_list.get(j); + Object innerDate = innerMap.get("showDate"); + + if (innerDate != null && innerDate.toString().equals(showDate.toString())) { + Object innerValue = innerMap.get("showValue"); + long innerData = Long.parseLong(innerValue.toString()); + + Object showValue = resultMap.get("showValue"); + long showData = Long.parseLong(showValue.toString()); + + if (showData > 0) { + proportion = innerData / showData; + } + + break; // 缁撴潫鍐呴儴寰幆 + } + } + + resultMap.put("showValue", proportion); + } + + return result_list; + } + + @Override + public BigDecimal countMoneyByUidAndState(Long uid, Integer state) { + return hongBaoV2CountMapper.countMoneyByUidAndState(uid, state); + } + + @Override + public Integer countNumberByUidAndState(Long uid, Integer state) { + return hongBaoV2CountMapper.countNumberByUidAndState(uid, state); + } + + @Override + public int getTotalTiChengCount(Long uid) { + return hongBaoV2CountMapper.getTotalTiChengCount(uid); + } + + @Override + public long countValidNumberByUid(Long uid, Integer dateType) { + return hongBaoV2CountMapper.countValidNumberByUid(uid, dateType); + } + + @Override + public BigDecimal countWillGetMoneyByUid(Long uid) { + return hongBaoV2CountMapper.countWillGetMoneyByUid(uid); + } + + @Override + public Date getLastHongBaoTime(Long uid) { + return hongBaoV2CountMapper.getLastHongBaoTime(uid); + } + + @Override + public List<Map<String, Object>> count24HOderByChannel(String channel, Integer type, String years, String startTime, + String endTime) throws Exception { + return hongBaoV2CountMapper.count24HOderByChannel(channel, type, years, startTime, endTime); + } + + @Override + public List<HongBaoV2VO> listShareAndInviteMoney(long start, int count, String date) { + return hongBaoV2CountMapper.listShareAndInviteMoney(start, count, date); + } + + @Override + public Integer countNumberByUid(Long uid) { + long count = hongBaoV2CountMapper.countNumberByUid(uid); + return (int) count; + } + @Override + public BigDecimal countRebateCouponMoney() { + return hongBaoV2CountMapper.countRebateCouponMoney(); + } + } -- Gitblit v1.8.0