From 0cc3b905e5945d1b4b02ee5f91a615bcfd8f08d6 Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期四, 25 七月 2019 11:44:10 +0800 Subject: [PATCH] 京东兼容 --- fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java | 138 +++++++++++++++++++++++++++++++++------------- 1 files changed, 99 insertions(+), 39 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java b/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java index bb5a0f6..03b7b2a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/factory/goods/GoodsDetailVOFactory.java @@ -9,7 +9,9 @@ import org.yeshi.utils.taobao.TbImgUtil; +import com.yeshi.fanli.dto.common.GoodsOtherInfoDTO; import com.yeshi.fanli.dto.jd.JDCouponInfo; +import com.yeshi.fanli.dto.jd.JDPingouInfo; import com.yeshi.fanli.dto.jd.JDShopInfo; import com.yeshi.fanli.dto.pdd.PDDGoodsDetail; import com.yeshi.fanli.entity.goods.CommonGoods; @@ -31,6 +33,8 @@ import com.yeshi.fanli.vo.goods.MoneyInfoVO; import com.yeshi.fanli.vo.goods.ShopInfoVO; import com.yeshi.fanli.vo.msg.ClientTextStyleVO; + +import net.sf.json.JSONObject; /** * 鍟嗗搧鍔犲伐 @@ -57,10 +61,13 @@ Integer shopType = goods.getShopType(); if (shopType == null) { goodsInfo.setShopType(10); // 娣樺疂 + goodsInfo.setPriceName("娣樺疂浠�"); } else if (shopType == 1) { goodsInfo.setShopType(10); // 娣樺疂 + goodsInfo.setPriceName("娣樺疂浠�"); } else if (shopType == 2) { goodsInfo.setShopType(11); // 澶╃尗 + goodsInfo.setPriceName("澶╃尗浠�"); } else { goodsInfo.setShopType(goods.getShopType()); } @@ -70,8 +77,37 @@ goodsType = Constant.SOURCE_TYPE_TAOBAO; } - if (goodsType == Constant.SOURCE_TYPE_PDD) { + GoodsOtherInfoDTO otherDTO = null; + String otherInfo = goods.getOtherInfo(); + if (!StringUtil.isNullOrEmpty(otherInfo)) { + JSONObject json = JSONObject.fromObject(otherInfo); + otherDTO = (GoodsOtherInfoDTO)JSONObject.toBean(json,GoodsOtherInfoDTO.class); + } + + if (goodsType == Constant.SOURCE_TYPE_JD) { + // 鏈堥攢閲� + goodsInfo.setSalesType(1); + // 鑷惀 + String owner = otherDTO.getOwner(); + if (!StringUtil.isNullOrEmpty(owner) && "g".equalsIgnoreCase(owner)) { + List<ClientTextStyleVO> labels = new ArrayList<ClientTextStyleVO>(); + ClientTextStyleVO textStyleVO = new ClientTextStyleVO(); + textStyleVO.setContent("浜笢鑷惀"); + textStyleVO.setColor("#E42219"); + labels.add(textStyleVO); + goodsInfo.setLabels(labels); + } + // 鎷煎洟浠� + JDPingouInfo pinGouInfo = otherDTO.getPinGouInfo(); + if (pinGouInfo != null) { + goods.setPrice(pinGouInfo.getPingouPrice()); + goodsInfo.setPriceName("鎷艰喘浠�"); + } else { + goodsInfo.setPriceName("浜笢浠�"); + } + } else if (goodsType == Constant.SOURCE_TYPE_PDD){ goodsInfo.setSalesType(4); // 鎬婚攢閲� + goodsInfo.setPriceName("鎷煎洟浠�"); } else { goodsInfo.setSalesType(1); // 鏈堥攢閲� } @@ -91,7 +127,6 @@ } else { goodsInfo.setPicUrl(goods.getPicture()); } - // 璧勯噾淇℃伅 MoneyInfoVO moneyInfoVO = new MoneyInfoVO(); @@ -158,8 +193,10 @@ Integer shopType = goods.getUserType(); if (shopType != null && shopType == 1) { goodsInfo.setShopType(11); // 澶╃尗 + goodsInfo.setPriceName("澶╃尗浠�"); } else { goodsInfo.setShopType(10); // 娣樺疂 + goodsInfo.setPriceName("娣樺疂浠�"); } // 璧勯噾淇℃伅 @@ -254,8 +291,10 @@ Integer shopType = goods.getUserType(); if (shopType != null && shopType == 1) { goodsInfo.setShopType(11); // 澶╃尗 + goodsInfo.setPriceName("澶╃尗浠�"); } else { goodsInfo.setShopType(10); // 娣樺疂 + goodsInfo.setPriceName("娣樺疂浠�"); } // 璧勯噾淇℃伅 @@ -321,7 +360,6 @@ goodsInfo.setTitle(goods.getSkuName()); goodsInfo.setSalesType(1); // 榛樿鏈堥攢閲� goodsInfo.setPicUrl(goods.getPicUrl()); - goodsInfo.setZkPrice(goods.getPrice()); goodsInfo.setImgList(goods.getImageList()); goodsInfo.setState(0); goodsInfo.setShopType(20); // 浜笢 @@ -336,7 +374,17 @@ salesCountMidea = salesCountMidea + "涓�"; } goodsInfo.setSalesCount(salesCountMidea); - + + + JDPingouInfo pinGouInfo = goods.getPinGouInfo(); + if (pinGouInfo != null) { + goodsInfo.setZkPrice(pinGouInfo.getPingouPrice()); + goodsInfo.setPriceName("鎷艰喘浠�"); + } else { + goodsInfo.setZkPrice(goods.getPrice()); + goodsInfo.setPriceName("浜笢浠�"); + } + // 璧勯噾淇℃伅 MoneyInfoVO moneyInfoVO = new MoneyInfoVO(); @@ -345,33 +393,34 @@ moneyInfoVO.setShareMoney("楼" + JDUtil.getGoodsFanLiMoney(goods, shareRate)); goodsInfo.setMoneyInfo(moneyInfoVO); + + JDCouponInfo couponInfo = goods.getCouponInfo(); if (couponInfo != null) { BigDecimal discount = couponInfo.getDiscount(); - BigDecimal price = goods.getPrice(); // 璁$畻鍒稿悗浠� - BigDecimal sub = price.subtract(couponInfo.getQuota()); - if (sub.compareTo(BigDecimal.valueOf(0)) >= 0) { - BigDecimal quanPrice = MoneyBigDecimalUtil.sub(price, discount); - goodsInfo.setCouponPrice(quanPrice); - } else { - goodsInfo.setCouponPrice(price); - } + goodsInfo.setCouponPrice(JDUtil.getQuanPrice(goods)); + SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); CouponInfoVO coupon = new CouponInfoVO(); coupon.setAmount(discount); - if (couponInfo.getGetStartTime() != null) { - coupon.setStartTime(sdf.format(new Date(couponInfo.getGetStartTime()))); - } else { - coupon.setStartTime(sdf.format(new Date())); - } + + int ran2 = (int) (Math.random()*(5) + 1 ); + if (ran2 > 3) { + if (couponInfo.getGetStartTime() != null) { + coupon.setStartTime(sdf.format(new Date(couponInfo.getGetStartTime()))); + } else { + coupon.setStartTime(sdf.format(new Date())); + } - if (couponInfo.getGetEndTime() != null) { - coupon.setEndTime(sdf.format(new Date(couponInfo.getGetEndTime()))); - } else { - coupon.setEndTime(sdf.format(new Date())); - } + if (couponInfo.getGetEndTime() != null) { + coupon.setEndTime(sdf.format(new Date(couponInfo.getGetEndTime()))); + } else { + coupon.setEndTime(sdf.format(new Date())); + } + } + // TODO // coupon.setLeftCount(leftCount); @@ -384,16 +433,6 @@ goodsInfo.setCouponInfo(coupon); } - // 搴楅摵淇℃伅 - JDShopInfo shopInfo = goods.getShopInfo(); - if (shopInfo != null && !StringUtil.isNullOrEmpty(shopInfo.getShopName())) { - ShopInfoVO shop = new ShopInfoVO(); - shop.setShopName(shopInfo.getShopName()); - shop.setId(shopInfo.getShopId().toString()); - goodsInfo.setShopInfo(shop); - } - - // 浜笢鑷惀鏍囩 String owner = goods.getOwner(); if (!StringUtil.isNullOrEmpty(owner) && "g".equalsIgnoreCase(owner)) { @@ -404,7 +443,20 @@ labels.add(textStyleVO); goodsInfo.setLabels(labels); } - + + // 搴楅摵淇℃伅 + JDShopInfo shopInfo = goods.getShopInfo(); + if (shopInfo != null && !StringUtil.isNullOrEmpty(shopInfo.getShopName())) { + ShopInfoVO shop = new ShopInfoVO(); + shop.setShopName(shopInfo.getShopName()); + shop.setId(shopInfo.getShopId().toString()); + if (!StringUtil.isNullOrEmpty(owner) && "g".equalsIgnoreCase(owner)) { + shop.setUserType(20); + } else { + shop.setUserType(21); + } + goodsInfo.setShopInfo(shop); + } return goodsInfo; } @@ -423,6 +475,7 @@ goodsInfo.setGoodsId(goods.getGoodsId()); goodsInfo.setTitle(goods.getGoodsName()); goodsInfo.setSalesType(4); // 鎬婚攢閲� + goodsInfo.setPriceName("鎷煎洟浠�"); goodsInfo.setPicUrl(goods.getGoodsThumbnailUrl()); // 缂╃暐鍥� goodsInfo.setZkPrice(MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), new BigDecimal(100)).setScale(2)); goodsInfo.setShopType(30); // 鎷煎澶� @@ -471,13 +524,20 @@ SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd"); CouponInfoVO coupon = new CouponInfoVO(); coupon.setAmount(amount); - if (goods.getCouponStartTime() != null) { - coupon.setStartTime(sdf.format(new Date(goods.getCouponStartTime() * 1000))); - } + + + int ran2 = (int) (Math.random()*(5) + 1 ); + + if (ran2 > 3) { + if (goods.getCouponStartTime() != null) { + coupon.setStartTime(sdf.format(new Date(goods.getCouponStartTime() * 1000))); + } - if (goods.getCouponEndTime() != null) { - coupon.setEndTime(sdf.format(new Date(goods.getCouponEndTime() * 1000))); - } + if (goods.getCouponEndTime() != null) { + coupon.setEndTime(sdf.format(new Date(goods.getCouponEndTime() * 1000))); + } + } + coupon.setLink(null); coupon.setStartFee(startFree); -- Gitblit v1.8.0