| | |
| | | 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.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.entity.bus.activity.ActivityShareResult;
|
| | | import com.yeshi.fanli.entity.bus.activity.RecommendActivity;
|
| | | import com.yeshi.fanli.entity.dynamic.InviteMaterial;
|
| | | import com.yeshi.fanli.entity.taobao.TaoBaoGoodsBrief;
|
| | | 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.money.UserMoneyExtraService;
|
| | | import com.yeshi.fanli.service.inter.order.config.HongBaoManageService;
|
| | | import com.yeshi.fanli.service.inter.user.integral.IntegralGetService;
|
| | | 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.push.OPPOPushUtil;
|
| | | import com.yeshi.fanli.util.taobao.TaoKeApiUtil;
|
| | |
|
| | | import net.sf.json.JSONArray;
|
| | | import net.sf.json.JSONObject;
|
| | | import redis.clients.jedis.Jedis;
|
| | | import redis.clients.jedis.JedisPool;
|
| | |
|
| | | @Controller
|
| | | @RequestMapping("test")
|
| | |
| | | private HelpCenterMapper helpCenterMapper;
|
| | | @Resource
|
| | | private Scheduler scheduler;
|
| | | |
| | |
|
| | | @Resource
|
| | | private DynamicInfoService dynamicInfoService;
|
| | | |
| | |
|
| | | @Resource
|
| | | private TaoBaoGoodsBriefService taoBaoGoodsBriefService;
|
| | | |
| | | private TaoBaoGoodsBriefService taoBaoGoodsBriefService;
|
| | |
|
| | | @Resource
|
| | | private EhCacheCacheManager ehCacheCacheManager;
|
| | |
| | | @Resource
|
| | | private ConfigService configService;
|
| | |
|
| | | @RequestMapping(value = "testimg")
|
| | | public void testImg(HttpServletRequest request, PrintWriter out) {
|
| | | long startTime = System.currentTimeMillis();
|
| | | @Resource
|
| | | private HongBaoManageService hongBaoManageService;
|
| | |
|
| | | List<String> list = new ArrayList<>();
|
| | | for (int i = 0; i < 10; i++) {
|
| | | list.add("i" + i);
|
| | | }
|
| | | @Resource
|
| | | private InviteMaterialService inviteMaterialService;
|
| | |
|
| | | 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;
|
| | | @Resource
|
| | | private DynamicInfoDao dynamicInfoDao;
|
| | |
|
| | | String destPath = FileUtil.getCacheDir() + "/" + auctionId + ".jpg";
|
| | | @Resource
|
| | | private JedisPool jedisPool;
|
| | |
|
| | | String shareImgPath = FileUtil.getCacheDir() + "/share_" + uid + "_" + auctionId + ".png";
|
| | | @Resource
|
| | | private IntegralGetService integralGetService;
|
| | |
|
| | | 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));
|
| | | }
|
| | | @Resource
|
| | | private UserMoneyExtraService userMoneyExtraService;
|
| | |
|
| | | @RequestMapping(value = "kefu")
|
| | | public void kefu(HttpServletRequest request, PrintWriter out) {
|
| | |
| | | out.close();
|
| | | }
|
| | |
|
| | | @RequestMapping(value = "insetDynamicInfo")
|
| | | public void insetDynamicInfo(PrintWriter out) {
|
| | | String content= "emoji六一儿童节来了\r\n" + |
| | | "老少儿童们到快活起来吧:用童真憧憬人生\r\n" + |
| | | "emoji用童趣装点人生emoji\r\n" + |
| | | "用童话描绘人生emoji\r\n" + |
| | | "用童心度过人生 emoji \r\n" + |
| | | "--------------------- \r\n今天 : 6月1日 ️ 星期四\r\n" + |
| | | "天气 : 晴转多云 15-24℃\r\n" + |
| | | "各位亲爱的你 早安~\r\n" + |
| | | "购物省钱返利券App:【邀请链接】\r\n" + |
| | | "我的邀请码:【邀请码】" ;
|
| | | |
| | | dynamicInfoService.insertInviteMaterial(content, null, null, null);
|
| | | |
| | | |
| | | String content2= "emoji六一儿童节来了\r\n" + |
| | | "老少儿童们到快活起来吧:用童真憧憬人生\r\n" + |
| | | "emoji用童趣装点人生emoji\r\n" + |
| | | "用童话描绘人生emoji\r\n" + |
| | | "用童心度过人生 emoji \r\n" + |
| | | "--------------------- \r\n今天 : 6月1日 ️ 星期四\r\n" + |
| | | "天气 : 晴转多云 15-24℃\r\n" + |
| | | "各位亲爱的你 早安~\r\n" + |
| | | "购物省钱返利券App:【邀请链接】\r\n" + |
| | | "我的邀请码:【邀请码】" ;
|
| | | |
| | | dynamicInfoService.insertInviteMaterial(content2, "http://ec-1255749512.file.myqcloud.com/img/invite/53420a05de1644bd947fa23800ab0131.jpeg", null, null);
|
| | | }
|
| | |
|
| | | |
| | | @RequestMapping(value = "insertShop")
|
| | | public void insertShop(PrintWriter out) {
|
| | | try {
|
| | | dynamicInfoService.insertShopInfo();
|
| | | dynamicInfoService.insertTimeHotSale();
|
| | | dynamicInfoService.insertTimeRecommend();
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | }
|
| | | }
|
| | | |
| | | |
| | | /**
|
| | | * 清除缓存
|
| | | *
|
| | |
| | | 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 {
|
| | | 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 = "insetDynamicInfo")
|
| | | public void insetDynamicInfo(PrintWriter out) {
|
| | | String content= "emoji六一儿童节来了\r\n" + |
| | | "老少儿童们到快活起来吧:用童真憧憬人生\r\n" + |
| | | "emoji用童趣装点人生emoji\r\n" + |
| | | "用童话描绘人生emoji\r\n" + |
| | | "用童心度过人生 emoji \r\n" + |
| | | "--------------------- \r\n今天 : 6月1日 ️ 星期四\r\n" + |
| | | "天气 : 晴转多云 15-24℃\r\n" + |
| | | "各位亲爱的你 早安~\r\n" + |
| | | "购物省钱返利券App:【邀请链接】\r\n" + |
| | | "我的邀请码:【邀请码】" ;
|
| | | |
| | | dynamicInfoService.insertInviteMaterial(content, null);
|
| | | |
| | | |
| | | String content2= "emoji六一儿童节来了\r\n" + |
| | | "老少儿童们到快活起来吧:用童真憧憬人生\r\n" + |
| | | "emoji用童趣装点人生emoji\r\n" + |
| | | "用童话描绘人生emoji\r\n" + |
| | | "用童心度过人生 emoji \r\n" + |
| | | "--------------------- \r\n今天 : 6月1日 ️ 星期四\r\n" + |
| | | "天气 : 晴转多云 15-24℃\r\n" + |
| | | "各位亲爱的你 早安~\r\n" + |
| | | "购物省钱返利券App:【邀请链接】\r\n" + |
| | | "我的邀请码:【邀请码】" ;
|
| | | |
| | | dynamicInfoService.insertInviteMaterial(content2, "http://ec-1255749512.file.myqcloud.com/img/invite/53420a05de1644bd947fa23800ab0131.jpeg");
|
| | | }
|
| | |
|
| | | |
| | | @RequestMapping(value = "insertShop")
|
| | | public void insertShop(PrintWriter out) {
|
| | | try {
|
| | | dynamicInfoService.insertShopInfo();
|
| | | dynamicInfoService.insertTimeHotSale();
|
| | | dynamicInfoService.insertTimeRecommend();
|
| | | /**
|
| | | * 插入邀请素材
|
| | | * |
| | | * @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));// 构造一个BufferedReader类来读取文件
|
| | | 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));// 构造一个BufferedReader类来读取文件
|
| | | 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 = jedisPool.getResource();
|
| | | 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());
|
| | | }
|
| | |
|
| | | @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("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(Long 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());
|
| | | }
|
| | | |
| | | |
| | | |
| | |
|
| | |
|
| | | }
|