package com.prolog.rdc.tms.service.fleetManagement;

import java.util.List;

import com.prolog.framework.core.pojo.Page;
import com.prolog.rdc.tms.model.dto.fleetManagement.TVmAccidentregDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.TVmFuelRecordDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.TVmIllegalRecordDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.TVmInsuranceDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.TmsRepairRecordDDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.TmsRepairRecordHDTO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmAccidentregAuditQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmAccidentregQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmAccidentregRegisterQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmAccidentregVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmFuelRecordAuditQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmFuelRecordQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmFuelRecordRegisterQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmFuelRecordVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmIllegalRecordAuditQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmIllegalRecordQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmIllegalRecordRegisterQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmIllegalRecordVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmInsuranceAuditQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmInsuranceQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmInsuranceRegisterQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TVmInsuranceVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordDVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordHAuditQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordHQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordHRegisterQueryVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordHVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.TmsRepairRecordSaveVO;

public interface VehicleManageService {
	/*
	 * 车辆维保查询
	 */
	Page<TmsRepairRecordHDTO> listTmsRepairRecordHData(TmsRepairRecordHQueryVO tmsRepairRecordHQueryVO);

	/*
	 * 车辆维保审核查询
	 */
	Page<TmsRepairRecordHDTO> listTmsRepairRecordHAuditData(TmsRepairRecordHAuditQueryVO tmsRepairRecordHAuditQueryVO);

	/*
	 * 车辆维保登记查询
	 */
	Page<TmsRepairRecordHDTO> listTmsRepairRecordHRegisterData(TmsRepairRecordHRegisterQueryVO tmsRepairRecordHRegisterQueryVO);

	List<TmsRepairRecordDDTO> queryTmsRepairRecordD(TmsRepairRecordDVO vo);

	void tmsRepairRecordSave(TmsRepairRecordSaveVO vo);

	void tmsRepairRecordUpdate(TmsRepairRecordSaveVO vo);

	void tmsRepairRecordDelete(List<TmsRepairRecordHVO> vo);

	void tmsRepairRecordDDelete(List<TmsRepairRecordDVO> vo);

	void tmsRepairRecordAudit(TmsRepairRecordHVO vo);

	void tmsRepairRecordReject(TmsRepairRecordHVO vo);

	/**
	 * 车辆违章查询
	 * 
	 * @param tVmIllegalRecordQueryVO
	 * @return
	 */
	Page<TVmIllegalRecordDTO> listTVmIllegalRecordData(TVmIllegalRecordQueryVO tVmIllegalRecordQueryVO);

	/**
	 * 车辆违章审核查询
	 * 
	 * @param tVmIllegalRecordAuditQueryVO
	 * @return
	 */
	Page<TVmIllegalRecordDTO> listTVmIllegalRecordAuditData(TVmIllegalRecordAuditQueryVO tVmIllegalRecordAuditQueryVO);

	/**
	 * 车辆违章登记查询
	 * 
	 * @param tVmIllegalRecordRegisterQueryVO
	 * @return
	 */
	Page<TVmIllegalRecordDTO> listTVmIllegalRecordRegisterData(TVmIllegalRecordRegisterQueryVO tVmIllegalRecordRegisterQueryVO);

	void tVmIllegalRecordSave(TVmIllegalRecordVO vo);

	void tVmIllegalRecordUpdate(TVmIllegalRecordVO vo);

	void tVmIllegalRecordDelete(List<TVmIllegalRecordVO> vo);

	void tVmIllegalRecordAudit(TVmIllegalRecordVO vo);

	void tVmIllegalRecordReject(TVmIllegalRecordVO vo);

	/**
	 * 车辆事故查询
	 * 
	 * @param tVmAccidentregQueryVO
	 * @return
	 */
	Page<TVmAccidentregDTO> listTVmAccidentregData(TVmAccidentregQueryVO tVmAccidentregQueryVO);

	/**
	 * 车辆事故审核查询
	 * 
	 * @param tVmAccidentregAuditQueryVO
	 * @return
	 */
	Page<TVmAccidentregDTO> listTVmAccidentregAuditData(TVmAccidentregAuditQueryVO tVmAccidentregAuditQueryVO);

	/**
	 * 车辆事故登记查询
	 * 
	 * @param tVmAccidentregRegisterQueryVO
	 * @return
	 */
	Page<TVmAccidentregDTO> listTVmAccidentregRegisterData(TVmAccidentregRegisterQueryVO tVmAccidentregRegisterQueryVO);

	void tVmAccidentregSave(TVmAccidentregVO vo);// 车辆事故登记

	void tVmAccidentregUpdate(TVmAccidentregVO vo);

	void tVmAccidentregDelete(List<TVmAccidentregVO> vo);

	void tVmAccidentregAudit(TVmAccidentregVO vo);

	void tVmAccidentregReject(TVmAccidentregVO vo);

	/**
	 * 车辆保险查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmInsuranceDTO> listTVmInsuranceData(TVmInsuranceQueryVO tVmInsuranceQueryVO);

	/**
	 * 车辆保险审核查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmInsuranceDTO> listTVmInsuranceAuditData(TVmInsuranceAuditQueryVO tVmInsuranceAuditQueryVO);

	/**
	 * 车辆保险登记查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmInsuranceDTO> listTVmInsuranceRegisterData(TVmInsuranceRegisterQueryVO tVmInsuranceRegisterQueryVO);

	void tVmInsuranceSave(TVmInsuranceVO vo);

	void tVmInsuranceUpdate(TVmInsuranceVO vo);

	void tVmInsuranceDelete(List<TVmInsuranceVO> vo);

	void tVmInsuranceAudit(TVmInsuranceVO vo);

	void tVmInsuranceReject(TVmInsuranceVO vo);

	/**
	 * 车辆加油查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmFuelRecordDTO> listTVmFuelRecordData(TVmFuelRecordQueryVO tVmFuelRecordQueryVO);

	/**
	 * 车辆加油审核查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmFuelRecordDTO> listTVmFuelRecordAuditData(TVmFuelRecordAuditQueryVO tVmFuelRecordAuditQueryVO);

	/**
	 * 车辆加油登记查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<TVmFuelRecordDTO> listTVmFuelRecordRegisterData(TVmFuelRecordRegisterQueryVO tVmFuelRecordRegisterQueryVO);

	void tVmFuelRecordSave(TVmFuelRecordVO vo);

	void tVmFuelRecordUpdate(TVmFuelRecordVO vo);

	void tVmFuelRecordDelete(List<TVmFuelRecordVO> vo);

	void tVmFuelRecordAudit(TVmFuelRecordVO vo);

	void tVmFuelRecordReject(TVmFuelRecordVO vo);
}
