123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139 |
- package com.huimv.admin.service.impl;
- import cn.hutool.core.bean.BeanUtil;
- import cn.hutool.core.util.ObjectUtil;
- import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
- import com.baomidou.mybatisplus.core.toolkit.StringUtils;
- import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
- import com.huimv.admin.common.utils.Result;
- import com.huimv.admin.common.utils.ResultCode;
- import com.huimv.admin.common.utils.ResultUtil;
- import com.huimv.admin.entity.CameraArea;
- import com.huimv.admin.entity.CameraBase;
- import com.huimv.admin.entity.CameraBrand;
- import com.huimv.admin.entity.hkwsdto.CameraDto1;
- import com.huimv.admin.entity.vo.CameraListVo;
- import com.huimv.admin.entity.vo.CameraListsVo;
- import com.huimv.admin.entity.vo.CameraVo;
- import com.huimv.admin.mapper.CameraAreaMapper;
- import com.huimv.admin.mapper.CameraBaseMapper;
- import com.huimv.admin.mapper.CameraBrandMapper;
- import com.huimv.admin.service.ICameraBaseService;
- import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Service;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Map;
- /**
- * <p>
- * 服务实现类
- * </p>
- *
- * @author author
- * @since 2023-02-16
- */
- @Service
- public class CameraBaseServiceImpl extends ServiceImpl<CameraBaseMapper, CameraBase> implements ICameraBaseService {
- @Autowired
- private CameraAreaMapper cameraAreaMapper;
- @Autowired
- private CameraBrandMapper cameraBrandMapper;
- @Override
- public Result listPage(CameraListVo cameraListVo) {
- Integer current = cameraListVo.getCurrent();
- String strchStr = cameraListVo.getStrchStr();
- Integer size = cameraListVo.getSize();
- Integer areaId = cameraListVo.getAreaId();
- Integer sort = cameraListVo.getSort();
- Integer farmId = cameraListVo.getFarmId();
- Integer onLineStatus = cameraListVo.getOnLineStatus();
- QueryWrapper<CameraBase> wrapper = new QueryWrapper<>();
- if (null == current ) {
- current =1;
- }
- if (null ==size) {
- size =10;
- }
- if (farmId != null) {
- wrapper.eq("farm_id", farmId);
- }
- if (areaId != null) {
- wrapper.eq("area_id", areaId);
- }
- if (onLineStatus != null) {
- wrapper.eq("is_online", onLineStatus);
- }
- if (StringUtils.isNotBlank(strchStr)) {
- wrapper.and(i -> i.like("camera_name", strchStr));
- }
- if (sort == null) {
- wrapper.orderByDesc("id");
- } else if (sort == 1) {
- wrapper.orderByDesc("sort");
- } else {
- wrapper.orderByAsc("sort");
- }
- wrapper.orderByDesc("id");
- Page<CameraBase> page = page(new Page<CameraBase>(current, size), wrapper);
- return new Result(ResultCode.SUCCESS, page);
- }
- @Override
- public Result getCameraDetails(CameraListsVo cameraListsVo) {
- List<Integer> cameraIds = cameraListsVo.getCameraIds();
- CameraBrand cameraBrand = cameraBrandMapper.selectById(18);
- List list = new ArrayList();
- for (Integer cameraId : cameraIds) {
- CameraBase cameraBase = this.getById(cameraId);
- String regionUuid = cameraBase.getRegionUuid();
- CameraArea cameraArea = cameraAreaMapper.selectOne(new QueryWrapper<CameraArea>().eq("region_uuid", regionUuid));
- // http://61.153.248.106:6713/mag/hls/6bf5d2cf30bb440cad3fc126512f5188/1/live.m3u8
- String hls ="http://"+cameraArea.getPublicUrl()+cameraBrand.getStreamType()+cameraBase.getCameraUuid()+"/"+ cameraBrand.getMainStream()+"/"+"live.m3u8";
- CameraVo cameraVo = new CameraVo();
- cameraVo.setHlsUrl(hls);
- cameraVo.setId(cameraBase.getId());
- cameraVo.setCameraName(cameraBase.getCameraName());
- list.add(cameraVo);
- }
- return ResultUtil.list(list);
- }
- @Override
- public void sync(Map<String, Integer> params, List<CameraDto1> list) {
- Integer farmId = params.get("farmId");
- //先删除
- this.remove(new QueryWrapper<CameraBase>().eq("farm_id",farmId));
- System.out.println(list.size());
- //
- for (CameraDto1 cameraDto1 : list) {
- CameraBase cameraBase = new CameraBase();
- BeanUtil.copyProperties(cameraDto1,cameraBase);
- CameraArea cameraArea = cameraAreaMapper.selectOne(new QueryWrapper<CameraArea>().eq("region_uuid", cameraDto1.getRegionUuid()));
- if (ObjectUtil.isNotEmpty(cameraArea)){
- cameraBase.setAreaName(cameraArea.getAreaName());
- }
- cameraBase.setBrandName("海康威视");
- cameraBase.setFarmId(farmId);
- this.save(cameraBase);
- }
- }
- //更新摄像头状态
- @Override
- public void updateCameraOnlin(List<CameraDto1> list) {
- for (CameraDto1 cameraDto1 : list) {
- String cameraUuid = cameraDto1.getCameraUuid();
- CameraBase one = this.getOne(new QueryWrapper<CameraBase>().eq("camera_uuid", cameraUuid));
- one.setOnLineStatus(1 ==cameraDto1.getOnLineStatus());
- }
- }
- }
|