package com.ozs.kpim.mapper.kpiconfig;

import com.ozs.kpim.dto.kpiconfig.KpiRelPO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @ClassName KpiRelationMapper
 * @Desc KPI配置关联关系Mapper
 * @Author jade
 * @Date 2019/2/22
 * @Version 1.0
 */
public interface KpiRelationMapper {

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 批量插入数据到kpim_rel_kpi_topic表
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [record]
	 * 
	 * @return int
	 **/
	int insertKpiRelTopicBatch(List<KpiRelPO> record);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 删除kpim_rel_kpi_topic表kpiId相关的数据
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [kpiId]
	 * 
	 * @return int
	 **/
	int deleteKpiRelTopicByKpiId(@Param("kpiId") String kpiId);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 批量插入数据到kpim_rel_kpi_user表
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [record]
	 * 
	 * @return int
	 **/
	int insertKpiRelUserBatch(List<KpiRelPO> record);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 删除kpim_rel_kpi_user表kpiId相关的数据
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [kpiId]
	 * 
	 * @return int
	 **/
	int deleteKpiRelUserByKpiId(@Param("kpiId") String kpiId);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 批量插入数据到kpim_rel_kpi_column表
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [record]
	 * 
	 * @return int
	 **/
	int insertKpiRelColumnBatch(List<KpiRelPO> record);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 删除kpim_rel_kpi_column表kpiId相关的数据
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [kpiId]
	 * 
	 * @return int
	 **/
	int deleteKpiRelColumnByKpiId(@Param("kpiId") String kpiId);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 查询关联列ID
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [id]
	 * 
	 * @return java.util.List<java.lang.String>
	 **/
	List<String> listColumnIdsByKpiId(@Param("kpiId") String kpiId);

	/*
	 * *
	 * 
	 * @Author jade
	 * 
	 * @Description 查询columnId是否被使用
	 * 
	 * @Date 2019/2/22
	 * 
	 * @Param [id]
	 * 
	 * @return int
	 **/
	int getCountByColumnId(@Param("columnId") String columnId);

	int insertKpiRelFunctionBatch(@Param("kpiId") String id, @Param("functionId") String functionId);

	int deleteKpiRelFunctionByKpiId(@Param("kpiId") String id);
}
