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