TblVideoDetailServiceImpl.java 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package com.ruoyi.data.service.impl;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import com.ruoyi.common.utils.StringUtils;
  4. import com.ruoyi.common.core.page.TableDataInfo;
  5. import com.ruoyi.common.core.domain.PageQuery;
  6. import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  7. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  8. import com.baomidou.mybatisplus.core.toolkit.Wrappers;
  9. import lombok.RequiredArgsConstructor;
  10. import org.springframework.stereotype.Service;
  11. import com.ruoyi.data.domain.bo.TblVideoDetailBo;
  12. import com.ruoyi.data.domain.vo.TblVideoDetailVo;
  13. import com.ruoyi.data.domain.TblVideoDetail;
  14. import com.ruoyi.data.mapper.TblVideoDetailMapper;
  15. import com.ruoyi.data.service.ITblVideoDetailService;
  16. import java.util.List;
  17. import java.util.Map;
  18. import java.util.Collection;
  19. /**
  20. * 摄像机详情Service业务层处理
  21. *
  22. * @author ruoyi
  23. * @date 2023-12-05
  24. */
  25. @RequiredArgsConstructor
  26. @Service
  27. public class TblVideoDetailServiceImpl implements ITblVideoDetailService {
  28. private final TblVideoDetailMapper baseMapper;
  29. /**
  30. * 查询摄像机详情
  31. */
  32. @Override
  33. public TblVideoDetailVo queryById(Long id){
  34. return baseMapper.selectVoById(id);
  35. }
  36. /**
  37. * 查询摄像机详情列表
  38. */
  39. @Override
  40. public TableDataInfo<TblVideoDetailVo> queryPageList(TblVideoDetailBo bo, PageQuery pageQuery) {
  41. LambdaQueryWrapper<TblVideoDetail> lqw = buildQueryWrapper(bo);
  42. Page<TblVideoDetailVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
  43. return TableDataInfo.build(result);
  44. }
  45. /**
  46. * 查询摄像机详情列表
  47. */
  48. @Override
  49. public List<TblVideoDetailVo> queryList(TblVideoDetailBo bo) {
  50. LambdaQueryWrapper<TblVideoDetail> lqw = buildQueryWrapper(bo);
  51. return baseMapper.selectVoList(lqw);
  52. }
  53. private LambdaQueryWrapper<TblVideoDetail> buildQueryWrapper(TblVideoDetailBo bo) {
  54. Map<String, Object> params = bo.getParams();
  55. LambdaQueryWrapper<TblVideoDetail> lqw = Wrappers.lambdaQuery();
  56. lqw.eq(StringUtils.isNotBlank(bo.getVideoChannel()), TblVideoDetail::getVideoChannel, bo.getVideoChannel());
  57. lqw.eq(StringUtils.isNotBlank(bo.getCameraCode()), TblVideoDetail::getCameraCode, bo.getCameraCode());
  58. lqw.like(StringUtils.isNotBlank(bo.getCameraName()), TblVideoDetail::getCameraName, bo.getCameraName());
  59. lqw.eq(StringUtils.isNotBlank(bo.getCameraType()), TblVideoDetail::getCameraType, bo.getCameraType());
  60. lqw.eq(StringUtils.isNotBlank(bo.getCameraLocationDesc()), TblVideoDetail::getCameraLocationDesc, bo.getCameraLocationDesc());
  61. lqw.eq(StringUtils.isNotBlank(bo.getLongitude()), TblVideoDetail::getLongitude, bo.getLongitude());
  62. lqw.eq(StringUtils.isNotBlank(bo.getLatitude()), TblVideoDetail::getLatitude, bo.getLatitude());
  63. lqw.eq(StringUtils.isNotBlank(bo.getHeight()), TblVideoDetail::getHeight, bo.getHeight());
  64. lqw.eq(StringUtils.isNotBlank(bo.getVoiceOutCode()), TblVideoDetail::getVoiceOutCode, bo.getVoiceOutCode());
  65. lqw.eq(StringUtils.isNotBlank(bo.getIsSupportBoardcast()), TblVideoDetail::getIsSupportBoardcast, bo.getIsSupportBoardcast());
  66. lqw.eq(bo.getVideoId() != null, TblVideoDetail::getVideoId, bo.getVideoId());
  67. return lqw;
  68. }
  69. /**
  70. * 新增摄像机详情
  71. */
  72. @Override
  73. public Boolean insertByBo(TblVideoDetailBo bo) {
  74. TblVideoDetail add = BeanUtil.toBean(bo, TblVideoDetail.class);
  75. validEntityBeforeSave(add);
  76. boolean flag = baseMapper.insert(add) > 0;
  77. if (flag) {
  78. bo.setId(add.getId());
  79. }
  80. return flag;
  81. }
  82. /**
  83. * 修改摄像机详情
  84. */
  85. @Override
  86. public Boolean updateByBo(TblVideoDetailBo bo) {
  87. TblVideoDetail update = BeanUtil.toBean(bo, TblVideoDetail.class);
  88. validEntityBeforeSave(update);
  89. return baseMapper.updateById(update) > 0;
  90. }
  91. /**
  92. * 保存前的数据校验
  93. */
  94. private void validEntityBeforeSave(TblVideoDetail entity){
  95. //TODO 做一些数据校验,如唯一约束
  96. }
  97. /**
  98. * 批量删除摄像机详情
  99. */
  100. @Override
  101. public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
  102. if(isValid){
  103. //TODO 做一些业务上的校验,判断是否需要校验
  104. }
  105. return baseMapper.deleteBatchIds(ids) > 0;
  106. }
  107. }