Browse Source

消息推送

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@7594 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
dongbw 9 years ago
parent
commit
6e5698a8dd

+ 10 - 1
src/main/java/com/uas/platform/b2b/listener/MessageListener.java

@@ -2,6 +2,7 @@ package com.uas.platform.b2b.listener;
 
 import com.uas.platform.b2b.dao.PagingReleaseDetailDao;
 import com.uas.platform.b2b.event.SaveReleaseEvent;
+import com.uas.platform.b2b.mobile.service.MobileReleaseService;
 import com.uas.platform.b2b.model.PagingReleaseDetail;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.ApplicationListener;
@@ -21,11 +22,19 @@ public class MessageListener implements ApplicationListener<SaveReleaseEvent<?,
 	@Autowired
 	private PagingReleaseDetailDao pagingReleaseDetailDao;
 
+	@Autowired
+	private MobileReleaseService mobileReleaseService;
+
 	@SuppressWarnings("unchecked")
 	@Async
 	@Override
 	public void onApplicationEvent(final SaveReleaseEvent<?, ?> event) {
-		pagingReleaseDetailDao.save((List<PagingReleaseDetail>) event.release());
+		List<PagingReleaseDetail> pagingReleaseDetails = pagingReleaseDetailDao.save((List<PagingReleaseDetail>) event.release());
+		try { // 推送消息
+			mobileReleaseService.pushReleases(pagingReleaseDetails);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
 //		if (event instanceof PurchaseOrderSaveReleaseEvent) {
 //			pagingReleaseDetailDao.save((List<PagingReleaseDetail>) event.release());
 //		} else if (event instanceof PurchaseInquiryItemSaveReleaseEvent) {

+ 13 - 14
src/main/java/com/uas/platform/b2b/mobile/controller/ReleaseController.java

@@ -2,7 +2,6 @@ package com.uas.platform.b2b.mobile.controller;
 
 import com.uas.platform.b2b.mobile.service.MobileReleaseService;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -72,18 +71,18 @@ public class ReleaseController {
         return mobileReleaseService.changeReleaseDetails(ids);
     }
 
-    /**
-     *  推送消息
-     *
-     * @param emuu
-     * @param enuu
-     * @return
-     * @throws Exception
-     */
-    @RequestMapping(value = "/push", method = RequestMethod.POST)
-    @ResponseBody
-    public ResponseEntity<ModelMap> pushRelease (Long emuu, Long enuu) throws Exception {
-        return mobileReleaseService.pushRelease(emuu, enuu);
-    }
+//    /**
+//     *  推送消息
+//     *
+//     * @param vendUseruu
+//     * @param vendUU
+//     * @return
+//     * @throws Exception
+//     */
+//    @RequestMapping(value = "/push", method = RequestMethod.POST)
+//    @ResponseBody
+//    public ResponseEntity<ModelMap> pushRelease (Long vendUseruu, Long vendUU) throws Exception {
+//        return mobileReleaseService.pushRelease(vendUseruu, vendUU);
+//    }
 
 }

+ 13 - 9
src/main/java/com/uas/platform/b2b/mobile/service/MobileReleaseService.java

@@ -1,8 +1,10 @@
 package com.uas.platform.b2b.mobile.service;
 
-import org.springframework.http.ResponseEntity;
+import com.uas.platform.b2b.model.PagingReleaseDetail;
 import org.springframework.ui.ModelMap;
 
+import java.util.List;
+
 /**
  * Created by dongbw
  * 17/03/28 9:26.
@@ -42,12 +44,14 @@ public interface MobileReleaseService {
      */
     ModelMap changeReleaseDetails(String ids);
 
-    /**
-     *
-     *
-     * @param emuu
-     * @param enuu
-     * @return
-     */
-    ResponseEntity<ModelMap> pushRelease(Long emuu, Long enuu) throws Exception;
+//    /**
+//     *
+//     *
+//     * @param emuu
+//     * @param enuu
+//     * @return
+//     */
+//    ResponseEntity<ModelMap> pushRelease(Long emuu, Long enuu) throws Exception;
+
+    void pushReleases(List<PagingReleaseDetail> pagingReleaseDetails);
 }

+ 30 - 6
src/main/java/com/uas/platform/b2b/mobile/service/impl/MobileReleaseServiceImpl.java

@@ -12,8 +12,6 @@ import com.uas.platform.core.model.Constant;
 import com.uas.sso.common.util.HttpUtil;
 import com.uas.sso.common.util.HttpUtil.ResponseWrap;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
 import org.springframework.jdbc.core.JdbcTemplate;
 import org.springframework.stereotype.Service;
 import org.springframework.ui.ModelMap;
@@ -189,10 +187,37 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
         return map;
     }
 
+//    @Override
+//    public ResponseEntity<ModelMap> pushRelease(Long vendUseruu, Long venduu) throws Exception {
+//        List<PagingReleaseDetail> releaseDetailList = pagingReleaseDetailDao.findByVendUserUUAndVendUU(vendUseruu, venduu);
+//        for (PagingReleaseDetail releaseDetail : releaseDetailList) {
+//            Map<String, Object> params = new HashMap<>();
+//            if (releaseDetail.getPagingRelease().getUser().getUserIMId() != null) {
+//                params.put("master", releaseDetail.getPagingRelease().getEnterprise().getEnName());//账套 公司名称
+//                params.put("userid", String.valueOf(releaseDetail.getPagingRelease().getUser().getUserIMId()));//推送目标用户
+//                params.put("title", releaseDetail.getPagingRelease().getTitle());//推送标题
+//                params.put("content", releaseDetail.getPagingRelease().getContext());//正文
+//                params.put("enUU", String.valueOf(releaseDetail.getPagingRelease().getEnUU()));//UU号
+////                params.put("masterId", masterId);//账套ID
+//                params.put("url", "http://uas.ubtob.com/#/sale/order");//跳转链接地址
+//                params.put("pageTitle", releaseDetail.getPagingRelease().getTitle());//页面标题
+//                params.put("platform", "B2B");//系统名称,ERP或
+//                ResponseWrap res = null;
+//                try {
+//                    res = HttpUtil.doPost(URL, params);
+//                    if (!res.isSuccess())
+//                        throw new Exception(res.getContent());
+//                } catch (Exception e) {
+//                    e.printStackTrace();
+//                }
+//            }
+//        }
+//        return new ResponseEntity<ModelMap>(HttpStatus.OK);
+//    }
+
     @Override
-    public ResponseEntity<ModelMap> pushRelease(Long vendUseruu, Long venduu) throws Exception {
-        List<PagingReleaseDetail> releaseDetailList = pagingReleaseDetailDao.findByVendUserUUAndVendUU(vendUseruu, venduu);
-        for (PagingReleaseDetail releaseDetail : releaseDetailList) {
+    public void pushReleases(List<PagingReleaseDetail> pagingReleaseDetails) {
+        for (PagingReleaseDetail releaseDetail : pagingReleaseDetails) {
             Map<String, Object> params = new HashMap<>();
             if (releaseDetail.getPagingRelease().getUser().getUserIMId() != null) {
                 params.put("master", releaseDetail.getPagingRelease().getEnterprise().getEnName());//账套 公司名称
@@ -214,7 +239,6 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
                 }
             }
         }
-        return new ResponseEntity<ModelMap>(HttpStatus.OK);
     }
 
 }

+ 1 - 1
src/main/webapp/resources/tpl/index/home/pagingRelease.html

@@ -10,7 +10,7 @@
         margin-left: auto;
         margin-right: auto;
         left: -35%;   /*居中*/
-        top: 100px;
+        /*top: 100px;*/
         padding: 0 27px;
     }