package com.chenyang.nse.bussiness.service.core;

import com.chenyang.nse.bussiness.dao.PageInfo;
import com.chenyang.nse.bussiness.entity.orm.table.core.dataproject.TCoreDiscoverySysdata;
import com.chenyang.nse.bussiness.entity.orm.table.core.dataproject.TCoreProjectAllrule;
import com.chenyang.nse.bussiness.entity.orm.table.core.discovery.TcoreDiscoveryDataResult;
import com.chenyang.nse.bussiness.entity.orm.table.core.discovery.TcoreDiscoveryResult;
import com.chenyang.nse.bussiness.entity.vo.DiscoveryResultVO;
import java.lang.reflect.InvocationTargetException;
import java.util.List;
import java.util.Map;

public interface TdataDiscoveryResultService {
   TcoreDiscoveryDataResult getDiscoverResultReport(String tablename);

   void discoverChangeRuleAll(DiscoveryResultVO obj);

   void discoverChangeRule(DiscoveryResultVO obj, String id);

   List<TCoreDiscoverySysdata> discoverResultTable(DiscoveryResultVO obj);

   void makeDiscoverResultSureAll(DiscoveryResultVO obj);

   List<TCoreProjectAllrule> selectDataAreaHas(String project_id);

   List<TCoreProjectAllrule> selectDataAreaFindRule(String project_id, String dataarea_id);

   List<TCoreDiscoverySysdata> discoverResultPage(int i, Integer rows);

   List<TcoreDiscoveryResult> getPageDataResult(String tablename, String tschemas, String ttables, String nfield);

   List<TcoreDiscoveryResult> getPageDataResultfile(PageInfo pageinfo, String dataArea1, String tablename, String tschemas, String ttables, String structStr1, String checksure, String issensitive);

   String getFileContent(String id, String tablename);

   Long getPageDataCount();

   void makeDiscoverResultSure(DiscoveryResultVO obj, String id);

   void discoverDeleRuleAll(DiscoveryResultVO obj);

   void discoverDeleRule(DiscoveryResultVO obj, String id);

   List<TcoreDiscoveryResult> saveExcel(DiscoveryResultVO obj);

   void saveTableData(DiscoveryResultVO obj, List<TcoreDiscoveryResult> list1) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException;

   void delTableData(DiscoveryResultVO obj);

   void saveSysdataTable(List<TCoreDiscoverySysdata> list) throws IllegalAccessException, IllegalArgumentException, InvocationTargetException;

   void clearT();

   List<TCoreProjectAllrule> getRuledis(String project_id, String dataarea_id);

   List<TcoreDiscoveryResult> getResultTableInfo(DiscoveryResultVO obj);

   boolean saveEdition(DiscoveryResultVO obj, String address);

   void resetResultRun(String tablename);

   void clearTable(String tablename);

   Map<String, String> getDataAreaAll();

   Map<String, String> getFindRulsAll();

   List<TcoreDiscoveryResult> selectApiDiscoveryResult(DiscoveryResultVO vo);

   List<TCoreDiscoverySysdata> queryAll();
}
