|
@@ -474,29 +474,33 @@ public class RoomServiceImpl implements RoomService {
|
|
|
username = sysUser.getUsername();
|
|
|
studentAttendanceService.addStudentAttendanceSignOut(firstCourseId.longValue(),parseInt);
|
|
|
}
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
- userDao.deleteByUid(userId);
|
|
|
Room room = roomDao.findByRid(roomId);
|
|
|
if (room == null) {
|
|
|
+ roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
+ userDao.deleteByUid(userId);
|
|
|
return;
|
|
|
}
|
|
|
if (roleEnum != RoleStudent && isUserDisplay(room, userId)) {
|
|
|
updateDisplay(roomId, userId, "", 0);
|
|
|
}
|
|
|
- if (roomMemberDao.countByRid(roomId) == 0) {
|
|
|
+ if (roomMemberDao.countByRid(roomId) <= 1) {
|
|
|
+ roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
roomDao.deleteByRid(roomId);
|
|
|
+ deleteWhiteboardByUser(roomId, userId);
|
|
|
imHelper.dismiss(userId, roomId);
|
|
|
log.info("leaveRoomSuccess dismiss the room: {},userId: {}", roomId,userId);
|
|
|
} else {
|
|
|
+ roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Leave, userId, roleEnum.getValue());
|
|
|
msg.setUserName(username);
|
|
|
imHelper.publishMessage(userId, roomId, msg);
|
|
|
imHelper.quit(new String[]{userId}, roomId);
|
|
|
log.info("leaveRoomSuccess quit group: roomId={},userId: {}", roomId,userId);
|
|
|
}
|
|
|
+ userDao.deleteByUid(userId);
|
|
|
}
|
|
|
|
|
|
- /*public void deleteWhiteboardByUser(String roomId, String userId) throws Exception {
|
|
|
+ public void deleteWhiteboardByUser(String roomId, String userId) throws Exception {
|
|
|
List<Whiteboard> whiteboardList = whiteboardDao.findByRidAndCreator(roomId, userId);
|
|
|
if (!whiteboardList.isEmpty()) {
|
|
|
whiteboardDao.deleteByRidAndCreator(roomId, userId);
|
|
@@ -504,7 +508,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
whiteBoardHelper.destroy(wb.getWbRoom());
|
|
|
}
|
|
|
}
|
|
|
- }*/
|
|
|
+ }
|
|
|
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
@Override
|
|
@@ -1392,7 +1396,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
if (apiResultInfo.getCode() == 200) {
|
|
|
roomMemberDao.deleteUserByRidAndUid(member.getRid(), member.getUid());
|
|
|
roomDao.deleteByRid(member.getRid());
|
|
|
-// deleteWhiteboardByUser(member.getRid(), member.getUid());
|
|
|
+ deleteWhiteboardByUser(member.getRid(), member.getUid());
|
|
|
log.info("dismiss the room: {},userId: {}", member.getRid(),userId);
|
|
|
} else {
|
|
|
log.error("{} exit {} room error: {}", member.getUid(), member.getRid(), apiResultInfo.getErrorMessage());
|