data-dump/src/main/java/com/celnet/datadump/mapper/CustomMapper.java

130 lines
3.4 KiB
Java
Raw Normal View History

2025-03-28 17:38:34 +08:00
package com.celnet.datadump.mapper;
import com.celnet.datadump.param.SalesforceParam;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
* @author Red
* @description
* @date 2022/09/27
*/
@Mapper
public interface CustomMapper {
/**
* 获取表所有字段
*
* @param tableName tableName
* @return list
*/
public List<String> getFields(@Param("tableName") String tableName);
/**
* 获取表存在的id list
*
* @param tableName tableName
* @param ids id list
* @return list
*/
public List<String> getIds(@Param("tableName") String tableName, @Param("ids") List<String> ids);
/**
* 统计表数据
*
* @param param param
* @return list
*/
public Integer count(@Param("param") SalesforceParam param);
/**
* 检测表是否存在
*
* @param tableName tableName
*/
public String checkTable(@Param("tableName") String tableName);
/**
* 建表方法
*
* @param tableName tableName
* @param maps maps
*/
public void createTable(@Param("tableName") String tableName, @Param("tableComment") String tableComment, @Param("maps") List<Map<String, Object>> maps, @Param("index") List<Map<String, Object>> index);
/**
* 更新方法
*
* @param tableName tableName
* @param maps maps
* @param id id
*/
public void updateById(@Param("tableName") String tableName, @Param("maps") List<Map<String, Object>> maps, @Param("id") String id);
/**
* 更新方法
*
* @param maps maps
* @param api api
* @param sql sql
*/
public void update(@Param("maps") List<Map<String, Object>> maps, @Param("tableName") String api, @Param("sql") String sql);
/**
* 插入方法
*
* @param tableName tableName
* @param maps maps
*/
public void save(@Param("tableName") String tableName, @Param("maps") List<Map<String, Object>> maps);
/**
* 插入方法
*
* @param tableName tableName
* @param keys keys
* @param values values
*/
public void saveBatch(@Param("tableName") String tableName, @Param("keys") Collection<String> keys, @Param("values") Collection<Collection<Object>> values);
/**
* 通用表数据获取
*
* @param api 参数
* @param select 参数
* @param sql 参数
* @return list
*/
public List<Map<String, Object>> list(@Param("select") String select, @Param("api") String api, @Param("sql") String sql);
/**
* 通用表数据获取
*
* @param api 参数
* @param select 参数
* @param sql 参数
* @return list
*/
public List<String> listById(@Param("select") String select, @Param("api") String api, @Param("sql") String sql);
/**
* 通用表数据获取
*
* @param api 参数
* @param select 参数
* @param id 参数
* @return map
*/
public Map<String, Object> getById(@Param("select") String select, @Param("api") String api, @Param("id") String id);
public Integer countBySQL(@Param("api") String api, @Param("sql") String sql);
public void delete(@Param("tableName") String tableName, @Param("ids") List<String> ids);
}