package com.railway.business.baseinfo.service;

import com.railway.business.baseinfo.domain.BaseDeptStation;
import com.railway.business.baseinfo.domain.BaseStation;
import com.railway.business.baseinfo.domain.vo.BaseStationQuery;
import com.railway.business.baseinfo.domain.vo.BaseStationVo;
import java.util.List;

/**
 * primary key (station_id) using
 *
 * @author author
 * @date 2021/10/16
 */
public interface IBaseStationService {

  /**
   * 新增
   */
  int create(BaseStationVo baseStationVo);

  /**
   * 删除
   */
  int delete(Long[] stationIds);

  /**
   * 更新
   */
  int update(BaseStationVo baseStationVo);

  /**
   * 获取单个
   */
  BaseStationVo getInfo(Long stationId);

  /**
   * 获取区间/站场与车间、线路关联ID
   * @param deptId 车间ID
   * @param lineId 线路ID
   * @param stationId 区间ID
   * @return 关联记录ID
   */
  BaseDeptStation getInfo(Long deptId, Long lineId, Long stationId);

  /**
   * 查询列表
   */
  List<BaseStationVo> getDetailList(BaseStationQuery query);

  /**
   * 查询列表
   */
  List<BaseStation> getListByDeptId(BaseStationQuery query);

}
