AuthorVideoServiceImpl.java 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package com.nosum.deliver.author.service.impl;
  2. import cn.hutool.core.util.StrUtil;
  3. import com.nosum.common.base.domain.PageInfo;
  4. import com.nosum.deliver.author.domain.po.Author;
  5. import com.nosum.deliver.author.domain.po.AuthorVideo;
  6. import com.nosum.deliver.author.service.AuthorService;
  7. import com.nosum.deliver.author.service.AuthorVideoService;
  8. import org.bson.types.ObjectId;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.data.mongodb.core.MongoTemplate;
  11. import org.springframework.data.mongodb.core.query.Criteria;
  12. import org.springframework.data.mongodb.core.query.Query;
  13. import org.springframework.stereotype.Service;
  14. import java.time.LocalDate;
  15. import java.time.LocalDateTime;
  16. import java.time.LocalTime;
  17. import java.util.Objects;
  18. /**
  19. * 作者信息服务层实现类.
  20. *
  21. * @author Young
  22. */
  23. @Service
  24. public class AuthorVideoServiceImpl implements AuthorVideoService {
  25. @Autowired
  26. private MongoTemplate mongoTemplate;
  27. @Override
  28. public void save(AuthorVideo authorVideo) {
  29. mongoTemplate.save(authorVideo);
  30. }
  31. @Override
  32. public PageInfo<AuthorVideo> getPage(PageInfo<AuthorVideo> pageInfo, AuthorVideo authorVideo) {
  33. Criteria criteria = new Criteria();
  34. if (StrUtil.isNotBlank(authorVideo.getFinderUin())) {
  35. criteria.and("finderUin").is(authorVideo.getFinderUin());
  36. }
  37. Query query = Query.query(criteria);
  38. query.skip((pageInfo.getPage() - 1) * pageInfo.getSize());
  39. query.limit((int) pageInfo.getSize());
  40. long total = mongoTemplate.count(query, AuthorVideo.class);
  41. if (total == 0) {
  42. return pageInfo;
  43. }
  44. return pageInfo.setRecord(mongoTemplate.find(query, AuthorVideo.class)).setTotal(total);
  45. }
  46. @Override
  47. public AuthorVideo getById(ObjectId id) {
  48. return mongoTemplate.findById(id, AuthorVideo.class);
  49. }
  50. @Override
  51. public void remove(ObjectId id) {
  52. mongoTemplate.remove(Query.query(Criteria.where("id").is(id)), AuthorVideo.class);
  53. }
  54. }