|
@@ -295,6 +295,7 @@ public class RoomServiceImpl implements RoomService {
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
|
|
@Override
|
|
@Override
|
|
public void joinRoomSuccess(String roomId,String userId,String deviceNum) throws Exception {
|
|
public void joinRoomSuccess(String roomId,String userId,String deviceNum) throws Exception {
|
|
|
|
+ log.info("joinRoomSuccess: roomId={}, userId={}, deviceNum={}", roomId,userId,deviceNum);
|
|
RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
if(roomMember == null){
|
|
if(roomMember == null){
|
|
roomMember = saveRoomMember(roomId,userId);
|
|
roomMember = saveRoomMember(roomId,userId);
|
|
@@ -314,7 +315,6 @@ public class RoomServiceImpl implements RoomService {
|
|
redisTemplate.delete(leaveSuccessKey);
|
|
redisTemplate.delete(leaveSuccessKey);
|
|
}
|
|
}
|
|
redisTemplate.opsForValue().setIfAbsent(joinSuccessKey,roomId,2l,TimeUnit.SECONDS);
|
|
redisTemplate.opsForValue().setIfAbsent(joinSuccessKey,roomId,2l,TimeUnit.SECONDS);
|
|
- log.info("joinRoomSuccess : roomId={}, userId={}", roomId, userId);
|
|
|
|
|
|
|
|
RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
|
|
RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
|
|
CourseSchedule schedule = courseScheduleDao.getLock(Long.parseLong(roomId.substring(1)));
|
|
CourseSchedule schedule = courseScheduleDao.getLock(Long.parseLong(roomId.substring(1)));
|
|
@@ -433,6 +433,7 @@ public class RoomServiceImpl implements RoomService {
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,isolation = Isolation.READ_COMMITTED)
|
|
@Override
|
|
@Override
|
|
public void leaveRoomSuccess(String roomId,String userId,String deviceNum) throws Exception {
|
|
public void leaveRoomSuccess(String roomId,String userId,String deviceNum) throws Exception {
|
|
|
|
+ log.info("leaveRoomSuccess: roomId={}, userId={},deviceNum={}", roomId,userId,deviceNum);
|
|
RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
String leaveSuccessKey = "leaveRoomSuccess"+ roomId + userId;
|
|
String leaveSuccessKey = "leaveRoomSuccess"+ roomId + userId;
|
|
Integer firstCourseId = Integer.parseInt(roomId.substring(1));
|
|
Integer firstCourseId = Integer.parseInt(roomId.substring(1));
|
|
@@ -466,8 +467,6 @@ public class RoomServiceImpl implements RoomService {
|
|
redisTemplate.delete(joinSuccessKey);
|
|
redisTemplate.delete(joinSuccessKey);
|
|
}
|
|
}
|
|
redisTemplate.opsForValue().setIfAbsent(leaveSuccessKey,roomId,2,TimeUnit.SECONDS);
|
|
redisTemplate.opsForValue().setIfAbsent(leaveSuccessKey,roomId,2,TimeUnit.SECONDS);
|
|
- //记录
|
|
|
|
- log.info("leaveRoomSuccess: roomId={}, userId={}", roomId,userId);
|
|
|
|
RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
|
|
RoleEnum roleEnum = RoleEnum.getEnumByValue(roomMember.getRole());
|
|
|
|
|
|
if(roleEnum == RoleTeacher){
|
|
if(roleEnum == RoleTeacher){
|
|
@@ -483,7 +482,6 @@ public class RoomServiceImpl implements RoomService {
|
|
userDao.deleteByUid(userId);
|
|
userDao.deleteByUid(userId);
|
|
return;
|
|
return;
|
|
}
|
|
}
|
|
-
|
|
|
|
if (roleEnum != RoleStudent && isUserDisplay(room, userId)) {
|
|
if (roleEnum != RoleStudent && isUserDisplay(room, userId)) {
|
|
updateDisplay(roomId, userId, "", 0);
|
|
updateDisplay(roomId, userId, "", 0);
|
|
}
|
|
}
|
|
@@ -494,7 +492,6 @@ public class RoomServiceImpl implements RoomService {
|
|
imHelper.dismiss(userId, roomId);
|
|
imHelper.dismiss(userId, roomId);
|
|
log.info("leaveRoomSuccess dismiss the room: {},userId: {}", roomId,userId);
|
|
log.info("leaveRoomSuccess dismiss the room: {},userId: {}", roomId,userId);
|
|
} else {
|
|
} else {
|
|
-// imHelper.quit(new String[]{userId}, roomId);
|
|
|
|
roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Leave, userId, roleEnum.getValue());
|
|
MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Leave, userId, roleEnum.getValue());
|
|
msg.setUserName(roomMember.getName());
|
|
msg.setUserName(roomMember.getName());
|