package com.yeshi.buwan.service.imp.video;
|
|
import com.yeshi.buwan.dao.video.VideoWatchHistoryDao;
|
import com.yeshi.buwan.domain.video.VideoWatchHistory;
|
import com.yeshi.buwan.service.inter.video.VideoWatchHistoryService;
|
import org.springframework.data.annotation.Transient;
|
import org.springframework.stereotype.Service;
|
import org.springframework.transaction.annotation.Transactional;
|
|
import javax.annotation.Resource;
|
import java.util.Date;
|
import java.util.List;
|
|
@Service
|
public class VideoWatchHistoryServiceImpl implements VideoWatchHistoryService {
|
@Resource
|
private VideoWatchHistoryDao videoWatchHistoryDao;
|
|
@Override
|
public void add(VideoWatchHistory history) {
|
if (history.getId() == null) {
|
history.setId(VideoWatchHistory.createId(history.getDevice(), history.getVideoId()));
|
}
|
history.setCreateTime(new Date());
|
videoWatchHistoryDao.save(history);
|
}
|
|
@Transactional
|
@Override
|
public void delete(List<String> ids) {
|
if (ids == null)
|
return;
|
for (String id : ids)
|
videoWatchHistoryDao.delete(id);
|
}
|
|
@Override
|
public long countHistory(String device) {
|
return videoWatchHistoryDao.count(device);
|
}
|
|
@Override
|
public List<VideoWatchHistory> listHistory(String device, int page, int pageSize) {
|
return videoWatchHistoryDao.list(device, (page - 1) * pageSize, pageSize);
|
}
|
|
@Override
|
public VideoWatchHistory getWatchHistory(String device, String videoId) {
|
String id = VideoWatchHistory.createId(device, videoId);
|
return videoWatchHistoryDao.get(id);
|
}
|
}
|