aijinhui
2023-10-14 0a12bfc2e9594345a0a6cf136bcf234c62450d9d
ard-work/src/main/java/com/ruoyi/device/camera/controller/ArdCamerasController.java
@@ -7,14 +7,15 @@
import com.ruoyi.device.camera.domain.ArdCameras;
import com.ruoyi.device.camera.domain.CameraCmd;
import com.ruoyi.device.camera.service.IArdCamerasService;
import com.ruoyi.device.hiksdk.service.IHikClientService;
import com.ruoyi.device.hiksdk.service.impl.HikClientServiceImpl;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysDeptService;
import com.ruoyi.inspect.service.IArdVideoInspectTaskService;
import com.ruoyi.media.service.IVtduService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
@@ -29,7 +30,6 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.core.page.TableDataInfo;
import java.util.*;
/**
@@ -44,7 +44,7 @@
@Api(tags = "相机管理接口")
public class ArdCamerasController extends BaseController {
    @Resource
    private HikClientServiceImpl sdk;
    private IHikClientService sdk;
    @Resource
    private IArdCamerasService ardCamerasService;
    @Resource
@@ -93,11 +93,14 @@
    @Log(title = "相机设备", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody ArdCameras camera) {
        //注销
        sdk.loginOut(camera.getId());
        //登录
        sdk.login(camera);
        return toAjax(ardCamerasService.insertArdCameras(camera));
        int i = ardCamerasService.insertArdCameras(camera);
        if(i>0) {
            //注销
            sdk.loginOut(camera.getId());
            //异步登录
            sdk.asyncLogin(camera);
        }
        return toAjax(i);
    }
    /**
@@ -109,10 +112,11 @@
    @PutMapping
    public AjaxResult edit(@RequestBody ArdCameras camera) {
        int i = ardCamerasService.updateArdCameras(camera);
        if (i > 0) {
        if(i>0)
        {
            ArdCameras cameras = ardCamerasService.selectArdCamerasById(camera.getId());
            sdk.loginOut(cameras.getId());
            sdk.login(cameras);
            sdk.asyncLogin(cameras);
        }
        return toAjax(i);
    }
@@ -125,7 +129,8 @@
    @Log(title = "相机设备", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable String[] ids) {
        for (String id : ids) {
        for(String id :ids)
        {
            sdk.loginOut(id);
        }
        return toAjax(ardCamerasService.deleteArdCamerasByIds(ids));
@@ -140,7 +145,7 @@
            Map option = new HashMap();
            option.put("value", item.getId());
            option.put("label", item.getName());
            option.put("channel", item.getChannel());
            option.put("channel", item.getChanNo());
            List timeList = ardVideoInspectTaskService.getCameraIdleTimeList(item.getId());
            option.put("idleTimeList", timeList);//空闲时间段
            options.add(option);
@@ -151,7 +156,14 @@
    @ApiOperation("获取部门和相机")
    public AjaxResult getDeptAndCamera()
    {
        Map deptAndCamera = ardCamerasService.getChildDeptAndCamera();
        Map deptAndCamera = ardCamerasService.getChildDeptAndCamera(true);
        return AjaxResult.success(deptAndCamera);
    }
    @GetMapping("/getDeptAndCameraWithCheckBox")
    @ApiOperation("获取部门和相机(开启复选框)")
    public AjaxResult getDeptAndCameraWithCheckBox()
    {
        Map deptAndCamera = ardCamerasService.getChildDeptAndCamera(false);
        return AjaxResult.success(deptAndCamera);
    }
    @PostMapping("/getNearCamerasBycoordinate")