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

Merge remote-tracking branch 'origin/feature/0414-trtc' into feature/0414-trtc

shangke 2 лет назад
Родитель
Сommit
a6ba98bd12

+ 16 - 4
mec-im/src/main/java/com/ym/dao/RoomMemberDao.java

@@ -5,7 +5,6 @@ import org.springframework.data.jpa.repository.JpaRepository;
 import org.springframework.data.jpa.repository.Lock;
 import org.springframework.data.jpa.repository.Lock;
 import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Modifying;
 import org.springframework.data.jpa.repository.Query;
 import org.springframework.data.jpa.repository.Query;
-import org.springframework.data.repository.query.Param;
 import org.springframework.stereotype.Repository;
 import org.springframework.stereotype.Repository;
 
 
 import javax.persistence.LockModeType;
 import javax.persistence.LockModeType;
@@ -60,9 +59,22 @@ public interface RoomMemberDao extends JpaRepository<RoomMember, Long> {
 
 
     boolean existsByRidAndUid(String rid, String uid);
     boolean existsByRidAndUid(String rid, String uid);
 
 
+    @Modifying
+    @Query(value = "update rongyun_room_member set camera=?3 where rid=?1 and role=?2", nativeQuery = true)
+    void updateCameraByRidAndRole(String roomId, int role, boolean enable);
+
+
+    @Modifying
+    @Query(value = "update rongyun_room_member set mic=?3 where rid=?1 and role=?2", nativeQuery = true)
+    void updateMicByRidAndRole(String roomId, int role, boolean enable);
+
+
+    @Modifying
+    @Query(value = "update rongyun_room_member set music_mode=?3 where rid=?1 and role=?2", nativeQuery = true)
+    void updateMusicByRidAndRole(String roomId, int role, boolean enable);
+
 
 
     @Modifying
     @Modifying
-    @Query(value = "update rongyun_room_member set (case ?3 when 1 then  mic =?4 when 2 then camera =?4 when 3 then music_mode = ?4 else hand = ?4) " +
-            "where rid=?1 and role=?2", nativeQuery = true)
-    void updateAll(String userId, int role, int type, boolean enable);
+    @Query(value = "update rongyun_room_member set hand=?3 where rid=?1 and role=?2", nativeQuery = true)
+    void updateHandByRidAndRole(String roomId, int role, boolean enable);
 }
 }

+ 4 - 7
mec-im/src/main/java/com/ym/service/Impl/RoomServiceImpl.java

@@ -1454,25 +1454,22 @@ public class RoomServiceImpl implements RoomService {
             data.setUserId(e.getUid());
             data.setUserId(e.getUid());
             controlDevice(data);
             controlDevice(data);
         }
         }
-        DeviceTypeEnum typeEnum;
         boolean enable;
         boolean enable;
         if (data.getCameraOn() != null) {
         if (data.getCameraOn() != null) {
-            typeEnum = DeviceTypeEnum.Camera;
             enable = data.getCameraOn();
             enable = data.getCameraOn();
+            roomMemberDao.updateCameraByRidAndRole(data.getRoomId(), RoleStudent.getValue(), enable);
         } else if (data.getMicrophoneOn() != null) {
         } else if (data.getMicrophoneOn() != null) {
-            typeEnum = DeviceTypeEnum.Microphone;
             enable = data.getMicrophoneOn();
             enable = data.getMicrophoneOn();
+            roomMemberDao.updateMicByRidAndRole(data.getRoomId(), RoleStudent.getValue(), enable);
         } else if (data.getMusicModeOn() != null) {
         } else if (data.getMusicModeOn() != null) {
-            typeEnum = DeviceTypeEnum.MusicMode;
             enable = data.getMusicModeOn();
             enable = data.getMusicModeOn();
+            roomMemberDao.updateMusicByRidAndRole(data.getRoomId(), RoleStudent.getValue(), enable);
         } else if (data.getHandUpOn() != null) {
         } else if (data.getHandUpOn() != null) {
-            typeEnum = DeviceTypeEnum.HandUp;
             enable = data.getHandUpOn();
             enable = data.getHandUpOn();
+            roomMemberDao.updateHandByRidAndRole(data.getRoomId(), RoleStudent.getValue(), enable);
         }  else
         }  else
             return true;
             return true;
 
 
-        roomMemberDao.updateAll(data.getUserId(),RoleStudent.getValue(),typeEnum.getValue(),enable);
-
         return true;
         return true;
     }
     }