From 744594ef1a2f530fc3e86ea9dc48b62247f79420 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期二, 19 五月 2020 17:13:23 +0800
Subject: [PATCH] 饿了么绘图,添加口碑

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java |   65 ++++++++++++++++++++++++++++++++
 1 files changed, 65 insertions(+), 0 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java
index f80dde0..0e08e06 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/HongBaoOrderServiceImpl.java
@@ -1,5 +1,7 @@
 package com.yeshi.fanli.service.impl.order;
 
+import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
 
 import javax.annotation.Resource;
@@ -7,8 +9,10 @@
 import org.springframework.stereotype.Service;
 
 import com.yeshi.fanli.dao.mybatis.order.HongBaoOrderMapper;
+import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.order.HongBaoOrder;
 import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
+import com.yeshi.fanli.vo.order.HongBaoCountVO;
 
 @Service
 public class HongBaoOrderServiceImpl implements HongBaoOrderService {
@@ -82,4 +86,65 @@
 		return hongBaoOrderMapper.listDetailByOrderIdAndSourceType(orderId, sourceType);
 	}
 
+	
+	@Override
+	public List<HongBaoOrder> listDetailByOrderIdAndSourceTypeAndUid(String orderId, int sourceType, Long uid) {
+		return hongBaoOrderMapper.listDetailByOrderIdAndSourceTypeAndUid(orderId, sourceType,uid);
+	}
+	
+	
+	@Override
+	public HongBaoCountVO getHongBaoCountVO(List<HongBaoOrder> list) {
+		HongBaoCountVO countVO =  new HongBaoCountVO();
+		if (list == null || list.size() == 0) {
+			countVO.setTotalMoney(new BigDecimal(0));
+			countVO.setValidMoney(new BigDecimal(0));
+			countVO.setCurrentState(HongBaoV2.STATE_SHIXIAO);
+		} else {
+			int type = 0;
+			int invalid = 0;
+			int arrivalAccount = 0;
+			BigDecimal totalMoney = new BigDecimal(0);
+			BigDecimal validMoney = new BigDecimal(0);
+			Date accountTime =  null;
+			for (HongBaoOrder hongBaoOrder: list) {
+				HongBaoV2 hongBao = hongBaoOrder.getHongBaoV2();
+				totalMoney = totalMoney.add(hongBao.getMoney());
+				
+				Integer state = hongBao.getState();
+				if (state != HongBaoV2.STATE_SHIXIAO) {
+					validMoney = validMoney.add(hongBao.getMoney());
+				}
+				if (state == HongBaoV2.STATE_SHIXIAO) {
+					invalid ++;
+				} else if (state == HongBaoV2.STATE_YILINGQU) {
+					arrivalAccount ++;
+				}
+				
+				// 鍒拌处鏃堕棿
+				Date getTime = hongBao.getGetTime();
+				if (getTime != null && (accountTime == null || accountTime.getTime() < getTime.getTime())) {
+					accountTime = getTime;
+				}
+				
+				if (type == 0) {
+					type = hongBao.getType();
+				}
+			}
+			countVO.setTotalMoney(totalMoney);
+			countVO.setValidMoney(validMoney);
+			countVO.setCurrentState(HongBaoV2.STATE_SHIXIAO);
+			
+			if (invalid == list.size()) {
+				countVO.setCurrentState(HongBaoV2.STATE_SHIXIAO);
+			} else if (arrivalAccount > 0) {
+				countVO.setCurrentState(HongBaoV2.STATE_YILINGQU);
+			} else {
+				countVO.setCurrentState(HongBaoV2.STATE_BUKELINGQU);
+			}
+		}
+		return countVO;
+	}
+	
+	
 }

--
Gitblit v1.8.0