Browse Source

Merge branch 'develop' of http://39.106.31.193:9211/mengff/jihe-dc into develop

develop
xiepufeng 11 months ago
parent
commit
42faef98e0
  1. 27
      zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java
  2. 10
      zc-business/src/main/java/com/zc/business/controller/StatusController.java
  3. 6
      zc-business/src/main/java/com/zc/business/domain/Status.java
  4. 3
      zc-business/src/main/resources/mapper/business/StatusMapper.xml

27
zc-business/src/main/java/com/zc/business/controller/NonAutomaticWarningController.java

@ -17,6 +17,7 @@ import org.eclipse.paho.client.mqttv3.persist.MemoryPersistence;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
@ -208,30 +209,36 @@ public class NonAutomaticWarningController extends BaseController {
} }
dcWarning.setWarningTime(happenTime); dcWarning.setWarningTime(happenTime);
dcWarning.setCreateTime(new Date()); dcWarning.setCreateTime(new Date());
String stakeMark = "";
if (crossingName.startsWith("大学城")) { if (crossingName.startsWith("大学城")) {
dcWarning.setStakeMark("K059+289"); stakeMark = "K059+289";
} else if (crossingName.startsWith("长清")) { } else if (crossingName.startsWith("长清")) {
dcWarning.setStakeMark("K072+847"); stakeMark = "K072+847";
} else if (crossingName.startsWith("孝里")) { } else if (crossingName.startsWith("孝里")) {
dcWarning.setStakeMark("K086+499"); stakeMark = "K086+499";
} else if (crossingName.startsWith("平阴北")) { } else if (crossingName.startsWith("平阴北")) {
dcWarning.setStakeMark("K099+750"); stakeMark = "K099+750";
} else if (crossingName.startsWith("平阴南")) { } else if (crossingName.startsWith("平阴南")) {
dcWarning.setStakeMark("K126+223"); stakeMark = "K126+223";
} else if (crossingName.startsWith("平阴")) { } else if (crossingName.startsWith("平阴")) {
dcWarning.setStakeMark("K105+904"); stakeMark = "K105+904";
} else if (crossingName.startsWith("东平")) { } else if (crossingName.startsWith("东平")) {
dcWarning.setStakeMark("K145+933"); stakeMark = "K145+933";
} else if (crossingName.startsWith("梁山东")) { } else if (crossingName.startsWith("梁山东")) {
dcWarning.setStakeMark("K173+950"); stakeMark = "K173+950";
} else if (crossingName.startsWith("梁山")) { } else if (crossingName.startsWith("梁山")) {
dcWarning.setStakeMark("K179+396"); stakeMark = "K179+396";
} else if (crossingName.startsWith("嘉祥")) { } else if (crossingName.startsWith("嘉祥")) {
dcWarning.setStakeMark("K190+495"); stakeMark = "K190+495";
} }
dcWarning.setStakeMark(stakeMark);
dcWarning.setWarningTitle(srcName + "收费站" + direction + "发生" + warningType + "事件"); dcWarning.setWarningTitle(srcName + "收费站" + direction + "发生" + warningType + "事件");
dcWarning.setWarningSource(6); dcWarning.setWarningSource(6);
dcWarning.setWarningState(1); dcWarning.setWarningState(1);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");
String formattedDate = sdf.format(happenTime);
dcWarning.setRemark("非机预警设备:"+formattedDate + "在" + stakeMark + srcName + "收费站的" + direction + "发生了一起" + warningType + "事件");
dcWarningService.insertDcWarning(dcWarning); dcWarningService.insertDcWarning(dcWarning);
}); });
System.out.println("message content:" + jsonObjString); System.out.println("message content:" + jsonObjString);

10
zc-business/src/main/java/com/zc/business/controller/StatusController.java

@ -112,11 +112,13 @@ public class StatusController extends BaseController {
List<Status> listStatus = statusService.list(status); List<Status> listStatus = statusService.list(status);
// Group by day and calculate average successRate // Group by day and calculate average successRate with two decimal places
Map<Integer, Double> averageSuccessRateByDay = listStatus.stream() Map<Integer, Integer> averageSuccessRateByDay = listStatus.stream()
.collect(Collectors.groupingBy(s -> s.getTime().getDayOfMonth(), .collect(Collectors.groupingBy(s -> s.getTime().getDayOfMonth(),
Collectors.averagingDouble(s -> Double.parseDouble(s.getSuccessRate().replace("%",""))))); Collectors.collectingAndThen(
Collectors.averagingDouble(s -> Double.parseDouble(s.getSuccessRate().replace("%", ""))),
avg -> Math.round(Float.parseFloat(String.format("%.2f", avg)))
)));
if (averageSuccessRateByDay.isEmpty()) { if (averageSuccessRateByDay.isEmpty()) {
return AjaxResult.success("暂无数据"); return AjaxResult.success("暂无数据");
} }

6
zc-business/src/main/java/com/zc/business/domain/Status.java

@ -118,7 +118,7 @@ public class Status {
@Excel(name = "状态") @Excel(name = "状态")
private int deviceStatus; private int deviceStatus;
@Excel(name = "使用状态") @Excel(name = "使用状态")
private int useState; private Integer useState;
@ -230,11 +230,11 @@ public class Status {
private String type; private String type;
public int getUseState() { public Integer getUseState() {
return useState; return useState;
} }
public void setUseState(int useState) { public void setUseState(Integer useState) {
this.useState = useState; this.useState = useState;
} }
} }

3
zc-business/src/main/resources/mapper/business/StatusMapper.xml

@ -18,6 +18,7 @@
<result column="facilities_type" jdbcType="VARCHAR" property="network"/> <result column="facilities_type" jdbcType="VARCHAR" property="network"/>
<result column="remark" jdbcType="VARCHAR" property="content"/> <result column="remark" jdbcType="VARCHAR" property="content"/>
<result column="type" jdbcType="VARCHAR" property="type"/> <result column="type" jdbcType="VARCHAR" property="type"/>
<result column="use_state" jdbcType="VARCHAR" property="useState"/>
</resultMap> </resultMap>
@ -102,7 +103,7 @@
<if test="status.deviceId != null"> <if test="status.deviceId != null">
AND s.device_id = #{status.deviceId} AND s.device_id = #{status.deviceId}
</if> </if>
<if test="status.useState != null"> <if test="status.useState != null and status.useState != 0">
AND d.use_state = #{status.useState} AND d.use_state = #{status.useState}
</if> </if>
</where> </where>

Loading…
Cancel
Save