|
@@ -15,9 +15,17 @@ import com.ym.mec.auth.api.client.SysUserFeignService;
|
|
|
import com.ym.mec.auth.api.entity.SysUser;
|
|
|
import com.ym.mec.biz.dal.dao.*;
|
|
|
import com.ym.mec.biz.dal.dao.CourseScheduleStudentMusicScoreDao;
|
|
|
+import com.ym.mec.biz.dal.dao.RoomDao;
|
|
|
+import com.ym.mec.biz.dal.dao.RoomMemberDao;
|
|
|
+import com.ym.mec.biz.dal.dao.UserDao;
|
|
|
+import com.ym.mec.biz.dal.dao.WhiteboardDao;
|
|
|
import com.ym.mec.biz.dal.dto.BasicUserDto;
|
|
|
import com.ym.mec.biz.dal.dto.RongyunBasicUserDto;
|
|
|
import com.ym.mec.biz.dal.entity.*;
|
|
|
+import com.ym.mec.biz.dal.entity.Room;
|
|
|
+import com.ym.mec.biz.dal.entity.RoomMember;
|
|
|
+import com.ym.mec.biz.dal.entity.UserInfo;
|
|
|
+import com.ym.mec.biz.dal.entity.Whiteboard;
|
|
|
import com.ym.mec.biz.dal.enums.GroupType;
|
|
|
import com.ym.mec.biz.dal.enums.TeachModeEnum;
|
|
|
import com.ym.mec.biz.service.StudentAttendanceService;
|
|
@@ -174,10 +182,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
|
|
|
RoomResult.MemberResult userResult = new RoomResult.MemberResult();
|
|
|
- RoomMember member = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ RoomMember member = roomMemberDao.findOne(roomId, userId);
|
|
|
String userName;
|
|
|
if (member == null) {
|
|
|
- int count = roomMemberDao.countByRidAndExcludeRole(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
+ int count = roomMemberDao.countRoomMember(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
if (count == roomProperties.getMaxCount()) {
|
|
|
log.info("join error Over max count: roomId = {}, userId = {}", roomId,userId);
|
|
|
throw new ApiException(ErrorEnum.ERR_OVER_MAX_COUNT);
|
|
@@ -208,7 +216,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
List<CourseScheduleStudentMusicScore> scheduleStudentMusicScores = courseScheduleStudentMusicScoreDao.queryByScoreIdAndCourseId(null, courseId,null, null, null);
|
|
|
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
String display = "";
|
|
|
if (roleEnum == RoleTeacher) {
|
|
|
display = "display://type=1?userId=" + userId + "?uri=";
|
|
@@ -252,14 +260,14 @@ public class RoomServiceImpl implements RoomService {
|
|
|
roomResult.setDisplay(display);
|
|
|
roomResult.setRoomId(roomId);
|
|
|
|
|
|
- List<RoomMember> roomMemberList = roomMemberDao.findByRid(roomId);
|
|
|
+ List<RoomMember> roomMemberList = roomMemberDao.queryRoomMember(roomId,null,null);
|
|
|
if(roomMemberList != null && roomMemberList.size() > 0){
|
|
|
Set<String> userIds = roomMemberList.stream().map(e -> e.getUid()).collect(Collectors.toSet());
|
|
|
Map<Integer,String> midiMap = MapUtil.convertMybatisMap(courseScheduleStudentPaymentDao.queryMidiByUserIdsAndCourseId(userIds,courseId.toString()));
|
|
|
Map<Integer,String> examSongMap = MapUtil.convertMybatisMap(courseScheduleStudentPaymentDao.queryExamSongByUserIdsAndCourseId(userIds,courseId.toString()));
|
|
|
roomResult.setMembers(roomMemberList,midiMap,examSongMap,scheduleStudentMusicScores);
|
|
|
}
|
|
|
- roomResult.setWhiteboards(whiteboardDao.findByRid(roomId));
|
|
|
+ roomResult.setWhiteboards(whiteboardDao.queryWhiteboard(roomId,null,null));
|
|
|
if (room != null) {
|
|
|
roomResult.setSoundVolume(room.getSoundVolume());
|
|
|
}
|
|
@@ -276,7 +284,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
Date curTime = DateTimeUtils.currentUTC();
|
|
|
|
|
|
RoleEnum roleEnum;
|
|
|
- RoomMember member = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ RoomMember member = roomMemberDao.findOne(roomId, userId);
|
|
|
String userName;
|
|
|
if (member == null) {
|
|
|
if(teacher != null && teacher.getId().equals(courseSchedule.getActualTeacherId())){
|
|
@@ -295,20 +303,20 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void joinRoomFailure(String roomId, String userId) {
|
|
|
- RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if(roomMember == null){
|
|
|
return ;
|
|
|
}
|
|
|
log.info("joinRoomFailure : roomId={}, userId={}", roomId, userId);
|
|
|
//如果加入失败,删除该用户数据
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId,userId);
|
|
|
+ roomMemberDao.deleteRoomMember(roomId,userId);
|
|
|
}
|
|
|
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
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.findOne(roomId, userId);
|
|
|
if(roomMember == null){
|
|
|
roomMember = saveRoomMember(roomId,userId);
|
|
|
}
|
|
@@ -335,7 +343,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
display = "display://type=0?userId=" + userId + "?uri=";
|
|
|
}
|
|
|
Date curTime = DateTimeUtils.currentUTC();
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (room == null) {
|
|
|
saveRoom(roomId, roomId, curTime, display);
|
|
|
IMApiResultInfo resultInfo = imHelper.createGroup(new String[]{userId}, roomId, roomId);
|
|
@@ -349,14 +357,14 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- UserInfo userInfo = userDao.findByUid(userId);
|
|
|
+ UserInfo userInfo = userDao.findOne(userId);
|
|
|
if (userInfo == null) {
|
|
|
userInfo = new UserInfo();
|
|
|
userInfo.setUid(userId);
|
|
|
userInfo.setName(roomMember.getName());
|
|
|
userInfo.setCreateDt(curTime);
|
|
|
userInfo.setUpdateDt(curTime);
|
|
|
- userDao.save(userInfo);
|
|
|
+ userDao.insert(userInfo);
|
|
|
}
|
|
|
MemberChangedMessage msg = new MemberChangedMessage(MemberChangedMessage.Action_Join, userId, roleEnum.getValue());
|
|
|
msg.setTimestamp(curTime);
|
|
@@ -419,7 +427,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
room.setCreateDt(createTime);
|
|
|
room.setDisplay(display);
|
|
|
room.setWhiteboardNameIndex(0);
|
|
|
- roomDao.save(room);
|
|
|
+ roomDao.insert(room);
|
|
|
}
|
|
|
|
|
|
public RoomMember saveRoomMember(String userId, String headUrl, String userName, String roomId, int role, Date joinTime) {
|
|
@@ -432,7 +440,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
roomMember.setJoinDt(joinTime);
|
|
|
roomMember.setMusicMode(false);
|
|
|
roomMember.setHeadUrl(headUrl);
|
|
|
- roomMemberDao.save(roomMember);
|
|
|
+ roomMemberDao.insert(roomMember);
|
|
|
return roomMember;
|
|
|
}
|
|
|
|
|
@@ -477,37 +485,37 @@ public class RoomServiceImpl implements RoomService {
|
|
|
username = sysUser.getUsername();
|
|
|
studentAttendanceService.addStudentAttendanceSignOut(firstCourseId.longValue(),parseInt);
|
|
|
}
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (room == null) {
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
- userDao.deleteByUid(userId);
|
|
|
+ roomMemberDao.deleteRoomMember(roomId, userId);
|
|
|
+ userDao.deleteUser(userId);
|
|
|
return;
|
|
|
}
|
|
|
if (roleEnum != RoleStudent && isUserDisplay(room, userId)) {
|
|
|
updateDisplay(roomId, userId, "", 0);
|
|
|
}
|
|
|
- if (roomMemberDao.countByRid(roomId) <= 1) {
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
- roomDao.deleteByRid(roomId);
|
|
|
+ if (roomMemberDao.countRoomMember(roomId,null) <= 1) {
|
|
|
+ roomMemberDao.deleteRoomMember(roomId, userId);
|
|
|
+ roomDao.deleteRoom(roomId);
|
|
|
deleteWhiteboardByUser(roomId, userId);
|
|
|
imHelper.dismiss(userId, roomId);
|
|
|
courseScheduleStudentMusicScoreDao.closePlayStatus(courseSchedule.getId(),null,null);
|
|
|
log.info("leaveRoomSuccess dismiss the room: {},userId: {}", roomId,userId);
|
|
|
} else {
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
+ roomMemberDao.deleteRoomMember(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);
|
|
|
+ userDao.deleteUser(userId);
|
|
|
}
|
|
|
|
|
|
public void deleteWhiteboardByUser(String roomId, String userId) throws Exception {
|
|
|
- List<Whiteboard> whiteboardList = whiteboardDao.findByRidAndCreator(roomId, userId);
|
|
|
+ List<Whiteboard> whiteboardList = whiteboardDao.queryWhiteboard(roomId, userId,null);
|
|
|
if (!whiteboardList.isEmpty()) {
|
|
|
- whiteboardDao.deleteByRidAndCreator(roomId, userId);
|
|
|
+ whiteboardDao.deleteWhiteboard(roomId, userId,null);
|
|
|
for (Whiteboard wb : whiteboardList) {
|
|
|
whiteBoardHelper.destroy(wb.getWbRoom());
|
|
|
}
|
|
@@ -517,10 +525,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
|
|
|
@Override
|
|
|
public void destroyRoom(String roomId) {
|
|
|
- whiteboardDao.deleteByRid(roomId);
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ whiteboardDao.deleteWhiteboard(roomId,null,null);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (room == null) {
|
|
|
- List<RoomMember> list = roomMemberDao.findByRid(roomId);
|
|
|
+ List<RoomMember> list = roomMemberDao.queryRoomMember(roomId,null,null);
|
|
|
if (!list.isEmpty()) {
|
|
|
try {
|
|
|
imHelper.dismiss(list.get(0).getUid(), roomId);
|
|
@@ -529,7 +537,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
- roomMemberDao.deleteByRid(roomId);
|
|
|
+ roomMemberDao.deleteRoomMember(roomId,null);
|
|
|
log.info("destroyRoom: {}", roomId);
|
|
|
}
|
|
|
}
|
|
@@ -541,7 +549,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
CheckUtils.checkArgument(users.size() > 0, "the changed user list must't be null");
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (room == null) {
|
|
|
throw new ApiException(ErrorEnum.ERR_ROOM_NOT_EXIST);
|
|
|
}
|
|
@@ -555,12 +563,12 @@ public class RoomServiceImpl implements RoomService {
|
|
|
log.error("can not change self role: {}, {}, {}", roomId, userId, changedRole);
|
|
|
throw new ApiException(ErrorEnum.ERR_CHANGE_SELF_ROLE);
|
|
|
} else {
|
|
|
- RoomMember oldUser = roomMemberDao.findByRidAndUid(roomId, changedUserId);
|
|
|
+ RoomMember oldUser = roomMemberDao.findOne(roomId, changedUserId);
|
|
|
if (oldUser != null) {
|
|
|
if (changedRole.equals(RoleEnum.RoleAudience)) {
|
|
|
- int r = roomMemberDao.updateRoleByRidAndUid(roomId, changedUserId, changedRole.getValue());
|
|
|
+ int r = roomMemberDao.updateByRidAndUid(roomId, changedUserId, changedRole.getValue());
|
|
|
RoleChangedMessage.ChangedUser u = new RoleChangedMessage.ChangedUser(changedUserId, changedRole.getValue());
|
|
|
- UserInfo userInfo = userDao.findByUid(changedUserId);
|
|
|
+ UserInfo userInfo = userDao.findOne(changedUserId);
|
|
|
if (userInfo != null) {
|
|
|
u.setUserName(userInfo.getName());
|
|
|
}
|
|
@@ -594,7 +602,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
CheckUtils.checkArgument(userId != null, "userId must't be null");
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
log.info("kickMember: roomId={}, userId={}", roomId, userId);
|
|
|
- RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if(roomMember == null){
|
|
|
return true;
|
|
|
}
|
|
@@ -604,13 +612,13 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
imHelper.publishMessage(userId, roomId, msg, 1);
|
|
|
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (roomMember.getRole() == RoleTeacher.getValue() && isUserDisplay(room, userId)) {
|
|
|
updateDisplay(roomId, userId, "", 1);
|
|
|
}
|
|
|
|
|
|
- roomMemberDao.deleteUserByRidAndUid(roomId, userId);
|
|
|
- userDao.deleteByUid(userId);
|
|
|
+ roomMemberDao.deleteRoomMember(roomId, userId);
|
|
|
+ userDao.deleteUser(userId);
|
|
|
|
|
|
IMApiResultInfo apiResultInfo = imHelper.quit(new String[]{userId}, roomId);
|
|
|
if (!apiResultInfo.isSuccess()) {
|
|
@@ -630,7 +638,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
DisplayEnum displayEnum = DisplayEnum.values()[type];
|
|
|
|
|
|
if (displayEnum.equals(DisplayEnum.None)) {
|
|
|
- roomDao.updateDisplayByRid(roomId, "");
|
|
|
+ roomDao.updateRoom(roomId, "",null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage("");
|
|
|
IMApiResultInfo apiResultInfo = imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
if (apiResultInfo.isSuccess()) {
|
|
@@ -642,36 +650,36 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
String display = "display://type=" + type;
|
|
|
if (displayEnum.equals(DisplayEnum.Teacher)) {
|
|
|
- List<RoomMember> teachers = roomMemberDao.findByRidAndRole(roomId, RoleTeacher.getValue());
|
|
|
+ List<RoomMember> teachers = roomMemberDao.queryRoomMember(roomId,null, RoleTeacher.getValue());
|
|
|
if (teachers.isEmpty()) {
|
|
|
throw new ApiException(ErrorEnum.ERR_TEACHER_NOT_EXIST_IN_ROOM);
|
|
|
} else {
|
|
|
display += "?userId=" + teachers.get(0).getUid() + "?uri=";
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
log.info("change display to teacher: roomId={}, display={}", roomId, display);
|
|
|
}
|
|
|
} else if (displayEnum.equals(DisplayEnum.Assistant)) {
|
|
|
- List<RoomMember> assistants = roomMemberDao.findByRidAndRole(roomId, RoleEnum.RoleAssistant.getValue());
|
|
|
+ List<RoomMember> assistants = roomMemberDao.queryRoomMember(roomId,null, RoleEnum.RoleAssistant.getValue());
|
|
|
if (assistants.isEmpty()) {
|
|
|
throw new ApiException(ErrorEnum.ERR_ASSISTANT_NOT_EXIST_IN_ROOM);
|
|
|
} else {
|
|
|
display += "?userId=" + assistants.get(0).getUid() + "?uri=";
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
log.info("change display to assistant: roomId={}, display={}", roomId, display);
|
|
|
}
|
|
|
} else if (displayEnum.equals(DisplayEnum.Screen)) {
|
|
|
display += "?userId=" + userId + "?uri=";
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
log.info("change display to screen: roomId={}, display={}", roomId, display);
|
|
|
} else if (displayEnum.equals(DisplayEnum.STUDENT)) {
|
|
|
display += "?userId=" + targetUserId + "?uri=" + uri;
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
log.info("change display to screen: roomId={}, display={}", roomId, display);
|
|
@@ -679,7 +687,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
display += "?userId=" + userId + "?uri=" + uri;
|
|
|
// CheckUtils.checkArgument(uri != null, "uri must't be null");
|
|
|
// CheckUtils.checkArgument(whiteboardDao.findByRidAndWbid(roomId, uri).size() > 0, "whiteboard not exist");
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage);
|
|
|
}
|
|
@@ -701,10 +709,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
if (resultInfo.isSuccess()) {
|
|
|
String wbId = resultInfo.getData();
|
|
|
Date date = DateTimeUtils.currentUTC();
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
int whiteboardNameIndex = room.getWhiteboardNameIndex() + 1;
|
|
|
String name = "白板" + whiteboardNameIndex;
|
|
|
- roomDao.updateWhiteboardNameIndexByRid(roomId, whiteboardNameIndex);
|
|
|
+ roomDao.updateRoom(roomId,null,null, whiteboardNameIndex);
|
|
|
Whiteboard wb = new Whiteboard();
|
|
|
wb.setRid(roomId);
|
|
|
wb.setWbRoom(wbRoom);
|
|
@@ -713,13 +721,13 @@ public class RoomServiceImpl implements RoomService {
|
|
|
wb.setCreator(userId);
|
|
|
wb.setCreateDt(date);
|
|
|
wb.setCurPg(0);
|
|
|
- whiteboardDao.save(wb);
|
|
|
+ whiteboardDao.insert(wb);
|
|
|
WhiteboardMessage wbmsg = new WhiteboardMessage(WhiteboardMessage.Create);
|
|
|
wbmsg.setWhiteboardId(wbId);
|
|
|
wbmsg.setWhiteboardName(name);
|
|
|
imHelper.publishMessage(userId, roomId, wbmsg);
|
|
|
String display = "display://type=2?userId=" + userId + "?uri=" + wbId;
|
|
|
- roomDao.updateDisplayByRid(roomId, display);
|
|
|
+ roomDao.updateRoom(roomId, display,null,null);
|
|
|
DisplayMessage displayMessage = new DisplayMessage(display);
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage, 1);
|
|
|
|
|
@@ -737,17 +745,17 @@ public class RoomServiceImpl implements RoomService {
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
|
|
|
- List<Whiteboard> whiteboardList = whiteboardDao.findByRidAndWbid(roomId, whiteBoardId);
|
|
|
+ List<Whiteboard> whiteboardList = whiteboardDao.queryWhiteboard(roomId,null, whiteBoardId);
|
|
|
CheckUtils.checkArgument(whiteboardList.size() > 0, "whiteboard not exist");
|
|
|
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
CheckUtils.checkArgument(room != null, "room not exist");
|
|
|
|
|
|
log.info("deleteWhiteboard: room={}, whiteBoardId={}", room, whiteBoardId);
|
|
|
|
|
|
String display = room.getDisplay();
|
|
|
if (display.contains("uri=" + whiteBoardId)) {
|
|
|
- int result = roomDao.updateDisplayByRid(roomId, "");
|
|
|
+ int result = roomDao.updateRoom(roomId, "",null,null);
|
|
|
log.info("clear room display, room: {}, result: {}", roomId, result);
|
|
|
DisplayMessage displayMessage = new DisplayMessage("");
|
|
|
imHelper.publishMessage(userId, roomId, displayMessage, 1);
|
|
@@ -758,7 +766,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
String wbRoom = whiteboardList.get(0).getWbRoom();
|
|
|
WhiteBoardApiResultInfo resultInfo = whiteBoardHelper.destroy(wbRoom);
|
|
|
if (resultInfo.isSuccess()) {
|
|
|
- int result = whiteboardDao.deleteByWbid(whiteBoardId);
|
|
|
+ int result = whiteboardDao.deleteWhiteboard(null,null,whiteBoardId);
|
|
|
log.info("delete whiteboard: roomId = {}, whiteBoardId = {}, result = {}", roomId, whiteBoardId, result);
|
|
|
WhiteboardMessage wbmsg = new WhiteboardMessage(WhiteboardMessage.Delete);
|
|
|
wbmsg.setWhiteboardId(whiteBoardId);
|
|
@@ -773,9 +781,12 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public List<RoomResult.WhiteboardResult> getWhiteboard(String roomId) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
- CheckUtils.checkArgument(roomDao.existsByRid(roomId), "room not exist");
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
+ if(room == null){
|
|
|
+ throw new BizException("房间信息不存在");
|
|
|
+ }
|
|
|
|
|
|
- List<Whiteboard> whiteboards = whiteboardDao.findByRid(roomId);
|
|
|
+ List<Whiteboard> whiteboards = whiteboardDao.queryWhiteboard(roomId,null,null);
|
|
|
List<RoomResult.WhiteboardResult> result = new ArrayList<>();
|
|
|
for (Whiteboard wb : whiteboards) {
|
|
|
RoomResult.WhiteboardResult r = new RoomResult.WhiteboardResult();
|
|
@@ -794,7 +805,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
CheckUtils.checkArgument(whiteBoardId != null, "whiteBoardId must't be null");
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
CheckUtils.checkArgument(room != null, "room not exist");
|
|
|
|
|
|
int result = whiteboardDao.updatePageByRidAndWbid(roomId, whiteBoardId, page);
|
|
@@ -832,14 +843,14 @@ public class RoomServiceImpl implements RoomService {
|
|
|
enable = data.getMusicScoreOn();
|
|
|
if(enable){
|
|
|
//保存伴奏音量
|
|
|
- roomDao.updateSoundVolumeById(roomId,data.getSoundVolume());
|
|
|
+ roomDao.updateRoom(roomId,null,data.getSoundVolume(),null);
|
|
|
}
|
|
|
}else if (data.getAccompanimentOn() != null) {
|
|
|
typeEnum = DeviceTypeEnum.MusicScoreAccompaniment;
|
|
|
enable = data.getAccompanimentOn();
|
|
|
if(enable){
|
|
|
//保存伴奏音量
|
|
|
- roomDao.updateSoundVolumeById(roomId,data.getSoundVolume());
|
|
|
+ roomDao.updateRoom(roomId,null,data.getSoundVolume(),null);
|
|
|
}
|
|
|
} else {
|
|
|
throw new ApiException(ErrorEnum.ERR_REQUEST_PARA_ERR);
|
|
@@ -901,12 +912,13 @@ public class RoomServiceImpl implements RoomService {
|
|
|
imHelper.publishMessage(authUser.getId().toString(), userId, roomId, msg);
|
|
|
}
|
|
|
} else {
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if (typeEnum.equals(DeviceTypeEnum.Camera)) {
|
|
|
- roomMemberDao.updateCameraByRidAndUid(roomId, userId, false);
|
|
|
+ roomMember.setCamera(false);
|
|
|
} else if (typeEnum.equals(DeviceTypeEnum.Microphone)){
|
|
|
- roomMemberDao.updateMicByRidAndUid(roomId, userId, false);
|
|
|
+ roomMember.setMic(false);
|
|
|
} else if (typeEnum.equals(DeviceTypeEnum.HandUp)){
|
|
|
- roomMemberDao.updateHandByRidAndUid(roomId, userId, false);
|
|
|
+ roomMember.setHand(false);
|
|
|
} else if (typeEnum.equals(DeviceTypeEnum.ExamSong)){
|
|
|
long scheduleId = Long.parseLong(roomId.substring(1));
|
|
|
ExamSongDownloadData msg;
|
|
@@ -927,11 +939,12 @@ public class RoomServiceImpl implements RoomService {
|
|
|
//关闭所有曲目播放
|
|
|
courseScheduleStudentMusicScoreDao.closePlayStatus(scheduleId,Integer.parseInt(userId),null);
|
|
|
}else {
|
|
|
- roomMemberDao.updateMusicByRidAndUid(roomId, userId, false);
|
|
|
+ roomMember.setMusicMode(false);
|
|
|
}
|
|
|
+ roomMemberDao.update(roomMember);
|
|
|
DeviceStateChangedMessage deviceResourceMessage = new DeviceStateChangedMessage(typeEnum.ordinal(), false);
|
|
|
deviceResourceMessage.setUserId(userId);
|
|
|
- UserInfo userInfo = userDao.findByUid(userId);
|
|
|
+ UserInfo userInfo = userDao.findOne(userId);
|
|
|
if (userInfo != null) {
|
|
|
deviceResourceMessage.setUserName(userInfo.getName());
|
|
|
}
|
|
@@ -959,7 +972,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
roomMembers.add(new RoomMember(split[i]));
|
|
|
}
|
|
|
}else {
|
|
|
- roomMembers = roomMemberDao.findByRidAndRole(data.getRoomId(), RoleStudent.getValue());
|
|
|
+ roomMembers = roomMemberDao.queryRoomMember(data.getRoomId(),null, RoleStudent.getValue());
|
|
|
}
|
|
|
if(roomMembers.size() == 0){
|
|
|
return false;
|
|
@@ -981,8 +994,9 @@ public class RoomServiceImpl implements RoomService {
|
|
|
String userId = authUser.getId().toString();
|
|
|
log.info("approveControlDevice: ticket={}", ticket);
|
|
|
ControlDeviceTaskInfo taskInfo = (ControlDeviceTaskInfo) scheduleManager.executeTask(ticket);
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if (taskInfo.getTypeEnum().equals(DeviceTypeEnum.Camera)) {
|
|
|
- roomMemberDao.updateCameraByRidAndUid(roomId, userId, taskInfo.isOnOff());
|
|
|
+ roomMember.setCamera(taskInfo.isOnOff());
|
|
|
}else if (taskInfo.getTypeEnum().equals(DeviceTypeEnum.ExamSong)) {
|
|
|
long scheduleId = Long.parseLong(roomId.substring(1));
|
|
|
ExamSongDownloadData msg;
|
|
@@ -995,8 +1009,9 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
courseScheduleStudentPaymentDao.adjustExamSong(scheduleId,authUser.getId(),JSON.toJSONString(msg));
|
|
|
}else {
|
|
|
- roomMemberDao.updateMicByRidAndUid(roomId, userId, taskInfo.isOnOff());
|
|
|
+ roomMember.setMic(taskInfo.isOnOff());
|
|
|
}
|
|
|
+ roomMemberDao.update(roomMember);
|
|
|
ControlDeviceNotifyMessage msg = new ControlDeviceNotifyMessage(ActionEnum.Approve.ordinal());
|
|
|
msg.setType(taskInfo.getTypeEnum().ordinal());
|
|
|
msg.setOpUserId(userId);
|
|
@@ -1054,12 +1069,14 @@ public class RoomServiceImpl implements RoomService {
|
|
|
String userId = authUser.getId().toString();
|
|
|
|
|
|
DeviceStateChangedMessage deviceResourceMessage = new DeviceStateChangedMessage(type.ordinal(), enable);
|
|
|
+
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if (type.equals(DeviceTypeEnum.Camera)) {
|
|
|
- roomMemberDao.updateCameraByRidAndUid(roomId, userId, enable);
|
|
|
+ roomMember.setCamera(enable);
|
|
|
} else if (type.equals(DeviceTypeEnum.Microphone)){
|
|
|
- roomMemberDao.updateMicByRidAndUid(roomId, userId, enable);
|
|
|
+ roomMember.setMic(enable);
|
|
|
} else if (type.equals(DeviceTypeEnum.HandUp)){
|
|
|
- roomMemberDao.updateHandByRidAndUid(roomId, userId, enable);
|
|
|
+ roomMember.setHand(enable);
|
|
|
} else if (type.equals(DeviceTypeEnum.ExamSong)){
|
|
|
long scheduleId = Long.parseLong(roomId.substring(1));
|
|
|
ExamSongDownloadData msg;
|
|
@@ -1072,9 +1089,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
}
|
|
|
courseScheduleStudentPaymentDao.adjustExamSong(scheduleId,authUser.getId(),JSON.toJSONString(msg));
|
|
|
}else {
|
|
|
- roomMemberDao.updateMusicByRidAndUid(roomId, userId, enable);
|
|
|
+ roomMember.setMusicMode(enable);
|
|
|
}
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ roomMemberDao.update(roomMember);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
deviceResourceMessage.setSoundVolume(room.getSoundVolume());
|
|
|
deviceResourceMessage.setUserId(userId);
|
|
|
imHelper.publishMessage(userId, roomId, deviceResourceMessage, 1);
|
|
@@ -1086,7 +1104,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public List<RoomResult.MemberResult> getMembers(String roomId) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
- List<RoomMember> roomMemberList = roomMemberDao.findByRid(roomId);
|
|
|
+ List<RoomMember> roomMemberList = roomMemberDao.queryRoomMember(roomId,null,null);
|
|
|
if(roomMemberList != null && roomMemberList.size() > 0){
|
|
|
List<CourseScheduleStudentMusicScore> scheduleStudentMusicScores = courseScheduleStudentMusicScoreDao.queryByScoreIdAndCourseId(null, Long.parseLong(roomId.substring(1)), null, null, null);
|
|
|
RoomResult roomResult = new RoomResult();
|
|
@@ -1103,10 +1121,13 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Boolean applySpeech(String roomId) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
- CheckUtils.checkArgument(roomDao.existsByRid(roomId), "room not exist");
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
+ if(room == null){
|
|
|
+ throw new BizException("房间信息不存在");
|
|
|
+ }
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
- List<RoomMember> assistants = roomMemberDao.findByRidAndRole(roomId, RoleEnum.RoleAssistant.getValue());
|
|
|
+ List<RoomMember> assistants = roomMemberDao.queryRoomMember(roomId,null, RoleEnum.RoleAssistant.getValue());
|
|
|
if (assistants.isEmpty()) {
|
|
|
throw new ApiException(ErrorEnum.ERR_ASSISTANT_NOT_EXIST_IN_ROOM);
|
|
|
}
|
|
@@ -1138,11 +1159,14 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Boolean approveSpeech(String roomId, String ticket) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
- CheckUtils.checkArgument(roomDao.existsByRid(roomId), "room not exist");
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
+ if(room == null){
|
|
|
+ throw new BizException("房间信息不存在");
|
|
|
+ }
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
|
|
|
- int count = roomMemberDao.countByRidAndExcludeRole(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
+ int count = roomMemberDao.countRoomMember(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
if (count == roomProperties.getMaxCount()) {
|
|
|
log.error("approveSpeech error: roomId = {}, ticket={}", roomId, ticket);
|
|
|
throw new ApiException(ErrorEnum.ERR_OVER_MAX_COUNT);
|
|
@@ -1150,10 +1174,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
ScheduledTaskInfo taskInfo = scheduleManager.executeTask(ticket);
|
|
|
log.info("approveSpeech: task = {}", taskInfo);
|
|
|
- roomMemberDao.updateRoleByRidAndUid(roomId, taskInfo.getApplyUserId(), RoleStudent.getValue());
|
|
|
+ roomMemberDao.updateByRidAndUid(roomId, taskInfo.getApplyUserId(), RoleStudent.getValue());
|
|
|
|
|
|
SpeechResultMessage msg = new SpeechResultMessage(SpeechResultMessage.Action_Approve);
|
|
|
- UserInfo userInfo = userDao.findByUid(taskInfo.getApplyUserId());
|
|
|
+ UserInfo userInfo = userDao.findOne(taskInfo.getApplyUserId());
|
|
|
msg.setOpUserId(userId);
|
|
|
msg.setOpUserName(authUser.getUsername());
|
|
|
msg.setReqUserId(taskInfo.getApplyUserId());
|
|
@@ -1183,7 +1207,10 @@ public class RoomServiceImpl implements RoomService {
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
|
public Boolean rejectSpeech(String roomId, String ticket) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
- CheckUtils.checkArgument(roomDao.existsByRid(roomId), "room not exist");
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
+ if(room == null){
|
|
|
+ throw new BizException("房间信息不存在");
|
|
|
+ }
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
ScheduledTaskInfo taskInfo = scheduleManager.executeTask(ticket);
|
|
@@ -1203,7 +1230,7 @@ public class RoomServiceImpl implements RoomService {
|
|
|
|
|
|
public void checkOverMax(String roomId, RoomMember targetUser, int targetRole) {
|
|
|
if (RoleEnum.getEnumByValue(targetUser.getRole()).equals(RoleEnum.RoleAudience)) {
|
|
|
- int count = roomMemberDao.countByRidAndExcludeRole(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
+ int count = roomMemberDao.countRoomMember(roomId, RoleEnum.RoleAudience.getValue());
|
|
|
if (count == roomProperties.getMaxCount()) {
|
|
|
log.error("assign error: roomId = {}, userId = {}, role = {}", roomId, targetUser.getRid(), targetUser.getRole());
|
|
|
throw new ApiException(ErrorEnum.ERR_OVER_MAX_COUNT);
|
|
@@ -1221,13 +1248,13 @@ public class RoomServiceImpl implements RoomService {
|
|
|
CheckUtils.checkArgument(!userId.equals(userId), "can't set self role");
|
|
|
|
|
|
log.info("transfer: roomId = {}, userId = {}", roomId, userId);
|
|
|
- RoomMember roomMember = roomMemberDao.findByRidAndUid(roomId, userId);
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, userId);
|
|
|
if (roomMember == null) {
|
|
|
log.error("assistant transfer error: {} toUser = {}, opUser={}", roomId, userId, userId);
|
|
|
throw new ApiException(ErrorEnum.ERR_USER_NOT_EXIST_IN_ROOM);
|
|
|
}
|
|
|
|
|
|
- Room room = roomDao.findByRid(roomId);
|
|
|
+ Room room = roomDao.findOne(roomId);
|
|
|
if (room == null) {
|
|
|
log.error("assistant transfer error: {} toUser = {}, opUser={}", roomId, userId, userId);
|
|
|
throw new ApiException(ErrorEnum.ERR_ROOM_NOT_EXIST);
|
|
@@ -1239,8 +1266,8 @@ public class RoomServiceImpl implements RoomService {
|
|
|
log.info("don't update display: room={}", room);
|
|
|
}
|
|
|
|
|
|
- roomMemberDao.updateRoleByRidAndUid(roomId, userId, RoleStudent.getValue());
|
|
|
- roomMemberDao.updateRoleByRidAndUid(roomId, userId, RoleEnum.RoleAssistant.getValue());
|
|
|
+// roomMemberDao.updateRoleByRidAndUid(roomId, userId, RoleStudent.getValue());
|
|
|
+// roomMemberDao.updateRoleByRidAndUid(roomId, userId, RoleEnum.RoleAssistant.getValue());
|
|
|
|
|
|
AssistantTransferMessage msg = new AssistantTransferMessage();
|
|
|
msg.setOpUserId(userId);
|
|
@@ -1258,12 +1285,15 @@ public class RoomServiceImpl implements RoomService {
|
|
|
public Boolean inviteUpgradeRole(String roomId, String targetUserId, int targetRole) throws Exception {
|
|
|
CheckUtils.checkArgument(roomId != null, "roomId must't be null");
|
|
|
CheckUtils.checkArgument(targetUserId != null, "userId must't be null");
|
|
|
- CheckUtils.checkArgument(roomMemberDao.existsByRidAndUid(roomId, targetUserId), "room member not exist");
|
|
|
+ RoomMember roomMember = roomMemberDao.findOne(roomId, targetUserId);
|
|
|
+ if(roomMember == null){
|
|
|
+ throw new BizException("用户不在房间");
|
|
|
+ }
|
|
|
SysUser authUser = sysUserFeignService.queryUserInfo();
|
|
|
String userId = authUser.getId().toString();
|
|
|
log.info("inviteUpgradeRole roomId = {}, targetUserId = {}, targetRole = {}", roomId, targetUserId, targetRole);
|
|
|
|
|
|
- RoomMember targetUser = roomMemberDao.findByRidAndUid(roomId, targetUserId);
|
|
|
+ RoomMember targetUser = roomMemberDao.findOne(roomId, targetUserId);
|
|
|
if (targetUser == null) {
|
|
|
throw new ApiException(ErrorEnum.ERR_USER_NOT_EXIST_IN_ROOM);
|
|
|
}
|