SmartVisitorServiceImpl.java 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. package com.template.services.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import com.baomidou.mybatisplus.core.metadata.IPage;
  4. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  5. import com.template.common.utils.TimeExchange;
  6. import com.template.mapper.SmartVisitorMapper;
  7. import com.template.model.pojo.SmartVisitor;
  8. import com.template.model.pojo.SmartVisitor;
  9. import com.template.mapper.SmartVisitorMapper;
  10. import com.template.model.result.PageUtils;
  11. import com.template.model.vo.VisitorPageVo;
  12. import com.template.services.SmartVisitorService;
  13. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import org.springframework.util.StringUtils;
  17. import java.util.Date;
  18. import java.util.List;
  19. /**
  20. * <p>
  21. * 服务实现类
  22. * </p>
  23. *
  24. * @author ceshi
  25. * @since 2023-12-04
  26. */
  27. @Service
  28. public class SmartVisitorServiceImpl extends ServiceImpl<SmartVisitorMapper, SmartVisitor> implements SmartVisitorService {
  29. @Autowired
  30. private SmartVisitorMapper smartVisitorMapper;
  31. @Override
  32. public int insertSmartVisitor(SmartVisitor sa) {
  33. int result = smartVisitorMapper.insert(sa);
  34. return result;
  35. }
  36. @Override
  37. public int updateSmartVisitor(SmartVisitor sa) {
  38. int result = smartVisitorMapper.updateById(sa);
  39. return result;
  40. }
  41. @Override
  42. public PageUtils<SmartVisitor> queryPageSmartVisitors(int currentPage, int pageCount, String name) {
  43. Page<SmartVisitor> page = new Page<>(currentPage, pageCount);
  44. QueryWrapper<SmartVisitor> queryWrapper = new QueryWrapper<>();
  45. //queryWrapper.like(StringUtils.hasText(name), "name", name);
  46. IPage<SmartVisitor> result = smartVisitorMapper.selectPage(page, queryWrapper);
  47. return new PageUtils<>(result);
  48. }
  49. @Override
  50. public int deleteSmartVisitorById(int id) {
  51. int result = smartVisitorMapper.deleteById(id);
  52. return result;
  53. }
  54. @Override
  55. public SmartVisitor getSmartById(int id) {
  56. SmartVisitor result = smartVisitorMapper.selectById(id);
  57. return result;
  58. }
  59. @Override
  60. public boolean insertVisitorBatch(List<SmartVisitor> visitors) {
  61. boolean result = this.saveBatch(visitors);
  62. return result;
  63. }
  64. @Override
  65. public PageUtils<VisitorPageVo> smartVisitorPageByUserId(int currentPage, int pageCount, Integer userId, Integer statu, String createStartTime, String createEndTime, String keyWord, String visitorStartTime, String visitorEndTime) {
  66. Page<VisitorPageVo> page = new Page<>();
  67. page.setCurrent(currentPage);
  68. page.setSize(pageCount);
  69. IPage<VisitorPageVo> datas = smartVisitorMapper.queryVisitorPage(page, userId, statu, createStartTime, createEndTime, keyWord, visitorStartTime, visitorEndTime);
  70. return new PageUtils(datas);
  71. }
  72. @Override
  73. public Integer queryVisitorCount(String cardNo, String startTime, String endTime) {
  74. Integer result = smartVisitorMapper.queryVisitorCount(cardNo, startTime, endTime);
  75. return result;
  76. }
  77. @Override
  78. public PageUtils<SmartVisitor> queryVisitorPageDatas(int currentPage, int pageCount, Integer type, List<Integer> studentIds, String isAdmin) {
  79. Page<SmartVisitor> page = new Page<>();
  80. page.setCurrent(currentPage);
  81. page.setSize(pageCount);
  82. IPage<SmartVisitor> datas = smartVisitorMapper.queryVisitorPageDatas(page, type, studentIds, isAdmin);
  83. return new PageUtils(datas);
  84. }
  85. @Override
  86. public SmartVisitor querySmartVisitorByCode(String visitorCode) {
  87. QueryWrapper<SmartVisitor> queryWrapper = new QueryWrapper<>();
  88. queryWrapper.eq(StringUtils.hasText(visitorCode), "visitor_code", visitorCode);
  89. SmartVisitor result = smartVisitorMapper.selectOne(queryWrapper);
  90. return result;
  91. }
  92. @Override
  93. public SmartVisitor queryParentVisitor(Integer userId) {
  94. QueryWrapper<SmartVisitor> queryWrapper = new QueryWrapper<>();
  95. String nowTime = TimeExchange.getTime();
  96. queryWrapper.le("visitor_time", nowTime);//<=
  97. queryWrapper.ge("visitor_deadline", nowTime);//>=
  98. queryWrapper.eq("user_id", userId);
  99. queryWrapper.eq("statu",3);//必须是已推送的
  100. queryWrapper.orderByAsc("visitor_time");
  101. List<SmartVisitor> resultDatas = smartVisitorMapper.selectList(queryWrapper);
  102. return resultDatas != null && resultDatas.size() > 0 ? resultDatas.get(0) : null;
  103. }
  104. }