From e1a62ec62e7331d97af9302e90e1ce44af8235eb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 27 一月 2021 15:26:55 +0800 Subject: [PATCH] 拼多多授权绑定 --- fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java | 39 ++++++++++++++++++++++++++++++++++++++- 1 files changed, 38 insertions(+), 1 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java index 7a037f8..dcec3d9 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/pinduoduo/PinDuoDuoUtil.java @@ -37,6 +37,7 @@ import net.sf.json.JSONArray; import net.sf.json.JSONObject; +import org.yeshi.utils.TimeUtil; public class PinDuoDuoUtil { @@ -58,6 +59,30 @@ promotionRate = MoneyBigDecimalUtil.div3(goods.getPredictPromotionRate(), new BigDecimal(1000)); + Boolean hasCoupon = goods.getHasCoupon(); + if (hasCoupon == null || !hasCoupon) { + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(price, promotionRate), rate); + } else { + BigDecimal amount = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponDiscount()), hundred); + BigDecimal startFree = MoneyBigDecimalUtil.div(new BigDecimal(goods.getCouponMinOrderAmount()), hundred); + if (startFree.compareTo(price) <= 0 && price.compareTo(amount) > 0) { + BigDecimal finalPrice = price.subtract(amount); + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(finalPrice, promotionRate), rate); + } else {// 涓嶈兘鐢ㄥ埜 + money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(price, promotionRate), rate); + } + } + return BigDecimalUtil.getWithNoZera(money).setScale(2); + } + + + public static BigDecimal getGoodsShareMoney(PDDGoodsDetail goods, BigDecimal rate) { + BigDecimal money = null; + BigDecimal hundred = new BigDecimal(100); + rate = MoneyBigDecimalUtil.div(rate, hundred); + BigDecimal price = MoneyBigDecimalUtil.div(new BigDecimal(goods.getMinGroupPrice()), hundred).setScale(2); + BigDecimal promotionRate = MoneyBigDecimalUtil.div3(new BigDecimal(goods.getPromotionRate()), + new BigDecimal(1000)); Boolean hasCoupon = goods.getHasCoupon(); if (hasCoupon == null || !hasCoupon) { money = MoneyBigDecimalUtil.mul(MoneyBigDecimalUtil.mul(price, promotionRate), rate); @@ -122,7 +147,11 @@ JSONArray array = json.optJSONObject("store").optJSONObject("initDataObj") .optJSONObject("goods").optJSONArray("detailGallery"); for (int j = 0; j < array.size(); j++) { - imgList.add("http:" + array.optJSONObject(j).optString("url")); + String u = array.optJSONObject(j).optString("url"); + if (!u.startsWith("http")) + imgList.add("http:" + u); + else + imgList.add(u); } } } catch (Exception e) { @@ -617,4 +646,12 @@ return urlList; } + public static String getCustomParams(Long uid) { + return uid + "_" + TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyyMMdd"); + } + + public static String getUidFromCustomParams(String params) { + return params.split("_")[0]; + } + } -- Gitblit v1.8.0