From 30d8e227e8d823b6c38c3b9c90ac2df03b63befe Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 25 二月 2025 16:41:22 +0800 Subject: [PATCH] 淘宝转链接口更新 --- fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java | 627 ++++++++++++++++++++++++++++---------------------------- 1 files changed, 313 insertions(+), 314 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java index 6f22437..140426f 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/client/v1/DynamicRecommendController.java @@ -1,314 +1,313 @@ -package com.yeshi.fanli.controller.client.v1; - -import java.io.PrintWriter; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -import javax.annotation.Resource; - -import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.yeshi.utils.JsonUtil; -import org.yeshi.utils.taobao.TbImgUtil; - -import com.yeshi.fanli.entity.accept.AcceptData; -import com.yeshi.fanli.entity.taobao.SearchFilter; -import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; -import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; -import com.yeshi.goods.facade.entity.taobao.dataoke.DaTaoKeDetailV2; -import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; -import com.yeshi.fanli.log.LogHelper; -import com.yeshi.fanli.service.inter.config.ConfigService; -import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; -import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; -import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service; -import com.yeshi.fanli.service.inter.user.UserInfoService; -import com.yeshi.fanli.service.manger.goods.tb.TaoBaoTokenAuctionIdMapManager; -import com.yeshi.fanli.util.StringUtil; -import com.yeshi.fanli.util.Utils; -import com.yeshi.fanli.util.taobao.TaoBaoUtil; -import com.yeshi.fanli.util.taobao.TaoKeApiUtil; - -import net.sf.json.JSONObject; - -@Controller -@RequestMapping("api/v1/dynamic") -public class DynamicRecommendController { - - @Resource - private HongBaoManageService hongBaoManageService; - - @Resource - private UserInfoService userInfoService; - - @Resource - private ConfigService configService; - - @Resource - private TaoBaoUnionConfigService taoBaoUnionConfigService; - - @Resource - private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; - - @Resource - private TaoBaoTokenAuctionIdMapManager taoBaoTokenAuctionIdMapManager; - - /** - * 鑾峰彇鍟嗗搧淇℃伅 - * - * @param acceptData - * @param url - * 鍟嗗搧閾炬帴 - * @param out - */ - @RequestMapping(value = "getGoodsInfo", method = RequestMethod.POST) - public void getGoodsInfo(AcceptData acceptData, String url, PrintWriter out) { - - TaoBaoGoodsBrief tb = null; - String URL_REGEX = "(((http|https)://)|(www\\.))[a-zA-Z0-9\\._-]+\\.[a-zA-Z]{2,6}(:[0-9]{1,4})?(/[a-zA-Z0-9\\&%_\\./-~-]*)?"; - - Pattern p = Pattern.compile(URL_REGEX); - Matcher matcher = p.matcher(url); - if (!matcher.find()) {// 涓嶅寘鍚摼鎺� - out.print(JsonUtil.loadFalseResult("鏆備笉鏀寔璇ョ被鍨嬶紒")); - return; - } - url = matcher.group(); - if (url.contains("ju.taobao.com") || url.contains(".juhuasuan.com")) {// 鑱氬垝绠� - int index = url.indexOf("item_id"); - if (index < 0) { - out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); - return; - } - url = url.substring(index); - int last = url.indexOf("&"); - String id = ""; - if (last > 0) - id = url.substring(url.indexOf("=") + 1, url.indexOf("&")); - else { - id = url.substring(url.indexOf("=" + 1)); - } - tb = TaoBaoUtil.isAlimama(id); - if (tb == null) { - tb = TaoBaoUtil.parsePhoneTmAndTb(id); - } - } else if (url.contains("http://zmnxbc.com")) { // 鎵嬫満绔ぉ鐚獳PP鍒嗕韩 - tb = TaoBaoUtil.parsePhoneShareUrlByTM(url); - } /* - * else if(url.contains("c.b1yt.com") || url.contains("m.qtilg.com") - * || url.contains("z.icyad.com")){ //鎵嬫満绔窐瀹濆拰涓�娣楢PP鍒嗕韩 - * tb=TaoBaoUtil.parsePhoneShareUrlByTB(url); } - */else if (url.contains("h5.m.taobao") || url.contains("detail.m.tmall") || url.contains("item.taobao") - || url.contains("detail.tmall")) { // 鎵嬫満椤甸潰鍜岀數鑴戦〉闈� - Map<String, String> map = Utils.parseURL(url); - String id = ""; - id = map.get("id").replace("}", ""); - tb = TaoBaoUtil.isAlimama(id); - if (tb == null) { - tb = TaoBaoUtil.parsePhoneTmAndTb(id); - } - } else { - tb = TaoBaoUtil.parsePhoneShareUrlByTB(url); - } - - if (tb == null) { - out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); - return; - } - JSONObject data = new JSONObject(); - JSONObject taoBaoGoodsJSON = new JSONObject(); - taoBaoGoodsJSON.put("title", tb.getTitle()); - taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); - taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); - taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); - data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); - data.put("tbImgs", tb.getImgList()); - out.print(JsonUtil.loadTrueResult(data)); - } - - /** - * 绮樿创鏉夸俊鎭帹鑽� - * - * @param acceptData - * @param url - * 鍟嗗搧閾炬帴 - * @param out - */ - @RequestMapping(value = "getNewGoodsInfo", method = RequestMethod.POST) - public void getNewGoodsInfo(AcceptData acceptData, String text, PrintWriter out) { - if (StringUtil.isNullOrEmpty(text)) { - out.print(JsonUtil.loadFalseResult("鍊间负绌�")); - return; - } - - if (text.length() > 256) { - out.print(JsonUtil.loadFalseResult("鍊艰繃闀�")); - return; - } - - TaoBaoGoodsBrief tb = null; - String URL_REGEX = "(((http|https)://)|(www\\.))[a-zA-Z0-9\\._-]+\\.[a-zA-Z]{2,6}(:[0-9]{1,4})?(/[a-zA-Z0-9\\&%_\\./-~-]*)?"; - - Pattern p = Pattern.compile(URL_REGEX); - Matcher matcher = p.matcher(text); - if (!matcher.find()) {// 涓嶅寘鍚摼鎺� - // 瑙f瀽娣樺彛浠� - if (analysisTaoToken(text, out)) - return; - // 鍟嗗搧璇︽儏 - // 鍙戠幇 - // 娌℃湁閾炬帴锛屾爣棰樿繃闀夸篃涓嶅鐞� - if (text.startsWith("銆�") && text.contains("銆�")) { - int end = text.indexOf("銆�"); - if (end > 2) - text = text.substring(1, end); - } - - LogHelper.test("鏍规嵁绮樿创鏉挎帹鑽�:" + text); - - if (text.length() > 80) { - out.print(JsonUtil.loadFalseResult("鍊艰繃闀�")); - return; - } - - SearchFilter sf = new SearchFilter(); - sf.setKey(text); - JSONObject root = new JSONObject(); - - TaoBaoSearchResult result = TaoBaoUtil.search(sf,null,null); - if (result != null && result.getTaoBaoGoodsBriefs() != null && result.getTaoBaoGoodsBriefs().size() > 0) - for (TaoBaoGoodsBrief goods : result.getTaoBaoGoodsBriefs()) { - // 鏄睘浜庢窐瀹濊仈鐩熷晢鍝� - if (goods.getTitle().equalsIgnoreCase(text)) { - root.put("type", 2); - JSONObject data = new JSONObject(); - data.put("title", goods.getTitle()); - root.put("data", data); - out.print(JsonUtil.loadTrueResult(root)); - return; - } - } - - // 鏌ヨ澶ф窐瀹㈡爣棰� - List<DaTaoKeDetailV2> list = daTaoKeGoodsDetailV2Service.listByDtitle(text); - if (list != null && list.size() > 0) { - root.put("type", 2); - JSONObject data = new JSONObject(); - data.put("title", list.get(0).getDtitle()); - root.put("data", data); - out.print(JsonUtil.loadTrueResult(root)); - return; - } - - out.print(JsonUtil.loadFalseResult("鏆備笉鏀寔璇ョ被鍨嬶紒")); - return; - } - - text = matcher.group(); - if (text.contains("ju.taobao.com") || text.contains(".juhuasuan.com")) {// 鑱氬垝绠� - int index = text.indexOf("item_id"); - if (index < 0) { - out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); - return; - } - text = text.substring(index); - int last = text.indexOf("&"); - String id = ""; - if (last > 0) - id = text.substring(text.indexOf("=") + 1, text.indexOf("&")); - else { - id = text.substring(text.indexOf("=" + 1)); - } - tb = TaoBaoUtil.isAlimama(id); - if (tb == null) { - tb = TaoBaoUtil.parsePhoneTmAndTb(id); - } - } else if (text.contains("http://zmnxbc.com")) { // 鎵嬫満绔ぉ鐚獳PP鍒嗕韩 - tb = TaoBaoUtil.parsePhoneShareUrlByTM(text); - } else if (text.contains("h5.m.taobao") || text.contains("detail.m.tmall") || text.contains("item.taobao") - || text.contains("detail.tmall")) { // 鎵嬫満椤甸潰鍜岀數鑴戦〉闈� - Map<String, String> map = Utils.parseURL(text); - String id = ""; - id = map.get("id").replace("}", ""); - tb = TaoBaoUtil.isAlimama(id); - if (tb == null) { - tb = TaoBaoUtil.parsePhoneTmAndTb(id); - } - } else { - tb = TaoBaoUtil.parsePhoneShareUrlByTB(text); - } - - if (tb == null) { - out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); - return; - } - JSONObject data = new JSONObject(); - JSONObject taoBaoGoodsJSON = new JSONObject(); - taoBaoGoodsJSON.put("title", tb.getTitle()); - taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); - taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); - taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); - data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); - if (!StringUtil.isNullOrEmpty(tb.getPictUrl())) { - if (tb.getImgList() == null) - tb.setImgList(new ArrayList<>()); - tb.getImgList().add(0, TbImgUtil.getTBSize220Img(tb.getPictUrl())); - } - data.put("tbImgs", tb.getImgList()); - JSONObject root = new JSONObject(); - root.put("type", 1); - root.put("data", data); - - out.print(JsonUtil.loadTrueResult(root)); - } - - /** - * 瑙f瀽娣樺彛浠� - * - * @param text - * @param out - * @return - */ - private boolean analysisTaoToken(String text, PrintWriter out) { - List<String> tokenList = TaoBaoUtil.getTokenListFromText(text); - if (tokenList != null && tokenList.size() > 0) { - String token = tokenList.get(0); - Long auctionId = taoBaoTokenAuctionIdMapManager.getAuctionIdByToken(token); - if (auctionId != null) { - TaoBaoGoodsBrief tb = null; - try { - tb = TaoKeApiUtil.getSimpleGoodsInfo(auctionId); - } catch (TaobaoGoodsDownException e) { - e.printStackTrace(); - } - - if (tb != null) { - JSONObject data = new JSONObject(); - JSONObject taoBaoGoodsJSON = new JSONObject(); - taoBaoGoodsJSON.put("title", tb.getTitle()); - taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); - taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); - taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); - data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); - if (!StringUtil.isNullOrEmpty(tb.getPictUrl())) { - if (tb.getImgList() == null) - tb.setImgList(new ArrayList<>()); - tb.getImgList().add(0, TbImgUtil.getTBSize220Img(tb.getPictUrl())); - } - data.put("tbImgs", tb.getImgList()); - JSONObject root = new JSONObject(); - root.put("type", 1); - root.put("data", data); - out.print(JsonUtil.loadTrueResult(root)); - return true; - } - } - } - return false; - } - -} +package com.yeshi.fanli.controller.client.v1; + +import java.io.PrintWriter; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; +import java.util.regex.Matcher; +import java.util.regex.Pattern; + +import javax.annotation.Resource; + +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.taobao.TbImgUtil; + +import com.yeshi.fanli.entity.accept.AcceptData; +import com.yeshi.fanli.entity.taobao.SearchFilter; +import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; +import com.yeshi.goods.facade.entity.taobao.dataoke.DaTaoKeDetailV2; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; +import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.service.inter.config.ConfigService; +import com.yeshi.fanli.service.inter.order.config.HongBaoManageService; +import com.yeshi.fanli.service.inter.taobao.TaoBaoUnionConfigService; +import com.yeshi.goods.facade.service.DaTaoKeGoodsDetailV2Service; +import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.service.manger.goods.tb.TaoBaoTokenAuctionIdMapManager; +import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.Utils; +import com.yeshi.fanli.util.taobao.TaoBaoUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; + +import net.sf.json.JSONObject; + +@Controller +@RequestMapping("api/v1/dynamic") +public class DynamicRecommendController { + + @Resource + private HongBaoManageService hongBaoManageService; + + @Resource + private UserInfoService userInfoService; + + @Resource + private ConfigService configService; + + @Resource + private TaoBaoUnionConfigService taoBaoUnionConfigService; + + @Resource + private DaTaoKeGoodsDetailV2Service daTaoKeGoodsDetailV2Service; + + @Resource + private TaoBaoTokenAuctionIdMapManager taoBaoTokenAuctionIdMapManager; + + /** + * 鑾峰彇鍟嗗搧淇℃伅 + * + * @param acceptData + * @param url + * 鍟嗗搧閾炬帴 + * @param out + */ + @RequestMapping(value = "getGoodsInfo", method = RequestMethod.POST) + public void getGoodsInfo(AcceptData acceptData, String url, PrintWriter out) { + + TaoBaoGoodsBrief tb = null; + String URL_REGEX = "(((http|https)://)|(www\\.))[a-zA-Z0-9\\._-]+\\.[a-zA-Z]{2,6}(:[0-9]{1,4})?(/[a-zA-Z0-9\\&%_\\./-~-]*)?"; + + Pattern p = Pattern.compile(URL_REGEX); + Matcher matcher = p.matcher(url); + if (!matcher.find()) {// 涓嶅寘鍚摼鎺� + out.print(JsonUtil.loadFalseResult("鏆備笉鏀寔璇ョ被鍨嬶紒")); + return; + } + url = matcher.group(); + if (url.contains("ju.taobao.com") || url.contains(".juhuasuan.com")) {// 鑱氬垝绠� + int index = url.indexOf("item_id"); + if (index < 0) { + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return; + } + url = url.substring(index); + int last = url.indexOf("&"); + String id = ""; + if (last > 0) + id = url.substring(url.indexOf("=") + 1, url.indexOf("&")); + else { + id = url.substring(url.indexOf("=" + 1)); + } + tb = TaoBaoUtil.isAlimama(id); + if (tb == null) { + tb = TaoBaoUtil.parsePhoneTmAndTb(id); + } + } else if (url.contains("http://zmnxbc.com")) { // 鎵嬫満绔ぉ鐚獳PP鍒嗕韩 + tb = TaoBaoUtil.parsePhoneShareUrlByTM(url); + } /* + * else if(url.contains("c.b1yt.com") || url.contains("m.qtilg.com") + * || url.contains("z.icyad.com")){ //鎵嬫満绔窐瀹濆拰涓�娣楢PP鍒嗕韩 + * tb=TaoBaoUtil.parsePhoneShareUrlByTB(url); } + */else if (url.contains("h5.m.taobao") || url.contains("detail.m.tmall") || url.contains("item.taobao") + || url.contains("detail.tmall")) { // 鎵嬫満椤甸潰鍜岀數鑴戦〉闈� + Map<String, String> map = Utils.parseURL(url); + String id = ""; + id = map.get("id").replace("}", ""); + tb = TaoBaoUtil.isAlimama(id); + if (tb == null) { + tb = TaoBaoUtil.parsePhoneTmAndTb(id); + } + } else { + tb = TaoBaoUtil.parsePhoneShareUrlByTB(url); + } + + if (tb == null) { + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return; + } + JSONObject data = new JSONObject(); + JSONObject taoBaoGoodsJSON = new JSONObject(); + taoBaoGoodsJSON.put("title", tb.getTitle()); + taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); + taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); + taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); + data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); + data.put("tbImgs", tb.getImgList()); + out.print(JsonUtil.loadTrueResult(data)); + } + + /** + * 绮樿创鏉夸俊鎭帹鑽� + * + * @param acceptData + * 鍟嗗搧閾炬帴 + * @param out + */ + @RequestMapping(value = "getNewGoodsInfo", method = RequestMethod.POST) + public void getNewGoodsInfo(AcceptData acceptData, String text, PrintWriter out) { + if (StringUtil.isNullOrEmpty(text)) { + out.print(JsonUtil.loadFalseResult("鍊间负绌�")); + return; + } + + if (text.length() > 256) { + out.print(JsonUtil.loadFalseResult("鍊艰繃闀�")); + return; + } + + TaoBaoGoodsBrief tb = null; + String URL_REGEX = "(((http|https)://)|(www\\.))[a-zA-Z0-9\\._-]+\\.[a-zA-Z]{2,6}(:[0-9]{1,4})?(/[a-zA-Z0-9\\&%_\\./-~-]*)?"; + + Pattern p = Pattern.compile(URL_REGEX); + Matcher matcher = p.matcher(text); + if (!matcher.find()) {// 涓嶅寘鍚摼鎺� + // 瑙f瀽娣樺彛浠� + if (analysisTaoToken(text, out)) + return; + // 鍟嗗搧璇︽儏 + // 鍙戠幇 + // 娌℃湁閾炬帴锛屾爣棰樿繃闀夸篃涓嶅鐞� + if (text.startsWith("銆�") && text.contains("銆�")) { + int end = text.indexOf("銆�"); + if (end > 2) + text = text.substring(1, end); + } + + LogHelper.test("鏍规嵁绮樿创鏉挎帹鑽�:" + text); + + if (text.length() > 80) { + out.print(JsonUtil.loadFalseResult("鍊艰繃闀�")); + return; + } + + SearchFilter sf = new SearchFilter(); + sf.setKey(text); + JSONObject root = new JSONObject(); + + TaoBaoSearchResult result = TaoBaoUtil.search(sf,null,null); + if (result != null && result.getTaoBaoGoodsBriefs() != null && result.getTaoBaoGoodsBriefs().size() > 0) + for (TaoBaoGoodsBrief goods : result.getTaoBaoGoodsBriefs()) { + // 鏄睘浜庢窐瀹濊仈鐩熷晢鍝� + if (goods.getTitle().equalsIgnoreCase(text)) { + root.put("type", 2); + JSONObject data = new JSONObject(); + data.put("title", goods.getTitle()); + root.put("data", data); + out.print(JsonUtil.loadTrueResult(root)); + return; + } + } + + // 鏌ヨ澶ф窐瀹㈡爣棰� + List<DaTaoKeDetailV2> list = daTaoKeGoodsDetailV2Service.listByDtitle(text); + if (list != null && list.size() > 0) { + root.put("type", 2); + JSONObject data = new JSONObject(); + data.put("title", list.get(0).getDtitle()); + root.put("data", data); + out.print(JsonUtil.loadTrueResult(root)); + return; + } + + out.print(JsonUtil.loadFalseResult("鏆備笉鏀寔璇ョ被鍨嬶紒")); + return; + } + + text = matcher.group(); + if (text.contains("ju.taobao.com") || text.contains(".juhuasuan.com")) {// 鑱氬垝绠� + int index = text.indexOf("item_id"); + if (index < 0) { + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return; + } + text = text.substring(index); + int last = text.indexOf("&"); + String id = ""; + if (last > 0) + id = text.substring(text.indexOf("=") + 1, text.indexOf("&")); + else { + id = text.substring(text.indexOf("=" + 1)); + } + tb = TaoBaoUtil.isAlimama(id); + if (tb == null) { + tb = TaoBaoUtil.parsePhoneTmAndTb(id); + } + } else if (text.contains("http://zmnxbc.com")) { // 鎵嬫満绔ぉ鐚獳PP鍒嗕韩 + tb = TaoBaoUtil.parsePhoneShareUrlByTM(text); + } else if (text.contains("h5.m.taobao") || text.contains("detail.m.tmall") || text.contains("item.taobao") + || text.contains("detail.tmall")) { // 鎵嬫満椤甸潰鍜岀數鑴戦〉闈� + Map<String, String> map = Utils.parseURL(text); + String id = ""; + id = map.get("id").replace("}", ""); + tb = TaoBaoUtil.isAlimama(id); + if (tb == null) { + tb = TaoBaoUtil.parsePhoneTmAndTb(id); + } + } else { + tb = TaoBaoUtil.parsePhoneShareUrlByTB(text); + } + + if (tb == null) { + out.println(JsonUtil.loadFalseResult("鏆傛湭鎵惧埌璇ュ晢鍝侊紝璇风◢鍚庡啀璇曪紒")); + return; + } + JSONObject data = new JSONObject(); + JSONObject taoBaoGoodsJSON = new JSONObject(); + taoBaoGoodsJSON.put("title", tb.getTitle()); + taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); + taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); + taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); + data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); + if (!StringUtil.isNullOrEmpty(tb.getPictUrl())) { + if (tb.getImgList() == null) + tb.setImgList(new ArrayList<>()); + tb.getImgList().add(0, TbImgUtil.getTBSize220Img(tb.getPictUrl())); + } + data.put("tbImgs", tb.getImgList()); + JSONObject root = new JSONObject(); + root.put("type", 1); + root.put("data", data); + + out.print(JsonUtil.loadTrueResult(root)); + } + + /** + * 瑙f瀽娣樺彛浠� + * + * @param text + * @param out + * @return + */ + private boolean analysisTaoToken(String text, PrintWriter out) { + List<String> tokenList = TaoBaoUtil.getTokenListFromText(text); + if (tokenList != null && tokenList.size() > 0) { + String token = tokenList.get(0); + String auctionId = taoBaoTokenAuctionIdMapManager.getAuctionIdByToken(token); + if (auctionId != null) { + TaoBaoGoodsBrief tb = null; + try { + tb = TaoKeApiUtil.getSimpleGoodsInfo(auctionId); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } + + if (tb != null) { + JSONObject data = new JSONObject(); + JSONObject taoBaoGoodsJSON = new JSONObject(); + taoBaoGoodsJSON.put("title", tb.getTitle()); + taoBaoGoodsJSON.put("zkPrice", tb.getZkPrice()); + taoBaoGoodsJSON.put("auctionId", tb.getAuctionId()); + taoBaoGoodsJSON.put("url", "http://item.taobao.com/item.htm?id=" + tb.getAuctionId()); + data.put("taoBaoGoodsBrief", taoBaoGoodsJSON); + if (!StringUtil.isNullOrEmpty(tb.getPictUrl())) { + if (tb.getImgList() == null) + tb.setImgList(new ArrayList<>()); + tb.getImgList().add(0, TbImgUtil.getTBSize220Img(tb.getPictUrl())); + } + data.put("tbImgs", tb.getImgList()); + JSONObject root = new JSONObject(); + root.put("type", 1); + root.put("data", data); + out.print(JsonUtil.loadTrueResult(root)); + return true; + } + } + } + return false; + } + +} -- Gitblit v1.8.0