package com.xiaopeng.operation.controller; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.xiaopeng.api.model.operation.XpRoutePlan; import com.xiaopeng.common.core.domain.R; import com.xiaopeng.common.core.web.page.PageInfo; import com.xiaopeng.operation.dto.RoutePlanAddDTO; import com.xiaopeng.operation.dto.RoutePlanEditDTO; import com.xiaopeng.operation.query.RoutePlanPageListQuery; import com.xiaopeng.operation.service.IXpRoutePlanService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; /** *

* 路线规划配置 前端控制器 *

* * @author mitao * @since 2026-02-03 */ @RestController @RequestMapping("") @Api(tags = "路线规划配置管理") @Slf4j public class XpRoutePlanController { @Resource private IXpRoutePlanService routePlanService; /** * 分页查询路线规划配置列表 */ @ApiOperation(value = "路线规划配置分页列表", tags = {"管理后台-交易管理-导航及路线规划"}, response = XpRoutePlan.class) @PostMapping("/api/v1/routePlan/pageList") public R> pageList(@RequestBody RoutePlanPageListQuery query) { PageInfo pageInfo = routePlanService.pageList(query); return R.ok(pageInfo); } /** * 新增路线规划配置 */ @ApiOperation(value = "新增路线规划配置", tags = {"管理后台-交易管理-导航及路线规划"}) @PostMapping("/api/v1/routePlan/add") public R add(@Validated @RequestBody RoutePlanAddDTO dto) { routePlanService.add(dto); return R.ok(); } /** * 编辑路线规划配置 */ @ApiOperation(value = "编辑路线规划配置", tags = {"管理后台-交易管理-导航及路线规划"}) @PostMapping("/api/v1/routePlan/edit") public R edit(@Validated @RequestBody RoutePlanEditDTO dto) { routePlanService.edit(dto); return R.ok(); } /** * 删除路线规划配置 */ @ApiOperation(value = "删除路线规划配置", tags = {"管理后台-交易管理-导航及路线规划"}) @DeleteMapping("/api/v1/routePlan/deleteById/{id}") public R deleteById(@ApiParam(name = "id", value = "线路ID") @PathVariable Long id) { routePlanService.deleteById(id); return R.ok(); } /** * 根据openCityId获取路线规划配置 * @param openCityId * @return */ @PostMapping("/inner/v1/routePlan/getXpRoutePlanOpenCityId") public R getXpRoutePlanOpenCityId(@RequestParam Long openCityId) { XpRoutePlan routePlan = routePlanService.getOne(new QueryWrapper().eq("open_city_id", openCityId).eq("auth_status", 2)); return R.ok(routePlan); } }