Prechádzať zdrojové kódy

ADD: send messages to multi participants

zhangxin 8 rokov pred
rodič
commit
dab0474bf0

+ 6 - 6
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/ctrl/MessageController.java

@@ -70,11 +70,11 @@ public class MessageController {
     /**
      * 多人发送消息
      */
-//    @RequiresRoles("manager")
-//    @RequestMapping(value = UrlConstants.API + "multiMessage", method = RequestMethod.POST)
-//    public List<MessageVO> sendMessageToParticipants(@RequestBody List<MessageVO> messageVOs) {
-//        User user = (User) SecurityUtils.getSubject().getSession().getAttribute("User");
-//        return messageLogic.sendMultiMessage(user.getId(), messageVOs);
-//    }
+    @RequiresRoles("manager")
+    @RequestMapping(value = UrlConstants.API + "multiMessage", method = RequestMethod.POST)
+    public List<MessageVO> sendMessageToParticipants(@RequestBody List<MessageVO> messageVOs) {
+        User user = (User) SecurityUtils.getSubject().getSession().getAttribute("User");
+        return messageLogic.sendMultiMessage(user.getId(), messageVOs);
+    }
 
 }

+ 10 - 0
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/data/MessageVO.java

@@ -13,6 +13,8 @@ public class MessageVO {
 
     private Long ownerId;
 
+    private String ownerName;
+
     private Long participantId;
 
     private String message;
@@ -37,6 +39,14 @@ public class MessageVO {
         this.ownerId = ownerId;
     }
 
+    public String getOwnerName() {
+        return ownerName;
+    }
+
+    public void setOwnerName(String ownerName) {
+        this.ownerName = ownerName;
+    }
+
     public Long getParticipantId() {
         return participantId;
     }

+ 6 - 2
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/data/wrapper/MessageVOWrapper.java

@@ -1,7 +1,8 @@
 package cn.iselab.mooctest.site.web.data.wrapper;
 
 import cn.iselab.mooctest.site.models.Message;
-import cn.iselab.mooctest.site.service.GroupService;
+import cn.iselab.mooctest.site.models.User;
+import cn.iselab.mooctest.site.service.UserService;
 import cn.iselab.mooctest.site.web.data.MessageVO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -16,7 +17,7 @@ import java.sql.Timestamp;
 public class MessageVOWrapper extends BaseWrapper<MessageVO, Message> {
 
     @Autowired
-    private GroupService groupService;
+    private UserService userService;
 
     @Override
     public MessageVO wrap(Message message) {
@@ -28,6 +29,9 @@ public class MessageVOWrapper extends BaseWrapper<MessageVO, Message> {
         messageVO.setPushed(message.getPushed());
         messageVO.setOwnerId(message.getOwnerId());
         messageVO.setId(message.getId());
+
+        User user = userService.findByUserId(message.getOwnerId());
+        messageVO.setOwnerName(user.getName());
         return messageVO;
     }
 

+ 2 - 1
mooctest-site-server/src/main/java/cn/iselab/mooctest/site/web/logic/impl/MessageLogicImpl.java

@@ -129,10 +129,11 @@ public class MessageLogicImpl implements MessageLogic {
                     message = messageService.updateMessage(message);
                     messageVOList.add(messageVOWrapper.wrap(message));
                 });
+                break;
             }
         }
         if (messageVOList.size() == 0) {
-            throw new UnauthorizedException("Authorized! user not in your group");
+            throw new UnauthorizedException("Unauthorized! user not in your group");
         } else {
             return messageVOList;
         }