From 207dc8655711cddac2653e18b51e58a88dba2084 Mon Sep 17 00:00:00 2001 From: yj <Administrator@192> Date: 星期五, 06 三月 2020 18:14:36 +0800 Subject: [PATCH] 发圈处理 --- fanli/src/main/java/com/yeshi/fanli/util/factory/CommonGoodsFactory.java | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 101 insertions(+), 3 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 bcf29cf..271eb13 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 @@ -2,10 +2,18 @@ import java.math.BigDecimal; +import com.alibaba.fastjson.JSONObject; +import com.yeshi.fanli.dto.common.GoodsOtherInfoDTO; +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.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 { @@ -48,6 +56,78 @@ return cg; } + + /** + * 娣樺疂鍟嗗搧鏋勯�� + * + * @param goods + * @return + */ + public static CommonGoods create(JDGoods goods) { + if (goods == null) + return null; + + CommonGoods cg = new CommonGoods(); + JDCouponInfo couponInfo = JDUtil.getShowCouponInfo(goods); + if (couponInfo != null) { + cg.setCouponStartPrice(couponInfo.getQuota()); + BigDecimal discount = couponInfo.getDiscount(); + if (discount != null && discount.compareTo(new BigDecimal(0)) > 0) { + cg.setCouponAmount(discount); + if (cg.getCouponStartPrice().compareTo(new BigDecimal(0)) > 0) + cg.setCouponInfo(String.format("婊�%s鍏冨噺%s鍏�", couponInfo.getQuota() + "", cg.getCouponAmount() + "")); + else + cg.setCouponInfo(String.format("%s鍏冩棤鏉′欢鍒�", cg.getCouponAmount() + "")); + } 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.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.setIsFreeShipping(goods.getIsFreeShipping()); // 鏄惁鍖呴偖 + cg.setOtherInfo(JSONObject.toJSON(other).toString()); + + // 淇濈暀瀛楁 + cg.setVideoCover(null); + cg.setVideoUrl(null); + return cg; + } + + public static CommonGoods create(PDDGoodsDetail goods) { if (goods == null) return null; @@ -79,12 +159,30 @@ cg.setGoodsType(CommonGoods.GOODS_TYPE_PDD); cg.setPicture(goods.getGoodsThumbnailUrl()); cg.setPictureWhite(null); - cg.setPrice(MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinNormalPrice()), new BigDecimal(100))); - cg.setSales(Integer.parseInt(goods.getSoldQuantity() + "")); + 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.substring(0, salesTip.indexOf("涓�")); + totalSales= (int) (Float.parseFloat(salesTip) * 10000); + } else { + totalSales = 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()); - cg.setShopType(goods.getMerchantType()); + cg.setShopType(CommonGoods.SHOP_TYPE_PDD); cg.setState(CommonGoods.STATE_NORMAL); cg.setTitle(goods.getGoodsName()); // 淇濈暀瀛楁 -- Gitblit v1.8.0