Просмотр исходного кода

消息事件、接口修改,

git-svn-id: svn+ssh://10.10.101.21/source/platform/platform-b2b@8094 f3bf4e98-0cf0-11e4-a00c-a99a8b9d557d
dongbw 9 лет назад
Родитель
Сommit
7469a01a12

+ 2 - 2
src/main/java/com/uas/platform/b2b/event/PurchaseInquiryItemDecideReleaseEvent.java

@@ -41,9 +41,9 @@ public class PurchaseInquiryItemDecideReleaseEvent extends SaveReleaseEvent<Pagi
         String title = "B2B商务提醒";
         String context;
         if (inquiryItem.getAgreed() == 1) {
-            context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "采纳了您的报价,询价单号:" + codeValue + "!";
+            context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "采纳了您的报价,询价单号:" + codeValue + "";
         } else {
-            context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "未采纳您的报价,询价单号:" + codeValue + "!";
+            context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "未采纳您的报价,询价单号:" + codeValue + "";
         }
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type);
         Long vendUU = inquiryItem.getVendUU();

+ 1 - 1
src/main/java/com/uas/platform/b2b/event/PurchaseInquiryItemInvalidReleaseEvent.java

@@ -39,7 +39,7 @@ public class PurchaseInquiryItemInvalidReleaseEvent extends SaveReleaseEvent<Pag
         }
         String type = "回复询价单";
         String title = "B2B商务提醒";
-        String context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "作废了您的报价,询价单号:" + codeValue + "!";
+        String context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "作废了您的报价,询价单号:" + codeValue + "";
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type);
         Long vendUU = inquiryItem.getVendUU();
         Long vendUserUU = inquiryItem.getVendUserUU();

+ 1 - 1
src/main/java/com/uas/platform/b2b/event/PurchaseInquiryItemSaveReleaseEvent.java

@@ -40,7 +40,7 @@ public class PurchaseInquiryItemSaveReleaseEvent extends SaveReleaseEvent<Paging
         }
         String type = "新增询价单";
         String title = "B2B商务提醒";
-        String context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "给您发送了一张询价单(" + codeValue + ")!";
+        String context = inquiryItem.getInquiry().getEnterprise().getEnName() + "的" + emName + "给您发送了一张询价单(" + codeValue + ")";
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type);
         Long vendUU = inquiryItem.getVendUU();
         Long vendUserUU = inquiryItem.getVendUserUU();

+ 1 - 1
src/main/java/com/uas/platform/b2b/event/PurchaseOrderSaveReleaseEvent.java

@@ -38,7 +38,7 @@ public class PurchaseOrderSaveReleaseEvent extends SaveReleaseEvent<PagingReleas
         }
         String type = "新增采购订单";
         String title = "B2B商务提醒";
-        String context = orderAll.getEnterprise().getEnName() + "的" + emName + "给您发送了一张新的采购单(" + codeValue + ")!";
+        String context = orderAll.getEnterprise().getEnName() + "的" + emName + "给您发送了一张新的采购单(" + codeValue + ")";
         PagingRelease release = new PagingRelease(emUU, emName, enUU, date, codeValue, from, title, context, type);
         Long vendUU = orderAll.getVendUU();
         Long vendUserUU = orderAll.getVendUserUU();

+ 82 - 26
src/main/java/com/uas/platform/b2b/mobile/service/impl/MobileReleaseServiceImpl.java

@@ -14,6 +14,7 @@ import com.uas.sso.common.util.HttpUtil.ResponseWrap;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.ui.ModelMap;
+import org.springframework.util.CollectionUtils;
 
 import java.util.*;
 
@@ -46,11 +47,9 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
     @Override
     public ModelMap getReleaseCounts(Long vendUseruu, Long venduu) {
         ModelMap map = new ModelMap();
-        String typeSql = "select distinct(pr.pr_type) type from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_totalstatus = 0";
-        List<ReleaseTotal> typeList = commonDao.query(typeSql, ReleaseTotal.class);
-        String allCountSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0";
-        Integer allCount = commonDao.queryForObject(allCountSql, Integer.class);
-        String idSql = "select pr.pr_id from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0";
+        String countSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0 and prd.prd_readstatus = 0";
+        Integer allCount = commonDao.queryForObject(countSql, Integer.class);
+        String idSql = "select pr.pr_id from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0 and prd.prd_readstatus = 0";
         List<Integer> ids = commonDao.queryForList(idSql, Integer.class);
         String idString = "";
         for (Integer id : ids) {
@@ -59,31 +58,86 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
             }
             idString = idString.concat(String.valueOf(id));
         }
-
-        List<ReleaseTotal> listdata = new ArrayList<>();
-        for (ReleaseTotal onlyType : typeList) {
-            String type = onlyType.getType();
-            String countSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and pr.pr_type = '" + type + "' and prd.prd_totalstatus = 0";
-            Integer count = commonDao.queryForObject(countSql, Integer.class);
-            if (count != 0) {
-                String totalSql = "select a.pr_title title,a.pr_date lastTime, a.pr_context lastMessage, a.pr_type type " +
-                        " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid " +
-                        "where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and a.pr_type = '" + type + "' and prd.prd_totalstatus = 0 order by a.pr_date desc";
-                List<ReleaseTotal> totals = commonDao.query(totalSql, ReleaseTotal.class);
-                ReleaseTotal total = totals.get(0);
-                if (total != null) { // 存在即添加到list中
-                    total.setCount(count);
-                    listdata.add(total);
-                }
-            }
+        String title = "select a.pr_title " +
+                " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and  prd.prd_totalstatus = 0 and prd.prd_readstatus = 0 order by a.pr_date desc";
+        String date = "select a.pr_date " +
+                " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0 and prd.prd_readstatus = 0 order by a.pr_date desc";
+        String context = "select a.pr_context " +
+                " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0 and prd.prd_readstatus = 0 order by a.pr_date desc";
+        String type = "select a.pr_type " +
+                " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0 and prd.prd_readstatus = 0 order by a.pr_date desc";
+        List<ReleaseTotal> list = new ArrayList<>();
+        ReleaseTotal listdata = new ReleaseTotal();
+        List<String> dataTitles = commonDao.queryForList(title, String.class);  // 可能为0 或 1,所以用list装
+        if (!CollectionUtils.isEmpty(dataTitles)) {
+            String dataTitle = dataTitles.get(0);
+            listdata.setTitle(dataTitle);
+        }
+        List<Date> lastTimes = commonDao.queryForList(date, Date.class);
+        if (!CollectionUtils.isEmpty(lastTimes)) {
+            Date lastTime = lastTimes.get(0);
+            listdata.setLastTime(lastTime);
+        }
+        List<String> lastMessages = commonDao.queryForList(context, String.class);
+        if (!CollectionUtils.isEmpty(lastMessages)) {
+            String lastMessage = lastMessages.get(0);
+            listdata.setLastMessage(lastMessage);
         }
+        List<String> dataTypes = commonDao.queryForList(type, String.class);
+        if (!CollectionUtils.isEmpty(dataTypes)) {
+//            String dataType = dataTypes.get(0);
+            listdata.setType("B2B商务提醒"); // 暂时设置为b2b
+            listdata.setCount(allCount);
+        }
+        list.add(listdata);
         map.put("allCount", allCount);
         map.put("success", true);
         map.put("ids", idString);
-        map.put("listdata", listdata);
+        map.put("listdata", list);
         return map;
     }
 
+//    @Override
+//    public ModelMap getReleaseCounts(Long vendUseruu, Long venduu) {
+//        ModelMap map = new ModelMap();
+//        String typeSql = "select distinct(pr.pr_type) type from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_totalstatus = 0";
+//        List<ReleaseTotal> typeList = commonDao.query(typeSql, ReleaseTotal.class);
+//        String allCountSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0";
+//        Integer allCount = commonDao.queryForObject(allCountSql, Integer.class);
+//        String idSql = "select pr.pr_id from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_totalstatus = 0";
+//        List<Integer> ids = commonDao.queryForList(idSql, Integer.class);
+//        String idString = "";
+//        for (Integer id : ids) {
+//            if (!"".equals(idString)) {
+//                idString = idString.concat(",");
+//            }
+//            idString = idString.concat(String.valueOf(id));
+//        }
+//
+//        List<ReleaseTotal> listdata = new ArrayList<>();
+//        for (ReleaseTotal onlyType : typeList) {
+//            String type = onlyType.getType();
+//            String countSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and pr.pr_type = '" + type + "' and prd.prd_totalstatus = 0";
+//            Integer count = commonDao.queryForObject(countSql, Integer.class);
+//            if (count != 0) {
+//                String totalSql = "select a.pr_title title,a.pr_date lastTime, a.pr_context lastMessage, a.pr_type type " +
+//                        " from purc$pagingrelease a left join purc$pagingreleasedetail prd on a.pr_id = prd.prd_prid " +
+//                        "where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and a.pr_type = '" + type + "' and prd.prd_totalstatus = 0 order by a.pr_date desc";
+//                List<ReleaseTotal> totals = commonDao.query(totalSql, ReleaseTotal.class);
+//                ReleaseTotal total = totals.get(0);
+//                if (total != null) { // 存在即添加到list中
+//                    total.setCount(count);
+//                    listdata.add(total);
+//                }
+//            }
+//        }
+//        map.put("allCount", allCount);
+//        map.put("success", true);
+//        map.put("ids", idString);
+//        map.put("listdata", listdata);
+//        return map;
+//    }
+
     @Override
     public void changeReleaseCounts(String ids) {
         String[] idArray = ids.split(",");
@@ -119,9 +173,9 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
 //        map.put("listdata", releaseDetailList);
 //        return map;
         ModelMap map = new ModelMap();
-        String countSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0";
+        String countSql = "select count(*) from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0 and prd.prd_readstatus = 0";
         Integer allCount = commonDao.queryForObject(countSql, Integer.class);
-        String idSql = "select pr.pr_id from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0";
+        String idSql = "select pr.pr_id from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0 and prd.prd_readstatus = 0";
         List<Integer> ids = commonDao.queryForList(idSql, Integer.class);
         String idString = "";
         for (Integer id : ids) {
@@ -130,7 +184,7 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
             }
             idString = idString.concat(String.valueOf(id));
         }
-        String releaseSql = "select pr.pr_id id,pr.pr_emname releaser,pr.pr_date createTime,pr.pr_context subTitle,pr.pr_title title from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0 order by pr.pr_date";
+        String releaseSql = "select pr.pr_id id,pr.pr_emname releaser,pr.pr_date createTime,pr.pr_context subTitle,pr.pr_type title from purc$pagingrelease pr left join purc$pagingreleasedetail prd on pr.pr_id = prd.prd_prid where prd.prd_emuu = " + vendUseruu + " and prd.prd_venduu = " + venduu + " and prd.prd_status = 0 and prd.prd_readstatus = 0 order by pr.pr_date";
         List<ReleaseDetail> releaseDetailList = commonDao.query(releaseSql, ReleaseDetail.class);
         map.put("allCount", allCount);
         map.put("success", true);
@@ -150,6 +204,8 @@ public class MobileReleaseServiceImpl implements MobileReleaseService {
             for (PagingReleaseDetail detail : releaseDetails) {
                 detail.setTotalStatus(Constant.YES);
                 detail.setStatus(Constant.YES);
+                detail.setReadStatus(Constant.YES);
+                detail.setReadDate(new Date());
                 pagingReleaseDetailDao.save(detail);
                 success = true;
             }