package com.ozs.mdm.service;

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

import com.ozs.mdm.dto.ColumnInfoDTO;
import com.ozs.mdm.dto.KpiListColumnDTO;
import com.ozs.mdm.dto.MdmInfoColumn;
import com.ozs.mdm.dto.MdmInfoDatabase;
import com.ozs.mdm.dto.MdmInfoTable;
import com.ozs.mdm.util.R;

public interface KpiManageService {

	List<MdmInfoDatabase> listDatabase(String resourceName);

	List<MdmInfoTable> listTableByDatabaseId(String databaseId);

	List<MdmInfoColumn> listColumnByTableId(String tableId);

	R<List<KpiListColumnDTO>> listColumn(String databaseId, String tableId, String sort, String order, Integer page,
			Integer pageSize);

	List<KpiListColumnDTO> listColumnByIds(List<String> ids);

	R<ColumnInfoDTO> getColumnInfoByIds(String id);

	List<MdmInfoDatabase> listOriginal(String resourceName);

	MdmInfoDatabase getDatabase(String id);

	List<KpiListColumnDTO> listColumnByDatabaseId(String databaseId, String tableId);

	List<Map<String, Object>> listData(String databaseId, String sql) throws Exception;


	Integer executeSql(String databaseId, String string) throws Exception;

}
