From f4548a3ee46afe45da4ee2a42dc169c575deee9f Mon Sep 17 00:00:00 2001 From: yujian <yujian@123.com> Date: 星期三, 31 七月 2019 11:57:36 +0800 Subject: [PATCH] 动态v2兼容 --- fanli/src/main/java/com/yeshi/fanli/controller/TestController.java | 295 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 294 insertions(+), 1 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 f78c111..692f54e 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java @@ -1,18 +1,29 @@ package com.yeshi.fanli.controller; +import java.io.BufferedReader; import java.io.File; +import java.io.FileReader; +import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; +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; +import org.jsoup.nodes.Document; +import org.jsoup.select.Elements; import org.quartz.JobExecutionContext; import org.quartz.Scheduler; import org.quartz.SchedulerException; +import org.springframework.cache.ehcache.EhCacheCacheManager; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.yeshi.utils.HttpUtil; @@ -24,17 +35,31 @@ 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; import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; import com.yeshi.fanli.log.LogHelper; import com.yeshi.fanli.service.inter.activity.ActivityService; +import com.yeshi.fanli.service.inter.config.ConfigService; +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.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; @@ -56,6 +81,24 @@ private HelpCenterMapper helpCenterMapper; @Resource private Scheduler scheduler; + + @Resource + private DynamicInfoService dynamicInfoService; + + @Resource + private TaoBaoGoodsBriefService taoBaoGoodsBriefService; + + @Resource + private EhCacheCacheManager ehCacheCacheManager; + + @Resource + private ConfigService configService; + + @Resource + private HongBaoManageService hongBaoManageService; + + @Resource + private InviteMaterialService inviteMaterialService; @RequestMapping(value = "testimg") public void testImg(HttpServletRequest request, PrintWriter out) { @@ -114,7 +157,7 @@ @RequestMapping(value = "testactivity") public void test2(PrintWriter out) { List<RecommendActivity> list = activityService.getRecommendActivityList(1, Constant.PAGE_SIZE); - long count = activityService.getRecommendActivityCount(); + long count = activityService.getRecommendActivityCount(null); JSONObject data = new JSONObject(); data.put("data", getGson().toJson(list)); data.put("count", count); @@ -126,6 +169,8 @@ try { ActivityShareResult result = activityService.shareActivityGoods(343448L, 1L); out.print(JsonUtil.getSimpleGson().toJson(result)); + } catch (UserShareGoodsRecordException e) { + e.printStackTrace(); } catch (ActivityException e) { e.printStackTrace(); } @@ -169,4 +214,252 @@ e.printStackTrace(); } } + + @RequestMapping(value = "testhtml") + public void testhtml(PrintWriter out) { + out.print("<script>yestv.finishPage();</script>"); + out.close(); + } + + /** + * 娓呴櫎缂撳瓨 + * + * @param out + */ + @RequestMapping(value = "removeCache") + public void removeCache(PrintWriter out) { + 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")); + } + + @RequestMapping(value = "testDaTaoKe") + public void getTestDaTaoKe(PrintWriter pw) { + Document doc = null; + try { + 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(); + } + } + } + } + + @RequestMapping(value = "insertShop") + public void insertShop(PrintWriter out) { + 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(); + for (File filePic : files) {// 閬嶅巻杩欎釜鏁扮粍 + String name = filePic.getName(); + String prefix = name.substring(name.lastIndexOf(".") + 1); + // 涓婁紶鏂囦欢鐩稿浣嶇疆 + 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); + + 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鏂囦欢 + BufferedReader br = new BufferedReader(new FileReader(textfile));// 鏋勯�犱竴涓狟ufferedReader绫绘潵璇诲彇鏂囦欢 + String s = ""; + while ((s = br.readLine()) != null) {// 浣跨敤readLine鏂规硶锛屼竴娆¤涓�琛� + if (StringUtil.isNullOrEmpty(s)) { + continue; + } + listTxt.add(s); + } + br.close(); + + 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)); + inviteMaterialService.insert(invite); + } + JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("涓婁紶鎴愬姛")); + } catch (Exception e) { + JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("涓婁紶澶辫触")); + 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鏂囦欢 + BufferedReader brp = new BufferedReader(new FileReader(picfile));// 鏋勯�犱竴涓狟ufferedReader绫绘潵璇诲彇鏂囦欢 + String fileUrl = ""; + while ((fileUrl = brp.readLine()) != null) {// 浣跨敤readLine鏂规硶锛屼竴娆¤涓�琛� + if (StringUtil.isNullOrEmpty(fileUrl)) { + continue; + } + InviteMaterial inviteMaterial = new InviteMaterial(); + inviteMaterial.setId(UUID.randomUUID().toString().replace("-", "")); + inviteMaterial.setState(0); + inviteMaterial.setPicture(fileUrl); + list.add(inviteMaterial); + } + brp.close(); + + List<String> listTxt = new ArrayList<String>(); + 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鏂规硶锛屼竴娆¤涓�琛� + if (StringUtil.isNullOrEmpty(s)) { + continue; + } + listTxt.add(s); + } + br.close(); + + 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)); + inviteMaterialService.insert(invite); + } + JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("涓婁紶鎴愬姛")); + } catch (Exception e) { + JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("涓婁紶澶辫触")); + e.printStackTrace(); + } + } + + /** + * 鎻掑叆閭�璇风礌鏉� + * + * @param out + */ + @RequestMapping(value = "saveInvite") + public void saveInvite(InviteMaterial inviteMaterial, PrintWriter out) { + try { + inviteMaterial.setState(0); + inviteMaterialService.insert(inviteMaterial); + JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("涓婁紶鎴愬姛")); + } catch (Exception e) { + JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("涓婁紶澶辫触")); + e.printStackTrace(); + } + } + + /** + * 鎻掑叆閭�璇风礌鏉� + * + * @param out + */ + @RequestMapping(value = "insertTimeInvite") + public void insertTimeInvite(PrintWriter out) { + try { + dynamicInfoService.insertTimeInvite(); + JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("鎿嶄綔鎴愬姛")); + } catch (Exception e) { + JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("鎿嶄綔澶辫触")); + 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(); + } + } } -- Gitblit v1.8.0