| package com.doumee.cloud.admin; | 
|   | 
| import com.doumee.api.BaseController; | 
| import com.doumee.biz.system.SystemDictDataBiz; | 
| 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.BaseListPageResponse; | 
| import com.doumee.core.haikang.model.param.BaseResponse; | 
| 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.haikang.model.param.respose.*; | 
| import com.doumee.core.haikang.service.HKService; | 
| import com.doumee.core.model.ApiResponse; | 
| import com.doumee.core.model.LoginUserInfo; | 
| import com.doumee.core.utils.Constants; | 
| import com.doumee.core.utils.DESUtil; | 
| import com.doumee.dao.business.model.Device; | 
| import com.doumee.service.business.DeviceService; | 
| import com.doumee.service.business.impl.hksync.*; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiImplicitParam; | 
| import io.swagger.annotations.ApiImplicitParams; | 
| import io.swagger.annotations.ApiOperation; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.data.redis.core.RedisTemplate; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| import javax.servlet.http.HttpServletRequest; | 
| import javax.servlet.http.HttpServletResponse; | 
| import java.util.ArrayList; | 
| import java.util.HashMap; | 
| import java.util.List; | 
| import java.util.Map; | 
|   | 
| /** | 
|  * @author 江蹄蹄 | 
|  * @date 2023/11/30 15:33 | 
|  */ | 
| @Api(tags = "海康接口测试工具接口") | 
| @RestController | 
| @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/hktest") | 
| public class HkInterfaceTestCloudController extends BaseController { | 
|   | 
|     @Autowired | 
|     private SystemDictDataBiz systemDictDataBiz; | 
|     @Autowired | 
|     private HkSyncImgServiceImpl hkSyncImgService; | 
|     @Autowired | 
|     private DeviceService deviceService; | 
|   | 
|     @ApiOperation("【海康】测试LED显示屏") | 
|     @PostMapping("/testLedAll") | 
|     @LoginNoRequired | 
|     public ApiResponse<List<Map<String,Object>> > testLedAll(@RequestBody TransparentChannelBodyRequest request, HttpServletResponse response) { | 
|         TransparentChannelHeadRequest head = new TransparentChannelHeadRequest(); | 
|         head.setAbility("cld");//固定值 | 
|         head.setTreatyType("haixuan_led_net");//固定值 | 
|         head.setDeviceIndexCode("6a5498e9df924befbb9530e467e5e809"); | 
|         Device p = new Device(); | 
|         p.setType(Constants.TWO); | 
|         p.setIsdeleted(Constants.ZERO); | 
|         List<Device> list = deviceService.findList(p); | 
|         List<Map<String,Object>> dList = new ArrayList<>(); | 
|         String content = request.getParams().getRegions().get(0).getContent(); | 
|         if(list!=null){ | 
|             for(Device d : list){ | 
|                 head.setDeviceIndexCode(d.getNo()); | 
|                 request.getParams().setIndexCode(d.getNo()); | 
|                 request.getParams().getRegions().get(0).setContent( content+"["+d.getName()+"]"); | 
|                 BaseResponse res= HKService.transparentchannel(head,request); | 
|                 Map<String,Object> dn = new HashMap<>(); | 
|                 dn.put("name",d.getName()); | 
|                 dn.put("id",d.getNo()); | 
|                 dn.put("content",request.getParams().getRegions().get(0).getContent()); | 
|                 dn.put("result",res); | 
|                 dList.add(dn); | 
|             } | 
|         } | 
|         return ApiResponse.success(dList); | 
|     } | 
|     @ApiOperation("【海康】测试LED显示屏") | 
|     @PostMapping("/testLed") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testLed(@RequestBody TransparentChannelBodyRequest request, HttpServletResponse response) { | 
|         TransparentChannelHeadRequest head = new TransparentChannelHeadRequest(); | 
|         head.setAbility("cld");//固定值 | 
|         head.setTreatyType("haixuan_led_net");//固定值 | 
|         head.setDeviceIndexCode("6a5498e9df924befbb9530e467e5e809"); | 
|         return ApiResponse.success(HKService.transparentchannel(head,request)); | 
|     } | 
|     @ApiOperation("【海康】测试广播播报") | 
|     @PostMapping("/testBroadcast") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testBroadcast(@RequestBody CustomBroadcastRequest request, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.customBroadcast(request)); | 
|     } | 
|     @ApiOperation("【海康】测试车辆预约") | 
|     @PostMapping("/testParkReservation") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testParkReservation(@RequestBody ParkReservationAddRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.parkReservationAddition(param)); | 
|     } | 
|     @ApiOperation("【海康】测试车辆预约取消") | 
|     @PostMapping("/testParkReservationDeletion") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testParkReservationDeletion(@RequestBody ParkReservationDelRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.parkReservationDeletion(param)); | 
|     } | 
|     @ApiOperation("【海康】获取代办列表") | 
|     @PostMapping("/getTodoListPage") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> getTodoListPage(@RequestBody GetTodoListRequest request, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.getTodoListPage(request)); | 
|     } | 
|     @ApiOperation("【海康】测试人脸图片下载") | 
|     @PostMapping("/testDonwLoadMemberImg") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testDonwLoadMemberImg() { | 
|         hkSyncImgService.startDealMemberImg(); | 
|         return ApiResponse.success(  null); | 
|     } | 
|     @ApiOperation("【海康】测试月台事件图片下载") | 
|     @PostMapping("/testDonwLoadPlatformImg") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testDonwLoadPlatformImg() { | 
|         hkSyncImgService.startDealPlatformEventImg(); | 
|         return ApiResponse.success(  null); | 
|     } | 
|     @ApiOperation("【海康】测试获取微信公众号") | 
|     @GetMapping("/testWxToken") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> testWxToken(@RequestParam String configId,@RequestParam String tageId, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.wxAccessToken(configId,tageId)); | 
|     } | 
|     @ApiOperation("【海康】测试分页获取告警事件") | 
|     @PostMapping("/nhEventPageList") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse> nhEventPageList(@RequestBody NhEventPageListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.nhEventPageList(param)); | 
|     } | 
|     @ApiOperation("【海康】分页查询消防传感器部件状态") | 
|     @PostMapping("/sensorStatusSearch") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse<BaseListPageResponse<SensorStatusListResponse>>> sensorStatusSearch(@RequestBody SensorStatusListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.sensorStatusSearch(param)); | 
|     } | 
|     @ApiOperation("【海康】查询消防传感器列表") | 
|     @PostMapping("/fireChannelSearch") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse<BaseListPageResponse<FireChannelListResponse>>> fireChannelSearch(@RequestBody FireChannelListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.fireChannelSearch(param)); | 
|     } | 
|     @ApiOperation("【海康】海康询消防设备列表") | 
|     @PostMapping("/fireDeviceSearch") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse<BaseListPageResponse<FireDeviceListResponse>> > fireDeviceSearch(@RequestBody FireDeviceListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.fireDeviceSearch(param)); | 
|     } | 
|     @ApiOperation("【海康】分页查询消防设备部件状态") | 
|     @PostMapping("/fireDeviceStatusSearch") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse<BaseListPageResponse<FireDeviceStatusListResponse>>> fireDeviceStatusSearch(@RequestBody FireDeviceStatuslListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.fireDeviceStatusSearch(param)); | 
|     } | 
|     @ApiOperation("【海康】分页查询设备下的所有报警记录") | 
|     @PostMapping("/findDeviceAlarmPage") | 
|     @LoginNoRequired | 
|     public ApiResponse<BaseResponse<BaseListPageResponse<FindDeviceAlarmListResponse>> > findDeviceAlarmPage(@RequestBody FindDeviceAlarmListRequest param, HttpServletResponse response) { | 
|         return ApiResponse.success(  HKService.findDeviceAlarmPage(param)); | 
|     } | 
|   | 
| } |