|
@@ -97,9 +97,12 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public void joinRoomSuccess(RoomMember roomMember) throws Exception {
|
|
|
- String roomId = roomMember.getRid();
|
|
|
- String userId = roomMember.getUid();
|
|
|
+ @Transactional(rollbackFor = Exception.class, isolation = Isolation.SERIALIZABLE)
|
|
|
+ public void joinRoomSuccess(String roomId,String userId) throws Exception {
|
|
|
+ RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ if(roomMember == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
Long registrationId = roomMember.getExamRegistrationId();
|
|
|
log.info("joinRoomSuccess: roomId={}, userId={}, registrationId={}", roomId,userId,registrationId);
|
|
|
|
|
@@ -264,9 +267,12 @@ public class RoomServiceImpl implements RoomService {
|
|
|
return roomMember;
|
|
|
}
|
|
|
|
|
|
- public void leaveRoomSuccess(RoomMember roomMember) throws Exception {
|
|
|
- String roomId = roomMember.getRid();
|
|
|
- String userId = roomMember.getUid();
|
|
|
+ @Transactional(rollbackFor = Exception.class, isolation = Isolation.SERIALIZABLE)
|
|
|
+ public void leaveRoomSuccess(String roomId,String userId) throws Exception {
|
|
|
+ RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ if(roomMember == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
Long registrationId = roomMember.getExamRegistrationId();
|
|
|
log.info("leaveRoomSuccess: roomId={}, userId={}", roomId,userId);
|
|
|
|
|
@@ -1170,11 +1176,9 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- @Transactional(rollbackFor = Exception.class, isolation = Isolation.SERIALIZABLE)
|
|
|
public boolean statusSync(ChannelStateNotify notify) throws Exception {
|
|
|
String roomId = notify.getRoomId();
|
|
|
String userId = notify.getUserId();
|
|
|
- RoomMember roomMember = null;
|
|
|
switch (notify.getEvent()){
|
|
|
case 3:
|
|
|
log.info("房间销毁 roomId: {}, userId: {}",roomId, userId);
|
|
@@ -1182,34 +1186,25 @@ public class RoomServiceImpl implements RoomService {
|
|
|
break;
|
|
|
case 11:
|
|
|
//成员加入
|
|
|
- roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
- if(roomMember == null){
|
|
|
- return false;
|
|
|
- }
|
|
|
- joinRoomSuccess(roomMember);
|
|
|
+ joinRoomSuccess(roomId, userId);
|
|
|
break;
|
|
|
case 12:
|
|
|
//成员退出
|
|
|
- roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
- if(roomMember == null){
|
|
|
- return false;
|
|
|
- }
|
|
|
- leaveRoomSuccess(roomMember);
|
|
|
+ leaveRoomSuccess(roomId, userId);
|
|
|
break;
|
|
|
case 20:
|
|
|
- roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
- if(roomMember == null){
|
|
|
- return false;
|
|
|
- }
|
|
|
- resourceChange(roomMember,notify.getMembers());
|
|
|
+ resourceChange(roomId, userId,notify.getMembers());
|
|
|
break;
|
|
|
}
|
|
|
return true;
|
|
|
}
|
|
|
|
|
|
- private void resourceChange(RoomMember roomMember,List<Member> members){
|
|
|
- String roomId = roomMember.getRid();
|
|
|
- String userId = roomMember.getUid();
|
|
|
+ @Transactional(rollbackFor = Exception.class, isolation = Isolation.SERIALIZABLE)
|
|
|
+ public void resourceChange(String roomId,String userId,List<Member> members){
|
|
|
+ RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ if(roomMember == null){
|
|
|
+ return;
|
|
|
+ }
|
|
|
log.info("资源变动 roomId: {}, userId: {}",roomId, userId);
|
|
|
boolean msidFlag = false;
|
|
|
Integer state = null;
|