package com.ebike.feign.clients; import com.cdzy.common.model.EbikeTracking; import com.cdzy.common.model.JsonResult; import com.ebike.feign.model.res.ResFeignEbikeSysRcostsetDto; import com.ebike.feign.model.rsp.FeignEbikeRegionDto; 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 java.util.List; /** * 运营管理 外部调用。 * * @author dingchao * @date 2025/3/27 * @modified by: */ @FeignClient(name = "ebike-operate") public interface OperateFeignClient { /** * 批量保存电池入库记录。 * * @param ebikeBatteryCodes 电池编码 * @return */ @PostMapping("ebikeBatteryEnterRecords/batchSave") JsonResult batchSaveBatteryEnterRecords(@RequestBody List ebikeBatteryCodes); /** * 批量保存电池出库记录。 * * @param ebikeBatteryCodes 电池编码 * @return */ @PostMapping("ebikeBatteryOutRecords/batchSave") JsonResult batchSaveBatteryOutRecords(@RequestBody List ebikeBatteryCodes); /** * 获取行政区域。 * * @param parent_id 父级行政区域ID * @return */ @GetMapping("ebikeSystemCodeMapInfo/ebikeAdministrationZone") JsonResult getEbikeAdministrationZone(@RequestParam(name = "parent_id", required = false) String parent_id); /** * 根据行政区名称获取运营区域ID列表 * * @param zoneName 区域名称 * @return 详情 */ @GetMapping("ebikeRegion/getRegionIdsByZone") JsonResult getRegionIdsByZone(@RequestParam(name = "zoneName") String zoneName); /** * 保存车辆轨迹。 * * @param ebikeTracking 车辆轨迹 * @return 返回结果 */ @PostMapping("ebikeTracking/save") JsonResult saveEbikeTracking(@RequestBody EbikeTracking ebikeTracking); /** * 获取运营区详情。 * * @param regionId 运营区id * @return 返回结果 */ @GetMapping("ebikeRegion/getOperationById") JsonResult getOperationById(@RequestParam(name = "regionId") Long regionId); /** * 根据区域id获取计费规则。 * * @param operationRegionId 运营区id * @return 返回结果 */ @GetMapping("ebikesysrcostset/getRegionFeeConfigById") JsonResult getRegionFeeConfigById(@RequestParam(name = "operationRegionId") Long operationRegionId); }