package com.ard.work.api; import com.ard.common.core.constant.SecurityConstants; import com.ard.common.core.constant.ServiceNameConstants; import com.ard.common.core.domain.R; import com.ard.common.core.web.domain.AjaxResult; import com.ard.work.api.domian.ArdCamera; import com.ard.work.api.domian.ArdChannel; import com.ard.work.api.domian.CameraCmd; import com.ard.work.api.factory.RemoteCameraFallbackFactory; import com.ard.work.api.factory.RemoteChannelFallbackFactory; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.TreeMap; /** * 通道服务 * * @author ard */ @FeignClient(contextId = "remoteChannelService", value = ServiceNameConstants.WORK_SERVICE, fallbackFactory = RemoteChannelFallbackFactory.class) public interface RemoteChannelService { /** * 获取所有通道 * * @return 结果 */ @GetMapping(value = "/api/device/channel/list") public R> list(@SpringQueryMap ArdChannel ardChannel, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 获取通道信息 * * @param id * @return */ @GetMapping("/api/device/channel/{id}") public R getInfo(@PathVariable("id") String id, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); /** * 根据通道id集合查询设备信息 * * @param startChannelIdList 通道id集合 * @param inner 请求来源 * @return */ @GetMapping("/api/device/queryByIds/{startChannelIdList}") R> queryByIds(@PathVariable List startChannelIdList, @RequestHeader(SecurityConstants.FROM_SOURCE) String inner); /** * 修改通道信息 * * @param ardChannel * @return */ @PutMapping("/api/device/channel/updateArdChannel") public R update(@RequestBody ArdChannel ardChannel, @RequestHeader(SecurityConstants.FROM_SOURCE) String source); }