yujian
2019-12-19 626d711cb15896055c13fe344eb7fcc824589715
fanli/src/main/java/com/yeshi/fanli/controller/TestController.java
@@ -8,7 +8,9 @@
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;
@@ -34,7 +36,9 @@
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;
@@ -42,6 +46,7 @@
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.push.PushException;
import com.yeshi.fanli.exception.share.UserShareGoodsRecordException;
import com.yeshi.fanli.exception.taobao.TaobaoGoodsDownException;
import com.yeshi.fanli.log.LogHelper;
@@ -50,19 +55,25 @@
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.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.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.util.push.OPPOPushUtil;
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")
@@ -93,12 +104,24 @@
   @Resource
   private ConfigService configService;
   @Resource
   private HongBaoManageService hongBaoManageService;
   @Resource
   private InviteMaterialService inviteMaterialService;
   @Resource
   private DynamicInfoDao dynamicInfoDao;
   @Resource
   private JedisPool jedisPool;
   @Resource
   private IntegralGetService integralGetService;
   @Resource
   private UserMoneyExtraService userMoneyExtraService;
   @RequestMapping(value = "testimg")
   public void testImg(HttpServletRequest request, PrintWriter out) {
@@ -269,76 +292,6 @@
      }
   }
   @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));// 构造一个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();
      }
   }
   /**
    * 插入邀请素材
    * 
@@ -423,9 +376,10 @@
         e.printStackTrace();
      }
   }
   /**
    * 插入邀请素材
    *
    * @param out
    */
   @RequestMapping(value = "getJingFenList")
@@ -445,11 +399,13 @@
            if (goodsList != null && goodsList.size() > 0) {
               BigDecimal fanLiRate = hongBaoManageService.getFanLiRate();
               BigDecimal shareRate = hongBaoManageService.getShareRate();
               ConfigParamsDTO paramsDTO = new ConfigParamsDTO(fanLiRate, shareRate, Constant.MAX_REWARD_RATE,
                     hongBaoManageService.getVIPFanLiRate());
               Gson gson = JsonUtil.getConvertBigDecimalToStringSubZeroBuilder(new GsonBuilder())
                     .excludeFieldsWithoutExposeAnnotation().setDateFormat("yyyy-MM-dd").create();
               for (JDGoods goods : goodsList) {
                  GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, null, fanLiRate,
                        shareRate);
                  GoodsDetailVO goodsDetailVO = GoodsDetailVOFactory.convertJDGoods(goods, paramsDTO);
                  array.add(gson.toJson(goodsDetailVO));
               }
            }
@@ -463,4 +419,73 @@
         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) {
      }
   }
}