From 39c683421f75449c7a85280fa499bae3a2f5241b Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期一, 26 八月 2019 09:27:49 +0800
Subject: [PATCH] 金币领取

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java |   54 +++++++++++++++++++++++++++++++++++++++++-------------
 1 files changed, 41 insertions(+), 13 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
index 6d8f5df..066ec25 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/order/CommonOrderServiceImpl.java
@@ -548,13 +548,13 @@
 			} else {
 				// 濂栧姳璁㈠崟銆佸厤鍗� 浣跨敤璁板綍
 				if (sourceType == null) {
-					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, null, signList);
+					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, null, signList, acceptData);
 				} else if (sourceType == Constant.SOURCE_TYPE_TAOBAO) {
-					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordTB, signList);
+					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordTB, signList, acceptData);
 				} else if (sourceType == Constant.SOURCE_TYPE_JD) {
-					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordJD, signList);
+					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordJD, signList, acceptData);
 				} else if (sourceType == Constant.SOURCE_TYPE_PDD) {
-					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordPDD, signList);
+					setSystemCouponRecord(order, hasRewardCoupon, hongBaoState, hongBaoType, listRecordPDD, signList, acceptData);
 				}
 			}
 
@@ -577,7 +577,7 @@
 	 * @param signList
 	 */
 	public void setSystemCouponRecord(CommonOrderVO order, boolean hasRewardCoupon, Integer hongBaoState,
-			Integer hongBaoType, List<UserSystemCouponRecord> list, List<String> signList) {
+			Integer hongBaoType, List<UserSystemCouponRecord> list, List<String> signList, AcceptData acceptData) {
 
 		// 鏄惁鍏嶅崟鍟嗗搧
 		boolean freeOrder = false;
@@ -645,6 +645,9 @@
 
 			Map<String, Object> jumpLink = new HashMap<String, Object>();
 			jumpLink.put("orderNo", order.getOrderNo());
+			if (VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) {
+				jumpLink.put("goodsType", order.getSourceType());
+			}
 
 			Map<String, Object> jump = new HashMap<String, Object>();
 			jump.put("type", type);
@@ -667,6 +670,9 @@
 
 			Map<String, Object> jumpLink = new HashMap<String, Object>();
 			jumpLink.put("orderNo", order.getOrderNo());
+			if (VersionUtil.greaterThan_1_6_0(acceptData.getPlatform(), acceptData.getVersion())) {
+				jumpLink.put("goodsType", order.getSourceType());
+			}
 
 			Map<String, Object> jump = new HashMap<String, Object>();
 			jump.put("type", 1); // 椤甸潰璺宠浆
@@ -838,9 +844,17 @@
 					goods = JDUtil.getGoodsFromWeb(itemOrder.getSkuId());
 				}
 
+				if (goods == null) {
+					goods = new JDGoods();
+					goods.setSkuName(itemOrder.getSkuName());
+					goods.setPrice(itemOrder.getPrice());
+					goods.setSkuId(itemOrder.getSkuId());
+				}
+
 				if (goods != null) {
 					cog = CommonOrderGoodsFactory.create(goods);
 				}
+
 				cog.setCreateTime(new Date());
 				cog.setUpdateTime(new Date());
 				commonOrderGoodsMapper.insertSelective(cog);
@@ -892,10 +906,9 @@
 		if (!StringUtil.isNullOrEmpty(commonOrder.getTradeId()))
 			oldCommonOrder = commonOrderMapper.selectBySourceTypeAndTradeId(commonOrder.getSourceType(),
 					commonOrder.getTradeId());
-		else
-			oldCommonOrder = commonOrderMapper.selectByOrderNoAndOrderTypeAndOrderBy(commonOrder.getOrderNo(),
-					commonOrder.getSourceType(), commonOrder.getOrderBy());
-
+		else {
+			throw new CommonOrderException(10, "浜ゆ槗ID涓虹┖");
+		}
 		if (oldCommonOrder == null)// 鏂板
 		{
 			commonOrder.setCreateTime(new Date());
@@ -1023,8 +1036,14 @@
 			Integer type, Integer orderState, String startTime, String endTime, Integer source)
 			throws CommonOrderException {
 
-		List<CommonOrderVO> list = commonOrderMapper.listQuery(start, count, keyType, key, state, type, orderState,
-				startTime, endTime, source);
+		List<CommonOrderVO> list = null;
+
+		if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗�
+			list = commonOrderMapper.listQueryWithNoChild(start, count, keyType, key, state, type, orderState,
+					startTime, endTime, source);
+		} else
+			list = commonOrderMapper.listQuery(start, count, keyType, key, state, type, orderState, startTime, endTime,
+					source);
 
 		if (list == null) {
 			list = new ArrayList<CommonOrderVO>();
@@ -1155,6 +1174,8 @@
 								|| CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
 							if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
 								// 鍏嶅崟鎴愬姛
+								order.setOtherState(2);
+							} else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
 								order.setOtherState(1);
 							}
 						}
@@ -1170,6 +1191,8 @@
 								|| CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
 							if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
 								// 鍏嶅崟鎴愬姛
+								order.setOtherState(2);
+							} else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
 								order.setOtherState(1);
 							}
 						}
@@ -1185,6 +1208,8 @@
 								|| CouponTypeEnum.welfareFreeCoupon.name().equals(systemCouponType)) {
 							if (UserSystemCouponRecord.STATE_SUCCESS == couponState) {
 								// 鍏嶅崟鎴愬姛
+								order.setOtherState(2);
+							} else if (UserSystemCouponRecord.STATE_FREE_ON == couponState) {
 								order.setOtherState(1);
 							}
 						}
@@ -1201,7 +1226,11 @@
 	@Override
 	public long countQuery(Integer keyType, String key, Integer state, Integer type, Integer orderState,
 			String startTime, String endTime, Integer source) throws CommonOrderException {
-		return commonOrderMapper.countQuery(keyType, key, state, type, orderState, startTime, endTime, source);
+		if (StringUtil.isNullOrEmpty(key) || keyType == 1) {// 鎼滅储妗嗘棤鍊兼垨鑰呮寜璁㈠崟鍙锋悳绱㈡椂閮藉彧鎼滅储涓昏鍗�
+			return commonOrderMapper.countQueryWithNoChild(keyType, key, state, type, orderState, startTime, endTime,
+					source);
+		} else
+			return commonOrderMapper.countQuery(keyType, key, state, type, orderState, startTime, endTime, source);
 	}
 
 	@Override
@@ -1379,5 +1408,4 @@
 		return commonOrderMapper.listBySourceTypeAndStateAndThirdCrateTime(sourceType, state, minTime, maxTime,
 				(page - 1) * pageSize, pageSize);
 	}
-
 }

--
Gitblit v1.8.0