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

141 lines
3.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.celnet.datadump.mapper;
import com.celnet.datadump.param.SalesforceParam;
import cn.hutool.json.JSONObject;
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);
/**
* 通用表数据获取返回JosnObject
*
* @param api 参数
* @param select 参数
* @param sql 参数
* @return list
*/
public List<JSONObject> listJsonObject(@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);
}