TTInfoDetailService.java 2.39 KB
package com.bsth.service.schedule;

import com.bsth.entity.schedule.TTInfoDetail;
import com.bsth.service.schedule.datatools.TTInfoDetailForEdit;
import com.bsth.service.schedule.datatools.TTinfoDetailDynamicData;
import com.bsth.service.schedule.exception.ScheduleException;
import com.bsth.service.schedule.utils.DataToolsFile;
import com.bsth.service.schedule.utils.DataToolsFileType;
import com.bsth.service.schedule.utils.TimetableExcelData;

import java.util.List;
import java.util.Map;

/**
 * Created by xu on 16/7/2.
 */
public interface TTInfoDetailService extends BService<TTInfoDetail, Long> {

    /**
     * 获取待编辑的数据。
     * @param xlid 线路id
     * @param ttid 时刻表id
     * @param maxfcno 最大发车顺序号
     * @return
     */
    TTInfoDetailForEdit.EditInfo getEditInfo(Integer xlid, Long ttid, Long maxfcno) throws ScheduleException;

    /**
     * 导出动态时刻表。
     * @param dtInfos
     * @return
     * @throws ScheduleException
     */
    DataToolsFile exportDynamicTTinfo(TTinfoDetailDynamicData.DTInfos dtInfos, DataToolsFileType type) throws ScheduleException;

    /**
     * 获取时刻表最大发车顺序号
     * @param xlid 线路id
     * @param ttinfoid 时刻表id
     * @return
     */
    Long findMaxFcno(Integer xlid, Long ttinfoid);

    /**
     * 验证sheet(以后放到规则引擎里去做)。
     * @param filename excel文件全路径名
     * @param sheetname sheet名字
     * @param lineid 线路id
     * @param lineversion 线路版本
     * @param importFormatType excel导入业务格式
     */
    void validateExcelSheet(
            String filename,
            String sheetname,
            Integer lineid,
            String linename,
            Integer lineversion,
            TimetableExcelData.ImportFormatType importFormatType) throws Exception;

    /**
     * 验证关联的线路标准信息(以后放到规则引擎里去做)。
     * @param lineinfoid 线路id
     */
    void validateAssoLineInfo(Integer lineinfoid) throws ScheduleException;

    // TODO:这个方法可以用通用方法解决,以后改
    List<TTInfoDetail> findBcdetails(Integer xlId, Long ttinfoId, Long lpId);

    Map<String, Object> skbDetailMxSave(Map<String, Object> map);

    List<Map<String, Object>> findZdAndTcc(int lineid, int xldir, int lineversion);
}