From eed607d87b2eee1f09b4a28da614f3ad0b46601d Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 14 三月 2019 16:14:37 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java |   96 ++++++++++++-----------------------------------
 1 files changed, 25 insertions(+), 71 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
index 541d4c4..854be8b 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/OrderProcessServiceImpl.java
@@ -17,23 +17,18 @@
 import org.springframework.transaction.annotation.Propagation;
 import org.springframework.transaction.annotation.Transactional;
 
-import com.yeshi.fanli.dao.mybatis.AccountDetailsMapper;
 import com.yeshi.fanli.dao.mybatis.AccountMessageMapper;
 import com.yeshi.fanli.dao.mybatis.HongBaoManageMapper;
 import com.yeshi.fanli.dao.mybatis.HongBaoV2Mapper;
-import com.yeshi.fanli.dao.mybatis.MoneyRecordMapper;
-import com.yeshi.fanli.dao.mybatis.PidOrderMapper;
 import com.yeshi.fanli.dao.mybatis.ThreeSaleGiftMapper;
 import com.yeshi.fanli.dao.mybatis.UserInfoMapper;
-import com.yeshi.fanli.dao.mybatis.hongbao.HongBaoMapper;
 import com.yeshi.fanli.dao.mybatis.money.UserMoneyDetailMapper;
 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.share.PidUserMapper;
 import com.yeshi.fanli.dao.mybatis.taobao.TaoBaoWeiQuanOrderMapper;
-import com.yeshi.fanli.entity.bus.user.AccountDetails;
-import com.yeshi.fanli.entity.bus.user.HongBao;
+import com.yeshi.fanli.dto.HongBao;
 import com.yeshi.fanli.entity.bus.user.HongBaoV2;
 import com.yeshi.fanli.entity.bus.user.Order;
 import com.yeshi.fanli.entity.bus.user.UserExtraTaoBaoInfo;
@@ -41,13 +36,11 @@
 import com.yeshi.fanli.entity.money.UserMoneyDetail;
 import com.yeshi.fanli.entity.order.CommonOrder;
 import com.yeshi.fanli.entity.order.HongBaoOrder;
-import com.yeshi.fanli.entity.taobao.PidOrder;
 import com.yeshi.fanli.entity.taobao.PidUser;
 import com.yeshi.fanli.entity.taobao.TaoBaoOrder;
 import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig;
 import com.yeshi.fanli.entity.taobao.TaoBaoWeiQuanOrder;
 import com.yeshi.fanli.exception.HongBaoException;
-import com.yeshi.fanli.exception.ObjectStateException;
 import com.yeshi.fanli.exception.OrderItemException;
 import com.yeshi.fanli.exception.TaoBaoWeiQuanException;
 import com.yeshi.fanli.exception.money.UserMoneyDetailException;
@@ -55,33 +48,27 @@
 import com.yeshi.fanli.log.LogHelper;
 import com.yeshi.fanli.service.inter.hongbao.AccountDetailsHongBaoMapService;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService;
-import com.yeshi.fanli.service.inter.hongbao.HongBaoService;
 import com.yeshi.fanli.service.inter.hongbao.HongBaoV2Service;
 import com.yeshi.fanli.service.inter.msg.UserMoneyMsgNotificationService;
 import com.yeshi.fanli.service.inter.order.CommonOrderService;
 import com.yeshi.fanli.service.inter.order.LostOrderService;
-import com.yeshi.fanli.service.inter.order.OrderItemServcie;
 import com.yeshi.fanli.service.inter.order.OrderProcessService;
 import com.yeshi.fanli.service.inter.order.OrderService;
-import com.yeshi.fanli.service.inter.order.PidOrderService;
 import com.yeshi.fanli.service.inter.push.PushService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoOrderService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService;
 import com.yeshi.fanli.service.inter.taobao.TaoBaoWeiQuanDrawBackService;
 import com.yeshi.fanli.service.inter.user.UserExtraTaoBaoInfoService;
 import com.yeshi.fanli.service.inter.user.UserNotificationService;
+import com.yeshi.fanli.service.inter.user.UserSystemCouponService;
 import com.yeshi.fanli.util.CMQManager;
 import com.yeshi.fanli.util.RedisManager;
 import com.yeshi.fanli.util.StringUtil;
 import com.yeshi.fanli.util.TimeUtil;
-import com.yeshi.fanli.util.factory.AccountDetailsFactory;
 import com.yeshi.fanli.util.factory.UserMoneyDetailFactory;
 
 @Service
 public class OrderProcessServiceImpl implements OrderProcessService {
-
-	@Resource
-	private PidOrderMapper pidOrderMapper;
 
 	@Resource
 	private OrderMapper orderMapper;
@@ -89,14 +76,6 @@
 	@Resource
 	private PidUserMapper pidUserMapper;
 
-	@Resource
-	private HongBaoService hongBaoService;
-
-	@Resource
-	private OrderItemServcie orderItemService;
-
-	@Resource
-	private PidOrderService pidOrderService;
 
 	@Resource
 	private UserInfoMapper userInfoMapper;
@@ -104,20 +83,14 @@
 	@Resource
 	private OrderItemMapper orderItemMapper;
 
-	@Resource
-	private HongBaoMapper hongBaoMapper;
 
 	@Resource
 	private HongBaoManageMapper hongBaoManageMapper;
 
 	@Resource
-	private AccountDetailsMapper accountDetailsMapper;
-
-	@Resource
 	private AccountMessageMapper accountMessageMapper;
 
-	@Resource
-	private MoneyRecordMapper moneyRecordMapper;
+
 
 	@Resource
 	private ThreeSaleGiftMapper threeSaleGiftMapper;
@@ -167,6 +140,9 @@
 	@Resource
 	private UserExtraTaoBaoInfoService userExtraTaoBaoInfoService;
 
+	@Resource
+	private UserSystemCouponService userSystemCouponService;
+
 	@Override
 	public void processOrder(Map<String, List<TaoBaoOrder>> orders) {
 		List<TaoBaoUnionConfig> configList = taoBaoUnionConfigService.getConfigByTypeCache(PidUser.TYPE_FANLI_ANDROID);
@@ -174,7 +150,6 @@
 		// 鍒嗙鍑鸿繑鍒╄鍗曚笌鍒嗕韩璧氳鍗�
 		Iterator<String> its = orders.keySet().iterator();
 		Map<String, List<TaoBaoOrder>> fanliOrderMap = new HashMap<>();
-		Map<String, List<PidOrder>> sharePidOrderMap = new HashMap<>();
 		Map<String, List<TaoBaoOrder>> shareOrderMap = new HashMap<>();
 		while (its.hasNext()) {
 			String orderId = its.next();
@@ -482,31 +457,27 @@
 			// 灏嗚嚜宸辨坊鍔犲埌鐢ㄦ埛
 			Long uid = its.next();
 			BigDecimal money = userMoney.get(uid);
-			userInfoMapper.addHongBaoByUid(uid, money);
-
-			AccountDetails accountDetails = AccountDetailsFactory.create("+" + money, AccountDetailsFactory.FANLI, null,
-					null, new UserInfo(uid));
-			accountDetailsMapper.insertSelective(accountDetails);
-
+			UserMoneyDetail userMoneyDetail = null;
 			// 鎻掑叆鏂扮増璧勯噾鏄庣粏
 			try {
-				UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createFanLi(uid,
-						hongBaoOrder.getCommonOrder().getOrderNo(), hongBaoOrder.getCommonOrder().getSourceType(), null,
-						money);
-				userMoneyDetail.setId(accountDetails.getId());
-				userMoneyDetailMapper.insert(userMoneyDetail);
+				userMoneyDetail = UserMoneyDetailFactory.createFanLi(uid, hongBaoOrder.getCommonOrder().getOrderNo(),
+						hongBaoOrder.getCommonOrder().getSourceType(), null, money);
+
 			} catch (UserMoneyDetailException e1) {
 				try {
-					LogHelper.errorDetailInfo(e1);
+					LogHelper.errorDetailInfo(e1, "璁㈠崟鍙�:" + hongBaoOrder.getCommonOrder().getOrderNo(), "");
 				} catch (Exception e2) {
 					e2.printStackTrace();
 				}
 			}
 
+			userMoneyDetailMapper.insert(userMoneyDetail);
 			// 娣诲姞璧勯噾鏄庣粏涓庣孩鍖呯殑鏄犲皠鍏崇郴
 			for (HongBaoV2 v2 : userHongBao.get(uid)) {
-				accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(v2.getId(), accountDetails.getId());
+				accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(v2.getId(), userMoneyDetail.getId());
 			}
+			// 澧炲姞鐢ㄦ埛璧勯噾
+			userInfoMapper.addHongBaoByUid(uid, money);
 
 			// 绔欏唴淇�+鎺ㄩ��
 			UserInfo user = userInfoMapper.selectByPrimaryKey(uid);
@@ -524,7 +495,12 @@
 			// 鏂扮増閫氱煡
 			userMoneyMsgNotificationService.fanliOrderReceived(uid, hongBaoOrder.getCommonOrder().getOrderNo(),
 					userGoodsCount.get(uid), money, user.getMyHongBao());
-
+		}
+		// 閫氱煡鍏嶅崟鍒拌处
+		try {
+			userSystemCouponService.updateStateByArrivalAccount(hongBaoOrder.getCommonOrder().getOrderNo());
+		} catch (Exception e) {
+			e.printStackTrace();
 		}
 
 		// 缁存潈鎵f锛�2018-08-05鍚庡紑濮嬪疄琛岋級
@@ -557,12 +533,6 @@
 		if (order.getJieSuanTime().getTime() >= TimeUtil.convertToTimeTemp("2018-08-05", "yyyy-MM-dd")) {
 			return;
 		}
-		try {
-			orderService.failureOrderWithWeiQuan(order.getOrderId(), Order.ORDER_TYPE_TAOBAO);
-		} catch (ObjectStateException e) {
-			e.printStackTrace();
-		}
-		pidOrderService.weiQuan(order.getOrderId());
 	}
 
 	@Override
@@ -703,10 +673,6 @@
 		// 閭�璇疯禋鍒拌处
 		if (invitemoney.compareTo(new BigDecimal(0)) > 0) {
 			userInfoMapper.addHongBaoByUid(uid, invitemoney);
-			// 娣诲姞璁板綍
-			AccountDetails accountDetails = AccountDetailsFactory.create("+" + invitemoney,
-					AccountDetailsFactory.TICHENG, null, null, new UserInfo(uid));
-			accountDetailsMapper.insertSelective(accountDetails);
 
 			// 娣诲姞鏂扮増璇︽儏璁板綍
 			try {
@@ -727,8 +693,9 @@
 
 				UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createInvite(uid, (int) validCount,
 						(int) weiQuanCount, (int) invalidCount, invitemoney, new Date());
-				userMoneyDetail.setId(accountDetails.getId());
 				userMoneyDetailMapper.insert(userMoneyDetail);
+				// 娣诲姞鍒扮孩鍖呰繑鍒╄褰曢泦鍚�
+				accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(hbIdList, userMoneyDetail.getId());
 			} catch (UserMoneyDetailException e) {
 				try {
 					LogHelper.errorDetailInfo(e);
@@ -736,11 +703,6 @@
 					e1.printStackTrace();
 				}
 			}
-
-			// 璁板綍杩斿埄绾㈠寘涓庤祫閲戣鎯呯殑瀵瑰簲鍏崇郴
-
-			// 娣诲姞鍒扮孩鍖呰繑鍒╄褰曢泦鍚�
-			accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(hbIdList, accountDetails.getId());
 
 			// 鍙戦�佹帹閫�
 			try {
@@ -807,11 +769,6 @@
 
 		if (sharemoney.compareTo(new BigDecimal(0)) > 0) {
 			userInfoMapper.addHongBaoByUid(uid, sharemoney);
-			// 娣诲姞璁板綍
-			AccountDetails accountDetails = AccountDetailsFactory.create("+" + sharemoney,
-					AccountDetailsFactory.SHARE_GOODS, null, null, new UserInfo(uid));
-			accountDetailsMapper.insertSelective(accountDetails);
-
 			// 娣诲姞鏂扮増璇︽儏璁板綍
 			try {
 				// 璁$畻鏈湀鐨勬湁鏁堣鍗曪紝澶辨晥璁㈠崟锛岀淮鏉冭鍗�
@@ -832,8 +789,9 @@
 
 				UserMoneyDetail userMoneyDetail = UserMoneyDetailFactory.createShare(uid, (int) validCount,
 						(int) weiQuanCount, (int) invalidCount, sharemoney, new Date());
-				userMoneyDetail.setId(accountDetails.getId());
 				userMoneyDetailMapper.insert(userMoneyDetail);
+				// 娣诲姞鍒扮孩鍖呰繑鍒╄褰曢泦鍚�
+				accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(hbIdList, userMoneyDetail.getId());
 			} catch (UserMoneyDetailException e) {
 				try {
 					LogHelper.errorDetailInfo(e);
@@ -841,10 +799,6 @@
 					e1.printStackTrace();
 				}
 			}
-			// 璁板綍杩斿埄绾㈠寘涓庤祫閲戣鎯呯殑瀵瑰簲鍏崇郴
-
-			// 娣诲姞鍒扮孩鍖呰繑鍒╄褰曢泦鍚�
-			accountDetailsHongBaoMapService.saveAccountDetailsHongBaoMap(hbIdList, accountDetails.getId());
 
 			// 鍙戦�佹帹閫�
 			try {

--
Gitblit v1.8.0