From b3da9f82b7740d39742fef1a81a56c22fe1c8b9c Mon Sep 17 00:00:00 2001
From: yujian <yujian@163.com>
Date: 星期一, 08 六月 2020 17:27:02 +0800
Subject: [PATCH] 券后价调整

---
 fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java |  186 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 170 insertions(+), 16 deletions(-)

diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java
index c2bc6ef..3588346 100644
--- a/fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java
+++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java
@@ -3,16 +3,21 @@
 import java.math.BigDecimal;
 
 import com.alibaba.fastjson.JSONObject;
+import com.yeshi.fanli.dto.common.CategoryInfoDTO;
 import com.yeshi.fanli.dto.common.GoodsOtherInfoDTO;
+import com.yeshi.fanli.dto.jd.JDCategoryInfo;
 import com.yeshi.fanli.dto.jd.JDCommissionInfo;
 import com.yeshi.fanli.dto.jd.JDCouponInfo;
 import com.yeshi.fanli.dto.jd.JDShopInfo;
 import com.yeshi.fanli.dto.pdd.PDDGoodsDetail;
+import com.yeshi.fanli.dto.suning.SuningGoodsInfo;
+import com.yeshi.fanli.dto.vip.goods.VIPGoodsInfo;
 import com.yeshi.fanli.entity.goods.CommonGoods;
 import com.yeshi.fanli.entity.jd.JDGoods;
 import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
 import com.yeshi.fanli.util.MoneyBigDecimalUtil;
 import com.yeshi.fanli.util.StringUtil;
+import com.yeshi.fanli.util.jd.JDUtil;
 
 public class CommonGoodsFactory {
 
@@ -52,10 +57,25 @@
 		cg.setVideoUrl(null);
 		cg.setState(goods.getState());
 		cg.setMaterialLibType(goods.getMaterialLibType());
+
+		// 鍒嗙被淇℃伅
+		CategoryInfoDTO categoryInfo = new CategoryInfoDTO();
+		Integer rootCatId = goods.getRootCatId();
+		if (rootCatId != null) {
+			categoryInfo.setCid1(Long.parseLong(rootCatId.toString()));
+		}
+		categoryInfo.setCid1Name(goods.getRootCategoryName());
+
+		Integer leafCatId = goods.getLeafCatId();
+		if (leafCatId != null) {
+			categoryInfo.setCid2(Long.parseLong(leafCatId.toString()));
+		}
+		categoryInfo.setCid2Name(goods.getLeafName());
+		cg.setCategoryInfo(JSONObject.toJSON(categoryInfo).toString());
+
 		return cg;
 	}
 
-	
 	/**
 	 * 娣樺疂鍟嗗搧鏋勯��
 	 * 
@@ -67,7 +87,7 @@
 			return null;
 
 		CommonGoods cg = new CommonGoods();
-		JDCouponInfo couponInfo = goods.getCouponInfo();
+		JDCouponInfo couponInfo = JDUtil.getShowCouponInfo(goods);
 		if (couponInfo != null) {
 			cg.setCouponStartPrice(couponInfo.getQuota());
 			BigDecimal discount = couponInfo.getDiscount();
@@ -80,50 +100,65 @@
 			} else {
 				cg.setCouponAmount(new BigDecimal(0));
 			}
+			cg.setCouponLeftCount(1);
+			cg.setCouponTotalCount(1);
 		}
-		
+
 		JDCommissionInfo commissionInfo = goods.getCommissionInfo();
 		if (commissionInfo != null) {
 			cg.setRate(commissionInfo.getCommissionShare());
 		} else {
 			cg.setRate(new BigDecimal(0));
 		}
-		
+
 		JDShopInfo shopInfo = goods.getShopInfo();
 		if (shopInfo != null) {
 			cg.setSellerId(Long.parseLong(shopInfo.getShopId().toString()));
-			cg.setSellerName(shopInfo.getShopName()== null? "" : shopInfo.getShopName());
+			cg.setSellerName(shopInfo.getShopName() == null ? "" : shopInfo.getShopName());
 		}
-		
+
 		cg.setGoodsId(goods.getSkuId());
 		cg.setTitle(goods.getSkuName());
 		cg.setGoodsType(CommonGoods.GOODS_TYPE_JD);
 		cg.setPicture(goods.getPicUrl());
 		cg.setPrice(goods.getPrice());
 		cg.setSales(Integer.parseInt(goods.getInOrderCount30Days().toString()));
-		
+
 		String owner = goods.getOwner();
 		if (StringUtil.isNullOrEmpty(owner) && "g".equalsIgnoreCase(owner)) {
 			cg.setShopType(CommonGoods.SHOP_TYPE_JD_SELF); // 浜笢鑷惀
 		} else {
 			cg.setShopType(CommonGoods.SHOP_TYPE_JD); // 浜笢
 		}
-		
+
 		cg.setState(CommonGoods.STATE_NORMAL);
-		
+
 		// 鍏朵粬淇℃伅
 		GoodsOtherInfoDTO other = new GoodsOtherInfoDTO();
 		other.setOwner(owner); // 鏄惁鑷惀
-		other.setPinGouInfo( goods.getPinGouInfo());  // 鎷艰喘淇℃伅
+		other.setPinGouInfo(goods.getPinGouInfo()); // 鎷艰喘淇℃伅
+		other.setIsFreeShipping(goods.getIsFreeShipping()); // 鏄惁鍖呴偖
 		cg.setOtherInfo(JSONObject.toJSON(other).toString());
-		
+
+		// 鍒嗙被淇℃伅
+		JDCategoryInfo categoryJD = goods.getCategoryInfo();
+		if (categoryJD != null) {
+			CategoryInfoDTO categoryInfo = new CategoryInfoDTO();
+			categoryInfo.setCid1(categoryJD.getCid1());
+			categoryInfo.setCid1Name(categoryJD.getCid1Name());
+			categoryInfo.setCid2(categoryJD.getCid2());
+			categoryInfo.setCid2Name(categoryJD.getCid2Name());
+			categoryInfo.setCid3(categoryJD.getCid3());
+			categoryInfo.setCid3Name(categoryJD.getCid3Name());
+			cg.setCategoryInfo(JSONObject.toJSON(categoryInfo).toString());
+		}
+
 		// 淇濈暀瀛楁
 		cg.setVideoCover(null);
 		cg.setVideoUrl(null);
 		return cg;
 	}
 
-	
 	public static CommonGoods create(PDDGoodsDetail goods) {
 		if (goods == null)
 			return null;
@@ -156,16 +191,25 @@
 		cg.setPicture(goods.getGoodsThumbnailUrl());
 		cg.setPictureWhite(null);
 		cg.setPrice(MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), new BigDecimal(100)));
-		
+
 		String salesTip = goods.getSalesTip();
 		if (StringUtil.isNullOrEmpty(salesTip)) {
 			salesTip = "0";
+		} else {
+			int indexOf = salesTip.indexOf("+");
+			if (indexOf > 0) {
+				salesTip = salesTip.substring(0, indexOf);
+			}
 		}
-		
+
+		int totalSales = 0;
 		if (salesTip.contains("涓�")) {
-			salesTip = salesTip.replace("涓�", "") + "0000";
+			salesTip = salesTip.substring(0, salesTip.indexOf("涓�"));
+			totalSales = (int) (Float.parseFloat(salesTip) * 10000);
+		} else {
+			totalSales = Integer.parseInt(salesTip);
 		}
-		cg.setSales(Integer.parseInt(salesTip));
+		cg.setSales(totalSales);
 		cg.setRate(MoneyBigDecimalUtil.div(new BigDecimal(goods.getPromotionRate()), new BigDecimal(10)));
 		cg.setSellerId(goods.getMallId());
 		cg.setSellerName(goods.getMallName());
@@ -177,6 +221,116 @@
 		cg.setVideoUrl(null);
 		cg.setState(goods.getState());
 		cg.setMaterialLibType(1);
+
+		// 鍒嗙被淇℃伅
+		CategoryInfoDTO categoryInfo = new CategoryInfoDTO();
+		categoryInfo.setCid1(goods.getCategoryId());
+		categoryInfo.setCid1Name(goods.getCategoryName());
+		cg.setCategoryInfo(JSONObject.toJSON(categoryInfo).toString());
+
+		return cg;
+	}
+
+	public static CommonGoods create(VIPGoodsInfo goods) {
+		if (goods == null)
+			return null;
+
+		CommonGoods cg = new CommonGoods();
+
+		// 鎶樻墸淇℃伅
+		cg.setCouponInfo(new BigDecimal(goods.getDiscount()) + "");
+		cg.setCouponLeftCount(0);
+		cg.setCouponStartPrice(new BigDecimal(0));
+		cg.setCouponAmount(new BigDecimal(0));
+
+		cg.setCouponTotalCount(0);
+		cg.setGoodsId(Long.parseLong(goods.getGoodsId()));
+		cg.setGoodsType(CommonGoods.GOODS_TYPE_VIP);
+		cg.setPicture(goods.getGoodsThumbUrl());
+		cg.setPictureWhite(null);
+		cg.setPrice(new BigDecimal(goods.getMarketPrice()));
+
+		int totalSales = 0;
+		cg.setSales(totalSales);
+		cg.setRate(new BigDecimal(goods.getCommissionRate()));
+		cg.setSellerId(goods.getBrandId());
+		cg.setSellerName(goods.getBrandName());
+		cg.setShopType(CommonGoods.SHOP_TYPE_VIP);
+		cg.setState(CommonGoods.STATE_NORMAL);
+		cg.setTitle(goods.getGoodsName());
+		// 淇濈暀瀛楁
+		cg.setVideoCover(null);
+		cg.setVideoUrl(null);
+		cg.setState(goods.getStatus() == 1 ? CommonGoods.STATE_NORMAL : CommonGoods.STATE_OFFLINE);
+		cg.setMaterialLibType(1);
+
+		// 鍒嗙被淇℃伅
+		CategoryInfoDTO categoryInfo = new CategoryInfoDTO();
+		categoryInfo.setCid1(goods.getCategoryId());
+		categoryInfo.setCid1Name(goods.getCategoryName());
+		cg.setCategoryInfo(JSONObject.toJSON(categoryInfo).toString());
+		//瀛樻斁鎶樻墸浠�
+		cg.setCouponStartPrice(new BigDecimal(goods.getVipPrice()));
+		cg.setCouponInfo(MoneyBigDecimalUtil.getWithNoZera(MoneyBigDecimalUtil.mul(new BigDecimal(goods.getDiscount()), new BigDecimal(10))) + "鎶�");
+		return cg;
+	}
+
+	public static CommonGoods create(SuningGoodsInfo goods) {
+		if (goods == null)
+			return null;
+
+		CommonGoods cg = new CommonGoods();
+
+		if (goods.getCouponInfo() != null && !StringUtil.isNullOrEmpty(goods.getCouponInfo().getCouponUrl())) {// 鏈夊埜
+			cg.setCouponInfo(String.format("婊�%s鍏冨噺%s鍏�", goods.getCouponInfo().getBounsLimit(),
+					goods.getCouponInfo().getCouponValue()));
+			cg.setCouponAmount(new BigDecimal(goods.getCouponInfo().getCouponValue()));
+			
+			if (goods.getCouponInfo().getCouponCount() == null) {
+				cg.setCouponLeftCount(500000);
+				cg.setCouponTotalCount(500000);
+			} else {
+				cg.setCouponLeftCount(Integer.parseInt(goods.getCouponInfo().getCouponCount()));
+				cg.setCouponTotalCount(Integer.parseInt(goods.getCouponInfo().getCouponCount()));
+			}
+			
+			cg.setCouponStartPrice(new BigDecimal(goods.getCouponInfo().getBounsLimit()));
+		} else {
+			cg.setCouponLeftCount(0);
+			cg.setCouponTotalCount(0);
+			cg.setCouponAmount(new BigDecimal(0));
+		}
+
+		cg.setGoodsId(Long.parseLong(goods.getCommodityInfo().getCommodityCode()));
+		cg.setGoodsType(CommonGoods.GOODS_TYPE_SUNING);
+		if (goods.getCommodityInfo().getPictureUrl() != null && goods.getCommodityInfo().getPictureUrl().size() > 0)
+			cg.setPicture(goods.getCommodityInfo().getPictureUrl().get(0).getPicUrl());
+		cg.setPictureWhite(null);
+		cg.setPrice(new BigDecimal(goods.getCommodityInfo().getSnPrice()));
+
+		cg.setSales(Integer.parseInt(goods.getCommodityInfo().getMonthSales()));
+		cg.setRate(new BigDecimal(goods.getCommodityInfo().getRate()));
+		cg.setSellerId(Long.parseLong(goods.getCommodityInfo().getSupplierCode()));
+		cg.setSellerName(goods.getCommodityInfo().getSupplierName());
+		cg.setShopType(CommonGoods.SHOP_TYPE_SUNING);
+		cg.setState(CommonGoods.STATE_NORMAL);
+		cg.setTitle(goods.getCommodityInfo().getCommodityName());
+		// 淇濈暀瀛楁
+		cg.setVideoCover(null);
+		cg.setVideoUrl(null);
+		cg.setState(0);
+		cg.setMaterialLibType(1);
+
+		// 鍒嗙被淇℃伅
+		CategoryInfoDTO categoryInfo = new CategoryInfoDTO();
+		categoryInfo.setCid1(Long.parseLong(goods.getCategoryInfo().getFirstSaleCategoryId()));
+		categoryInfo.setCid1Name(goods.getCategoryInfo().getFirstSaleCategoryName());
+
+		categoryInfo.setCid2(Long.parseLong(goods.getCategoryInfo().getSecondSaleCategoryId()));
+		categoryInfo.setCid2Name(goods.getCategoryInfo().getSecondSaleCategoryName());
+
+		cg.setCategoryInfo(JSONObject.toJSON(categoryInfo).toString());
+
 		return cg;
 	}
 

--
Gitblit v1.8.0