yujian
2019-01-12 42b206d89cf0a6f4c2bb2567d867d7c479d6edf1
fanli/src/main/java/com/yeshi/fanli/controller/admin/PushController.java
@@ -8,6 +8,7 @@
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import com.yeshi.fanli.exception.PushException;
import com.yeshi.fanli.service.inter.config.ConfigService;
import com.yeshi.fanli.service.inter.config.SystemService;
import com.yeshi.fanli.service.inter.push.PushRecordService;
@@ -16,6 +17,7 @@
import com.yeshi.fanli.service.inter.user.SystemZnxService;
import com.yeshi.fanli.util.StringUtil;
import com.yeshi.fanli.util.factory.IOSPushFactory;
import org.yeshi.utils.HttpUtil;
import org.yeshi.utils.JsonUtil;
@@ -29,6 +31,8 @@
   public final static int URL = 2; // 网页推送
   public final static int DETAIL = 3; // 详情推送
   public final static int ZNX = 4; // 站内推送
   public final static int WEEX = 5; // 站内推送
   public final static int BAICHUAN = 6; // 站内推送
   @Resource
   private PushRecordService pushRecordService;
@@ -136,17 +140,161 @@
    * @param out
    * @throws Exception
    */
   @RequestMapping(value = "convertLink", method = RequestMethod.POST)
   public void convertLink(String url, PrintWriter out) throws Exception {
   @RequestMapping(value = "convertLink")
   public void convertLink(String callback, String url, PrintWriter out) {
      String shortLink = org.yeshi.utils.HttpUtil.getShortLink(url);
      if (StringUtil.isNullOrEmpty(url)) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("转链数据不能为空"));
         return;
      }
      try {
         String shortLink = org.yeshi.utils.HttpUtil.getShortLink(url);
      JSONObject jsonData = new JSONObject();
      jsonData.put("url", url);
      jsonData.put("shortLink", shortLink);
      out.print(JsonUtil.loadTrueResult(jsonData));
         JSONObject jsonData = new JSONObject();
         jsonData.put("url", url);
         jsonData.put("shortLink", shortLink);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult(jsonData));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("转换失败"));
         e.printStackTrace();
      }
   }
   /**
    * 商品推送  -(新后台)
    *
    * @param uId
    *            -用户ID 可为空
    * @param url
    *            -商品链接
    * @param title
    *            -推送标题
    * @param content
    *            -推送内容
    * @param out
    * @throws Exception
    */
   @RequestMapping(value = "newPushGoodsAll")
   public void newPushGoodsAll(String callback, Long uid, String url, String title, String content, PrintWriter out) throws Exception {
      String auctionId = null;
      if (!StringUtil.isNullOrEmpty(url) && url.contains("id=")) {
         String[] sts = url.split("\\?")[1].split("&");
         for (String st : sts)
            if (st.contains("id=")) {
               auctionId = st.replace("id=", "");
            }
      }
      if (StringUtil.isNullOrEmpty(auctionId)) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("提取商品ID失败"));
         return;
      }
      JSONObject json = IOSPushFactory.createGoodsPush(Long.parseLong(auctionId), title, content);
      if (json.toString().getBytes().length > 256) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("标题或内容过长,请删减后再试"));
         return;
      }
      try {
         pushService.pushGoods(uid, url, title, content);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("推送成功"));
      } catch (Exception e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("推送失败"));
         e.printStackTrace();
      }
   }
   /**
    * 网页推送 -(新后台)
    *
    * @param url
    * @param title
    * @param content
    * @param out
    * @throws Exception
    */
   @RequestMapping(value = "newPushUrlAll")
   public void newPushUrlAll(String callback, String url, String title, String content, PrintWriter out) {
      if (StringUtil.isNullOrEmpty(url) || StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请填写链接,标题与内容"));
         return;
      }
      JSONObject json = IOSPushFactory.createURLPush(HttpUtil.getShortLink(url), title, content);
      if (json.toString().getBytes().length > 256) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("标题或内容过长,请删减后再试"));
         return;
      }
      try {
         pushService.pushUrl(null, url, title, content);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("推送成功"));
      } catch (PushException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("推送失败"));
         e.printStackTrace();
      }
   }
   /**
    *
    * 方法说明: 站内信推送 -(新后台)
    *
    * @param uId
    * @param title
    * @param content
    * @throws Exception
    */
   @RequestMapping(value = "newPushFanZNX")
   public void newPushFanZNX(String callback, Long uid, String title, String content, PrintWriter out) {
      if (StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请填写标题与内容"));
         return;
      }
      try {
         pushService.pushZNX(uid, title, content);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("推送成功"));
      } catch (PushException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("推送失败"));
         e.printStackTrace();
      }
   }
   /**
    *
    * 方法说明: 百川推送 -(新后台)
    *
    * @param uId
    * @param title
    * @param content
    * @throws Exception
    */
   @RequestMapping(value = "pushBaiChuan")
   public void pushBaiChuan(String callback, Long uid, String title, String content, String url,
         PrintWriter out) {
      if (StringUtil.isNullOrEmpty(title) || StringUtil.isNullOrEmpty(content)) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("请填写标题与内容"));
         return;
      }
      try {
         pushService.pushBaiChuanUrl(uid, title, content, url);
         JsonUtil.printMode(out, callback, JsonUtil.loadTrueResult("推送成功"));
      } catch (PushException e) {
         JsonUtil.printMode(out, callback, JsonUtil.loadFalseResult("推送失败"));
         e.printStackTrace();
      }
   }
}