package com.ym.mec.biz.service;

import com.ym.mec.biz.dal.dto.TenantContractTemplateDto;
import com.ym.mec.biz.dal.entity.TenantContractTemplate;
import com.ym.mec.common.page.PageInfo;
import com.ym.mec.common.page.QueryInfo;
import com.ym.mec.common.service.BaseService;

public interface TenantContractTemplateService extends BaseService<Integer, TenantContractTemplate> {
	
	/**
	 * 分页查询
	 * @param queryInfo
	 * @return
	 */
	PageInfo<TenantContractTemplateDto> queryPageList(QueryInfo queryInfo);
	
	/**
	 * 启用协议
	 * @param id
	 * @param userId 操作人
	 * @return
	 */
	boolean enableContract(Integer id, Integer userId);

	/**
	 * 查询最新协议模板
	 * @param tenantId
	 * @param owner
	 * @param type
	 * @return
	 */
	TenantContractTemplate queryLatestContractTemplate(Integer tenantId, String owner, String type);
	
	boolean createContractTemplate(TenantContractTemplate tenantContractTemplate);
	
	boolean updateContractTempalte(TenantContractTemplate tenantContractTemplate);

    void upgradeContractVersion(Integer tenantId);
}