|  | @@ -138,18 +138,17 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |          msg.setCamera(true);
 | 
	
		
			
				|  |  |          imHelper.publishMessage(userId, roomId, msg);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        List<UserInfo> userInfoList = userDao.findByUid(userId);
 | 
	
		
			
				|  |  | -        if (userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -            UserInfo userInfo = new UserInfo();
 | 
	
		
			
				|  |  | +        UserInfo userInfo = userDao.findByUid(userId);
 | 
	
		
			
				|  |  | +        if (userInfo == null) {
 | 
	
		
			
				|  |  | +            userInfo = new UserInfo();
 | 
	
		
			
				|  |  |              userInfo.setUid(userId);
 | 
	
		
			
				|  |  |              userInfo.setName(realName);
 | 
	
		
			
				|  |  |              userInfo.setCreateDt(curTime);
 | 
	
		
			
				|  |  |              userInfo.setUpdateDt(curTime);
 | 
	
		
			
				|  |  |              userDao.save(userInfo);
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | -            UserInfo user = userInfoList.get(0);
 | 
	
		
			
				|  |  | -            user.setUpdateDt(curTime);
 | 
	
		
			
				|  |  | -            userDao.save(user);
 | 
	
		
			
				|  |  | +            userInfo.setUpdateDt(curTime);
 | 
	
		
			
				|  |  | +            userDao.save(userInfo);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          List<RoomMember> roomMembers = roomMemberDao.findByRid(roomId);
 | 
	
		
			
				|  |  |          log.info("join success: roomId = {}, userId = {}, userName={}, role = {}", roomId, userId, roleEnum);
 | 
	
	
		
			
				|  | @@ -450,9 +449,9 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |          if(roomMembers != null && roomMembers.size() > 0){
 | 
	
		
			
				|  |  |              roomMembers.forEach(e->{
 | 
	
		
			
				|  |  |                  MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Kick, e.getUid(), e.getRole());
 | 
	
		
			
				|  |  | -                List<UserInfo> userInfoList = userDao.findByUid(e.getUid());
 | 
	
		
			
				|  |  | -                if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -                    msg.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +                UserInfo userInfo = userDao.findByUid(e.getUid());
 | 
	
		
			
				|  |  | +                if (userInfo != null) {
 | 
	
		
			
				|  |  | +                    msg.setUserName(userInfo.getName());
 | 
	
		
			
				|  |  |                  }
 | 
	
		
			
				|  |  |                  try {
 | 
	
		
			
				|  |  |                      imHelper.publishMessage(userId, e.getRid(), msg, 1);
 | 
	
	
		
			
				|  | @@ -496,9 +495,9 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |              throw new ApiException(ErrorEnum.ERR_USER_NOT_EXIST_IN_ROOM);
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  |              MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Kick, data.getUserId(), roomMember.getRole());
 | 
	
		
			
				|  |  | -            List<UserInfo> userInfoList = userDao.findByUid(data.getUserId());
 | 
	
		
			
				|  |  | -            if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -                msg.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +            UserInfo userInfo = userDao.findByUid(data.getUserId());
 | 
	
		
			
				|  |  | +            if (userInfo != null) {
 | 
	
		
			
				|  |  | +                msg.setUserName(userInfo.getName());
 | 
	
		
			
				|  |  |              }/*
 | 
	
		
			
				|  |  |              if("recorded".equals(data.getType())){
 | 
	
		
			
				|  |  |                  msg.setRoomId("recorded" + roomId);
 | 
	
	
		
			
				|  | @@ -739,9 +738,9 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              DeviceStateChangedMessage deviceResourceMessage = new DeviceStateChangedMessage(typeEnum.ordinal(), false);
 | 
	
		
			
				|  |  |              deviceResourceMessage.setUserId(userId);
 | 
	
		
			
				|  |  | -            List<UserInfo> userInfoList = userDao.findByUid(userId);
 | 
	
		
			
				|  |  | -            if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -                deviceResourceMessage.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +            UserInfo userInfo = userDao.findByUid(userId);
 | 
	
		
			
				|  |  | +            if (userInfo != null) {
 | 
	
		
			
				|  |  | +                deviceResourceMessage.setUserName(userInfo.getName());
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              imHelper.publishMessage(authUser.getId().toString(), roomId, deviceResourceMessage, 1);
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -914,12 +913,12 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |          roomMemberDao.updateRoleByRidAndUid(roomId, taskInfo.getApplyUserId(), Student.getValue());
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          SpeechResultMessage msg = new SpeechResultMessage(SpeechResultMessage.Action_Approve);
 | 
	
		
			
				|  |  | -        List<UserInfo> userInfoList = userDao.findByUid(taskInfo.getApplyUserId());
 | 
	
		
			
				|  |  | +        UserInfo userInfo = userDao.findByUid(taskInfo.getApplyUserId());
 | 
	
		
			
				|  |  |          msg.setOpUserId(userId);
 | 
	
		
			
				|  |  |          msg.setOpUserName(authUser.getRealName());
 | 
	
		
			
				|  |  |          msg.setReqUserId(taskInfo.getApplyUserId());
 | 
	
		
			
				|  |  | -        if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -            msg.setReqUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +        if (userInfo != null) {
 | 
	
		
			
				|  |  | +            msg.setReqUserName(userInfo.getName());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          msg.setRole(Student.getValue());
 | 
	
		
			
				|  |  |          IMApiResultInfo resultInfo = imHelper.publishMessage(userId, taskInfo.getApplyUserId(), roomId, msg);
 | 
	
	
		
			
				|  | @@ -930,8 +929,8 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |          RoleChangedMessage rcMsg = new RoleChangedMessage(userId);
 | 
	
		
			
				|  |  |          List<RoleChangedMessage.ChangedUser> changedUserList = new ArrayList<>();
 | 
	
		
			
				|  |  |          RoleChangedMessage.ChangedUser user = new RoleChangedMessage.ChangedUser(taskInfo.getApplyUserId(), Student.getValue());
 | 
	
		
			
				|  |  | -        if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -            user.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +        if (userInfo != null) {
 | 
	
		
			
				|  |  | +            msg.setReqUserName(userInfo.getName());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          changedUserList.add(user);
 | 
	
		
			
				|  |  |          rcMsg.setUsers(changedUserList);
 | 
	
	
		
			
				|  | @@ -1142,9 +1141,9 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |          if (!teachers.isEmpty()) {
 | 
	
		
			
				|  |  |              roomMemberDao.updateRoleByRidAndUid(roomId, teachers.get(0).getUid(), Student.getValue());
 | 
	
		
			
				|  |  |              RoleChangedMessage.ChangedUser user = new RoleChangedMessage.ChangedUser(teachers.get(0).getUid(), Student.getValue());
 | 
	
		
			
				|  |  | -            List<UserInfo> userInfoList = userDao.findByUid(teachers.get(0).getUid());
 | 
	
		
			
				|  |  | -            if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -                user.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +            UserInfo userInfo = userDao.findByUid(teachers.get(0).getUid());
 | 
	
		
			
				|  |  | +            if (userInfo != null) {
 | 
	
		
			
				|  |  | +                user.setUserName(userInfo.getName());
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              changedUserList.add(user);
 | 
	
		
			
				|  |  |          } else {
 | 
	
	
		
			
				|  | @@ -1153,9 +1152,9 @@ public class RoomServiceImpl implements RoomService {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          roomMemberDao.updateRoleByRidAndUid(roomId, targetUserId, targetRole);
 | 
	
		
			
				|  |  |          RoleChangedMessage.ChangedUser user = new RoleChangedMessage.ChangedUser(targetUserId, targetRole);
 | 
	
		
			
				|  |  | -        List<UserInfo> userInfoList = userDao.findByUid(targetUserId);
 | 
	
		
			
				|  |  | -        if (!userInfoList.isEmpty()) {
 | 
	
		
			
				|  |  | -            user.setUserName(userInfoList.get(0).getName());
 | 
	
		
			
				|  |  | +        UserInfo userInfo = userDao.findByUid(targetUserId);
 | 
	
		
			
				|  |  | +        if (userInfo != null) {
 | 
	
		
			
				|  |  | +            user.setUserName(userInfo.getName());
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          changedUserList.add(user);
 | 
	
		
			
				|  |  |          msg.setUsers(changedUserList);
 |