jiangping
2024-08-28 42f57295f5fe64132c11a25f55cd25c3c8acf167
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkSyncCloudController.java
@@ -2,13 +2,18 @@
import com.doumee.api.BaseController;
import com.doumee.config.annotation.CloudRequiredPermission;
import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.haikang.model.param.request.*;
import com.doumee.core.haikang.model.param.request.event.acs.EventAcsRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventParkRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformCarsRequest;
import com.doumee.core.haikang.model.param.request.event.parks.EventPlatformRequest;
import com.doumee.core.haikang.model.param.request.event.visit.EventVisitIccmRequest;
import com.doumee.core.haikang.model.param.request.event.visit.EventVisitRequest;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.Device;
import com.doumee.service.business.impl.hksync.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -59,8 +64,17 @@
    @ApiOperation("【海康】全量同步门禁设备接口")
    @PostMapping("/syncDevices")
    @CloudRequiredPermission("business:hksync:device")
    public ApiResponse syncHkDevices(@RequestBody AcsDeviceListRequest param,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        String result = hkSyncDeviceService.syncHkDevices(param);
    public ApiResponse syncHkDevices(@RequestBody Device param, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        String result = null;
        if(Constants.equalsInteger(param.getType(),Constants.ZERO)){
             result = hkSyncDeviceService.syncHkDevices(param);
        }else if(Constants.equalsInteger(param.getType(),Constants.TWO)){
            //同步LED
            result = hkSyncDeviceService.syncHkLed(param);
        }else if(Constants.equalsInteger(param.getType(),Constants.THREE)){
            //同步广播
            result = hkSyncDeviceService.syncHkBroadcast(param);
        }
        return ApiResponse.success(result);
    }
    @PreventRepeat
@@ -90,28 +104,53 @@
//    @PreventRepeat
    @ApiOperation("【海康】门禁事件订阅推送对接处理接口")
    @PostMapping("/push/acs")
    public ApiResponse pushAcs(  HttpServletRequest request,@RequestBody EventAcsRequest param, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
    @LoginNoRequired
    public ApiResponse pushAcs(  HttpServletRequest request,@RequestBody EventAcsRequest param, HttpServletResponse response ){
        String result = hkSyncPushService.dealAcsEvent(param,response);
        return ApiResponse.success(result);
    }
//    @PreventRepeat
    @ApiOperation("【海康】访客事件订阅推送对接处理接口")
    @PostMapping("/push/visit")
    public ApiResponse pushVisit(@RequestBody EventVisitRequest param, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
    @LoginNoRequired
    public ApiResponse pushVisit(@RequestBody EventVisitRequest param, HttpServletResponse response){
        String result = hkSyncPushService.dealVisitEvent(param,response);
        return ApiResponse.success(result);
    }
    @ApiOperation("【海康】访客ICCM事件订阅推送对接处理接口")
    @PostMapping("/push/visitIccm")
    @LoginNoRequired
    public ApiResponse pushVisitIccm(@RequestBody EventVisitIccmRequest param, HttpServletResponse response) {
        String result = hkSyncPushService.dealVisitEventIccm(param,response);
        return ApiResponse.success(result);
    }
//    @PreventRepeat
    @ApiOperation("【海康】停车场事件订阅推送对接处理接口")
    @PostMapping("/push/parks")
    public ApiResponse pushParks(@RequestBody EventParkRequest param, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
    @LoginNoRequired
    public ApiResponse pushParks(@RequestBody EventParkRequest param, HttpServletResponse response ){
        String result = hkSyncPushService.dealParkEvent(param,response);
        return ApiResponse.success(result);
    }
    @ApiOperation("【海康】月台工作状态事件订阅推送对接处理接口")
    @PostMapping("/push/platform/workstatus")
    @LoginNoRequired
    public ApiResponse pushPlatformStatus(@RequestBody EventPlatformRequest param, HttpServletResponse response ){
        String result = hkSyncPushService.dealPlatformStatusEvent(param,response);
        return ApiResponse.success(result);
    }
    @ApiOperation("【海康】月台车辆状态事件订阅推送对接处理接口")
    @PostMapping("/push/platform/carstatus")
    @LoginNoRequired
    public ApiResponse pushPlatformCarStatus(@RequestBody EventPlatformCarsRequest param, HttpServletResponse response ){
        String result = hkSyncPushService.dealPlatformCarsEvent(param,response);
        return ApiResponse.success(result);
    }
    @PreventRepeat
    @ApiOperation("【海康】取消订阅事件")
    @PostMapping("/cancelEventSub")
    public ApiResponse cancelEventSub(@RequestBody EventSubRequest param, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
    @LoginNoRequired
    public ApiResponse cancelEventSub(@RequestBody EventSubRequest param, HttpServletResponse response){
         hkSyncPushService.cancelEventSub();
        return ApiResponse.success(null);
    }