فهرست منبع

修改获取消息数量接口:增加阅读状态

wangyc 7 سال پیش
والد
کامیت
c7b1750d93

+ 12 - 0
src/main/java/com/uas/ps/message/dao/MessageDao.java

@@ -27,6 +27,18 @@ public interface MessageDao extends JpaRepository<Message, Long>, JpaSpecificati
     List<Message> findByReceiverUuAndReceiverEnuuAndConsumerAppId(@Param("receiverUu") Long receiverUu, @Param("receiverEnuu") Long receiverEnuu, @Param("consumerAppId")
         Long consumerAppId);
 
+    /**
+     * 通过接收人和接收应用获取消息
+     * @param receiverUu 接收人uu
+     * @param receiverEnuu 接收企业uu
+     * @param isRead 阅读状态
+     * @param consumerAppId 接收应用id
+     * @return
+     */
+    @Query(nativeQuery = true, value = "select * from messages e where e.ms_receiveruu = :receiverUu and e.ms_receiverenuu = :receiverEnuu and e.ms_isread = :isRead and e.ms_id in (select ms_id from message$consumeapp a where a.app_id = :consumerAppId)")
+    List<Message> findByReceiverUuAndReceiverEnuuAndIsReadAndConsumerAppId(@Param("receiverUu") Long receiverUu, @Param("receiverEnuu") Long receiverEnuu, @Param("isRead") Short isRead, @Param("consumerAppId")
+        Long consumerAppId);
+
     /**
      * 通过接收应用id、阅读状态、发送状获取需要推送消息
      * @param consumerAppId 接收应用id

+ 17 - 2
src/main/java/com/uas/ps/message/service/impl/MessageServiceImpl.java

@@ -162,8 +162,8 @@ public class MessageServiceImpl implements MessageService {
             throw new IllegalOperatorException("接收应用不存在");
         }
 
-        List<Message> messages = messageDao.findByReceiverUuAndReceiverEnuuAndConsumerAppId(Long.valueOf(receiverUu),
-            Long.valueOf(receiverEnuu), consumerAppExists.getId());
+        List<Message> messages = messageDao.findByReceiverUuAndReceiverEnuuAndIsReadAndConsumerAppId(Long.valueOf(receiverUu),
+            Long.valueOf(receiverEnuu), Constant.NO, consumerAppExists.getId());
 
         Map<String, Object> resultMap = new HashMap<>();
         resultMap.put("success", "success");
@@ -544,6 +544,21 @@ public class MessageServiceImpl implements MessageService {
         logger.info("短信推送成功:" + response);
     }
 
+
+    public static void main(String[] args) {
+        SmsMessage smsMessage = new SmsMessage();
+        List<Object> param = new ArrayList<>();
+        param.add("测试公司");
+        param.add("测试型号");
+
+        smsMessage.setParams(param);
+        smsMessage.setReceiver("13632823241");
+        smsMessage.setTemplateId("7879bfda-f871-4a95-9430-54d1ea00b198");
+        String response = com.uas.ps.message.util.HttpUtil
+            .sendPost("http://10.10.100.136:8080/sms/send", FastjsonUtils.toJson(smsMessage));
+        System.out.println(response);
+    }
+
     /**
      * 设置推送送成功
      * @param message 消息