LargeCameraServiceImpl.java 6.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194
  1. package com.project.zcustom.service.unit.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.core.metadata.IPage;
  5. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  6. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  7. import com.project.zcustom.controller.core.PageParamVo;
  8. import com.project.zcustom.controller.core.StringUtils;
  9. import com.project.zcustom.domain.addional.LargeCamera;
  10. import com.project.zcustom.mapper.unit.LargeCameraMapper;
  11. import com.project.zcustom.service.unit.ILargeCameraService;
  12. import org.springframework.beans.factory.annotation.Autowired;
  13. import org.springframework.stereotype.Service;
  14. import java.util.List;
  15. /**
  16. * 摄像头Service业务层处理
  17. *
  18. * @author change
  19. * @date 2024-12-30
  20. */
  21. @Service
  22. public class LargeCameraServiceImpl extends ServiceImpl<LargeCameraMapper, LargeCamera> implements ILargeCameraService {
  23. @Autowired
  24. private LargeCameraMapper largeCameraMapper;
  25. /**
  26. * 组装查询条件
  27. */
  28. private LambdaQueryWrapper<LargeCamera> getLambdaQueryWrapper(LargeCamera largeCamera) {
  29. LambdaQueryWrapper<LargeCamera> lqw = new LambdaQueryWrapper<LargeCamera>();
  30. if (StringUtils.isNotBlank(largeCamera.getCameraName())){
  31. lqw.like(LargeCamera::getCameraName ,largeCamera.getCameraName());
  32. }
  33. if (StringUtils.isNotNull(largeCamera.getProjectId())){
  34. lqw.eq(LargeCamera::getProjectId ,largeCamera.getProjectId());
  35. }
  36. if (StringUtils.isNotBlank(largeCamera.getType())){
  37. lqw.eq(LargeCamera::getType ,largeCamera.getType());
  38. }
  39. if (StringUtils.isNotBlank(largeCamera.getStatus())){
  40. lqw.eq(LargeCamera::getStatus ,largeCamera.getStatus());
  41. }
  42. if (StringUtils.isNotBlank(largeCamera.getOnlineFlag())){
  43. lqw.eq(LargeCamera::getOnlineFlag ,largeCamera.getOnlineFlag());
  44. }
  45. if (StringUtils.isNotBlank(largeCamera.getConnectFlag())){
  46. lqw.eq(LargeCamera::getConnectFlag ,largeCamera.getConnectFlag());
  47. }
  48. return lqw;
  49. }
  50. /**
  51. * 分页查询摄像头列表
  52. *
  53. * @param largeCamera 摄像头
  54. * @return 摄像头集合
  55. */
  56. @Override
  57. public IPage<LargeCamera> pagingLargeCameraList(LargeCamera largeCamera) {
  58. IPage<LargeCamera> page = new Page<>(largeCamera.getPageNum(), largeCamera.getPageSize());
  59. LambdaQueryWrapper<LargeCamera> lqw = getLambdaQueryWrapper(largeCamera);
  60. // 排序 默认时间倒序
  61. lqw.orderByDesc(LargeCamera::getCreateTime);
  62. return baseMapper.selectPage(page, lqw);
  63. }
  64. /**
  65. * 分页查询摄像头列表
  66. *
  67. * @param lqw
  68. * @return 摄像头集合
  69. */
  70. @Override
  71. public IPage<LargeCamera> pagingLargeCameraList(PageParamVo pageParamVo, LambdaQueryWrapper<LargeCamera> lqw) {
  72. IPage<LargeCamera> page = new Page<>(pageParamVo.getPageNum(), pageParamVo.getPageSize());
  73. // 排序 默认时间倒序
  74. lqw.orderByDesc(LargeCamera::getCreateTime);
  75. return baseMapper.selectPage(page, lqw);
  76. }
  77. /**
  78. * 查询摄像头列表
  79. *
  80. * @param largeCamera 摄像头
  81. * @return 摄像头
  82. */
  83. @Override
  84. public List<LargeCamera> selectLargeCameraList(LargeCamera largeCamera) {
  85. LambdaQueryWrapper<LargeCamera> lqw = getLambdaQueryWrapper(largeCamera);
  86. // 排序 默认时间倒序
  87. lqw.orderByDesc(LargeCamera::getCreateTime);
  88. return baseMapper.selectList(lqw);
  89. }
  90. /**
  91. * 查询摄像头列表
  92. *
  93. * @param largeCamera 摄像头
  94. * @return 摄像头
  95. */
  96. @Override
  97. public List<LargeCamera> selectLargeCameraList(LargeCamera largeCamera,Long limitNum) {
  98. LambdaQueryWrapper<LargeCamera> lqw = getLambdaQueryWrapper(largeCamera);
  99. // 排序 默认时间倒序
  100. lqw.orderByDesc(LargeCamera::getCreateTime);
  101. lqw.last("limit "+limitNum);
  102. return baseMapper.selectList(lqw);
  103. }
  104. /**
  105. * 根据指定字段查询信息
  106. *
  107. * @param field 字段名称
  108. * @param filedValue 字段值
  109. * @return 摄像头
  110. */
  111. @Override
  112. public LargeCamera getLargeCameraByField(String field, String filedValue) {
  113. QueryWrapper<LargeCamera> lqw = new QueryWrapper<LargeCamera>();
  114. lqw.eq(field, filedValue);
  115. lqw.last("limit 1");
  116. return this.getOne(lqw, false);
  117. }
  118. /**
  119. * 根据指定字段查询信息列表
  120. *
  121. * @param field 字段名称
  122. * @param filedValue 字段值
  123. * @return 摄像头
  124. */
  125. @Override
  126. public List<LargeCamera> selectLargeCameraListByField(String field, String filedValue,Long limitNum) {
  127. QueryWrapper<LargeCamera> lqw = new QueryWrapper<LargeCamera>();
  128. lqw.eq(field, filedValue);
  129. lqw.last("limit "+limitNum);
  130. return this.list(lqw);
  131. }
  132. /**
  133. * 根据指定字段查询信息列表
  134. *
  135. * @param field 字段名称
  136. * @param filedValue 字段值
  137. * @return 摄像头
  138. */
  139. @Override
  140. public List<LargeCamera> selectLargeCameraListByField(String field, String filedValue) {
  141. QueryWrapper<LargeCamera> lqw = new QueryWrapper<LargeCamera>();
  142. lqw.eq(field, filedValue);
  143. return this.list(lqw);
  144. }
  145. /**
  146. * 判断指定字段值是否存在
  147. *
  148. * @param field 字段名称
  149. * @param filedValue 字段值
  150. */
  151. @Override
  152. public void checkFieldExist(String field, String filedValue,String tips, Long id){
  153. QueryWrapper<LargeCamera> lqw = new QueryWrapper<LargeCamera>();
  154. lqw.eq(field, filedValue);
  155. lqw.ne("id", id);
  156. if(this.getOne(lqw,false) != null){
  157. throw new RuntimeException(tips + "已存在");
  158. }
  159. }
  160. /**
  161. * 真删接口
  162. */
  163. @Override
  164. public void reallyDeleteLargeCamera(LambdaQueryWrapper<LargeCamera> lqw){
  165. baseMapper.reallyDeleteByWrapper(lqw);
  166. }
  167. public List<LargeCamera> getCameraList(Long projectId){
  168. return largeCameraMapper.getCameraList(projectId);
  169. }
  170. public int getCameraNum(){
  171. return largeCameraMapper.getCameraNum();
  172. }
  173. public List<LargeCamera> getConnectCameraNumByProject(Long projectId){
  174. return largeCameraMapper.getConnectCameraNumByProject(projectId);
  175. }
  176. public int getConnectOnlineCameraNum(){
  177. return largeCameraMapper.getConnectOnlineCameraNum();
  178. }
  179. }