package cn.ibizlab.core.lite.extensions.service;

import cn.ibizlab.core.lite.extensions.domain.EntityModel;
import cn.ibizlab.core.lite.extensions.domain.EntityObj;
import cn.ibizlab.core.lite.extensions.model.DataModel;
import cn.ibizlab.util.filter.QueryFilter;

import java.sql.Timestamp;
import java.util.List;

public interface CommonEntityService {

    List<EntityObj> selectBase(EntityModel entityModel, QueryFilter filter);
    List<EntityObj> selectCore(EntityModel entityModel, QueryFilter filter);
    Integer selectCount(EntityModel entityModel, QueryFilter filter);

    List<EntityObj> search(String dataSet, EntityModel entityModel, QueryFilter filter);

    List<EntityObj> search(String dsName, String sql, QueryFilter filter);


    void processList(DataModel dataModel, Timestamp lastModify, LiteDataCallback callback);


}
