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 |  265 +++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 259 insertions(+), 6 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 3bcd157..91896fe 100644
--- a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
+++ b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
@@ -1,14 +1,20 @@
 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;
@@ -29,8 +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;
@@ -38,13 +47,25 @@
 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.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")
@@ -65,10 +86,25 @@
 	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;
+
+	@Resource
+	private JedisPool jedisPool;
 
 	@RequestMapping(value = "testimg")
 	public void testImg(HttpServletRequest request, PrintWriter out) {
@@ -201,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"));
@@ -208,17 +249,229 @@
 
 	@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();
+				}
+			}
+		}
+	}
+
+	@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));
+					}
 				}
 			}
 
-		} catch (IOException e) {
+			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