viewed pages cleanup

This commit is contained in:
Timo Bejan 2021-09-30 10:08:49 +03:00
parent c6e22ae3a2
commit ece73f5ca7

View File

@ -17,13 +17,18 @@ public class ViewedPagesPersistenceService {
private final ViewedPagesRepository viewedPagesRepository; private final ViewedPagesRepository viewedPagesRepository;
private final FileRepository fileRepository; private final FileRepository fileRepository;
@Transactional
public void insertPage(String fileId, String userId, int page) { public void insertPage(String fileId, String userId, int page) {
var id = new ViewedPageEntity.ViewedPageId(fileId, page, userId);
var viewedPage = new ViewedPageEntity(); viewedPagesRepository.findById(id).ifPresentOrElse((viewedPage) -> {
viewedPage.setViewedTime(OffsetDateTime.now()); viewedPage.setViewedTime(OffsetDateTime.now());
viewedPage.setId(new ViewedPageEntity.ViewedPageId(null, page, userId)); }, () -> {
viewedPage.setFile(fileRepository.getOne(fileId)); var viewedPage = new ViewedPageEntity();
viewedPagesRepository.save(viewedPage); viewedPage.setViewedTime(OffsetDateTime.now());
viewedPage.setId(new ViewedPageEntity.ViewedPageId(null, page, userId));
viewedPage.setFile(fileRepository.getOne(fileId));
viewedPagesRepository.save(viewedPage);
});
} }