From be67478cae6bf9308f15949a21e7d0a57a3f0ecb Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期四, 16 七月 2020 15:37:31 +0800 Subject: [PATCH] dubbo集成修改 --- fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java | 108 +++++++++++++++++++++++++++++++++++------------------ 1 files changed, 71 insertions(+), 37 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java index f5e9fa4..56900eb 100644 --- a/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java +++ b/fanli/src/main/java/com/yeshi/fanli/util/taobao/TaoKeApiUtil.java @@ -10,19 +10,19 @@ import org.yeshi.utils.JsonUtil; import org.yeshi.utils.taobao.TbImgUtil; -import com.yeshi.fanli.dto.taobao.TaoBaoShopInfoDTO; +import com.yeshi.goods.facade.dto.taobao.TaoBaoShopInfoDTO; import com.yeshi.fanli.dto.taobao.TaoLiJinDTO; import com.yeshi.fanli.dto.taobao.api.TaoKeOfficialActivityConvertResultDTO; import com.yeshi.fanli.entity.bus.tlj.UserTaoLiJinReport; import com.yeshi.fanli.entity.taobao.SearchFilter; import com.yeshi.fanli.entity.taobao.SearchShopFilter; -import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; -import com.yeshi.fanli.entity.taobao.TaoBaoHead; +import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.goods.facade.entity.taobao.TaoBaoHead; import com.yeshi.fanli.entity.taobao.TaoBaoProvince; import com.yeshi.fanli.entity.taobao.TaoBaoSearchNav; import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; -import com.yeshi.fanli.entity.taobao.TaoBaoShopInfo; -import com.yeshi.fanli.entity.taobao.TaoKeAppInfo; +import com.yeshi.common.entity.taobao.TaoBaoShopInfo; +import com.yeshi.common.entity.taobao.TaoKeAppInfo; import com.yeshi.fanli.exception.taobao.TaoBaoAuthException; import com.yeshi.fanli.exception.taobao.TaoBaoTokenParseException; import com.yeshi.fanli.exception.taobao.TaoKeApiException; @@ -31,11 +31,11 @@ import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.log.TLJLogHelper; import com.yeshi.fanli.log.TaoKeLogHelper; -import com.yeshi.fanli.tag.PageEntity; -import com.yeshi.fanli.util.MoneyBigDecimalUtil; +import com.yeshi.common.entity.PageEntity; +import org.yeshi.utils.MoneyBigDecimalUtil; import com.yeshi.fanli.util.StringUtil; import com.yeshi.fanli.util.TaoBaoConstant; -import com.yeshi.fanli.util.TimeUtil; +import org.yeshi.utils.TimeUtil; import net.sf.json.JSONArray; import net.sf.json.JSONObject; @@ -260,8 +260,9 @@ /** * 鑾峰彇鍟嗗搧璇︽儏锛岀畝鐗� * - * @param id + * @param ids * @return + * @throws TaobaoGoodsDownException */ public static List<TaoBaoGoodsBrief> getBatchGoodsInfos(String ids) throws TaobaoGoodsDownException { List<TaoBaoGoodsBrief> goodsList = new ArrayList<>(); @@ -314,8 +315,10 @@ /** * 鑾峰彇鍟嗗搧璇︽儏锛岀畝鐗� * - * @param id + * @param ids + * @param ip * @return + * @throws TaobaoGoodsDownException */ public static List<TaoBaoGoodsBrief> getBatchGoodsInfos(String ids, String ip) throws TaobaoGoodsDownException { Map<String, String> map = new HashMap<>(); @@ -365,7 +368,7 @@ filter.setPage(1); filter.setPageSize(50); TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(), - goods.getUserType()); + goods.getUserType(), null, null); if (result != null && result.getTaoBaoGoodsBriefs() != null) for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) { System.out.println(goods.getAuctionId() + ":" + g.getAuctionId()); @@ -381,7 +384,7 @@ // 浠庤浆閾炬悳绱� TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(), new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, - TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT)); + TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT),null,null); if (newGoods != null) { goods.setTkRate(newGoods.getTkRate()); @@ -427,7 +430,7 @@ filter.setPage(1); filter.setPageSize(50); TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(), - goods.getUserType(), app); + goods.getUserType(), app, null, null); if (result != null && result.getTaoBaoGoodsBriefs() != null) for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) { if (goods.getAuctionId().longValue() == g.getAuctionId()) { @@ -458,7 +461,7 @@ // 浠庤浆閾炬悳绱� TaoBaoGoodsBrief newGoods = specialConvertCoupon(goods.getAuctionId(), new TaoKeAppInfo(TaoBaoConstant.TAOBAO_AUTH_APPKEY, TaoBaoConstant.TAOBAO_AUTH_APPSECRET, - TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT)); + TaoBaoConstant.TAOBAO_SPECIAL_PID_DEFAULT),null,null); if (newGoods != null) { goods.setTkRate(newGoods.getTkRate()); @@ -495,7 +498,7 @@ * @return * @throws TaobaoGoodsDownException */ - public static TaoBaoGoodsBrief searchGoodsDetailForConvert(Long id, TaoKeAppInfo app) + public static TaoBaoGoodsBrief searchGoodsDetailForConvert(Long id, TaoKeAppInfo app, String specialId, String relationId) throws TaobaoGoodsDownException { TaoBaoGoodsBrief goods = getSimpleGoodsInfo(id); if (goods == null) @@ -505,7 +508,7 @@ filter.setPage(1); filter.setPageSize(50); TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(), - goods.getUserType(), app); + goods.getUserType(), app, specialId, relationId); if (result != null && result.getTaoBaoGoodsBriefs() != null) for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) { if (goods.getAuctionId().longValue() == g.getAuctionId()) { @@ -546,7 +549,7 @@ filter.setPage(1); filter.setPageSize(50); TaoBaoSearchResult result = searchWuLiaoForDetail(goods.getTitle(), goods.getZkPrice(), goods.getProvcity(), - goods.getUserType()); + goods.getUserType(), null, null); if (result != null && result.getTaoBaoGoodsBriefs() != null) for (TaoBaoGoodsBrief g : result.getTaoBaoGoodsBriefs()) { if (goods.getAuctionId().longValue() == g.getAuctionId()) { @@ -622,9 +625,11 @@ * 鍟嗗搧鐗╂枡鎼滅储 * * @param filter + * @param specialId + * @param relationId * @return */ - public static TaoBaoSearchResult searchWuLiao(SearchFilter filter) { + public static TaoBaoSearchResult searchWuLiao(SearchFilter filter, String specialId, String relationId) { if (filter.getKey() != null && filter.getKey().trim().equalsIgnoreCase("")) return null; @@ -638,6 +643,14 @@ map.put("method", "taobao.tbk.dg.material.optional"); map.put("page_size", filter.getPageSize() == 0 ? "20" : filter.getPageSize() + ""); map.put("page_no", (filter.getPage() <= 0 ? 1 : filter.getPage()) + ""); + if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(specialId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(relationId)) { + map.put("relation_id", relationId); + } + // map.put("material_id", "3756"); pageEntity.setPageIndex(filter.getPage()); @@ -807,11 +820,16 @@ /** * 鍟嗗搧鐗╂枡鎼滅储 * - * @param filter + * @param title + * @param zkPrice + * @param provcity + * @param userType + * @param specialId + * @param relationId * @return */ public static TaoBaoSearchResult searchWuLiaoForDetail(String title, BigDecimal zkPrice, String provcity, - int userType) { + int userType, String specialId, String relationId) { if (provcity.trim().contains(" ")) provcity = provcity.split(" ")[provcity.split(" ").length - 1]; TaoBaoSearchResult taoBaoSearchResult = new TaoBaoSearchResult(); @@ -824,6 +842,14 @@ map.put("is_tmall", (userType == 1) + ""); map.put("q", title); map.put("itemloc", provcity); + + if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(specialId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(relationId)) { + map.put("relation_id", relationId); + } String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, true); System.out.println(resultStr); @@ -858,11 +884,17 @@ /** * 鍟嗗搧鐗╂枡鎼滅储 * - * @param filter + * @param title + * @param zkPrice + * @param provcity + * @param userType + * @param app + * @param specialId + * @param relationId * @return */ public static TaoBaoSearchResult searchWuLiaoForDetail(String title, BigDecimal zkPrice, String provcity, - int userType, TaoKeAppInfo app) { + int userType, TaoKeAppInfo app, String specialId, String relationId) { if (provcity.trim().contains(" ")) provcity = provcity.split(" ")[provcity.split(" ").length - 1]; TaoBaoSearchResult taoBaoSearchResult = new TaoBaoSearchResult(); @@ -875,6 +907,13 @@ map.put("is_tmall", (userType == 1) + ""); map.put("q", title); map.put("itemloc", provcity); + if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(specialId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(relationId)) { + map.put("relation_id", relationId); + } String resultStr = TaoKeBaseUtil.baseRequestForThreeTimes(map, app); JSONObject data = JSONObject.fromObject(resultStr); @@ -1234,10 +1273,7 @@ } /** - * 搴楅摵鎼滅储 - * - * @param key -搴楅摵鍚嶇О - * @param page -椤电爜 + * @param filter * @return */ public static List<TaoBaoShopInfo> searchShop(SearchShopFilter filter) { @@ -1678,23 +1714,23 @@ } } - public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId, String specialId,String relationId, TaoKeAppInfo app) { + public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId, TaoKeAppInfo app,String specialId, String relationId) { String pid = app.getPid(); String[] sts = pid.split("_"); Map<String, String> map = new HashMap<>(); map.put("method", "taobao.tbk.coupon.convert"); map.put("item_id", auctionId + ""); map.put("adzone_id", sts[3]); - if (!StringUtil.isNullOrEmpty(specialId)) { + if (!StringUtil.isNullOrEmpty(specialId) && !StringUtil.isNullOrEmpty(relationId)) { map.put("special_id", specialId); - } - if (!StringUtil.isNullOrEmpty(relationId)) { + } else if (!StringUtil.isNullOrEmpty(specialId)) { + map.put("special_id", specialId); + } else if (!StringUtil.isNullOrEmpty(relationId)) { map.put("relation_id", specialId); } try { String result = TaoKeBaseUtil.baseRequestForThreeTimes(map, app); - System.out.println(result); JSONObject json = JSONObject.fromObject(result); JSONObject resultJSON = json.optJSONObject("tbk_coupon_convert_response").optJSONObject("result") .optJSONObject("results"); @@ -1718,6 +1754,10 @@ } String tkRate = resultJSON.optString("max_commission_rate"); + if (StringUtil.isNullOrEmpty(tkRate)) { + tkRate = resultJSON.optString("min_commission_rate"); + } + if (!StringUtil.isNullOrEmpty(tkRate)) { goods.setTkRate(new BigDecimal(tkRate)); } @@ -1726,13 +1766,7 @@ } catch (Exception e) { e.printStackTrace(); } - return null; - } - - - public static TaoBaoGoodsBrief specialConvertCoupon(Long auctionId, TaoKeAppInfo app) { - return specialConvertCoupon(auctionId, null,null, app); } public static void juHuaSuan() { -- Gitblit v1.8.0