zouxuan 3 лет назад
Родитель
Сommit
c443db4bc5

+ 13 - 3
mec-im/src/main/java/com/ym/controller/GroupController.java

@@ -1,7 +1,10 @@
 package com.ym.controller;
 
+import com.ym.mec.common.entity.ImBaseMessage;
 import com.ym.mec.common.entity.ImGroupMessage;
+import com.ym.mec.common.entity.ImNoticeMessage;
 import com.ym.mec.common.entity.ImTxtMessage;
+import com.ym.pojo.NoticeMessage;
 import com.ym.service.GroupService;
 import com.ym.service.MessageService;
 import io.rong.messages.TxtMessage;
@@ -12,6 +15,7 @@ import io.rong.models.message.GroupMessage;
 import io.rong.models.message.MentionMessage;
 import io.rong.models.message.PrivateMessage;
 import io.rong.models.message.RecallMessage;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -35,9 +39,15 @@ public class GroupController{
     @RequestMapping(value = "/send", method = RequestMethod.POST)
     public Object send(@RequestBody ImGroupMessage imGroupMessage) throws Exception {
         GroupMessage groupMessage = new GroupMessage();
-        ImTxtMessage content = (ImTxtMessage)imGroupMessage.getContent();
-        TxtMessage txtMessage = new TxtMessage(content.getContent(),content.getExtra());
-        groupMessage.setContent(txtMessage);
+        ImTxtMessage imTxtMessage = (ImTxtMessage) imGroupMessage.getContent();
+        String objectName = imGroupMessage.getObjectName();
+        if("DY:NoticeMsg".equals(objectName)){
+            NoticeMessage noticeMessage = new NoticeMessage(imTxtMessage.getContent(),imTxtMessage.getExtra());
+            groupMessage.setContent(noticeMessage);
+        }else {
+            TxtMessage txtMessage = new TxtMessage(imTxtMessage.getContent(),imTxtMessage.getExtra());
+            groupMessage.setContent(txtMessage);
+        }
         groupMessage.setTargetId(imGroupMessage.getTargetId());
         groupMessage.setSenderId(imGroupMessage.getSenderId());
         groupMessage.setObjectName(imGroupMessage.getObjectName());

+ 58 - 0
mec-im/src/main/java/com/ym/pojo/NoticeMessage.java

@@ -0,0 +1,58 @@
+package com.ym.pojo;
+
+import io.rong.messages.BaseMessage;
+import io.rong.messages.UserInfo;
+import io.rong.util.GsonUtil;
+import lombok.Data;
+
+@Data
+public class NoticeMessage extends BaseMessage {
+    private String content = "";
+    private String extra = "";
+    private io.rong.messages.UserInfo user = null;
+    private static final transient String TYPE = "DY:NoticeMsg";
+
+    public NoticeMessage(String content, String extra) {
+        this.content = content;
+        this.extra = extra;
+    }
+
+    public NoticeMessage(String content, String extra, io.rong.messages.UserInfo user) {
+        this.content = content;
+        this.extra = extra;
+        this.user = user;
+    }
+
+    public String getType() {
+        return "DY:NoticeMsg";
+    }
+
+    public String getContent() {
+        return this.content;
+    }
+
+    public void setContent(String content) {
+        this.content = content;
+    }
+
+    public String getExtra() {
+        return this.extra;
+    }
+
+    public void setExtra(String extra) {
+        this.extra = extra;
+    }
+
+    public io.rong.messages.UserInfo getUser() {
+        return this.user;
+    }
+
+    public void setUser(UserInfo user) {
+        this.user = user;
+    }
+
+    public String toString() {
+        return GsonUtil.toJson(this, NoticeMessage.class);
+
+    }
+}