|
@@ -1,7 +1,6 @@
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
package com.yonge.cooleshow.biz.dal.service.impl;
|
|
|
|
|
|
import com.alibaba.fastjson.JSON;
|
|
import com.alibaba.fastjson.JSON;
|
|
-import com.baomidou.mybatisplus.extension.exceptions.ApiException;
|
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.client.SysUserFeignService;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
import com.yonge.cooleshow.auth.api.entity.SysUser;
|
|
@@ -29,8 +28,6 @@ import javax.annotation.Resource;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
import java.util.stream.Collectors;
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
-import static org.bouncycastle.asn1.cms.CMSObjectIdentifiers.data;
|
|
|
|
-
|
|
|
|
/**
|
|
/**
|
|
* 网络教室房间(ImNetworkRoom)表服务实现类
|
|
* 网络教室房间(ImNetworkRoom)表服务实现类
|
|
*
|
|
*
|
|
@@ -72,11 +69,12 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public HttpResponseResult<ImNetworkRoomResult> joinRoom(Long courseScheduleId, UserRoleEnum userRole) throws Exception {
|
|
public HttpResponseResult<ImNetworkRoomResult> joinRoom(Long courseScheduleId, UserRoleEnum userRole) throws Exception {
|
|
log.info("joinRoom params:courseScheduleId:{},userRole:{}",courseScheduleId,userRole);
|
|
log.info("joinRoom params:courseScheduleId:{},userRole:{}",courseScheduleId,userRole);
|
|
- SysUser user = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
CourseSchedule courseSchedule = Optional.ofNullable(courseScheduleService.getById(courseScheduleId)).
|
|
CourseSchedule courseSchedule = Optional.ofNullable(courseScheduleService.getById(courseScheduleId)).
|
|
orElseThrow(()->new BizException("房间信息不存在"));
|
|
orElseThrow(()->new BizException("房间信息不存在"));
|
|
- BasicUserInfo sysUser = Optional.ofNullable(teacherDao.getBasicUserInfo(user.getId())).
|
|
|
|
|
|
+ BasicUserInfo sysUser = Optional.ofNullable(teacherDao.getBasicUserInfo(userId)).
|
|
orElseThrow(()-> new BizException("用户信息不存在"));
|
|
orElseThrow(()-> new BizException("用户信息不存在"));
|
|
Date now = new Date();
|
|
Date now = new Date();
|
|
courseSchedule.setUpdatedTime(now);
|
|
courseSchedule.setUpdatedTime(now);
|
|
@@ -125,12 +123,13 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void joinRoomSuccess(String roomId,Long userId) throws Exception {
|
|
public void joinRoomSuccess(String roomId,Long userId) throws Exception {
|
|
log.info("joinRoomSuccess: roomId={}, userId={}", roomId, userId);
|
|
log.info("joinRoomSuccess: roomId={}, userId={}", roomId, userId);
|
|
- CourseSchedule courseSchedule = Optional.ofNullable(courseScheduleService.getById(roomId)).
|
|
|
|
|
|
+ Long teacherId = Optional.ofNullable(courseScheduleService.getById(roomId)).
|
|
|
|
+ map(CourseSchedule::getTeacherId).
|
|
orElseThrow(()->new BizException("房间信息不存在"));
|
|
orElseThrow(()->new BizException("房间信息不存在"));
|
|
BasicUserInfo sysUser = Optional.ofNullable(teacherDao.getBasicUserInfo(userId)).
|
|
BasicUserInfo sysUser = Optional.ofNullable(teacherDao.getBasicUserInfo(userId)).
|
|
orElseThrow(()-> new BizException("用户信息不存在"));
|
|
orElseThrow(()-> new BizException("用户信息不存在"));
|
|
UserRoleEnum userRole = UserRoleEnum.STUDENT;
|
|
UserRoleEnum userRole = UserRoleEnum.STUDENT;
|
|
- if(Objects.equals(courseSchedule.getTeacherId(),userId)){
|
|
|
|
|
|
+ if(Objects.equals(teacherId,userId)){
|
|
userRole = UserRoleEnum.TEACHER;
|
|
userRole = UserRoleEnum.TEACHER;
|
|
}
|
|
}
|
|
Date now = new Date();
|
|
Date now = new Date();
|
|
@@ -153,9 +152,9 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void joinRoomFailure(String roomId) {
|
|
public void joinRoomFailure(String roomId) {
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
- Long userId = sysUser.getId();
|
|
|
|
log.info("joinRoomFailure: roomId={}, userId={}", roomId, userId);
|
|
log.info("joinRoomFailure: roomId={}, userId={}", roomId, userId);
|
|
imNetworkRoomMemberService.getDao().delByRidAndUid(roomId, userId);
|
|
imNetworkRoomMemberService.getDao().delByRidAndUid(roomId, userId);
|
|
}
|
|
}
|
|
@@ -163,9 +162,9 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void leaveRoom(String roomId,UserRoleEnum userRole) throws Exception {
|
|
public void leaveRoom(String roomId,UserRoleEnum userRole) throws Exception {
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
- Long userId = sysUser.getId();
|
|
|
|
log.info("leaveRoom: roomId={}, userId={}", roomId, userId);
|
|
log.info("leaveRoom: roomId={}, userId={}", roomId, userId);
|
|
long courseScheduleId = Long.parseLong(roomId);
|
|
long courseScheduleId = Long.parseLong(roomId);
|
|
if (userRole == UserRoleEnum.TEACHER){
|
|
if (userRole == UserRoleEnum.TEACHER){
|
|
@@ -227,21 +226,22 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void sendImPlayMidiMessage(ImNetworkCustomMessage customMessage) throws Exception {
|
|
public void sendImPlayMidiMessage(ImNetworkCustomMessage customMessage) throws Exception {
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
- Long userId = sysUser.getId();
|
|
|
|
- Long courseScheduleId = customMessage.getCourseScheduleId();
|
|
|
|
- log.info("sendImPlayMidiMessage: roomId={}, userId={}", courseScheduleId, userId);
|
|
|
|
|
|
+ Long roomId = customMessage.getRoomId();
|
|
|
|
+ log.info("sendImPlayMidiMessage: roomId={}, userId={}", roomId, userId);
|
|
ImNetworkMetronomeMessage displayMessage = new ImNetworkMetronomeMessage(customMessage);
|
|
ImNetworkMetronomeMessage displayMessage = new ImNetworkMetronomeMessage(customMessage);
|
|
- imHelper.publishMessage(userId.toString(), courseScheduleId.toString(), displayMessage, 0);
|
|
|
|
|
|
+ imHelper.publishMessage(userId.toString(), roomId.toString(), displayMessage, 0);
|
|
//记录节拍器信息
|
|
//记录节拍器信息
|
|
- courseScheduleStudentPaymentService.getDao().adjustPlayMidi(courseScheduleId,userId,customMessage.toString());
|
|
|
|
|
|
+ courseScheduleStudentPaymentService.getDao().adjustPlayMidi(roomId,customMessage.getUserId(),customMessage.toString());
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void pushDownloadMusicSheetMsg(String roomId,Long accompanimentId) throws Exception {
|
|
public void pushDownloadMusicSheetMsg(String roomId,Long accompanimentId) throws Exception {
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
Long courseScheduleId = Long.parseLong(roomId);
|
|
Long courseScheduleId = Long.parseLong(roomId);
|
|
List<CourseScheduleStudentMusicSheetResult> scheduleStudentMusicSheetResults = courseScheduleStudentMusicSheetService.getDao().
|
|
List<CourseScheduleStudentMusicSheetResult> scheduleStudentMusicSheetResults = courseScheduleStudentMusicSheetService.getDao().
|
|
@@ -264,21 +264,22 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
musicSheet.setMusicSheetAccompanimentId(accompanimentId);
|
|
musicSheet.setMusicSheetAccompanimentId(accompanimentId);
|
|
musicSheet.setSpeed(accompaniment.getSpeed());
|
|
musicSheet.setSpeed(accompaniment.getSpeed());
|
|
musicSheet.setCourseScheduleId(courseScheduleId);
|
|
musicSheet.setCourseScheduleId(courseScheduleId);
|
|
- musicSheet.setUserId(sysUser.getId());
|
|
|
|
|
|
+ musicSheet.setUserId(userId);
|
|
musicSheet.setUserType(1);
|
|
musicSheet.setUserType(1);
|
|
scheduleStudentMusicSheetResults.add(musicSheet);
|
|
scheduleStudentMusicSheetResults.add(musicSheet);
|
|
courseScheduleStudentMusicSheetService.getDao().batchInsert(scheduleStudentMusicSheetResults);
|
|
courseScheduleStudentMusicSheetService.getDao().batchInsert(scheduleStudentMusicSheetResults);
|
|
}
|
|
}
|
|
ImNetworkMusicSheetDownloadMessage msg = new ImNetworkMusicSheetDownloadMessage(
|
|
ImNetworkMusicSheetDownloadMessage msg = new ImNetworkMusicSheetDownloadMessage(
|
|
JSON.parseObject(JSON.toJSONString(accompaniment), ImNetworkMusicSheetDownloadMessageContent.class));
|
|
JSON.parseObject(JSON.toJSONString(accompaniment), ImNetworkMusicSheetDownloadMessageContent.class));
|
|
- imHelper.publishMessage(sysUser.getId().toString(), roomId, msg, 0);
|
|
|
|
|
|
+ imHelper.publishMessage(userId.toString(), roomId, msg, 0);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void display(ImNetworkDisplayDataDto displayData) throws Exception {
|
|
public void display(ImNetworkDisplayDataDto displayData) throws Exception {
|
|
log.info("display in data = {}", displayData);
|
|
log.info("display in data = {}", displayData);
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
|
|
|
|
StringBuffer display = new StringBuffer("display://type=").append(displayData.getType().ordinal()).append("?userId=");
|
|
StringBuffer display = new StringBuffer("display://type=").append(displayData.getType().ordinal()).append("?userId=");
|
|
@@ -288,22 +289,24 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
display = new StringBuffer();
|
|
display = new StringBuffer();
|
|
break;
|
|
break;
|
|
case TEACHER:
|
|
case TEACHER:
|
|
- CourseSchedule courseSchedule = courseScheduleService.getById(displayData.getRoomId());
|
|
|
|
- display.append(courseSchedule.getTeacherId()).append("?uri=");
|
|
|
|
|
|
+ Long teacherId = Optional.ofNullable(courseScheduleService.getById(displayData.getRoomId())).
|
|
|
|
+ map(CourseSchedule::getTeacherId).
|
|
|
|
+ orElseThrow(()->new BizException("房间信息不存在"));
|
|
|
|
+ display.append(teacherId).append("?uri=");
|
|
break;
|
|
break;
|
|
case SCREEN:
|
|
case SCREEN:
|
|
- display.append(sysUser.getId()).append("?uri=");
|
|
|
|
|
|
+ display.append(userId).append("?uri=");
|
|
break;
|
|
break;
|
|
case STUDENT:
|
|
case STUDENT:
|
|
display.append(displayData.getUserId()).append("?uri=").append(displayData.getUri());
|
|
display.append(displayData.getUserId()).append("?uri=").append(displayData.getUri());
|
|
break;
|
|
break;
|
|
default:
|
|
default:
|
|
- display.append(sysUser.getId()).append("?uri=").append(displayData.getUri());
|
|
|
|
|
|
+ display.append(userId).append("?uri=").append(displayData.getUri());
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
ImNetworkRoom room = baseMapper.findByRoomId(displayData.getRoomId());
|
|
ImNetworkRoom room = baseMapper.findByRoomId(displayData.getRoomId());
|
|
room.setDisplay(display.toString());
|
|
room.setDisplay(display.toString());
|
|
- this.updateDisplay(sysUser.getId(),room);
|
|
|
|
|
|
+ this.updateDisplay(userId,room);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -354,21 +357,25 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
imHelper.publishMessage(userId.toString(), deviceControl.getRoomId(), deviceResourceMessage, 1);
|
|
imHelper.publishMessage(userId.toString(), deviceControl.getRoomId(), deviceResourceMessage, 1);
|
|
break;
|
|
break;
|
|
case MUSIC_SHEET:
|
|
case MUSIC_SHEET:
|
|
|
|
+ Integer musicSheetId = Optional.ofNullable(deviceControl.getMusicSheetAccompanimentId()).
|
|
|
|
+ orElseThrow(()-> new BizException("请选择曲目"));
|
|
//关闭所有曲目播放
|
|
//关闭所有曲目播放
|
|
courseScheduleStudentMusicSheetService.getDao().closePlayStatus(scheduleId,userId);
|
|
courseScheduleStudentMusicSheetService.getDao().closePlayStatus(scheduleId,userId);
|
|
//打开原音
|
|
//打开原音
|
|
- courseScheduleStudentMusicSheetService.getDao().openPlayStatus(scheduleId,deviceControl.getMusicScoreAccompanimentId(),userId);
|
|
|
|
- deviceResourceMessage.setMusicScoreAccompanimentId(deviceControl.getMusicScoreAccompanimentId());
|
|
|
|
|
|
+ courseScheduleStudentMusicSheetService.getDao().openPlayStatus(scheduleId,musicSheetId,userId);
|
|
|
|
+ deviceResourceMessage.setMusicSheetAccompanimentId(musicSheetId);
|
|
deviceResourceMessage.setUserId(userId.toString());
|
|
deviceResourceMessage.setUserId(userId.toString());
|
|
deviceResourceMessage.setSoundVolume(deviceControl.getSoundVolume());
|
|
deviceResourceMessage.setSoundVolume(deviceControl.getSoundVolume());
|
|
imHelper.publishMessage(sysUser.getId().toString(), roomId, deviceResourceMessage, 1);
|
|
imHelper.publishMessage(sysUser.getId().toString(), roomId, deviceResourceMessage, 1);
|
|
break;
|
|
break;
|
|
case ACCOMPANIMENT:
|
|
case ACCOMPANIMENT:
|
|
|
|
+ Integer musicSheetAccompanimentId = Optional.ofNullable(deviceControl.getMusicSheetAccompanimentId()).
|
|
|
|
+ orElseThrow(()-> new BizException("请选择曲目"));
|
|
//关闭所有曲目播放
|
|
//关闭所有曲目播放
|
|
courseScheduleStudentMusicSheetService.getDao().closePlayStatus(scheduleId,userId);
|
|
courseScheduleStudentMusicSheetService.getDao().closePlayStatus(scheduleId,userId);
|
|
//打开伴奏
|
|
//打开伴奏
|
|
- courseScheduleStudentMusicSheetService.getDao().openAccompanimentPlayStatus(scheduleId, deviceControl.getMusicScoreAccompanimentId(),userId);
|
|
|
|
- deviceResourceMessage.setMusicScoreAccompanimentId(deviceControl.getMusicScoreAccompanimentId());
|
|
|
|
|
|
+ courseScheduleStudentMusicSheetService.getDao().openAccompanimentPlayStatus(scheduleId,musicSheetAccompanimentId,userId);
|
|
|
|
+ deviceResourceMessage.setMusicSheetAccompanimentId(musicSheetAccompanimentId);
|
|
deviceResourceMessage.setUserId(userId.toString());
|
|
deviceResourceMessage.setUserId(userId.toString());
|
|
deviceResourceMessage.setSoundVolume(deviceControl.getSoundVolume());
|
|
deviceResourceMessage.setSoundVolume(deviceControl.getSoundVolume());
|
|
imHelper.publishMessage(sysUser.getId().toString(), roomId, deviceResourceMessage, 1);
|
|
imHelper.publishMessage(sysUser.getId().toString(), roomId, deviceResourceMessage, 1);
|
|
@@ -376,7 +383,6 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
default:
|
|
default:
|
|
//邀请打开指定设备权限
|
|
//邀请打开指定设备权限
|
|
ImNetworkControlDeviceNotifyMessage message = new ImNetworkControlDeviceNotifyMessage(ImNetworkActionEnum.INVITE.ordinal());
|
|
ImNetworkControlDeviceNotifyMessage message = new ImNetworkControlDeviceNotifyMessage(ImNetworkActionEnum.INVITE.ordinal());
|
|
-// msg.setTicket(ticket);
|
|
|
|
message.setType(deviceControl.getDeviceType().ordinal());
|
|
message.setType(deviceControl.getDeviceType().ordinal());
|
|
message.setOpUserId(sysUser.getId().toString());
|
|
message.setOpUserId(sysUser.getId().toString());
|
|
message.setOpUserName(sysUser.getUsername());
|
|
message.setOpUserName(sysUser.getUsername());
|
|
@@ -384,7 +390,8 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}else {
|
|
}else {
|
|
- ImNetworkRoomMember roomMember = imNetworkRoomMemberService.getById(roomId);
|
|
|
|
|
|
+ ImNetworkRoomMember roomMember = Optional.ofNullable(imNetworkRoomMemberService.getDao().findByRidAndUid(roomId, userId))
|
|
|
|
+ .orElseThrow(()-> new BizException("用户不在房间内"));
|
|
long scheduleId = Long.parseLong(roomId);
|
|
long scheduleId = Long.parseLong(roomId);
|
|
switch (deviceControl.getDeviceType()) {
|
|
switch (deviceControl.getDeviceType()) {
|
|
case CAMERA:
|
|
case CAMERA:
|
|
@@ -431,7 +438,8 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
log.info("approveControlDevice: deviceControl={}", deviceControl);
|
|
log.info("approveControlDevice: deviceControl={}", deviceControl);
|
|
SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
- ImNetworkRoomMember roomMember = imNetworkRoomMemberService.getById(deviceControl.getRoomId());
|
|
|
|
|
|
+ ImNetworkRoomMember roomMember = Optional.ofNullable(imNetworkRoomMemberService.getDao().findByRidAndUid(deviceControl.getRoomId(), sysUser.getId())).
|
|
|
|
+ orElseThrow(()-> new BizException("用户不在房间内"));
|
|
switch (deviceControl.getDeviceType()) {
|
|
switch (deviceControl.getDeviceType()) {
|
|
case CAMERA:
|
|
case CAMERA:
|
|
roomMember.setCameraFlag(deviceControl.getEnable());
|
|
roomMember.setCameraFlag(deviceControl.getEnable());
|
|
@@ -465,10 +473,13 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@Transactional(rollbackFor = Exception.class)
|
|
public void deviceStatusSync(ImNetworkDeviceControlDto deviceStatusSync) throws Exception {
|
|
public void deviceStatusSync(ImNetworkDeviceControlDto deviceStatusSync) throws Exception {
|
|
log.info("deviceStatusSync: deviceStatusSync={}", deviceStatusSync);
|
|
log.info("deviceStatusSync: deviceStatusSync={}", deviceStatusSync);
|
|
- SysUser sysUser = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
|
|
+ Long userId = Optional.ofNullable(sysUserFeignService.queryUserInfo()).
|
|
|
|
+ map(SysUser::getId).
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
orElseThrow(()-> new BizException("请登录"));
|
|
ImNetworkDeviceTypeEnum deviceType = deviceStatusSync.getDeviceType();
|
|
ImNetworkDeviceTypeEnum deviceType = deviceStatusSync.getDeviceType();
|
|
- ImNetworkRoomMember roomMember = imNetworkRoomMemberService.getById(deviceStatusSync.getRoomId());
|
|
|
|
|
|
+ ImNetworkRoomMember roomMember = Optional.ofNullable(imNetworkRoomMemberService.getDao().
|
|
|
|
+ findByRidAndUid(deviceStatusSync.getRoomId(), userId))
|
|
|
|
+ .orElseThrow(()-> new BizException("用户不在房间内"));
|
|
switch (deviceType) {
|
|
switch (deviceType) {
|
|
case CAMERA:
|
|
case CAMERA:
|
|
roomMember.setCameraFlag(deviceStatusSync.getEnable());
|
|
roomMember.setCameraFlag(deviceStatusSync.getEnable());
|
|
@@ -484,9 +495,9 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
break;
|
|
break;
|
|
case EXAM_SONG:
|
|
case EXAM_SONG:
|
|
long scheduleId = Long.parseLong(deviceStatusSync.getRoomId());
|
|
long scheduleId = Long.parseLong(deviceStatusSync.getRoomId());
|
|
- ImNetworkRoomMusicSheetDownloadData msg = courseScheduleStudentPaymentService.getMemberExamSong(scheduleId, sysUser.getId());
|
|
|
|
|
|
+ ImNetworkRoomMusicSheetDownloadData msg = courseScheduleStudentPaymentService.getMemberExamSong(scheduleId, userId);
|
|
msg.setEnable(deviceStatusSync.getEnable());
|
|
msg.setEnable(deviceStatusSync.getEnable());
|
|
- courseScheduleStudentPaymentService.getDao().adjustExamSong(scheduleId, sysUser.getId(), JSON.toJSONString(msg));
|
|
|
|
|
|
+ courseScheduleStudentPaymentService.getDao().adjustExamSong(scheduleId, userId, JSON.toJSONString(msg));
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
if(deviceType == ImNetworkDeviceTypeEnum.CAMERA ||
|
|
if(deviceType == ImNetworkDeviceTypeEnum.CAMERA ||
|
|
@@ -496,10 +507,10 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
imNetworkRoomMemberService.getDao().updateById(roomMember);
|
|
imNetworkRoomMemberService.getDao().updateById(roomMember);
|
|
}
|
|
}
|
|
ImNetworkDeviceStateChangedMessage deviceResourceMessage = new ImNetworkDeviceStateChangedMessage(deviceType.ordinal(),deviceStatusSync.getEnable());
|
|
ImNetworkDeviceStateChangedMessage deviceResourceMessage = new ImNetworkDeviceStateChangedMessage(deviceType.ordinal(),deviceStatusSync.getEnable());
|
|
- deviceResourceMessage.setUserId(sysUser.getId().toString());
|
|
|
|
- ImNetworkRoom room = this.getById(deviceStatusSync.getRoomId());
|
|
|
|
|
|
+ deviceResourceMessage.setUserId(userId.toString());
|
|
|
|
+ ImNetworkRoom room = baseMapper.findByRoomId(deviceStatusSync.getRoomId());
|
|
deviceResourceMessage.setSoundVolume(room.getSoundVolume());
|
|
deviceResourceMessage.setSoundVolume(room.getSoundVolume());
|
|
- imHelper.publishMessage(sysUser.getId().toString(), deviceStatusSync.getRoomId(), deviceResourceMessage, 1);
|
|
|
|
|
|
+ imHelper.publishMessage(userId.toString(), deviceStatusSync.getRoomId(), deviceResourceMessage, 1);
|
|
}
|
|
}
|
|
|
|
|
|
@Override
|
|
@Override
|
|
@@ -547,7 +558,7 @@ public class ImNetworkRoomServiceImpl extends ServiceImpl<ImNetworkRoomDao, ImNe
|
|
if (StringUtils.isEmpty(courseBeforeBufferTime)) {
|
|
if (StringUtils.isEmpty(courseBeforeBufferTime)) {
|
|
courseBeforeBufferTime = "5";
|
|
courseBeforeBufferTime = "5";
|
|
}
|
|
}
|
|
- Date addMinutes = DateUtil.addMinutes(courseSchedule.getUpdatedTime(), Integer.parseInt(courseBeforeBufferTime));
|
|
|
|
|
|
+ Date addMinutes = DateUtil.addMinutes(courseSchedule.getStartTime(), Integer.parseInt(courseBeforeBufferTime));
|
|
return courseSchedule.getStartTime().compareTo(addMinutes) > 0;
|
|
return courseSchedule.getStartTime().compareTo(addMinutes) > 0;
|
|
}
|
|
}
|
|
|
|
|