czt
2026-01-05 c25d369c352b959887999da035e019b840d0b75c
fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCameraPR.java
@@ -4,13 +4,20 @@
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.bstek.dorado.data.provider.Page;
import com.fzzy.igds.camera.ApiCameraManager;
import com.fzzy.igds.camera.data.ApiCameraData;
import com.fzzy.igds.camera.data.ApiCameraResp;
import com.fzzy.igds.data.IgdsBaseParam;
import com.fzzy.igds.domain.Camera;
import com.fzzy.igds.service.SecCameraService;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.utils.StringUtils;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
@@ -24,6 +31,9 @@
   @Autowired
   private SecCameraService secCameraService;
    @Resource
    private ApiCameraManager apiCameraManager;
   /**
    * secCameraPR#listPageCamera 根据条件获取所有的摄像机配置信息
@@ -49,6 +59,7 @@
   /**
    * secCameraPR#listCamera 获取所有的摄像机配置信息
    * ${dorado.getDataProvider("secCameraPR#listCamera").getResult()}
     *
    * @return
    */
   @DataProvider
@@ -91,4 +102,41 @@
      return null;
   }
    /***
     * securityPR#flushByMedia
     *
     * 根据库区编码及播放方式,同步监控信息
     * @return
     */
    @DataResolver
    public String flushByMedia(Camera param) {
        if (StringUtils.isBlank(param.getPlayType())) {
            return "没有选择播放方式,不执行!";
        }
        if (StringUtils.isBlank(param.getDeptId())) {
            return "没有同步库区,不执行1";
        }
        try {
            //通过统一入口获取播放地址
            ApiCameraData apiCameraData = new ApiCameraData();
            apiCameraData.setCompanyId(ContextUtil.getCompanyId());
            apiCameraData.setDeptId(param.getDeptId());
            //根据播放方式获取对应的播放地址
            List<Camera> cameras = apiCameraManager.getApiCameraService(param.getPlayType()).searchCamera(apiCameraData);
            if (cameras == null) {
                return "同步失败!";
            } else {
                return null;
            }
        } catch (Exception e) {
            log.error("-----同步摄像头列表失败-----原因={}", e.toString());
            return "远程接口服务异常,请核查后重试!";
        }
    }
}