From 09476adf2ae2bcc2f6685dafe4707938fd82bc78 Mon Sep 17 00:00:00 2001
From: admin <weikou2014>
Date: 星期四, 25 七月 2019 12:19:20 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div

---
 fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java |   77 +++++++++++++++++++++++++++++++-------
 1 files changed, 62 insertions(+), 15 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java
index d65ff4f..40ad5f1 100644
--- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java
+++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/UserGoodsStorageServiceImpl.java
@@ -160,15 +160,15 @@
 					jdGoods = JDApiUtil.getGoodsDetail(auctionId);
 				}
 				if (jdGoods == null) {
-					throw new UserGoodsStorageException(1, "auctionId鍟嗗搧宸蹭笅鏋�");
+					throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�");
 				}
 				commonGoods = CommonGoodsFactory.create(jdGoods);
 				
-			} else if (goodsType == Constant.SOURCE_TYPE_JD) {
+			} else if (goodsType == Constant.SOURCE_TYPE_PDD) {
 				// 鎷煎澶� 
 				PDDGoodsDetail pddGoods = PinDuoDuoApiUtil.getGoodsDetail(auctionId);
 				if (pddGoods == null) {
-					throw new UserGoodsStorageException(1, "auctionId鍟嗗搧宸蹭笅鏋�");
+					throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�");
 				}
 				commonGoods = CommonGoodsFactory.create(pddGoods);
 			} else {
@@ -178,7 +178,7 @@
 					TaoBaoGoodsBrief goodsBrief = redisManager.getTaoBaoGoodsBrief(auctionId);
 					commonGoods = CommonGoodsFactory.create(goodsBrief);
 				} catch (TaobaoGoodsDownException e) {
-					throw new UserGoodsStorageException(1, "auctionId鍟嗗搧宸蹭笅鏋�");
+					throw new UserGoodsStorageException(1, auctionId + "鍟嗗搧宸蹭笅鏋�");
 				}
 			}
 			
@@ -348,15 +348,14 @@
 		}
 		return state;
 	}
-	
+	 
 	@Override
-	public JSONObject shareGoods(Long uid, List<Long> listStorageID, Integer goodsType)  
+	public JSONObject shareGoods(Long uid, List<Long> listStorageID)  
 			throws UserGoodsStorageException, UserShareGoodsRecordException {
 		List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID);
 		if (listStorage == null || listStorage.size() == 0) {
 			throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪");
 		}
-		
 		
 		List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>();
 		// 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘
@@ -391,22 +390,70 @@
 		data.put("revenue", listGoodsBrief.size() + "涓晢鍝侀浼板垎浜閲戯細楼"+totalMoney);
 		data.put("shareId", shareRecord.getRedisKey());
 		data.put("shareImg", uploadResult);
-		
-		if (goodsType == null) {
-			goodsType = Constant.SOURCE_TYPE_TAOBAO;
+		data.put("notifyDesc", configService.get("goods_share_multiple_notify"));
+		return data;
+	}
+	
+	
+	
+	@Override
+	public JSONObject createShareV2(Long uid, List<Long> listStorageID) throws UserGoodsStorageException, UserShareGoodsRecordException {
+		List<UserGoodsStorage> listStorage = userGoodsStorageMapper.listQueryByIds(listStorageID);
+		if (listStorage == null || listStorage.size() == 0) {
+			throw new UserGoodsStorageException(1, "閫夊搧搴撳晢鍝佷笉瀛樺湪");
 		}
+		
+		
+		List<UserGoodsStorage> listResult = new ArrayList<UserGoodsStorage>();
+		// 杩樺師椤哄簭 鐢ㄤ簬鍒跺浘
+		for (Long sid: listStorageID) {
+			for (UserGoodsStorage torage: listStorage) {
+				Long id = torage.getId();
+				if (sid == id || sid.equals(id)) {
+					listResult.add(torage);
+					break;
+				}
+			}
+		}
+		
+		BigDecimal totalMoney = new BigDecimal(0.00);
+		List<TaoBaoGoodsBrief> listGoodsBrief = new ArrayList<TaoBaoGoodsBrief>();
+		
+		Integer goodsType = null;
+		BigDecimal rate = hongBaoManageService.getShareRate();
+		for (UserGoodsStorage userGoodsStorage: listResult) {
+			CommonGoods commonGoods = userGoodsStorage.getCommonGoods();
+			
+			if (goodsType == null) {
+				goodsType = commonGoods.getGoodsType();
+			}
+			
+			TaoBaoGoodsBrief goodsBrief = TaoBaoUtil.convert(commonGoods);
+			listGoodsBrief.add(goodsBrief);
+			
+			BigDecimal money = TaoBaoUtil.getGoodsHongBaoMoney(goodsBrief, rate);
+			totalMoney = MoneyBigDecimalUtil.add(totalMoney, money);
+		}
+		
+		ShareGoodsRecordDTO shareRecord = userShareGoodsRecordService.addRecordGoodsStorageV2(uid, listGoodsBrief, listStorageID);
+		FileUploadResult uploadResult = new FileUploadResult();
+		uploadResult.setUrl(shareRecord.getSharePictureUrl());
+		
+		JSONObject data = new JSONObject();
+		data.put("revenue", listGoodsBrief.size() + "涓晢鍝侀浼板垎浜閲戯細楼"+totalMoney);
+		data.put("shareId", shareRecord.getRedisKey());
+		data.put("shareImg", uploadResult);
 		
 		// 鎻愮ず璇笉鍚�
 		if (goodsType == Constant.SOURCE_TYPE_JD) {
-			// 浜笢  TODO
-			data.put("notifyDesc", configService.get("goods_share_multiple_notify"));
+			// 浜笢
+			data.put("notifyDesc", configService.get("goods_share_notify_jd"));
 		} else if (goodsType == Constant.SOURCE_TYPE_PDD) {
-			// 鎷煎澶� TODO
-			data.put("notifyDesc", configService.get("goods_share_multiple_notify"));
+			// 鎷煎澶�
+			data.put("notifyDesc", configService.get("goods_share_notify_pdd"));
 		} else {
 			data.put("notifyDesc", configService.get("goods_share_multiple_notify"));
 		}
-		
 		return data;
 	}
 

--
Gitblit v1.8.0