修改了一点点BUG
parent
384e907a8f
commit
e6ca08c590
|
|
@ -106,9 +106,9 @@ public interface JcskSyRMapper extends BaseMapper<JcskSyR> {
|
|||
|
||||
@Select("""
|
||||
<script>
|
||||
select to_char(t.tm,'YYYY-MM-DD HH24:MI:SS') as tm,t.rz
|
||||
select to_char(t.tm,'YYYY-MM-DD HH24:00:SS') as tm,t.rz
|
||||
from public.st_rsvr_r t
|
||||
where t.stcd = #{stcd} and to_char(t.tm, 'MI:SS') = '00:00'
|
||||
where t.stcd = #{stcd} and to_char(t.tm, 'SS') = '00'
|
||||
<if test="obj.dateTimeRangeSo != null and obj.dateTimeRangeSo.start != null">
|
||||
and t.tm <![CDATA[>=]]> #{obj.dateTimeRangeSo.start}
|
||||
</if>
|
||||
|
|
@ -137,7 +137,7 @@ public interface JcskSyRMapper extends BaseMapper<JcskSyR> {
|
|||
<script>
|
||||
select to_char(t.tm,'YYYY-MM-DD') as tm,t.rz
|
||||
from public.st_rsvr_r t
|
||||
where to_char(t.tm, 'HH24') = '08:00:00' and t.stcd = #{stcd}
|
||||
where to_char(t.tm, 'HH24') = '08' and t.stcd = #{stcd}
|
||||
<if test="obj.dateTimeRangeSo != null and obj.dateTimeRangeSo.start != null">
|
||||
and t.tm <![CDATA[>=]]> #{obj.dateTimeRangeSo.start}
|
||||
</if>
|
||||
|
|
@ -151,9 +151,9 @@ public interface JcskSyRMapper extends BaseMapper<JcskSyR> {
|
|||
|
||||
@Select("""
|
||||
<script>
|
||||
select t.tm,t.rz
|
||||
select to_char(t.tm,'YYYY-MM-DD HH:00:ss') as tm,t.rz
|
||||
from public.st_rsvr_r t
|
||||
where to_char(t.tm, 'MI:SS') = '00:00' and to_char(t.tm, 'HH24:MI') like '%:00' and t.stcd = #{stcd}
|
||||
where to_char(t.tm, 'SS') = '00' and t.stcd = #{stcd}
|
||||
<if test="obj.dateTimeRangeSo != null and obj.dateTimeRangeSo.start != null">
|
||||
and t.tm <![CDATA[>=]]> #{obj.dateTimeRangeSo.start}
|
||||
</if>
|
||||
|
|
|
|||
|
|
@ -182,7 +182,10 @@ public class JcskSyRService extends ServiceImpl<JcskSyRMapper, JcskSyR> {
|
|||
private List<OsmoticPressDetailVo> bindPressDetail(List<OsmoticPressDetailVo> list, List<StRzVo> stRzVos) {
|
||||
HashSet<String> timeSet = new HashSet<>();
|
||||
list.forEach(v -> timeSet.add(v.getTm()));
|
||||
stRzVos.forEach(v -> timeSet.add(v.getTm()));
|
||||
stRzVos.forEach(v -> {
|
||||
String hourTimeForRz = getHourTime(v.getTm());
|
||||
timeSet.add(hourTimeForRz);
|
||||
});
|
||||
|
||||
List<OsmoticPressDetailVo> result = new ArrayList<>();
|
||||
timeSet.forEach(time -> {
|
||||
|
|
@ -195,7 +198,7 @@ public class JcskSyRService extends ServiceImpl<JcskSyRMapper, JcskSyR> {
|
|||
// 查询库水位数据:如果时间不是整点,使用整点时间查询
|
||||
String hourTimeForRz = getHourTime(vo.getTm());
|
||||
stRzVos.stream()
|
||||
.filter(rz -> hourTimeForRz.equals(rz.getTm()))
|
||||
.filter(rz -> hourTimeForRz.equals(getHourTime(rz.getTm())))
|
||||
.findFirst()
|
||||
.ifPresent(rz -> vo.setRz(rz.getRz()));
|
||||
|
||||
|
|
@ -303,7 +306,12 @@ public class JcskSyRService extends ServiceImpl<JcskSyRMapper, JcskSyR> {
|
|||
String stcd = jcskGnssRService.getStcd();
|
||||
//查询库水位
|
||||
List<StRzVo> list = baseMapper.queryRz2(osmoticQuerySo,stcd);
|
||||
Map<String, BigDecimal> rzMap = list.stream().collect(Collectors.toMap(StRzVo::getTm, StRzVo::getRz));
|
||||
Map<String, BigDecimal> rzMap = list.stream()
|
||||
.collect(Collectors.toMap(
|
||||
StRzVo::getTm, // 键:时间
|
||||
StRzVo::getRz, // 值:水位
|
||||
(existingValue, newValue) -> existingValue // 重复时保留第一个值
|
||||
));
|
||||
//查询测站管水位
|
||||
List<OsmoticValueVo2> valueList;
|
||||
if(osmoticQuerySo.getType() == 1){
|
||||
|
|
@ -410,7 +418,12 @@ public class JcskSyRService extends ServiceImpl<JcskSyRMapper, JcskSyR> {
|
|||
//查询库水位
|
||||
//TODO 数据是每整点过五分监测一次(暂时修改,看后续实际数据来了之后会怎么样)
|
||||
List<StRzVo> list = baseMapper.queryLineRz(osmoticQuerySo,stcd);
|
||||
Map<String, BigDecimal> rzMap = list.stream().collect(Collectors.toMap(StRzVo::getTm, StRzVo::getRz));
|
||||
Map<String, BigDecimal> rzMap = list.stream()
|
||||
.collect(Collectors.toMap(
|
||||
StRzVo::getTm, // 键:时间
|
||||
StRzVo::getRz, // 值:水位
|
||||
(existingValue, newValue) -> existingValue // 重复时保留第一个值
|
||||
));
|
||||
//查询测站管水位
|
||||
List<OsmoticValueVo2> valueList = baseMapper.queryLineValue(osmoticQuerySo);
|
||||
//查询测站预警信息
|
||||
|
|
|
|||
|
|
@ -181,19 +181,33 @@ public class StWaterRReorganizeService extends ServiceImpl<StWaterRReorganizeMap
|
|||
vo.setTm(nowStwrr.getTm());
|
||||
|
||||
// 干渠灌溉1数据
|
||||
vo.setMci1YearRateV(nowStwrr.getMci1V().divide(mci1VSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
vo.setMci1V(nowStwrr.getMci1V().toString());
|
||||
if(mci1VSum.compareTo(BigDecimal.ZERO) == 0){
|
||||
vo.setMci1YearRateV("0%");
|
||||
}else{
|
||||
vo.setMci1YearRateV(nowStwrr.getMci1V().divide(mci1VSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
}
|
||||
vo.setMci1V(nowStwrr.getMci1V() == null?null:nowStwrr.getMci1V().toString());
|
||||
|
||||
// 干渠灌溉2数据
|
||||
vo.setMci2YearRateV(nowStwrr.getMci2V().divide(mci2VSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
vo.setMci2V(nowStwrr.getMci2V().toString());
|
||||
if(mci2VSum.compareTo(BigDecimal.ZERO) == 0){
|
||||
vo.setMci2YearRateV("0%");
|
||||
}else{
|
||||
vo.setMci2YearRateV(nowStwrr.getMci2V().divide(mci2VSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
}
|
||||
|
||||
vo.setMci2V(nowStwrr.getMci2V() == null?null:nowStwrr.getMci2V().toString());
|
||||
|
||||
// 生态数据
|
||||
vo.setEcologyYearRateV(nowStwrr.getEcologyV().divide(ecologyVSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
vo.setEcologyV(nowStwrr.getEcologyV().toString());
|
||||
if(ecologyVSum.compareTo(BigDecimal.ZERO) == 0){
|
||||
vo.setEcologyV("0%");
|
||||
}else{
|
||||
vo.setEcologyYearRateV(nowStwrr.getEcologyV().divide(ecologyVSum, 4, BigDecimal.ROUND_HALF_UP)
|
||||
.multiply(new BigDecimal(100)).setScale(1, BigDecimal.ROUND_HALF_UP).toString().concat("%"));
|
||||
}
|
||||
|
||||
vo.setEcologyV(nowStwrr.getEcologyV() == null? null:nowStwrr.getEcologyV().toString());
|
||||
|
||||
// 查找去年同期数据
|
||||
StWaterRReorganize lastStwrr = lastYearList.stream()
|
||||
|
|
|
|||
|
|
@ -72,9 +72,6 @@ public class StWaterDataTask {
|
|||
).getSeconds();
|
||||
v = queryData.get(i).getQ().multiply(new BigDecimal(seconds));
|
||||
}
|
||||
if(queryData.size() == 1){
|
||||
v = null;
|
||||
}
|
||||
entity.setV(v);
|
||||
syncData.add(entity);
|
||||
}
|
||||
|
|
@ -86,6 +83,7 @@ public class StWaterDataTask {
|
|||
StWaterR stWaterR = syncData.get(syncData.size() - 1);
|
||||
StWaterRReal stWaterRReal = new StWaterRReal();
|
||||
BeanUtils.copyProperties(stWaterR, stWaterRReal);
|
||||
stWaterRReal.setV(stWaterR.getV().toString());
|
||||
boolean flag = stWaterRRealService.getBaseMapper().insertOrUpdate(stWaterRReal);
|
||||
}
|
||||
}else{
|
||||
|
|
@ -111,9 +109,6 @@ public class StWaterDataTask {
|
|||
).getSeconds();
|
||||
v = queryData.get(i).getQ().multiply(new BigDecimal(seconds));
|
||||
}
|
||||
if(queryData.size() == 1){
|
||||
v = null;
|
||||
}
|
||||
entity.setV(v);
|
||||
syncData.add(entity);
|
||||
}
|
||||
|
|
@ -124,6 +119,7 @@ public class StWaterDataTask {
|
|||
StWaterR stWaterR = syncData.get(syncData.size() - 1);
|
||||
StWaterRReal stWaterRReal = new StWaterRReal();
|
||||
BeanUtils.copyProperties(stWaterR, stWaterRReal);
|
||||
stWaterRReal.setV(stWaterR.getV().toString());
|
||||
LambdaQueryWrapper<StWaterRReal> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(StWaterRReal::getStcd, stWaterR.getStcd());
|
||||
boolean remove = stWaterRRealService.remove(queryWrapper);
|
||||
|
|
@ -199,8 +195,8 @@ public class StWaterDataTask {
|
|||
reorganize.setEcologyQ(ecologyData.getQ());
|
||||
reorganize.setEcologyV(ecologyData.getV());
|
||||
} else {
|
||||
reorganize.setEcologyQ(null);
|
||||
reorganize.setEcologyV(null);
|
||||
reorganize.setEcologyQ(BigDecimal.ZERO);
|
||||
reorganize.setEcologyV(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 设置干渠灌溉1数据
|
||||
|
|
@ -208,8 +204,8 @@ public class StWaterDataTask {
|
|||
reorganize.setMci1Q(mci1Data.getQ());
|
||||
reorganize.setMci1V(mci1Data.getV());
|
||||
} else {
|
||||
reorganize.setMci1Q(null);
|
||||
reorganize.setMci1V(null);
|
||||
reorganize.setMci1Q(BigDecimal.ZERO);
|
||||
reorganize.setMci1V(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 设置干渠灌溉2数据
|
||||
|
|
@ -217,8 +213,8 @@ public class StWaterDataTask {
|
|||
reorganize.setMci2Q(mci2Data.getQ());
|
||||
reorganize.setMci2V(mci2Data.getV());
|
||||
} else {
|
||||
reorganize.setMci2Q(null);
|
||||
reorganize.setMci2V(null);
|
||||
reorganize.setMci2Q(BigDecimal.ZERO);
|
||||
reorganize.setMci2V(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 计算水量小计(三个站点的总和)
|
||||
|
|
@ -270,8 +266,8 @@ public class StWaterDataTask {
|
|||
reorganize.setEcologyQ(ecologyData.getQ());
|
||||
reorganize.setEcologyV(ecologyData.getV());
|
||||
} else {
|
||||
reorganize.setEcologyQ(null);
|
||||
reorganize.setEcologyV(null);
|
||||
reorganize.setEcologyQ(BigDecimal.ZERO);
|
||||
reorganize.setEcologyV(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 设置干渠灌溉1数据
|
||||
|
|
@ -279,8 +275,8 @@ public class StWaterDataTask {
|
|||
reorganize.setMci1Q(mci1Data.getQ());
|
||||
reorganize.setMci1V(mci1Data.getV());
|
||||
} else {
|
||||
reorganize.setMci1Q(null);
|
||||
reorganize.setMci1V(null);
|
||||
reorganize.setMci1Q(BigDecimal.ZERO);
|
||||
reorganize.setMci1V(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 设置干渠灌溉2数据
|
||||
|
|
@ -288,8 +284,8 @@ public class StWaterDataTask {
|
|||
reorganize.setMci2Q(mci2Data.getQ());
|
||||
reorganize.setMci2V(mci2Data.getV());
|
||||
} else {
|
||||
reorganize.setMci2Q(null);
|
||||
reorganize.setMci2V(null);
|
||||
reorganize.setMci2Q(BigDecimal.ZERO);
|
||||
reorganize.setMci2V(BigDecimal.ZERO);
|
||||
}
|
||||
|
||||
// 计算水量小计(三个站点的总和)
|
||||
|
|
|
|||
Loading…
Reference in New Issue