2
0
heavyrian2012 2 жил өмнө
parent
commit
9e741acdc4

+ 6 - 0
src/main/java/cn/wildfirechat/app/conference/ConferenceController.java

@@ -57,6 +57,12 @@ public class ConferenceController {
         return mService.recordingConference(conferenceId, recordingRequest.recording);
     }
 
+    @CrossOrigin
+    @PostMapping(value = "/conference/focus/{conferenceId}")
+    public Object focusConference(@PathVariable("conferenceId") String conferenceId, @RequestBody UserIdPojo request) throws IOException {
+        return mService.focusConference(conferenceId, request.userId);
+    }
+
     @CrossOrigin
     @PostMapping(value = "/conference/fav/{conferenceId}")
     public Object favConference(@PathVariable("conferenceId") String conferenceId) throws IOException {

+ 1 - 0
src/main/java/cn/wildfirechat/app/conference/ConferenceService.java

@@ -17,6 +17,7 @@ public interface ConferenceService {
     RestResult createConference(ConferenceInfo info);
     RestResult destroyConference(String conferenceId);
     RestResult recordingConference(String conferenceId, boolean recording);
+    RestResult focusConference(String conferenceId, String userId);
     RestResult favConference(String conferenceId);
     RestResult unfavConference(String conferenceId);
     RestResult getFavConferences();

+ 19 - 0
src/main/java/cn/wildfirechat/app/conference/ConferenceServiceImpl.java

@@ -219,6 +219,25 @@ public class ConferenceServiceImpl implements ConferenceService {
         }
     }
 
+    @Override
+    public RestResult focusConference(String conferenceId, String focusedUserId) {
+        Optional<ConferenceEntity> conferenceEntityOptional = conferenceEntityRepository.findById(conferenceId);
+        if(conferenceEntityOptional.isPresent()) {
+            Subject subject = SecurityUtils.getSubject();
+            String userId = (String) subject.getSession().getAttribute("userId");
+            ConferenceEntity entity = conferenceEntityOptional.get();
+            if(userId.equals(entity.owner)) {
+                entity.setFocus(focusedUserId);
+                conferenceEntityRepository.save(entity);
+            } else {
+                return RestResult.error(RestResult.RestCode.ERROR_NO_RIGHT);
+            }
+        } else {
+            return RestResult.error(RestResult.RestCode.ERROR_NOT_EXIST);
+        }
+        return RestResult.error(RestResult.RestCode.SUCCESS);
+    }
+
     @Override
     public RestResult favConference(String conferenceId) {
         String userId = getUserId();

+ 5 - 0
src/main/java/cn/wildfirechat/app/pojo/UserIdPojo.java

@@ -0,0 +1,5 @@
+package cn.wildfirechat.app.pojo;
+
+public class UserIdPojo {
+    public String userId;
+}