package com.hzya.frame.basedao.service;

import com.github.pagehelper.PageInfo;
import com.hzya.frame.basedao.entity.RequestDisposeEntity;

import java.util.HashMap;
import java.util.List;

/**
 * @Author lvleigang
 * @Description jdbd 连接对外提供的类
 * @Date 1:45 下午 2022/12/3
 **/
public interface JdbcService {

    /**
     * @param example
     * @return int
     * @Author lvleigang
     * @Description 查询总数
     * @Date 2:51 下午 2022/12/3
     **/
    int countByExample(RequestDisposeEntity example);

    /**
     * @param example
     * @return java.util.List<java.lang.Object>
     * @Author lvleigang
     * @Description 查询数据
     * @Date 2:53 下午 2022/12/3
     **/
    List<HashMap<String, Object>> selectByExample(RequestDisposeEntity example);

    /**
     * @param sql
     * @return java.util.List<java.lang.Object>
     * @Author lvleigang
     * @Description 自定义sql查询查询
     * @Date 2:53 下午 2022/12/3
     **/
    List<HashMap<String, Object>> selectByExample(String sql);

    /**
     * @param example
     * @return PageInfo
     * @Author lvleigang
     * @Description 分页查询数据
     * @Date 2:53 下午 2022/12/3
     **/
    PageInfo queryPageByExample(RequestDisposeEntity example);

    /**
     * @param sql
     * @return PageInfo
     * @Author lvleigang
     * @Description 分页查询数据
     * @Date 2:53 下午 2022/12/3
     **/
    PageInfo queryPageByExample(String sql);

    /**
     * @param example
     * @return int
     * @Author lvleigang
     * @Description 添加数据
     * @Date 2:52 下午 2022/12/3
     **/
    Integer insert(RequestDisposeEntity example);


    /**
     * @param example
     * @return int
     * @Author lvleigang
     * @Description 批量添加数据
     * @Date 2:53 下午 2022/12/3
     **/
    int insertSelective(RequestDisposeEntity example);

    /**
     * @param example
     * @return int
     * @Author lvleigang
     * @Description 删除
     * @Date 2:52 下午 2022/12/3
     **/
    int deleteByExample(RequestDisposeEntity example);


    /**
     * @param example
     * @return int
     * @Author lvleigang
     * @Description 根据条件修改
     * @Date 2:54 下午 2022/12/3
     **/
    int updateByExample(RequestDisposeEntity example);


}
