src/main/java/com/whyc/dto/BattTestData.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/dto/result/RealDateDTO.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/mapper/BattRealdataMapper.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/whyc/service/BattRealdataService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/resources/mapper/BattRealdataMapper.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/whyc/dto/BattTestData.java
@@ -70,7 +70,7 @@ public static final int RC_NUM_PARAM=1000;//最多一千笔 public static final int RC_NUM_Real=5000;//最多一千笔 public static final int RC_NUM_Real = 1000;//最多一千笔 //电池放电测试弹出框中显示排行前几个内阻数据 public static final int mon_res_num=10; src/main/java/com/whyc/dto/result/RealDateDTO.java
New file @@ -0,0 +1,28 @@ package com.whyc.dto.result; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.util.Date; @Data @AllArgsConstructor @NoArgsConstructor public class RealDateDTO { @ApiModelProperty(value = "记录时间") private Date recrodTime; @ApiModelProperty(value = "组端电压") private Float groupVol; @ApiModelProperty(value = "在线电压") private Float onlineVol; @ApiModelProperty(value = "组端电流") private Float groupCurr; @ApiModelProperty(value = "单体电压") private Float monVol; @ApiModelProperty(value = "单体温度") private Float monTmp; @ApiModelProperty(value = "单体内阻") private Float monRes; } src/main/java/com/whyc/mapper/BattRealdataMapper.java
@@ -1,13 +1,15 @@ package com.whyc.mapper; import com.whyc.dto.result.RealDateDTO; import com.whyc.pojo.BattRealdata; import org.apache.ibatis.annotations.Param; import java.util.List; public interface BattRealdataMapper extends CustomMapper<BattRealdata>{ public interface BattRealdataMapper extends CustomMapper<BattRealdata> { //查询历史实时数据 List<BattRealdata> serchByCondition(BattRealdata realdata); List<RealDateDTO> serchByCondition(BattRealdata realdata); //判断表是否存在 int judgeTable(@Param("table") String table); src/main/java/com/whyc/service/BattRealdataService.java
@@ -3,6 +3,7 @@ import com.github.pagehelper.PageInfo; import com.whyc.dto.BattTestData; import com.whyc.dto.Response; import com.whyc.dto.result.RealDateDTO; import com.whyc.mapper.BattRealdataMapper; import com.whyc.pojo.BattRealdata; import com.whyc.util.ActionUtil; @@ -21,41 +22,32 @@ String table=realdata.getBattGroupId()+"_"+ActionUtil.sdfwithOutday.format(realdata.getRecrodTime()); realdata.setTableName(table);//表名时间格式部分 //判断表是否存在 int tableNum=mapper.judgeTable(table); List<BattRealdata> list=new ArrayList(); List listEnd=new ArrayList(); if(tableNum>0){ int maxNum=mapper.searchMaxNum(realdata); int tableNum = mapper.judgeTable(table); List<RealDateDTO> list = new ArrayList(); if(tableNum>0) { int maxNum = mapper.searchMaxNum(realdata); //int minNum=mapper.searchMinNum(realdata); //realdata.setMaxNum(maxNum); //realdata.setMinNum(minNum); //int monCount=Integer.valueOf(realdata.getNote());//单体总数 //int number=realdata.getMaxNum()/monCount;//要取出的总数 int number=maxNum;//单个单体总数 int roteN=0; int endN= BattTestData.RC_NUM_Real;//总笔数 int number = maxNum;//单个单体总数 int roteN = 0; int endN = BattTestData.RC_NUM_Real;//总笔数 //去除筛选,将全部数据取出 if(number<=endN){ roteN=1; }else{ if(number%endN==0){ roteN=number/endN; }else{ roteN=number/endN+1; if (number <= endN) { roteN = 1; } else { if (number % endN == 0) { roteN = number / endN; } else { roteN = number / endN + 1; } } //roteN=roteN*monCount; //realdata.setRoteN(roteN); list=mapper.serchByCondition(realdata); int i=0; for (BattRealdata b:list) { if(i%roteN==0){ listEnd.add(b); } i++; } realdata.setRoteN(roteN); list = mapper.serchByCondition(realdata); } PageInfo pageInfo=new PageInfo(listEnd); return new Response().set(1,pageInfo); PageInfo pageInfo = new PageInfo(list); return new Response().set(1, pageInfo); } } src/main/resources/mapper/BattRealdataMapper.xml
@@ -1,24 +1,45 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.whyc.mapper.BattRealdataMapper"> <resultMap id="battRealData" type="com.whyc.dto.result.RealDateDTO"> <result property="recrodTime" column="recrod_time"></result> <result property="groupVol" column="group_vol"></result> <result property="onlineVol" column="online_vol"></result> <result property="groupCurr" column="group_curr"></result> <result property="monVol" column="mon_vol"></result> <result property="monTmp" column="mon_tmp"></result> <result property="monRes" column="mon_res"></result> </resultMap> <select id="serchByCondition" parameterType="com.whyc.pojo.BattRealdata" resultType="com.whyc.pojo.BattRealdata"> select * from db_batt_history.tb_batt_realdata_${tableName} where recrod_time>=#{recrodTime} and recrod_time<=#{recrodTime1} and mon_num=#{monNum} order by recrod_time asc <select id="serchByCondition" parameterType="com.whyc.pojo.BattRealdata" resultMap="battRealData"> select recrod_time, group_vol, online_vol, group_curr, mon_vol, mon_tmp, mon_res from (select a.*, (@i:= @i+1) as number from (select * from db_batt_history.tb_batt_realdata_${tableName} where recrod_time >= #{recrodTime} and recrod_time <= #{recrodTime1} and mon_num = #{monNum} order by recrod_time asc) a, (select @i:=0) b) c where c.number%#{roteN}=0; </select> <select id="judgeTable" resultType="java.lang.Integer"> select count(*) as tableNum from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='db_batt_history' and TABLE_NAME='tb_batt_realdata_${table}' ; select count(*) as tableNum from INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA = 'db_batt_history' and TABLE_NAME = 'tb_batt_realdata_${table}'; </select> <select id="searchMaxNum" resultType="java.lang.Integer"> select count(*) as maxNum from db_batt_history.tb_batt_realdata_${tableName} where recrod_time>=#{recrodTime} and recrod_time<=#{recrodTime1} and mon_num=#{monNum} select count(*) as maxNum from db_batt_history.tb_batt_realdata_${tableName} where recrod_time >= #{recrodTime} and recrod_time <= #{recrodTime1} and mon_num = #{monNum} </select> <select id="searchMinNum" resultType="java.lang.Integer"> select min(num) as minNum from db_batt_history.tb_batt_realdata_${tableName} where mon_num=#{monNum} select min(num) as minNum from db_batt_history.tb_batt_realdata_${tableName} where mon_num = #{monNum} </select> </mapper>