From 62a447d89331aee1feae7724c7616aa1bb2cfe79 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期三, 16 十月 2024 14:28:37 +0800 Subject: [PATCH] 将CMQ替换为rabbitmq --- fanli/src/main/java/com/yeshi/fanli/controller/TestController.java | 1154 ++++++++++++++++++++++++-------------------------------- 1 files changed, 496 insertions(+), 658 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 776f331..935194a 100644 --- a/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java +++ b/fanli/src/main/java/com/yeshi/fanli/controller/TestController.java @@ -1,658 +1,496 @@ -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.Iterator; -import java.util.List; -import java.util.Set; -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; -import org.yeshi.utils.JsonUtil; -import org.yeshi.utils.QRCodeUtil; -import org.yeshi.utils.tencentcloud.COSManager; -import org.yeshi.utils.wx.WXUtil; - -import com.google.gson.Gson; -import com.google.gson.GsonBuilder; -import com.yeshi.fanli.dao.dynamic.DynamicInfoDao; -import com.yeshi.fanli.dao.mybatis.help.HelpCenterMapper; -import com.yeshi.fanli.dto.ConfigParamsDTO; -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.DynamicInfo; -import com.yeshi.fanli.entity.dynamic.GoodsPicture; -import com.yeshi.fanli.entity.dynamic.InviteMaterial; -import com.yeshi.fanli.entity.jd.JDGoods; -import com.yeshi.fanli.entity.taobao.SearchFilter; -import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief; -import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBriefExtra; -import com.yeshi.fanli.entity.taobao.TaoBaoSearchResult; -import com.yeshi.fanli.exception.ActivityException; -import com.yeshi.fanli.exception.push.PushException; -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.order.config.HongBaoManageService; -import com.yeshi.fanli.service.inter.user.integral.IntegralGetService; -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.util.push.OPPOPushUtil; -import com.yeshi.fanli.util.push.VIVOPushUtil; -import com.yeshi.fanli.util.taobao.TaoBaoUtil; -import com.yeshi.fanli.util.taobao.TaoKeApiUtil; -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") -public class TestController { - - @Resource - private RedisManager redisManager; - - @Resource - private ActivityService activityService; - - @Resource - private MongoDBManager mongoDBManager; - - @Resource - 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; - - @Resource - private DynamicInfoDao dynamicInfoDao; - - @Resource - private JedisPool jedisPool; - - @Resource - private IntegralGetService integralGetService; - - @RequestMapping(value = "testimg") - public void testImg(HttpServletRequest request, PrintWriter out) { - long startTime = System.currentTimeMillis(); - - List<String> list = new ArrayList<>(); - for (int i = 0; i < 10; i++) { - list.add("i" + i); - } - - try { - final TaoBaoGoodsBrief goods = redisManager.getTaoBaoGoodsBrief(569823237075L); - } catch (TaobaoGoodsDownException e1) { - e1.printStackTrace(); - } - String url = "http://www.baidu.com"; - list.parallelStream().forEach(ids -> { - InputStream portrait = HttpUtil.getAsInputStream( - "https://wwc.alicdn.com/avatar/getAvatar.do?userId=1889722423&width=160&height=160&type=sns"); - System.out.println(ids + "寮�濮嬫椂闂�:" + System.currentTimeMillis()); - String uid = "123"; - String auctionId = "test-" + ids; - - String destPath = FileUtil.getCacheDir() + "/" + auctionId + ".jpg"; - - String shareImgPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + auctionId + ".png"; - - try { - QRCodeUtil.getInstance(500).encode(url, destPath); - } catch (Exception e) { - e.printStackTrace(); - } - long startDTime = System.currentTimeMillis(); - - /* - * try { //ImageUtil.drawGoodsShareImg(new FileInputStream(new - * File(destPath)), portrait, goods, shareImgPath); } catch - * (FileNotFoundException e) { e.printStackTrace(); } - */ - System.out.println(System.currentTimeMillis() - startDTime); - - String shareImgUrl = COSManager.getInstance() - .uploadFile(new File(shareImgPath), "share_" + uid + "_" + auctionId + ".png").getUrl(); - System.out.println(ids + "缁撴潫鏃堕棿:" + System.currentTimeMillis()); - }); - System.out.println("鏁翠綋鑰楁椂:" + (System.currentTimeMillis() - startTime)); - } - - @RequestMapping(value = "kefu") - public void kefu(HttpServletRequest request, PrintWriter out) { - String content = WXUtil.getContent(request); - LogHelper.test(content); - return; - } - - @RequestMapping(value = "testactivity") - public void test2(PrintWriter out) { - List<RecommendActivity> list = activityService.getRecommendActivityList(1, Constant.PAGE_SIZE); - long count = activityService.getRecommendActivityCount(null); - JSONObject data = new JSONObject(); - data.put("data", getGson().toJson(list)); - data.put("count", count); - out.print(JsonUtil.loadTrueResult(data)); - } - - @RequestMapping(value = "testactivitysharegoods") - public void test3(PrintWriter out) { - try { - ActivityShareResult result = activityService.shareActivityGoods(343448L, 1L); - out.print(JsonUtil.getSimpleGson().toJson(result)); - } catch (UserShareGoodsRecordException e) { - e.printStackTrace(); - } catch (ActivityException e) { - e.printStackTrace(); - } - } - - @RequestMapping(value = "testactivityshareinvite") - public void test4(PrintWriter out) { - try { - ActivityShareResult result = activityService.shareInviteImg(343448L, 2L); - out.print(JsonUtil.getSimpleGson().toJson(result)); - } catch (ActivityException e) { - e.printStackTrace(); - } - } - - @RequestMapping(value = "testnumber") - public void test5(PrintWriter out) { - JSONArray array = new JSONArray(); - for (int i = 0; i < 1000; i++) { - JSONObject data = new JSONObject(); - data.put("number", new BigDecimal("10").add(new BigDecimal("0.1").multiply(new BigDecimal(i)))); - array.add(data); - } - out.print(array.toString()); - } - - private Gson getGson() { - GsonBuilder gb = new GsonBuilder(); - gb.setDateFormat("MM-dd HH:mm"); - gb.excludeFieldsWithoutExposeAnnotation(); - Gson gson = gb.create(); - return gson; - } - - @RequestMapping(value = "scheduler") - public void test8(PrintWriter out) { - try { - List<JobExecutionContext> jobList = scheduler.getCurrentlyExecutingJobs(); - out.print("running job:" + jobList.size()); - } catch (SchedulerException e) { - 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(); - ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE); - - Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder()) - .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create(); - for (JDGoods goods : goodsList) { - GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO); - 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(); - } - } - - /** - * 鎻掑叆閭�璇风礌鏉� - * - * @param out - */ - @RequestMapping(value = "queryExistsId") - public void queryExistsAuctionId(PrintWriter out) { - try { - List<DynamicInfo> list = dynamicInfoDao.queryExistsAuctionId(); - for (DynamicInfo dynamicInfo : list) { - List<GoodsPicture> imgs = dynamicInfo.getImgs(); - if (imgs == null || imgs.size() == 0) { - continue; - } - - boolean update = false; - for (GoodsPicture goodsPicture : imgs) { - TaoBaoGoodsBriefExtra goods = goodsPicture.getGoods(); - if (goods == null) { - continue; - } - - if (goods.getAuctionId() == null) { - update = true; - goods.setAuctionId(goods.getId()); - } - } - - if (update) { - dynamicInfo.setImgs(imgs); - dynamicInfoDao.updateGoodInfo(dynamicInfo); - } - } - JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("鎿嶄綔鎴愬姛")); - // JsonUtil.printMode(out, null, - // JsonUtil.loadTrueResult(JsonUtil.getSimpleGson().toJson(list))); - } catch (Exception e) { - JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("鎿嶄綔澶辫触")); - e.printStackTrace(); - } - } - - @RequestMapping(value = "getWaitingThreadsCount") - public void getWaitingThreadsCount(PrintWriter out) { - out.print(Constant.waitingThreadSet.size()); - } - - @RequestMapping(value = "getBinFaRedisKey") - public void getPinFaRedisKey(PrintWriter out) { - JSONArray array = new JSONArray(); - Jedis jedis = jedisPool.getResource(); - try { - Set<String> sets = jedis.keys("rs-*"); - for (Iterator<String> its = sets.iterator(); its.hasNext();) - array.add(its.next()); - } finally { - jedisPool.returnResource(jedis); - } - out.println(array.toString()); - } - - @RequestMapping(value = "pushOppo") - public void pushOppo(String registerId, PrintWriter out) { - List<String> registerIds = new ArrayList<>(); - registerIds.add(registerId); - try { - OPPOPushUtil.pushUrl(registerIds, "娴嬭瘯缃戦〉鎺ㄩ��", "娴嬭瘯缃戦〉鎺ㄩ�佸唴瀹�", "http://www.baidu.com"); - } catch (PushException e) { - e.printStackTrace(); - } - - try { - OPPOPushUtil.pushGoods(registerIds, "娴嬭瘯鍟嗗搧缃戦〉鎺ㄩ��", "娴嬭瘯鍟嗗搧鎺ㄩ�佸唴瀹�", 1, 577628549116L); - } catch (PushException e) { - e.printStackTrace(); - } - - try { - OPPOPushUtil.pushUserSignInNotification(registerIds, "娴嬭瘯绛惧埌鎺ㄩ��", "娴嬭瘯绛惧埌鎺ㄩ��"); - } catch (PushException e) { - e.printStackTrace(); - } - try { - OPPOPushUtil.pushWelfareCenter(registerIds, "娴嬭瘯绂忓埄涓績鎺ㄩ��", "娴嬭瘯绂忓埄涓績鎺ㄩ��"); - } catch (PushException e) { - e.printStackTrace(); - } - try { - OPPOPushUtil.pushZNX(registerIds, "娴嬭瘯绔欏唴淇℃帹閫�", "娴嬭瘯绔欏唴淇℃帹閫�"); - } catch (PushException e) { - e.printStackTrace(); - } - - out.print("success"); - } - - @RequestMapping(value = "testListTLJGoods") - public void getGoodsList(String callback, PrintWriter out) { - SearchFilter sf = new SearchFilter(); - sf.setQuan(1); - sf.setTmall(true); - // sf.setEndPrice(new BigDecimal(1000)); - sf.setPage(1); - sf.setPage(100); - sf.setCateIds("16"); - sf.setSort(TaoBaoUtil.SORT_SALE_HIGH_TO_LOW); - - TaoBaoSearchResult result = TaoKeApiUtil.searchWuLiao(sf); - Gson gson = new Gson(); - JSONArray array = new JSONArray(); - for (TaoBaoGoodsBrief goods : result.getTaoBaoGoodsBriefs()) { - array.add(gson.toJson(TaoBaoUtil.getTaoBaoGoodsBriefExtra(goods, "100", null))); - } - out.print(JsonUtil.loadJSONP(callback, JsonUtil.loadTrueResult(array))); - } - - /** - * 鎻掑叆閭�璇风礌鏉� - * - * @param out - */ - @RequestMapping(value = "addInviteOrderLevelOne") - public void addInviteOrderLevelOne(PrintWriter out) { - try { - System.out.println("-------------璇锋眰---------------"); - integralGetService.addShareSingleGoods(974767L); - JsonUtil.printMode(out, null, JsonUtil.loadTrueResult("鎿嶄綔鎴愬姛")); - } catch (Exception e) { - JsonUtil.printMode(out, null, JsonUtil.loadFalseResult("鎿嶄綔澶辫触")); - e.printStackTrace(); - } - } - - @RequestMapping("pushVIVO") - public void pushVIVO(PrintWriter out) { - List<String> regList = new ArrayList<>(); - regList.add("15710270630271520610033"); - // regList.add("15711218630321520681531"); - // try { - // VIVOPushUtil.pushUrl(regList, "鏍囬", "缃戦〉鍐呭", "http://www.baidu.com"); - // } catch (Exception e) { - // } - - try { - VIVOPushUtil.pushBaiChuanUrl(regList, "鏍囬", "鐧惧窛鍐呭", "http://www.taobao.com");// 鏈塨ug - // VIVOPushUtil.pushGoods(regList, "鏍囬", "鍟嗗搧鍐呭", 2, 100005625634L); - // VIVOPushUtil.pushUserSignInNotification(regList, "鏍囬", "绛惧埌"); - // VIVOPushUtil.pushWelfareCenter(regList,"鏍囬", "绂忓埄涓績"); - } catch (PushException e) { - e.printStackTrace(); - } - } - - @RequestMapping("getSchedulerList") - public void getSchedulerList(PrintWriter out) { - try { - for (String groupName : scheduler.getJobGroupNames()) { - System.out.println(groupName); - } - } catch (Exception e) { - } - } - -} +package com.yeshi.fanli.controller; + +import com.google.gson.Gson; +import com.google.gson.GsonBuilder; +import com.yeshi.fanli.dao.dynamic.DynamicInfoDao; +import com.yeshi.fanli.dao.mybatis.help.HelpCenterMapper; +import com.yeshi.fanli.dto.push.PushContentDTO; +import com.yeshi.fanli.entity.SystemEnum; +import com.yeshi.fanli.entity.bus.activity.ActivityShareResult; +import com.yeshi.fanli.entity.bus.activity.RecommendActivity; +import com.yeshi.fanli.entity.bus.msg.MsgOrderDetail; +import com.yeshi.fanli.entity.bus.user.UserInfo; +import com.yeshi.fanli.entity.config.push.PushMsgFactory; +import com.yeshi.fanli.entity.dynamic.InviteMaterial; +import com.yeshi.fanli.exception.ActivityException; +import com.yeshi.fanli.exception.push.PushException; +import com.yeshi.fanli.exception.share.UserShareGoodsRecordException; +import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException; +import com.yeshi.fanli.exception.user.UserInfoException; +import com.yeshi.fanli.log.LogHelper; +import com.yeshi.fanli.log.LogManager; +import com.yeshi.fanli.log.LogType; +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.order.config.HongBaoManageService; +import com.yeshi.fanli.service.inter.order.msg.MsgOrderDetailService; +import com.yeshi.fanli.service.inter.push.PushService; +import com.yeshi.fanli.service.inter.user.UserInfoService; +import com.yeshi.fanli.util.Constant; +import com.yeshi.fanli.util.RedisManager; +import com.yeshi.fanli.util.StringUtil; +import com.yeshi.fanli.util.db.MongoDBManager; +import com.yeshi.fanli.util.email.MailSenderUtil; +import com.yeshi.fanli.util.push.OPPOPushUtil; +import com.yeshi.fanli.util.taobao.TaoKeApiUtil; +import com.yeshi.goods.facade.entity.taobao.TaoBaoCouponCache; +import com.yeshi.goods.facade.entity.taobao.TaoBaoGoodsBrief; +import com.yeshi.goods.facade.service.TaoBaoCouponCacheService; +import net.sf.json.JSONArray; +import net.sf.json.JSONObject; +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.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.amqp.core.Message; +import org.springframework.amqp.core.MessageProperties; +import org.springframework.amqp.rabbit.core.RabbitTemplate; +import org.springframework.cache.ehcache.EhCacheCacheManager; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.RequestMapping; +import org.yeshi.utils.JsonUtil; +import org.yeshi.utils.TimeUtil; +import org.yeshi.utils.wx.WXUtil; +import redis.clients.jedis.Jedis; +import redis.clients.jedis.JedisPool; + +import javax.annotation.Resource; +import javax.script.Invocable; +import javax.script.ScriptEngine; +import javax.script.ScriptEngineManager; +import javax.servlet.http.HttpServletRequest; +import java.io.*; +import java.math.BigDecimal; +import java.nio.charset.StandardCharsets; +import java.util.*; + +@Controller +@RequestMapping("test") +public class TestController { + + @Resource + private RedisManager redisManager; + + @Resource + private ActivityService activityService; + + @Resource + private MongoDBManager mongoDBManager; + + @Resource + 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; + + @Resource + private DynamicInfoDao dynamicInfoDao; + + @Resource + private JedisPool jedisPool; + + @Resource + private TaoBaoCouponCacheService taoBaoCouponCacheService; + + @Resource + private RabbitTemplate rabbitTemplate; + + @RequestMapping(value = "kefu") + public void kefu(HttpServletRequest request, PrintWriter out) { + String content = WXUtil.getContent(request); + LogHelper.test(content); + return; + } + + @RequestMapping(value = "testactivity") + public void test2(PrintWriter out) { + List<RecommendActivity> list = activityService.getRecommendActivityList(1, Constant.PAGE_SIZE); + long count = activityService.getRecommendActivityCount(null); + JSONObject data = new JSONObject(); + data.put("data", getGson().toJson(list)); + data.put("count", count); + out.print(JsonUtil.loadTrueResult(data)); + } + + @RequestMapping(value = "testactivitysharegoods") + public void test3(PrintWriter out) { + try { + ActivityShareResult result = activityService.shareActivityGoods(343448L, 1L); + out.print(JsonUtil.getSimpleGson().toJson(result)); + } catch (UserShareGoodsRecordException e) { + e.printStackTrace(); + } catch (ActivityException e) { + e.printStackTrace(); + } + } + + @RequestMapping(value = "testactivityshareinvite") + public void test4(PrintWriter out) { + try { + ActivityShareResult result = activityService.shareInviteImg(343448L, 2L); + out.print(JsonUtil.getSimpleGson().toJson(result)); + } catch (ActivityException e) { + e.printStackTrace(); + } + } + + @RequestMapping(value = "testnumber") + public void test5(PrintWriter out) { + JSONArray array = new JSONArray(); + for (int i = 0; i < 1000; i++) { + JSONObject data = new JSONObject(); + data.put("number", new BigDecimal("10").add(new BigDecimal("0.1").multiply(new BigDecimal(i)))); + array.add(data); + } + out.print(array.toString()); + } + + private Gson getGson() { + GsonBuilder gb = new GsonBuilder(); + gb.setDateFormat("MM-dd HH:mm"); + gb.excludeFieldsWithoutExposeAnnotation(); + Gson gson = gb.create(); + return gson; + } + + @RequestMapping(value = "scheduler") + public void test8(PrintWriter out) { + try { + List<JobExecutionContext> jobList = scheduler.getCurrentlyExecutingJobs(); + out.print("running job:" + jobList.size()); + } catch (SchedulerException e) { + 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.getValue("test", SystemEnum.blks)); + } + + @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(); + } + } + } + } + + /** + * 鎻掑叆閭�璇风礌鏉� + * + * @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(); + } + } + + @RequestMapping(value = "getWaitingThreadsCount") + public void getWaitingThreadsCount(PrintWriter out) { + out.print(Constant.waitingThreadSet.size()); + } + + @RequestMapping(value = "getBinFaRedisKey") + public void getPinFaRedisKey(PrintWriter out) { + JSONArray array = new JSONArray(); + Jedis jedis = redisManager.getJedis(); + try { + Set<String> sets = jedis.keys("rs-*"); + for (Iterator<String> its = sets.iterator(); its.hasNext(); ) + array.add(its.next()); + } finally { + jedis.close(); + } + out.println(array.toString()); + } + + @Resource + private MsgOrderDetailService msgOrderDetailService; + + @Resource + private PushService pushService; + + @Resource + private UserInfoService userInfoService; + + @RequestMapping(value = "pushOrderMsg") + public void pushOrderMsg(String id, PrintWriter out) throws UserInfoException, PushException { + MsgOrderDetail msgOrderDetail = msgOrderDetailService.selectByPrimaryKey(Long.parseLong(id)); + if (msgOrderDetail == null) { + out.print("ID涓嶅瓨鍦�"); + return; + } + UserInfo userInfo = userInfoService.getUserInfo(msgOrderDetail.getUser().getId()); + PushContentDTO dto = PushMsgFactory.createFanLiOrderStatisticed(msgOrderDetail.getOrderType(), msgOrderDetail.getOrderId(), msgOrderDetail.getHongBaoMoney()); + pushService.pushZNX(userInfo.getId(), dto.getTitle(), dto.getContent(), null, null, userInfo.getSystem()); + } + + @RequestMapping(value = "pushOppo") + public void pushOppo(String registerId, PrintWriter out) { + List<String> registerIds = new ArrayList<>(); + registerIds.add(registerId); + String androidBaseActivity = ""; + try { + OPPOPushUtil.pushUrl(registerIds, "娴嬭瘯缃戦〉鎺ㄩ��", "娴嬭瘯缃戦〉鎺ㄩ�佸唴瀹�", "http://www.baidu.com", androidBaseActivity); + } catch (PushException e) { + e.printStackTrace(); + } + + try { + OPPOPushUtil.pushGoods(registerIds, "娴嬭瘯鍟嗗搧缃戦〉鎺ㄩ��", "娴嬭瘯鍟嗗搧鎺ㄩ�佸唴瀹�", 1, 577628549116L+"", androidBaseActivity); + } catch (PushException e) { + e.printStackTrace(); + } + + try { + OPPOPushUtil.pushUserSignInNotification(registerIds, "娴嬭瘯绛惧埌鎺ㄩ��", "娴嬭瘯绛惧埌鎺ㄩ��", androidBaseActivity); + } catch (PushException e) { + e.printStackTrace(); + } + try { + OPPOPushUtil.pushWelfareCenter(registerIds, "娴嬭瘯绂忓埄涓績鎺ㄩ��", "娴嬭瘯绂忓埄涓績鎺ㄩ��", androidBaseActivity); + } catch (PushException e) { + e.printStackTrace(); + } + try { + OPPOPushUtil.pushZNX(registerIds, "娴嬭瘯绔欏唴淇℃帹閫�", "娴嬭瘯绔欏唴淇℃帹閫�"); + } catch (PushException e) { + e.printStackTrace(); + } + + out.print("success"); + } + + @RequestMapping("getLocalTime") + public void getLocalTime(PrintWriter out) { + out.print(TimeUtil.getGernalTime(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss")); + } + + @RequestMapping("getSchedulerList") + public void getSchedulerList(PrintWriter out) { + try { + for (String groupName : scheduler.getJobGroupNames()) { + System.out.println(groupName); + } + } catch (Exception e) { + } + } + + @RequestMapping("getTBGoodsCate") + public void getTaoBaoGoodsCat(String id, PrintWriter out) { + TaoBaoGoodsBrief goods = null; + try { + goods = TaoKeApiUtil.getSimpleGoodsInfo(id); + } catch (TaobaoGoodsDownException e) { + e.printStackTrace(); + } + if (goods == null) + out.println("鍟嗗搧宸蹭笅鏋�"); + else + out.println( + "<html><head><meta charset=utf-8></head><body>" + String.format("cat_name:%s <br> cat_leaf_name:%s", + goods.getRootCategoryName(), goods.getLeafName()) + "</body></html>"); + } + + @RequestMapping("getJedisInfo") + public void getJedisInfo(PrintWriter out) { + JSONObject data = new JSONObject(); + data.put("active", jedisPool.getNumActive()); + data.put("idle", jedisPool.getNumIdle()); + data.put("waiters", jedisPool.getNumWaiters()); + out.print(data.toString()); + } + + Logger testLogger= LoggerFactory.getLogger("testLog"); + + @RequestMapping("wx") + public void log(HttpServletRequest request, PrintWriter out) { + LogManager.getLogger(LogType.taobaoAuth).info("123123123"); + String content = WXUtil.getContent(request); + testLogger.info("wx: "+content); + + } + + + @RequestMapping("dubbo") + public void testDubbo() { + TaoBaoCouponCache cache = new TaoBaoCouponCache(); + cache.setActivityId("123123123"); + cache.setPid("mm_12_12_12"); + cache.setAuctionId(123123L+""); + taoBaoCouponCacheService.save(cache); + } + + @RequestMapping("email") + public void testEmail(PrintWriter out) { + MailSenderUtil.sendEmail("1101184511@qq.com", "kuaisheng110@163.com", "CMZASWUPTJSFXCNP", "娴嬭瘯", "娴嬭瘯鍐呭:" + System.currentTimeMillis()); + out.print("success"); + } + + @RequestMapping("testRabbit") + public void testRabbit(){ + String msg = "浣犲ソ:"+TimeUtil.getGernalTime(System.currentTimeMillis(),"yyyy-MM-dd HH:mm:ss"); + // 鍚戦槦鍒楀彂閫佹秷鎭� +// rabbitTemplate.convertAndSend("order-all-fanli",msg); + // 鍚慹xchange鍙戦�佹秷鎭� +// rabbitTemplate.convertAndSend("topic_place_order", "*", msg); + +// Message message = MessageBuilder.withBody(msg.getBytes()).setDeliveryMode(MessageDeliveryMode.PERSISTENT).setExpiration("10000").build(); + rabbitTemplate.convertAndSend("test_queue",msg); + } + @RequestMapping("testRabbitDelay") + public void testRabbitDelay(){ + String msg = "杩欐槸娴嬭瘯鐨勪竴鏉″欢鏃舵秷鎭�"; + int time = 5; + MessageProperties messageProperties = new MessageProperties(); + messageProperties.setHeader("x-delay", 1000 * time);//寤惰繜5绉掕鍒犻櫎 + Message message = new Message(msg.getBytes(StandardCharsets.UTF_8), messageProperties); + rabbitTemplate.convertAndSend("delay_exchange", "delay", message);//浜ゆ崲鏈哄拰璺敱閿繀椤诲拰閰嶇疆鏂囦欢绫讳腑淇濇寔涓�鑷� + System.out.println(TimeUtil.getGernalTime(System.currentTimeMillis(),"yyyy-MM-dd HH:mm:ss") + " 鍙戦�佷竴鏉℃秷鎭�"); + } + + + + +} -- Gitblit v1.8.0