From 3faca3fc0bb178afd9cf17222bee14e1c8722f6b Mon Sep 17 00:00:00 2001
From: swb <jpy123456>
Date: Thu, 04 Jul 2024 17:02:26 +0800
Subject: [PATCH] fix:尘负荷排名补充提交
---
screen-api/src/main/resources/mapper/SecondCruiserSortMapper.xml | 20 ++++++++++
screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java | 14 +++----
screen-job/src/main/java/com/moral/api/entity/SecondCruiserSort.java | 6 +-
screen-api/src/main/java/com/moral/api/mapper/SecondCruiserSortMapper.java | 6 +++
screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java | 11 ++---
screen-api/src/main/java/com/moral/api/entity/SecondCruiserSort.java | 9 ++++
6 files changed, 48 insertions(+), 18 deletions(-)
diff --git a/screen-api/src/main/java/com/moral/api/entity/SecondCruiserSort.java b/screen-api/src/main/java/com/moral/api/entity/SecondCruiserSort.java
index 25a46ac..5806675 100644
--- a/screen-api/src/main/java/com/moral/api/entity/SecondCruiserSort.java
+++ b/screen-api/src/main/java/com/moral/api/entity/SecondCruiserSort.java
@@ -3,8 +3,9 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
-import com.moral.util.DateUtils;
+
/**
* Description //todo
@@ -41,5 +42,11 @@
*/
private String time;
+ /**
+ * ���������
+ */
+ @TableField(exist = false)
+ private Double avg;
+
}
diff --git a/screen-api/src/main/java/com/moral/api/mapper/SecondCruiserSortMapper.java b/screen-api/src/main/java/com/moral/api/mapper/SecondCruiserSortMapper.java
index c6b31cd..4185a91 100644
--- a/screen-api/src/main/java/com/moral/api/mapper/SecondCruiserSortMapper.java
+++ b/screen-api/src/main/java/com/moral/api/mapper/SecondCruiserSortMapper.java
@@ -1,7 +1,13 @@
package com.moral.api.mapper;
+import io.lettuce.core.dynamic.annotation.Param;
+
+import java.util.List;
+
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.moral.api.entity.SecondCruiserSort;
public interface SecondCruiserSortMapper extends BaseMapper<SecondCruiserSort> {
+
+ List<SecondCruiserSort> getSort(@Param("mac") String mac, @Param("startTime") String startTime,@Param("endTime") String endTime);
}
diff --git a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
index cab12c7..be4b23c 100644
--- a/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
+++ b/screen-api/src/main/java/com/moral/api/service/impl/DustldServiceImpl.java
@@ -474,23 +474,21 @@
@Override
public List<SecondCruiserSort> sort(String mac, String startTime, String endTime) {
SysDictData list = sysDictTypeService.listOne(SysDictTypeEnum.SYS_SECOND_CRUISER.getValue(),"dustld");
- String s = DateUtils.stringToDateString(startTime, "yyyy-MM-dd HH:mm:ss", "yyyy-MM-dd 00:00:00");
- LambdaQueryWrapper<SecondCruiserSort> wrapper = new LambdaQueryWrapper<>();
- wrapper.eq(SecondCruiserSort::getMac,mac);
- wrapper.eq(SecondCruiserSort::getTime,s);
- wrapper.orderByDesc(SecondCruiserSort::getValue);
- List<SecondCruiserSort> secondCruiserSorts = secondCruiserSortMapper.selectList(wrapper);
+ List<SecondCruiserSort> secondCruiserSorts = secondCruiserSortMapper.getSort(mac, startTime, endTime);
+
//���������������
if (!ObjectUtils.isEmpty(secondCruiserSorts)){
for (SecondCruiserSort secondCruiserSort : secondCruiserSorts) {
if(list.getDataValue().contains(",")){
List<String> resultStr = Arrays.asList(list.getDataValue().split(","));
if(resultStr.size() % 2 ==0){
- secondCruiserSort.setValue(numAvg(resultStr,BigDecimal.valueOf(secondCruiserSort.getValue())).doubleValue());
+// secondCruiserSort.setAvg(numAvg(resultStr,BigDecimal.valueOf(secondCruiserSort.getAvg())).doubleValue());
+ secondCruiserSort.setAvg((double) Math.round(numAvg(resultStr, BigDecimal.valueOf(secondCruiserSort.getAvg())).doubleValue()));
}
}else {
BigDecimal dataValue = Objects.nonNull(list.getDataValue())?BigDecimal.valueOf(Double.parseDouble(list.getDataValue())):BigDecimal.ZERO;
- secondCruiserSort.setValue(BigDecimal.valueOf(secondCruiserSort.getValue()).add(dataValue).doubleValue());
+// secondCruiserSort.setAvg(BigDecimal.valueOf(secondCruiserSort.getAvg()).add(dataValue).doubleValue());
+ secondCruiserSort.setAvg((double) Math.round(BigDecimal.valueOf(secondCruiserSort.getAvg()).add(dataValue).doubleValue()));
}
}
}
diff --git a/screen-api/src/main/resources/mapper/SecondCruiserSortMapper.xml b/screen-api/src/main/resources/mapper/SecondCruiserSortMapper.xml
new file mode 100644
index 0000000..9ec731e
--- /dev/null
+++ b/screen-api/src/main/resources/mapper/SecondCruiserSortMapper.xml
@@ -0,0 +1,20 @@
+<?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.moral.api.mapper.SecondCruiserSortMapper">
+
+ <!-- ������������������������ -->
+ <resultMap id="BaseResultMap" type="com.moral.api.entity.SecondCruiserSort">
+ <result column="road" property="road"/>
+ <result column="time" property="time"/>
+ <result column="value" property="value"/>
+ <result column="mac" property="mac"/>
+ <result column="organization_id" property="organizationId"/>
+ </resultMap>
+
+ <select id="getSort" resultType="com.moral.api.entity.SecondCruiserSort">
+ select road,avg(value) as "avg",time,mac from second_cruiser_sort
+ where mac =#{mac} and time BETWEEN #{startTime} and #{endTime} GROUP BY road ORDER BY avg DESC
+
+ </select>
+
+</mapper>
\ No newline at end of file
diff --git a/screen-job/src/main/java/com/moral/api/entity/SecondCruiserSort.java b/screen-job/src/main/java/com/moral/api/entity/SecondCruiserSort.java
index d698262..6c962e5 100644
--- a/screen-job/src/main/java/com/moral/api/entity/SecondCruiserSort.java
+++ b/screen-job/src/main/java/com/moral/api/entity/SecondCruiserSort.java
@@ -42,7 +42,7 @@
private String time;
- public SecondCruiserSort() {
- this.time =DateUtils.getDateStringOfDay(-1,"yyyy-MM-dd 00:00:00"); // ������������������������������
- }
+/* public SecondCruiserSort() {
+ this.time =DateUtils.getDateStringOfDay(-1,"yyyy-MM-dd HH:00:00"); // ������������������������������
+ }*/
}
diff --git a/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java b/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
index a9df6df..d86dd47 100644
--- a/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
+++ b/screen-job/src/main/java/com/moral/api/service/impl/HistorySecondCruiserServiceImpl.java
@@ -9,7 +9,6 @@
import java.math.BigDecimal;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -21,13 +20,11 @@
import com.moral.api.entity.DustldDTO;
import com.moral.api.entity.HistorySecondCruiser;
import com.moral.api.entity.SecondCruiserSort;
-import com.moral.api.entity.SysDictData;
import com.moral.api.mapper.HistorySecondCruiserMapper;
import com.moral.api.mapper.ManageCoordinateDetailMapper;
import com.moral.api.mapper.OrganizationMapper;
import com.moral.api.mapper.SecondCruiserSortMapper;
import com.moral.api.service.HistorySecondCruiserService;
-import com.moral.api.service.SysDictTypeService;
import com.moral.util.DateUtils;
/**
@@ -56,10 +53,11 @@
public void sort(String startTime, String endTime) {
if (ObjectUtils.isEmpty(startTime)&&ObjectUtils.isEmpty(endTime)){
- //������������������������
- startTime = DateUtils.getDateStringOfDay(-1, DateUtils.yyyy_MM_dd_HH_mm_ss_EN);
+ //������������������������������
+ startTime = DateUtils.getDateStringOfHour(-2, "yyyy-MM-dd HH:00:00");
+
//������������������
- endTime = DateUtils.getCurDate(DateUtils.yyyy_MM_dd_HH_mm_ss_EN);
+ endTime = DateUtils.getCurDate("yyyy-MM-dd HH:00:00");
}
List<HistorySecondCruiser> result = historySecondCruiserMapper.getResult(startTime, endTime);
@@ -118,6 +116,7 @@
secondCruiserSort.setValue(rsAvg);
secondCruiserSort.setMac(mac);
secondCruiserSort.setOrganizationId(organizationId);
+ secondCruiserSort.setTime(startTime);
list1.add(secondCruiserSort);
}
}
--
Gitblit v1.8.0