From 6f3ee199558c79d840137c1a77efe462aca63178 Mon Sep 17 00:00:00 2001
From: yujian <yujian@123.com>
Date: 星期五, 26 七月 2019 18:04:21 +0800
Subject: [PATCH] 京东专题 + 拼多多
---
fanli/src/main/java/com/yeshi/fanli/controller/TestController.java | 289 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 287 insertions(+), 2 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 c144ab7..b6e6e08 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,18 +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;
@@ -57,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) {
@@ -115,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);
@@ -172,10 +214,253 @@
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, null, 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