chenjiahe
2024-08-07 4bb3a9bdcc86953d3fba04a7be9abd8b3bfb6a15
src/main/java/com/hx/mybatisTool/SqlSentence.java
@@ -13,7 +13,11 @@
 */
public class SqlSentence {
   /**执行语句*/
   private String sqlSentence;
   /**新增存在查询判断*/
   private String whereExist;
   private Map<String,Object> m;
    /**排序*/
@@ -22,6 +26,8 @@
   private Integer startPage = 0;
    /**每页数量*/
   private Integer pageNum = 0;
   /**条数(当前类使用)*/
   private Integer pageSize;
   //////////////////////////////////////////////////////////////
@@ -84,6 +90,66 @@
      sqlSentence = sql;
      m = values;
   }
   /**
    * sql整条语句-分页
    * @param sql 如:select * from user Where name = #{m.userName} order by age desc
    * @param values 存放的值如:values.put("userName","ChenJiaHe")
    * @param pageNum 当前页数
    * @param pageSize 当前条数
    */
   public void sqlSentencePage(String sql,Map<String,Object> values,int pageNum,int pageSize) {
      if(StringUtils.isEmpty(sql)) {
         throw new TipsException("sql is null");
      }
      if(values == null) {
         throw new TipsException("values is null");
      }
      if(pageNum < 1){
         pageNum = 1;
      }
      if(pageSize < 1){
         pageSize = 1;
      }
      this.pageNum = pageNum;
      this.pageSize = pageSize;
      //算起点
      int pageStart = (pageNum-1)*pageSize;
      sql = sql+" LIMIT "+pageStart+","+pageSize;
      sqlSentence = sql;
      m = values;
   }
   /**分页组装信息
    * @param data 装载信息
    * @param totalNum 总页数
    * @return 装载信息
    */
   public Map<String,Object> pageAssembleData(Map<String,Object> data,int totalNum){
      data.put("pageNum",pageNum);
      data.put("pageSize",pageSize);
      data.put("total",totalNum);
      int pages;
      if(pageSize > 0){
         if(totalNum%pageSize > 0){
            pages = totalNum/pageSize+1;
         }else{
            pages = totalNum/pageSize;
         }
      }else{
         pages = 0;
      }
      data.put("pages",pages);
      if(pages <= pageNum){
         data.put("isLastPage",true);
      }else{
         data.put("isLastPage",false);
      }
      return data;
   }
   /**
    * 查询的语句
@@ -161,6 +227,25 @@
    {
        return (startPage - 1) * pageNum;
    }
   public String getWhereExist() {
      return whereExist;
   }
   public void setWhereExist(String whereExist) {
      if(StringUtils.isNull(whereExist)){
         whereExist = null;
      }
      this.whereExist = whereExist;
   }
   public Integer getPageSize() {
      return pageSize;
   }
   public void setPageSize(Integer pageSize) {
      this.pageSize = pageSize;
   }
}