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

import com.prolog.framework.core.pojo.Page;
import com.prolog.rdc.tms.model.dto.fleetManagement.InsuranceDTO;
import com.prolog.rdc.tms.model.dto.fleetManagement.InsuranceViewDTO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceAddVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceDeleteVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsurancePopVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceUpdateVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceViewVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.InsuranceWhetherEnableVO;

/**
 * 
 *
 * 车队管理-保险资料服务层
 *
 * @className :InsuranceService
 * @author :zsj
 * @creationTime :2022/04/18
 * @description :
 *
 * @modifier :zsj
 * @modifyTime :2022/04/18
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
public interface InsuranceService {

	/**
	 * 保险资料分页查询
	 * 
	 * @param vo
	 * @return
	 */
	Page<InsuranceDTO> query(InsuranceVO vo);

	/**
	 * 保险资料弹窗
	 * 
	 * @param vo
	 * @return
	 */
	Page<InsuranceDTO> pop(InsurancePopVO vo);

	/**
	 * 保险资料查看
	 * 
	 * @param vo
	 * @return
	 */
	InsuranceViewDTO view(InsuranceViewVO vo);

	/**
	 * 保险资料新增
	 * 
	 * @param vo
	 */
	void save(InsuranceAddVO vo);

	/**
	 * 保险资料修改
	 * 
	 * @param vo
	 */
	void update(InsuranceUpdateVO vo);

	/**
	 * 保险资料是否启用
	 * 
	 * @param insuranceWhetherEnableVO
	 */
	void whetherEnable(InsuranceWhetherEnableVO insuranceWhetherEnableVO);

	/**
	 * 保险资料删除
	 * 
	 * @param insuranceDeleteVO
	 */
	void delete(InsuranceDeleteVO insuranceDeleteVO);
}
