package cn.superdesk.uniorder.dao.mapper.organisation;

import cn.superdesk.uniorder.dao.entity.organisation.SysEnterprise;
import cn.superdesk.uniorder.dto.param.organisation.SysEnterpriseQueryCriteria;
import cn.superdesk.uniorder.dto.vo._function.select.SelectOptionVirt;
import cn.superdesk.uniorder.dto.vo.sys.SysOrganizationXEnterpriseVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.cache.annotation.CacheConfig;
import org.springframework.stereotype.Repository;

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

/**
 * SysEnterpriseMapper继承基类
 */
@CacheConfig(cacheNames = "SysEnterpriseMapper")
@Repository
public interface SysEnterpriseMapperEx {

	List<SysOrganizationXEnterpriseVo> findSysOrganizationXEnterprise(Map<String, Object> params);

	List<SysOrganizationXEnterpriseVo> findSysOrganizationXEnterprise(SysEnterpriseQueryCriteria queryCriteria);

	SysEnterprise findByVirtId(Long virId);

	List<SelectOptionVirt> getVirtSelect(Map<String, Object> params);

	SysEnterprise findByVirtIdAndOrgId(@Param("virtId") Long virtId, @Param("orgId") Long orgId);

//	@CacheEvict(value="sys_enterprise", key="#p0")
//	int deleteByPrimaryKey(Long id);

//	int insert(SysEnterprise record);

//	int insertSelective(SysEnterprise record);


//	@Cacheable(value="sys_enterprise", key="#p0")
//	SysEnterprise selectByPrimaryKey(Long id);

//	@CacheEvict(value="sys_enterprise", key="#record.id")
//	int updateByPrimaryKeySelective(SysEnterprise record);

//	@CacheEvict(value="sys_enterprise", key="#record.id")
//	int updateByPrimaryKey(SysEnterprise record);
}
