package com.qxueyou.scc.teach.live.dao;
|
|
import java.util.List;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Repository;
|
|
import com.alibaba.druid.util.StringUtils;
|
import com.qxueyou.scc.base.service.impl.RedisCacheBean;
|
import com.qxueyou.scc.base.util.UUIDUtils;
|
|
@Repository
|
public class MediaLiveDAO {
|
|
@Autowired
|
RedisCacheBean cache;
|
|
public void saveLiveClasses(String liveId,List<String> classIds) {
|
|
List<String> origNoticeClasses = cache.lstAll("LiveClasses_"+liveId);
|
for(String classId:origNoticeClasses) {
|
cache.lstRemove("ClassLives_"+classId, liveId);
|
}
|
|
cache.lstTrim("LiveClasses_"+liveId, 1, 0);
|
cache.lstRightPushAll("LiveClasses_"+liveId, classIds);
|
|
for(String classId:classIds) {
|
cache.lstRightPush("ClassLives_"+classId, liveId);
|
}
|
}
|
|
public List<String> getLiveClasses(String liveId) {
|
return cache.lstAll("LiveClasses_"+liveId);
|
}
|
|
public List<String> getClassLives(String classId) {
|
return cache.lstAll("ClassLives_"+classId);
|
}
|
|
public String getChatRoomId(String liveId) {
|
String chatRoomId = cache.get(liveId);
|
|
if(StringUtils.isEmpty(chatRoomId)){
|
chatRoomId = UUIDUtils.UUID();
|
if(!cache.setIfAbsent(liveId,chatRoomId)){
|
return this.getChatRoomId(liveId);
|
}
|
}
|
|
return chatRoomId;
|
}
|
|
}
|