From 5f01b1bf63bd3dd242fc29e012e15c37fc03a190 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 10 十二月 2018 17:30:17 +0800 Subject: [PATCH] 分享赚比例修改 增加单品的分享记录 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java | 131 +++++++++---------------------------------- 1 files changed, 27 insertions(+), 104 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java index b5bfad7..f86d7fa 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoBaoUtil.java @@ -18,9 +18,6 @@ import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; -import net.sf.json.JSONArray; -import net.sf.json.JSONObject; - import org.apache.commons.httpclient.HttpClient; import org.apache.commons.httpclient.methods.GetMethod; import org.jsoup.Connection; @@ -32,13 +29,15 @@ import org.springframework.stereotype.Component; import org.w3c.dom.NamedNodeMap; import org.w3c.dom.NodeList; +import org.yeshi.utils.HttpUtil; +import org.yeshi.utils.NumberUtil; +import org.yeshi.utils.taobao.TbImgUtil; import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.google.gson.reflect.TypeToken; -import com.yeshi.fanli.entity.bus.user.CollectionGoods; -import com.yeshi.fanli.entity.bus.user.UserInfo; import com.yeshi.fanli.entity.common.ImageInfo; +import com.yeshi.fanli.entity.goods.CommonGoods; import com.yeshi.fanli.entity.taobao.ScanHistory; import com.yeshi.fanli.entity.taobao.SearchFilter; import com.yeshi.fanli.entity.taobao.TaoBaoCoupon; @@ -53,7 +52,6 @@ import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; import com.yeshi.fanli.entity.taobao.TaoBaoUnionConfig; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; -import com.yeshi.fanli.goods.CommonGoods; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.goods.TaoBaoLinkService; import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; @@ -62,9 +60,9 @@ import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TaoBaoHttpUtil; import com.yeshi.fanli.util.TimeUtil; -import org.yeshi.utils.HttpUtil; -import org.yeshi.utils.NumberUtil; -import org.yeshi.utils.taobao.TbImgUtil; + +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; @Component public class TaoBaoUtil { @@ -685,8 +683,7 @@ return list; } - public static TaoBaoGoodsBriefExtra getTaoBaoGoodsBriefExtra(TaoBaoGoodsBrief tb, String proportion, - String fcRateStr, String pid) { + public static TaoBaoGoodsBriefExtra getTaoBaoGoodsBriefExtra(TaoBaoGoodsBrief tb, String proportion, String pid) { TaoBaoGoodsBriefExtra tg = new TaoBaoGoodsBriefExtra(); tg.setId(tb.getId()); tg.setAuctionId(tb.getAuctionId()); @@ -699,6 +696,7 @@ tg.setReservePrice(tb.getReservePrice()); tg.setUserType(tb.getUserType()); tg.setShopTitle(tb.getShopTitle()); + tg.setState(tb.getState()); // 鐘舵�侊細2018-12-03 if (tb.getCouponAmount().compareTo(BigDecimal.valueOf(0)) == 1) { TaoBaoQuanInfo quanInfo = new TaoBaoQuanInfo(); quanInfo.setCouponAmount(tb.getCouponAmount()); @@ -716,17 +714,6 @@ tg.setTaoBaoQuanInfo(quanInfo); } TaoBaoHongBaoInfo hongBaoInfo = new TaoBaoHongBaoInfo(); - BigDecimal fcRate = BigDecimal.valueOf(1); - String eventRate = tb.getEventRate(); - BigDecimal rate = BigDecimal.valueOf(0); - if (eventRate == null) { - rate = tb.getTkRate(); - } else { - rate = new BigDecimal(eventRate); - if (fcRateStr != null) { - fcRate = (new BigDecimal(fcRateStr).divide(BigDecimal.valueOf(100))); - } - } hongBaoInfo.setRate("鏈�楂�40%"); @@ -966,19 +953,8 @@ tg.setTaoBaoQuanInfo(quanInfo); } - Map<String, String> convertMap = taoBaoUtil.manageService.convertMap(); - String proportion = convertMap.get("hongbao_goods_proportion"); - String fcRateStr = convertMap.get("hongbao_fc_ratio"); + BigDecimal proportion = taoBaoUtil.manageService.getFanLiRate(); TaoBaoHongBaoInfo hongBaoInfo = new TaoBaoHongBaoInfo(); - String eventRate = tb.getEventRate(); - BigDecimal rate = BigDecimal.valueOf(0); - if (eventRate != null) { - rate = new BigDecimal(eventRate); - } else { - rate = tb.getTkRate(); - } - BigDecimal fcRate = new BigDecimal(fcRateStr); - String tkMktStatus = tb.getTkMktStatus(); if ("1".equals(tkMktStatus)) { hongBaoInfo.setType(1); @@ -986,7 +962,7 @@ hongBaoInfo.setRate("鏈�楂�40%"); - String hongbao = getGoodsHongBaoInfo(tb, new BigDecimal(proportion)); + String hongbao = getGoodsHongBaoInfo(tb, proportion); if (!hongbao.contains("鏈�楂�")) hongBaoInfo.setHongbao(new BigDecimal(hongbao.replace("楼", ""))); else @@ -1050,31 +1026,6 @@ target.setAccessible(true); if (target.getName().equalsIgnoreCase(field.getName())) { field.set(tb, target.get(sh)); - break; - } - } - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - } - return tb; - } - - public static TaoBaoGoodsBrief getTaoBaoGoodsBrief(CollectionGoods sh) { - TaoBaoGoodsBrief tb = new TaoBaoGoodsBrief(); - Field[] fields = tb.getClass().getDeclaredFields(); - Field[] shFields = sh.getClass().getDeclaredFields(); - for (int i = 0; i < fields.length; i++) { - Field field = fields[i]; - field.setAccessible(true); - try { - for (Field target : shFields) { - target.setAccessible(true); - if (target.getName().equalsIgnoreCase(field.getName())) { - if (!"createtime".equalsIgnoreCase(field.getName())) - field.set(tb, target.get(sh)); break; } } @@ -1392,38 +1343,6 @@ return taoBaoGoodsBrief; } - public static CollectionGoods getCollectionGoods(long auctionId, UserInfo userInfo) { - TaoBaoGoodsBrief taoBaoGoodsBrief = null; - try { - taoBaoGoodsBrief = TaoKeApiUtil.searchGoodsDetail(auctionId); - } catch (TaobaoGoodsDownException e1) { - e1.printStackTrace(); - } - CollectionGoods collectionGoods = new CollectionGoods(); - Field[] fields = taoBaoGoodsBrief.getClass().getDeclaredFields(); - Field[] shFields = collectionGoods.getClass().getDeclaredFields(); - for (int i = 0; i < fields.length; i++) { - Field field = fields[i]; - field.setAccessible(true); - try { - for (Field target : shFields) { - target.setAccessible(true); - if (target.getName().equalsIgnoreCase(field.getName())) { - if (!field.getName().equalsIgnoreCase("createTime")) - target.set(collectionGoods, field.get(taoBaoGoodsBrief)); - break; - } - } - } catch (IllegalArgumentException e) { - e.printStackTrace(); - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - } - collectionGoods.setUserInfo(userInfo); - return collectionGoods; - } - /** * 鑾峰彇鍟嗗搧鐨勭敤鎴峰垎鎴愭瘮渚� * @@ -1434,17 +1353,21 @@ * @return */ public static String getGoodsHongBaoInfo(TaoBaoGoodsBrief goodsBrief, BigDecimal rate) { - // 钀ラ攢璁″垝 - // if ("1".equalsIgnoreCase(goodsBrief.getTkMktStatus())) { - // return "鏈�楂�40%"; - // } else { - // 璁$畻杩斿埄 - // 鏃犲埜 + return "楼" + getGoodsHongBaoMoney(goodsBrief, rate).toString(); + } + + /** + * 鑾峰彇娣樺疂鍟嗗搧璇ヨ幏寰楀灏戜剑閲� + * + * @param goodsBrief + * @param rate + * @return + */ + public static BigDecimal getGoodsHongBaoMoney(TaoBaoGoodsBrief goodsBrief, BigDecimal rate) { if (StringUtil.isNullOrEmpty(goodsBrief.getCouponInfo()) || goodsBrief.getCouponInfo().trim().equalsIgnoreCase("鏃�")) { - return "楼" + goodsBrief.getZkPrice().multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)) - .multiply(rate).setScale(2, BigDecimal.ROUND_DOWN); - + return goodsBrief.getZkPrice().multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)).multiply(rate) + .setScale(2, BigDecimal.ROUND_DOWN); } else// 鏈夊埜 { List<BigDecimal> list = TaoBaoCouponUtil.getCouponInfo(goodsBrief.getCouponInfo()); @@ -1453,15 +1376,15 @@ if (startFee.compareTo(goodsBrief.getZkPrice()) <= 0 && goodsBrief.getZkPrice().compareTo(couponAccount) > 0) { BigDecimal finalPrice = goodsBrief.getZkPrice().subtract(couponAccount); - return "楼" + finalPrice.multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)).multiply(rate) + return finalPrice.multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)).multiply(rate) .setScale(2, BigDecimal.ROUND_DOWN); - } else {// 涓嶈兘鐢ㄥ埜 - return "楼" + goodsBrief.getZkPrice().multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)) + return goodsBrief.getZkPrice().multiply(goodsBrief.getTkRate()).divide(new BigDecimal(10000)) .multiply(rate).setScale(2, BigDecimal.ROUND_DOWN); } } } + // } // 鑾峰彇鍒哥殑绾㈠寘鏄剧ず -- Gitblit v1.8.0