package org.sxkj.odm.feign; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; import org.sxkj.odm.entity.OdmTaskInfo; import org.sxkj.odm.entity.PointParam; import org.sxkj.odm.entity.TifParseRequest; import org.sxkj.odm.entity.TifParseResponse; import java.util.List; import java.util.Map; /** * @author zhongrj */ @FeignClient( value = "drone-odm", fallback = IOdmTaskInfoClientFallback.class ) public interface IOdmTaskInfoClient { String API_PREFIX = "/client"; String CREATE_WEB_ODM_TASK = API_PREFIX + "/odm-task-info/create-web-odm-task"; String SAVE_ODM_TASK_INFO = API_PREFIX + "/odm-task-info/save-odm-task-info"; String UPDATE_ODM_TASK = API_PREFIX + "/odm-task-info/update-odm-task"; String RUN_ERROR_WEB_ODM_TASK = API_PREFIX + "/odm-task-info/run-error-web-odm-task"; String LEAK_REPAIR_ODM_TASK = API_PREFIX + "/odm-task-info/leak-repair-odm-task"; String DELETED_ODM_TEMP_FILE = API_PREFIX + "/odm-task-info/deleted-odm-temp-file"; String DELETED_ODM_TASK_INVF_FILE = API_PREFIX + "/odm-task-info/deleted-odm-task-invf-file"; String DELETED_REP_ODM_TASK = API_PREFIX + "/odm-task-info/deleted-rep-odm-task"; String DEL_REP_ODM_TASK_BY_NO_WAY_JOB = API_PREFIX + "/odm-task-info/del-rep-odm-task-by-no-way-job"; String DEL_REP_ODM_TASK_BY_BEF_ONE_MON = API_PREFIX + "/odm-task-info/del-rep-odm-task-by-bef-one-mon"; String SUP_ODM_TB_TIF_DRAW = API_PREFIX + "/odm-task-info/sup-odm-tb-tif-draw"; String GET_TIF_DATA_BY_COORD = API_PREFIX + "/odm-task-info/getTifDataByCoord"; String GET_ALL_TIF_DATA_BY_COORD = API_PREFIX + "/odm-task-info/getAllTifDataByCoord"; String ODM_TILES_SUP = API_PREFIX + "/odm-task-info/odmTilesSup"; String ODM_LIVE_TILES_SUP = API_PREFIX + "/odm-task-info/odmLiveTilesSup"; String ODM_POINT_CLOUD_TILES = API_PREFIX + "/odm-task-info/point-cloud-to-tiles"; String ROUTE_PLANNING = API_PREFIX + "/odm-task-info/routePlanningPath"; String GENERATE_GRID_TASK = API_PREFIX + "/odm-task-info/generateGridTask"; // 保存面数据 String SAVE_MULTIPOLYGON_INFO = API_PREFIX + "/odm-task-info/saveMultipolygonInfo"; // /delete-grid String DELETE_GRID = API_PREFIX + "/odm-task-info/delete-grid"; // 更新机场地形数据 String UPDATE_AIRPORT_TERRAIN_DATA = API_PREFIX + "/odm-task-info/update-airport-terrain-data"; /** * tif文件解析 */ String TIF_PARSE = API_PREFIX + "/odm-task-info/tifParse"; /** * 根据jobId 进行创建 odm 任务(航测文件合并任务)--定时任务 * * @return */ @GetMapping(CREATE_WEB_ODM_TASK) Boolean createWebOdmTask(); /** * 根据jobId 进行创建 odm 任务(航测文件合并任务) * * @param jobId 航测任务job_id * @return */ @GetMapping(SAVE_ODM_TASK_INFO) void saveOdmTaskInfo(@RequestParam("jobId") String jobId); /** * 定时更新odm 任务状态 * @return */ @GetMapping(UPDATE_ODM_TASK) Integer updateOdmTaskStatus(); /** * 定时任务 ---异常 odm 任务重试 * @return */ @GetMapping(RUN_ERROR_WEB_ODM_TASK) Boolean runErrorWebOdmTask(); /** * 定时任务----定时补漏odm任务的的生成(由其他原因到时没有创建到任务的) * @return */ @GetMapping(LEAK_REPAIR_ODM_TASK) void leakRepairOdmTask(); /** * 定时删除odm临时文件任务 * @return */ @GetMapping(DELETED_ODM_TEMP_FILE) boolean deletedOdmTempFile(); /** * 定时删除odm拼图任务中失效的文件 * @return */ @GetMapping(DELETED_ODM_TASK_INVF_FILE) boolean deletedOdmTaskInVFile(); /** * 定时删除odm拼图任务中重复的任务(同一个图斑多个任务,保留最新的) * @return */ @GetMapping(DELETED_REP_ODM_TASK) boolean deletedRepOdmTask(); /** * 定时删除odm拼图任务(航线任务已删除的) * @return */ @GetMapping(DEL_REP_ODM_TASK_BY_NO_WAY_JOB) boolean delRepOdmTaskByNoWayJob(); /** * 定时补充odm历史任务tif图斑面叠加 * @return */ @GetMapping(SUP_ODM_TB_TIF_DRAW) boolean supOdmTbTifDraw(); /** * 定时删除odm拼图任务 * @param day 按天来 * @return */ @GetMapping(DEL_REP_ODM_TASK_BY_BEF_ONE_MON) boolean delRepOdmTaskByBefOneMon(@RequestParam("day") Integer day); /** * 根据经纬度获取tif数据 * @param longitude 经度 * @param latitude 纬度 * @return tif数据 */ @GetMapping(GET_TIF_DATA_BY_COORD) List getTifDataByCoord(@RequestParam("longitude")double longitude, @RequestParam("latitude")double latitude); /** * 根据经纬度获取10公里内tif数据 * @param longitude 经度 * @param latitude 纬度 * @return tif数据 */ @GetMapping(GET_ALL_TIF_DATA_BY_COORD) List getAllTifDataByCoord(@RequestParam("longitude")double longitude, @RequestParam("latitude")double latitude); /** * odm 3d 白膜叠加补充 * @return */ @GetMapping(ODM_TILES_SUP) void odmTilesSup(); /** * tif文件解析 * @param request * @return */ @PostMapping(TIF_PARSE) TifParseResponse tifParseNew(@RequestBody TifParseRequest request); /** * 定时处理odm历史任务点云转3dtiles(需要提取建筑物面) * @return */ @GetMapping(ODM_POINT_CLOUD_TILES) boolean handleHistoryPointCloudTo3dtiles(); /** * 航线飞行路径规划 */ @PostMapping(ROUTE_PLANNING) List waylineFlightPathPlanning( @RequestBody List param ); /** * 生成网格任务 */ @GetMapping(GENERATE_GRID_TASK) void generateGridTask(); /** * 保存禁飞区面数据 */ @GetMapping(SAVE_MULTIPOLYGON_INFO) Map saveMultipolygonInfo(@RequestParam("height") Double height, @RequestParam("geoData") String geoData); /** * 删除网格任务 */ @GetMapping(DELETE_GRID) Boolean deleteGrid(@RequestParam("ids") String ids); /** * 更新机场地形数据 */ @GetMapping(UPDATE_AIRPORT_TERRAIN_DATA) void updateAirportTerrainData(); /** * odm 3d 实景三维叠加补充 * @return */ @GetMapping(ODM_LIVE_TILES_SUP) void odmLiveTilesSup(); }