From d28bed1a1275131a5ca37f7da37961e2b518ac07 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期一, 26 八月 2019 13:44:00 +0800 Subject: [PATCH] 淘礼金创建异常处理 --- fanli/src/main/java/com/yeshi/fanli/controller/TestController.java | 168 ++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 121 insertions(+), 47 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java index c04b5c4..91896fe 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java @@ -12,6 +12,9 @@ import java.util.UUID; import javax.annotation.Resource; +import javax.script.Invocable; +import javax.script.ScriptEngine; +import javax.script.ScriptEngineManager; import javax.servlet.http.HttpServletRequest; import org.jsoup.Jsoup; @@ -32,9 +35,11 @@ import com.google.gson.Gson; import com.google.gson.GsonBuilder; import com.yeshi.fanli.dao.mybatis.help.HelpCenterMapper; +import com.yeshi.fanli.dto.jd.JDSearchResult; import com.yeshi.fanli.entity.bus.activity.ActivityShareResult; import com.yeshi.fanli.entity.bus.activity.RecommendActivity; import com.yeshi.fanli.entity.dynamic.InviteMaterial; +import com.yeshi.fanli.entity.jd.JDGoods; import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; import com.yeshi.fanli.exception.ActivityException; import com.yeshi.fanli.exception.share.UserShareGoodsRecordException; @@ -45,14 +50,22 @@ import com.yeshi.fanli.service.inter.dynamic.DynamicInfoService; import com.yeshi.fanli.service.inter.dynamic.InviteMaterialService; import com.yeshi.fanli.service.inter.goods.TaoBaoGoodsBriefService; +import com.yeshi.fanli.service.inter.hongbao.HongBaoManageService; +import com.yeshi.fanli.tag.PageEntity; import com.yeshi.fanli.util.Constant; import com.yeshi.fanli.util.FileUtil; import com.yeshi.fanli.util.RedisManager; import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.TimeUtil; import com.yeshi.fanli.util.db.MongoDBManager; +import com.yeshi.fanli.util.factory.goods.GoodsDetailVOFactory; +import com.yeshi.fanli.util.jd.JDApiUtil; +import com.yeshi.fanli.vo.goods.GoodsDetailVO; import net.sf.json.JSONArray; import net.sf.json.JSONObject; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.JedisPool; @Controller @RequestMapping("test") @@ -71,13 +84,12 @@ private HelpCenterMapper helpCenterMapper; @Resource private Scheduler scheduler; - + @Resource private DynamicInfoService dynamicInfoService; - + @Resource - private TaoBaoGoodsBriefService taoBaoGoodsBriefService; - + private TaoBaoGoodsBriefService taoBaoGoodsBriefService; @Resource private EhCacheCacheManager ehCacheCacheManager; @@ -85,12 +97,15 @@ @Resource private ConfigService configService; - + @Resource + private HongBaoManageService hongBaoManageService; + @Resource private InviteMaterialService inviteMaterialService; - - - + + @Resource + private JedisPool jedisPool; + @RequestMapping(value = "testimg") public void testImg(HttpServletRequest request, PrintWriter out) { long startTime = System.currentTimeMillis(); @@ -125,9 +140,9 @@ long startDTime = System.currentTimeMillis(); /* - * try { //ImageUtil.drawGoodsShareImg(new FileInputStream(new File(destPath)), - * portrait, goods, shareImgPath); } catch (FileNotFoundException e) { - * e.printStackTrace(); } + * try { //ImageUtil.drawGoodsShareImg(new FileInputStream(new + * File(destPath)), portrait, goods, shareImgPath); } catch + * (FileNotFoundException e) { e.printStackTrace(); } */ System.out.println(System.currentTimeMillis() - startDTime); @@ -211,8 +226,7 @@ out.print("<script>yestv.finishPage();</script>"); out.close(); } - - + /** * 娓呴櫎缂撳瓨 * @@ -223,6 +237,11 @@ ehCacheCacheManager.getCacheManager().clearAll(); } + @RequestMapping(value = "removeRedisCache") + public void removeRedisCache(String key, PrintWriter out) { + redisManager.removeCommonString(key); + } + @RequestMapping(value = "testConfig") public void getTestConfig(PrintWriter pw) { pw.print(configService.get("test")); @@ -230,41 +249,53 @@ @RequestMapping(value = "testDaTaoKe") public void getTestDaTaoKe(PrintWriter pw) { + Document doc = null; try { - Document doc = Jsoup.connect("http://www.dataoke.com/brandFeature").get(); - Elements els = doc.getElementsByTag("script"); - for (int i = 0; i < els.size(); i++) { - if (els.get(i).html().contains("var brandData")) { - pw.print(els.get(i).html().replace("var brandData =", "").trim().split("};")[0] + "}"); + doc = Jsoup.connect("http://www.dataoke.com/ddq").get(); + } catch (IOException e1) { + e1.printStackTrace(); + } + Elements els = doc.getElementsByTag("script"); + for (int i = 0; i < els.size(); i++) { + String content = els.get(i).html(); + if (content.indexOf("var dataDef") > -1) { + ScriptEngineManager manager = new ScriptEngineManager(); + ScriptEngine engine = manager.getEngineByName("javascript"); + try { + String js = "function getData(){return JSON.stringify(dataDef);}" + content; + engine.eval(js); + if (engine instanceof Invocable) { + Invocable in = (Invocable) engine; + pw.print(in.invokeFunction("getData")); + } + } catch (Exception e) { + e.printStackTrace(); } } - } catch (IOException e) { - e.printStackTrace(); } } - - @RequestMapping(value = "insertShop") public void insertShop(PrintWriter out) { - try { - dynamicInfoService.insertShopInfo(); - dynamicInfoService.insertTimeHotSale(); - dynamicInfoService.insertTimeRecommend(); + try { + dynamicInfoService.insertShopInfo(); + dynamicInfoService.insertTimeHotSale(); + dynamicInfoService.insertTimeRecommend(); } catch (Exception e) { e.printStackTrace(); } } - + /** * 鎻掑叆閭�璇风礌鏉� + * * @param out */ @RequestMapping(value = "uploadInviteMaterial") public void uploadInviteMaterial(PrintWriter out) { try { List<InviteMaterial> list = new ArrayList<InviteMaterial>(); - + // 鍥剧墖鏂囦欢 File file = new File("E:\\Invite\\Picture"); File[] files = file.listFiles(); @@ -272,22 +303,22 @@ String name = filePic.getName(); String prefix = name.substring(name.lastIndexOf(".") + 1); // 涓婁紶鏂囦欢鐩稿浣嶇疆 - String filePath = "/resource/invite/everyday/" + UUID.randomUUID().toString().replace("-", "") + "." + prefix; + String filePath = "/resource/invite/everyday/" + UUID.randomUUID().toString().replace("-", "") + "." + + prefix; String fileUrl = COSManager.getInstance().uploadFile(filePic, filePath).getUrl(); - + System.out.println("FileName:" + name); - System.out.println("url:"+ fileUrl); - + System.out.println("url:" + fileUrl); + InviteMaterial inviteMaterial = new InviteMaterial(); inviteMaterial.setState(0); inviteMaterial.setPicture(fileUrl); list.add(inviteMaterial); } - List<String> listTxt = new ArrayList<String>(); - File textfile = new File("E:\\Invite\\content.txt");//Text鏂囦欢 + File textfile = new File("E:\\Invite\\content.txt");// Text鏂囦欢 BufferedReader br = new BufferedReader(new FileReader(textfile));// 鏋勯�犱竴涓狟ufferedReader绫绘潵璇诲彇鏂囦欢 String s = ""; while ((s = br.readLine()) != null) {// 浣跨敤readLine鏂规硶锛屼竴娆¤涓�琛� @@ -301,7 +332,7 @@ if (list.size() == 0 || listTxt.size() == 0 || listTxt.size() < list.size()) { return; } - + for (int i = 0; i < list.size(); i++) { InviteMaterial invite = list.get(i); invite.setText(listTxt.get(i)); @@ -313,17 +344,17 @@ e.printStackTrace(); } } - - + /** * 鎻掑叆閭�璇风礌鏉� + * * @param out */ @RequestMapping(value = "uploadInviteMaterial2") public void uploadInviteMaterial2(PrintWriter out) { try { List<InviteMaterial> list = new ArrayList<InviteMaterial>(); - File picfile = new File("E:\\Invite\\pic.txt");//Text鏂囦欢 + File picfile = new File("E:\\Invite\\pic.txt");// Text鏂囦欢 BufferedReader brp = new BufferedReader(new FileReader(picfile));// 鏋勯�犱竴涓狟ufferedReader绫绘潵璇诲彇鏂囦欢 String fileUrl = ""; while ((fileUrl = brp.readLine()) != null) {// 浣跨敤readLine鏂规硶锛屼竴娆¤涓�琛� @@ -337,10 +368,9 @@ list.add(inviteMaterial); } brp.close(); - - + List<String> listTxt = new ArrayList<String>(); - File textfile = new File("E:\\Invite\\content.txt");//Text鏂囦欢 + File textfile = new File("E:\\Invite\\content.txt");// Text鏂囦欢 BufferedReader br = new BufferedReader(new FileReader(textfile));// 鏋勯�犱竴涓狟ufferedReader绫绘潵璇诲彇鏂囦欢 String s = ""; while ((s = br.readLine()) != null) {// 浣跨敤readLine鏂规硶锛屼竴娆¤涓�琛� @@ -354,7 +384,7 @@ if (list.size() == 0 || listTxt.size() == 0 || listTxt.size() < list.size()) { return; } - + for (int i = 0; i < list.size(); i++) { InviteMaterial invite = list.get(i); invite.setText(listTxt.get(i)); @@ -366,11 +396,10 @@ e.printStackTrace(); } } - - - + /** * 鎻掑叆閭�璇风礌鏉� + * * @param out */ @RequestMapping(value = "saveInvite") @@ -384,10 +413,10 @@ e.printStackTrace(); } } - - + /** * 鎻掑叆閭�璇风礌鏉� + * * @param out */ @RequestMapping(value = "insertTimeInvite") @@ -400,4 +429,49 @@ e.printStackTrace(); } } + + /** + * 鎻掑叆閭�璇风礌鏉� + * + * @param out + */ + @RequestMapping(value = "getJingFenList") + public void getJingFenList(String callback, Integer page, Integer eliteId, PrintWriter out) { + try { + JDSearchResult result = JDApiUtil.getJingFenGoods(page, eliteId); + long count = 0; + JSONObject data = new JSONObject(); + JSONArray array = new JSONArray(); + if (result != null) { + PageEntity pageEntity = result.getPageEntity(); + if (pageEntity != null) { + count = pageEntity.getTotalCount(); + } + + List<JDGoods> goodsList = result.getGoodsList(); + if (goodsList != null && goodsList.size() > 0) { + BigDecimal fanLiRate = hongBaoManageService.getFanLiRate(); + BigDecimal shareRate = hongBaoManageService.getShareRate(); + Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) + .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); + for (JDGoods goods : goodsList) { + GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, fanLiRate, shareRate); + array.add(gson.toJson(goodsDetailVO)); + } + } + } + + data.put("count", count); + data.put("list", array); + JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(data)); + } catch (Exception e) { + JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("鎿嶄綔澶辫触")); + e.printStackTrace(); + } + } + + @RequestMapping(value = "getWaitingThreadsCount") + public void getWaitingThreadsCount(PrintWriter out) { + out.print(Constant.waitingThreadSet.size()); + } } -- Gitblit v1.8.0