|
@@ -227,6 +227,8 @@ public class RoomServiceImpl implements RoomService {
|
|
|
log.info("joinRoom current: roomId={}, userId={}", roomId, userId);
|
|
|
RoleEnum roleEnum;
|
|
|
|
|
|
+ // 全员静音状态
|
|
|
+ Boolean muteAll = Optional.ofNullable(courseSchedule.getMuteAll()).orElse(false);
|
|
|
|
|
|
RoomResult.MemberResult userResult = new RoomResult.MemberResult();
|
|
|
RoomMember member = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
@@ -244,7 +246,8 @@ public class RoomServiceImpl implements RoomService {
|
|
|
roleEnum = RoleStudent;
|
|
|
userName = sysUser.getUsername();
|
|
|
}
|
|
|
- userResult.setMicrophone(true);
|
|
|
+
|
|
|
+ userResult.setMicrophone(!muteAll);
|
|
|
userResult.setCamera(true);
|
|
|
userResult.setHandUpOn(false);
|
|
|
userResult.setJoinTime(curTime);
|
|
@@ -361,6 +364,15 @@ public class RoomServiceImpl implements RoomService {
|
|
|
Map<Integer, String> midiMap = MapUtil.convertMybatisMap(courseScheduleStudentPaymentDao.queryMidiByUserIdsAndCourseId(userIds, courseId.toString()));
|
|
|
Map<Integer, String> examSongMap = MapUtil.convertMybatisMap(courseScheduleStudentPaymentDao.queryExamSongByUserIdsAndCourseId(userIds, courseId.toString()));
|
|
|
roomResult.setMembers(roomMemberList, midiMap, examSongMap, scheduleStudentMusicScores);
|
|
|
+
|
|
|
+ // 全员静音状态开启
|
|
|
+ if (muteAll) {
|
|
|
+
|
|
|
+ // 重置用户当前静音状态
|
|
|
+ for (RoomResult.MemberResult item : roomResult.getMembers()) {
|
|
|
+ item.setMicrophone(false);
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
roomResult.setWhiteboards(whiteboardDao.findByRid(roomId));
|
|
|
if (room != null) {
|
|
@@ -1428,6 +1440,11 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
data.setServiceProvider(courseSchedule.getServiceProvider());
|
|
|
|
|
|
+ // 同步全员静音状态
|
|
|
+ if (Objects.nonNull(data.getMicrophoneOn())) {
|
|
|
+ courseScheduleDao.updateGroupMuteAllStatus(courseScheduleId, data.getMicrophoneOn());
|
|
|
+ }
|
|
|
+
|
|
|
// 课程老师信息
|
|
|
SysUser sysUser = sysUserFeignService.queryUserById(courseSchedule.getTeacherId());
|
|
|
if (Objects.nonNull(sysUser)) {
|