package bus.service;

import bus.model.dto.*;
import bus.model.dto.page.BCourseInfoPageDto;
import bus.model.vo.BCourseInfoVo;
import bus.model.po.BCourseInfoPo;
import com.baomidou.mybatisplus.extension.service.IService;

import java.math.BigDecimal;
import java.util.List;

/**
 * @Program: bus
 * @Description: 描述
 * @Author: zy
 * @Date: 2025-03-02 19:53:49
 **/
public interface BCourseInfoService extends IService<BCourseInfoPo> {


    /**
     * 详情
     * @param id
     * @return
     */
    BCourseInfoDto getDetailById(String id);

	/**
     * 保存
     * @param dto
     * @return
     */
    void save(BCourseInfoDto dto);

    /**
    * 列表
    * @param dto
    * @return
    */
    List<BCourseInfoVo> list(BCourseInfoPageDto dto);

	/**
     * 修改
     * @param dto
     * @return
     */
    void update(BCourseInfoDto dto);

	/**
     * 删除
     * @param id
     * @return
     */
    void delete(String id);

    List<BBusTrackInfoDto> getNearbyRoutes(BigDecimal latitude, BigDecimal longitude, Integer radius);

    List<BCourseTrackTreeDto> getTreeList();

    BTrackStationDto getPoint(String var1);

    List<BStationPointDto> getAllPoint();

    List<BTrackCourseDto> getAllCourse();
}
