package com.yida.data.form.apply.mapper;

import org.apache.ibatis.annotations.Param;

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

/**
 * 申请类表单填报数据 mapper
 *
 * @author ZYJ
 * @date 2023/11/16
 */
public interface ApplyFormDataMapper {

    /**
     * 查询数据表字段
     *
     * @param tableName 表名称
     * @return java.util.List<java.lang.String>
     * @author ZYJ
     * @date 2023/11/16 17:19
     */
    List<String> findApplyFormFiled(@Param("tableName") String tableName);

    /**
     * 动态保存sql，并返回主键id
     *
     * @param sql          对应sql语句
     * @param parameterMap 参数
     * @author ZYJ
     * @date 2023/11/16 17:34
     */
    void saveFormData(@Param("sql") String sql,
                      @Param("parameterMap") Map<String, Object> parameterMap);

    /**
     * 查询用户填报数据信息
     *
     * @param sql          对应sql语句
     * @param parameterMap 参数
     * @return java.util.Map
     * @author ZYJ
     * @date 2023/11/29 15:28
     */
    Map findFillUserData(@Param("sql") String sql,
                               @Param("parameterMap") Map<String, Object> parameterMap);
}
