创建实体类
package com.wapwag.woss.modules.sys.entity;
import com.wapwag.woss.common.persistence.DataEntity;
public class PumpReportData extends DataEntity<PumpReportData> {
private String LvQianYaLi; //市政滤前压力
private String LvHouYaLi; //市政滤后压力
private String ChuShuiYaLi1;//分区1_出水压力
private String ChuShuiYaLi2;//分区2_出水压力
private String ChuShuiYaLi3;//分区3_出水压力
private String ChuShuiYaLi4;//分区4_出水压力
private String ChuShuiYaLi5;//分区5_出水压力
private String JinShuiLiuLiang;//水箱进水瞬时流量
private String YeWei1;//水箱1液位
private String YeWei2;//水箱2液位
private String ZhuoDu;//浊度
private String YuLv;//余氯
private String ZaoYin;//噪音
private String ZongGuanJinShuiLiuLiang;//总管累计流量
private Integer LvQianYaLiException; //市政滤前压力
private Integer LvHouYaLiException; //市政滤后压力
private Integer ChuShuiYaLi1Exception;//分区1_出水压力
private Integer ChuShuiYaLi2Exception;//分区2_出水压力
private Integer ChuShuiYaLi3Exception;//分区3_出水压力
private Integer ChuShuiYaLi4Exception;//分区4_出水压力
private Integer ChuShuiYaLi5Exception;//分区5_出水压力
private Integer JinShuiLiuLiangException;//水箱进水瞬时流量
private Integer YeWei1Exception;//水箱1液位
private Integer YeWei2Exception;//水箱2液位
private Integer ZhuoDuException;//浊度
private Integer YuLvException;//余氯
private Integer ZaoYinException;//噪音
private Integer ZongGuanJinShuiLiuLiangException;//总管累计流量
private String dateTime;
private String value;
private String pinyin;
private String tagName;
private String minvalue;
private String bigvalue;
private String idDevice;
private String thAvgTotalValue;//3小时夜间总管进水平均流量
private String wholeAvgTotalValue;//24h 总管进水平均流量
private String tankAvgValue;//水箱进水阀打开时水箱进水平均流量
private String pumpName;
public String getLvQianYaLi() {
return LvQianYaLi;
}
public void setLvQianYaLi(String lvQianYaLi) {
LvQianYaLi = lvQianYaLi;
}
public String getLvHouYaLi() {
return LvHouYaLi;
}
public void setLvHouYaLi(String lvHouYaLi) {
LvHouYaLi = lvHouYaLi;
}
public String getChuShuiYaLi1() {
return ChuShuiYaLi1;
}
public void setChuShuiYaLi1(String chuShuiYaLi1) {
ChuShuiYaLi1 = chuShuiYaLi1;
}
public String getChuShuiYaLi2() {
return ChuShuiYaLi2;
}
public void setChuShuiYaLi2(String chuShuiYaLi2) {
ChuShuiYaLi2 = chuShuiYaLi2;
}
public String getChuShuiYaLi3() {
return ChuShuiYaLi3;
}
public void setChuShuiYaLi3(String chuShuiYaLi3) {
ChuShuiYaLi3 = chuShuiYaLi3;
}
public String getChuShuiYaLi4() {
return ChuShuiYaLi4;
}
public void setChuShuiYaLi4(String chuShuiYaLi4) {
ChuShuiYaLi4 = chuShuiYaLi4;
}
public String getChuShuiYaLi5() {
return ChuShuiYaLi5;
}
public void setChuShuiYaLi5(String chuShuiYaLi5) {
ChuShuiYaLi5 = chuShuiYaLi5;
}
public String getJinShuiLiuLiang() {
return JinShuiLiuLiang;
}
public void setJinShuiLiuLiang(String jinShuiLiuLiang) {
JinShuiLiuLiang = jinShuiLiuLiang;
}
public String getYeWei1() {
return YeWei1;
}
public void setYeWei1(String yeWei1) {
YeWei1 = yeWei1;
}
public String getYeWei2() {
return YeWei2;
}
public void setYeWei2(String yeWei2) {
YeWei2 = yeWei2;
}
public String getZhuoDu() {
return ZhuoDu;
}
public void setZhuoDu(String zhuoDu) {
ZhuoDu = zhuoDu;
}
public String getYuLv() {
return YuLv;
}
public void setYuLv(String yuLv) {
YuLv = yuLv;
}
public String getZaoYin() {
return ZaoYin;
}
public void setZaoYin(String zaoYin) {
ZaoYin = zaoYin;
}
public String getZongGuanJinShuiLiuLiang() {
return ZongGuanJinShuiLiuLiang;
}
public void setZongGuanJinShuiLiuLiang(String zongGuanJinShuiLiuLiang) {
ZongGuanJinShuiLiuLiang = zongGuanJinShuiLiuLiang;
}
public String getDateTime() {
return dateTime;
}
public void setDateTime(String dateTime) {
this.dateTime = dateTime;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
public String getPinyin() {
return pinyin;
}
public void setPinyin(String pinyin) {
this.pinyin = pinyin;
}
public String getTagName() {
return tagName;
}
public void setTagName(String tagName) {
this.tagName = tagName;
}
public String getMinvalue() {
return minvalue;
}
public void setMinvalue(String minvalue) {
this.minvalue = minvalue;
}
public String getBigvalue() {
return bigvalue;
}
public void setBigvalue(String bigvalue) {
this.bigvalue = bigvalue;
}
public String getIdDevice() {
return idDevice;
}
public void setIdDevice(String idDevice) {
this.idDevice = idDevice;
}
public String getThAvgTotalValue() {
return thAvgTotalValue;
}
public void setThAvgTotalValue(String thAvgTotalValue) {
this.thAvgTotalValue = thAvgTotalValue;
}
public String getWholeAvgTotalValue() {
return wholeAvgTotalValue;
}
public void setWholeAvgTotalValue(String wholeAvgTotalValue) {
this.wholeAvgTotalValue = wholeAvgTotalValue;
}
public String getTankAvgValue() {
return tankAvgValue;
}
public void setTankAvgValue(String tankAvgValue) {
this.tankAvgValue = tankAvgValue;
}
public String getPumpName() {
return pumpName;
}
public void setPumpName(String pumpName) {
this.pumpName = pumpName;
}
public Integer getLvQianYaLiException() {
if("".equals(LvQianYaLiException)||LvQianYaLiException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return LvQianYaLiException;
}
public void setLvQianYaLiException(Integer lvQianYaLiException) {
LvQianYaLiException = lvQianYaLiException;
}
public Integer getLvHouYaLiException() {
if("".equals(LvHouYaLiException)||LvHouYaLiException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return LvHouYaLiException;
}
public void setLvHouYaLiException(Integer lvHouYaLiException) {
LvHouYaLiException = lvHouYaLiException;
}
public Integer getChuShuiYaLi1Exception() {
if("".equals(ChuShuiYaLi1Exception)||ChuShuiYaLi1Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ChuShuiYaLi1Exception;
}
public void setChuShuiYaLi1Exception(Integer chuShuiYaLi1Exception) {
ChuShuiYaLi1Exception = chuShuiYaLi1Exception;
}
public Integer getChuShuiYaLi2Exception() {
if("".equals(ChuShuiYaLi2Exception)||ChuShuiYaLi2Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ChuShuiYaLi2Exception;
}
public void setChuShuiYaLi2Exception(Integer chuShuiYaLi2Exception) {
ChuShuiYaLi2Exception = chuShuiYaLi2Exception;
}
public Integer getChuShuiYaLi3Exception() {
if("".equals(ChuShuiYaLi3Exception)||ChuShuiYaLi3Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ChuShuiYaLi3Exception;
}
public void setChuShuiYaLi3Exception(Integer chuShuiYaLi3Exception) {
ChuShuiYaLi3Exception = chuShuiYaLi3Exception;
}
public Integer getChuShuiYaLi4Exception() {
if("".equals(ChuShuiYaLi4Exception)||ChuShuiYaLi4Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ChuShuiYaLi4Exception;
}
public void setChuShuiYaLi4Exception(Integer chuShuiYaLi4Exception) {
ChuShuiYaLi4Exception = chuShuiYaLi4Exception;
}
public Integer getChuShuiYaLi5Exception() {
if("".equals(ChuShuiYaLi5Exception)||ChuShuiYaLi5Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ChuShuiYaLi5Exception;
}
public void setChuShuiYaLi5Exception(Integer chuShuiYaLi5Exception) {
ChuShuiYaLi5Exception = chuShuiYaLi5Exception;
}
public Integer getJinShuiLiuLiangException() {
if("".equals(JinShuiLiuLiangException)||JinShuiLiuLiangException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return JinShuiLiuLiangException;
}
public void setJinShuiLiuLiangException(Integer jinShuiLiuLiangException) {
JinShuiLiuLiangException = jinShuiLiuLiangException;
}
public Integer getYeWei1Exception() {
if("".equals(YeWei1Exception)||YeWei1Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return YeWei1Exception;
}
public void setYeWei1Exception(Integer yeWei1Exception) {
YeWei1Exception = yeWei1Exception;
}
public Integer getYeWei2Exception() {
if("".equals(YeWei2Exception)||YeWei2Exception==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return YeWei2Exception;
}
public void setYeWei2Exception(Integer yeWei2Exception) {
YeWei2Exception = yeWei2Exception;
}
public Integer getZhuoDuException() {
if("".equals(ZhuoDuException)||ZhuoDuException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ZhuoDuException;
}
public void setZhuoDuException(Integer zhuoDuException) {
ZhuoDuException = zhuoDuException;
}
public Integer getYuLvException() {
if("".equals(YuLvException)||YuLvException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return YuLvException;
}
public void setYuLvException(Integer yuLvException) {
YuLvException = yuLvException;
}
public Integer getZaoYinException() {
if("".equals(ZaoYinException)||ZaoYinException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ZaoYinException;
}
public void setZaoYinException(Integer zaoYinException) {
ZaoYinException = zaoYinException;
}
public Integer getZongGuanJinShuiLiuLiangException() {
if("".equals(ZongGuanJinShuiLiuLiangException)||ZongGuanJinShuiLiuLiangException==null){
return 0;//去除该属性的前后空格并进行非空非null判断
}
return ZongGuanJinShuiLiuLiangException;
}
public void setZongGuanJinShuiLiuLiangException(Integer zongGuanJinShuiLiuLiangException) {
ZongGuanJinShuiLiuLiangException = zongGuanJinShuiLiuLiangException;
}
}
查询数据,对查询的数据做处理
private static final Map<String,String> nameRelation = new HashMap<String,String>(){{
put("LvQianYaLi","市政滤前压力");
put("LvHouYaLi","市政滤后压力");
put("ChuShuiYaLi1","分区1_出水压力");
put("ChuShuiYaLi2","分区2_出水压力");
put("ChuShuiYaLi3","分区3_出水压力");
put("ChuShuiYaLi4","分区4_出水压力");
put("ChuShuiYaLi5","分区5_出水压力");
put("JinShuiLiuLiang","水箱进水瞬时流量");
put("YeWei1","水箱1液位");
put("YeWei2","水箱2液位");
put("ZhuoDu","浊度");
put("YuLv","余氯");
put("ZaoYin","噪音");
put("ZongGuanJinShuiLiuLiang","总管累计流量");
}};
private static final Map<String,String> reflectRelation = new HashMap<String,String>(){{
put("LvQianYaLi","LvQianYaLiException");
put("LvHouYaLi","LvHouYaLiException");
put("ChuShuiYaLi1","ChuShuiYaLi1Exception");
put("ChuShuiYaLi2","ChuShuiYaLi2Exception");
put("ChuShuiYaLi3","ChuShuiYaLi3Exception");
put("ChuShuiYaLi4","ChuShuiYaLi4Exception");
put("ChuShuiYaLi5","ChuShuiYaLi5Exception");
put("JinShuiLiuLiang","JinShuiLiuLiangException");
put("YeWei1","YeWei1Exception");
put("YeWei2","YeWei2Exception");
put("ZhuoDu","ZhuoDuException");
put("YuLv","YuLvException");
put("ZaoYin","ZaoYinException");
put("ZongGuanJinShuiLiuLiang","ZongGuanJinShuiLiuLiangException");
}};
public List<PumpReportData> queryPumpReportDayData(Integer detailedModel,String startDate,String endDate,String pumpHouseId){
List<Services> servicesList = reportDao.queryAlarmPoint(pumpHouseId);
Map<String, Services> collect = servicesList.stream().collect(Collectors.toMap(Services::getName, a -> a, (e1, e2) -> e1));
List<PumpReportData> pumpReportDataList = reportDao.queryReportDetailData(pumpHouseId, startDate, endDate, detailedModel);
pumpReportDataList.stream().forEach(data->{
Services services = null;
BigDecimal max = new BigDecimal(0.0f);
BigDecimal min = new BigDecimal(0.0f);
BigDecimal real = new BigDecimal(0.0f);
String temp = null;
for (Field field : data.getClass().getDeclaredFields()) {//遍历实体所有属性
field.setAccessible(true);//设置私有属性可见
String name = field.getName();//获取属性名称
if(null != nameRelation.get(name) && null != (services=collect.get(nameRelation.get(name)))){
try {
Field declaredField;
if(null == field.get(data)){//获取属性值
try {
declaredField = data.getClass().getDeclaredField(reflectRelation.get(name));
declaredField.setAccessible(true);
declaredField.set(data,1);
continue;
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}else{
temp = (String) field.get(data);//获取属性值
}
if(temp.equals("-") || temp.equals("/")){
continue;
}
real = new BigDecimal(temp);
max = null == services.getRangemaximum()?null:new BigDecimal(services.getRangemaximum());
min = null == services.getRangeminimum()?null:new BigDecimal(services.getRangeminimum());
try {
declaredField = data.getClass().getDeclaredField(reflectRelation.get(name));//根据属性名称获取实体属性
declaredField.setAccessible(true);
if((null != min && real.compareTo(min) <0) || (null != max && real.compareTo(max) >0)){
declaredField.set(data,1);//给属性设置值
}else{
declaredField.set(data,0);
}
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
});
return pumpReportDataList;
}