From 0a86cfc623812431f41bc0255e9e6e7730e60df0 Mon Sep 17 00:00:00 2001
From: zhanzhiqin <895896009@qq.com>
Date: 星期三, 28 九月 2022 16:54:39 +0800
Subject: [PATCH] fix
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/ErrorMsgService.java | 101 ++++++++++++++++++++-------------
ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ErrorMsgController.java | 5 +
dao/src/main/resources/mapper/LightReportErrorMapper.xml | 30 +++++----
ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportErrorService.java | 14 +++-
ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3mReportErrorService.java | 1
5 files changed, 90 insertions(+), 61 deletions(-)
diff --git a/dao/src/main/resources/mapper/LightReportErrorMapper.xml b/dao/src/main/resources/mapper/LightReportErrorMapper.xml
index 9aa98b4..cea33d4 100644
--- a/dao/src/main/resources/mapper/LightReportErrorMapper.xml
+++ b/dao/src/main/resources/mapper/LightReportErrorMapper.xml
@@ -5,12 +5,12 @@
<mapper namespace="com.sandu.ximon.dao.mapper.LightReportErrorMapper">
<resultMap id="BaseResultMap" type="com.sandu.ximon.dao.domain.LightReportError">
- <id property="lightReportErrorId" column="light_report_error_id" jdbcType="BIGINT"/>
- <result property="deviceCode" column="device_code" jdbcType="VARCHAR"/>
- <result property="lightAddress" column="light_address" jdbcType="VARCHAR"/>
- <result property="errorCode" column="error_code" jdbcType="INTEGER"/>
- <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
- <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
+ <id property="lightReportErrorId" column="light_report_error_id" jdbcType="BIGINT"/>
+ <result property="deviceCode" column="device_code" jdbcType="VARCHAR"/>
+ <result property="lightAddress" column="light_address" jdbcType="VARCHAR"/>
+ <result property="errorCode" column="error_code" jdbcType="INTEGER"/>
+ <result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
+ <result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
</resultMap>
<resultMap id="listReportError" type="com.sandu.ximon.dao.bo.LightReportErrorBo" extends="BaseResultMap">
<result property="poleName" column="pole_name" jdbcType="INTEGER"/>
@@ -27,6 +27,7 @@
AND t2.device_type = 0
LEFT JOIN pole t3 ON t3.id = t2.pole_id
<where>
+ t1.error_code != 0
<if test="keyword != null and keyword != ''">
AND (
t3.id LIKE CONCAT('%', #{keyword},'%')
@@ -46,16 +47,17 @@
<select id="listError" resultType="com.sandu.ximon.dao.bo.LightReportErrorBo"
parameterType="java.lang.Long">
SELECT
- t1.*
+ t1.*
FROM
- light_report_error t1
- LEFT JOIN pole t3 ON t1.device_code = t3.device_code
+ light_report_error t1
+ LEFT JOIN pole t3 ON t1.device_code = t3.device_code
WHERE
- <if test="userid != null">
- t3.client_id = #{userId} OR t3.user_id = #{userId}
- </if>
- t1.light_report_error_id IN ( SELECT t.max_id FROM ( SELECT Max( light_report_error.light_report_error_id ) AS max_id FROM light_report_error GROUP BY light_report_error.device_code ) AS t )
+ <if test="userid != null">
+ t3.client_id = #{userId} OR t3.user_id = #{userId}
+ </if>
+ t1.light_report_error_id IN ( SELECT t.max_id FROM ( SELECT Max( light_report_error.light_report_error_id ) AS
+ max_id FROM light_report_error GROUP BY light_report_error.device_code ) AS t )
ORDER BY
- t1.create_time DESC
+ t1.create_time DESC
</select>
</mapper>
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ErrorMsgController.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ErrorMsgController.java
index bbbf97f..e263b60 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ErrorMsgController.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/controller/ErrorMsgController.java
@@ -9,6 +9,7 @@
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
@@ -24,8 +25,8 @@
@AnonymousAccess
@GetMapping("/listMsg")
- public ResponseVO<Object> list(BaseConditionVO conditionVO){
+ public ResponseVO<Object> list(BaseConditionVO conditionVO, @RequestParam(value = "type", required = false) String type) {
- return ResponseUtil.success(errorMsgService.listMsg(conditionVO));
+ return ResponseUtil.success(errorMsgService.listMsg(conditionVO, type));
}
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3mReportErrorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3mReportErrorService.java
index 6fe18c8..22d333e 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3mReportErrorService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/C3mReportErrorService.java
@@ -1,6 +1,7 @@
package com.sandu.ximon.admin.service;
import com.github.pagehelper.PageHelper;
+import com.sandu.common.domain.CommonPage;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
import com.sandu.ximon.admin.manager.iot.frame.inner.report.A5C3ErrorCodeReportInnerFrame;
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ErrorMsgService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ErrorMsgService.java
index 3f01ba0..f138605 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ErrorMsgService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/ErrorMsgService.java
@@ -2,13 +2,17 @@
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.sandu.common.domain.CommonPage;
+import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.ximon.admin.dto.ErrorMsgDto;
+import com.sandu.ximon.admin.utils.ListPagingUtils;
import com.sandu.ximon.dao.bo.C3ReportErrorBo;
import com.sandu.ximon.dao.bo.LightReportErrorBo;
import com.sandu.ximon.dao.domain.C3mCharging;
import com.sandu.ximon.dao.domain.Light;
import lombok.AllArgsConstructor;
+import org.apache.commons.lang.StringUtils;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
@@ -30,49 +34,66 @@
private final C3ChargingService c3ChargingService;
- public List<ErrorMsgDto> listMsg(BaseConditionVO baseConditionVO) {
- List<ErrorMsgDto> errorMsgDtos = new ArrayList<>();
- //鍗曠伅鏁呴殰鏁版嵁
- List<LightReportErrorBo> lightReportErrors = lightReportErrorService.queryErrorCode(baseConditionVO);
- if (!lightReportErrors.isEmpty()) {
- for (LightReportErrorBo lightReportError : lightReportErrors) {
- ErrorMsgDto errorMsgDto = new ErrorMsgDto();
- errorMsgDto.setMac(lightReportError.getDeviceCode());
- errorMsgDto.setErrorCode(lightReportError.getErrorCode());
- errorMsgDto.setErrorDesc(lightReportError.getErrorMsg());
- errorMsgDto.setErrorTime(lightReportError.getCreateTime());
- errorMsgDto.setDeviceType(1);
- Light one = lightService.getOne(Wrappers.lambdaQuery(Light.class).eq(Light::getDeviceCode, lightReportError.getDeviceCode()));
- if (one != null) {
- errorMsgDto.setDeviceJson(JSON.toJSONString(one));
- }
- errorMsgDtos.add(errorMsgDto);
- }
+ public CommonPage listMsg(BaseConditionVO baseConditionVO, String type) {
+ if (StringUtils.isEmpty(type)) {
+ throw new BusinessException("璁惧鏁呴殰绫诲瀷涓嶈兘涓虹┖锛�");
}
-
- //鍏呯數妗╂晠闅滄暟鎹�
- List<C3ReportErrorBo> c3ReportErrorBos = c3mReportErrorService.listReportError(baseConditionVO);
- if (!c3ReportErrorBos.isEmpty()) {
- c3ReportErrorBos.forEach(c3ReportError -> {
- ErrorMsgDto errorMsgDto = new ErrorMsgDto();
- errorMsgDto.setMac(c3ReportError.getC3Mac());
- errorMsgDto.setErrorDesc(c3ReportError.getErrorMsg());
- errorMsgDto.setErrorTime(c3ReportError.getCreateTime());
- errorMsgDto.setDeviceType(3);
- C3mCharging one = c3ChargingService.getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getC3Mac, c3ReportError.getC3Mac()));
- if (one != null) {
- errorMsgDto.setDeviceJson(JSON.toJSONString(one));
+ CommonPage commonPage = null;
+ switch (type) {
+ case "鍗曠伅鏁呴殰":
+ //鍗曠伅鏁呴殰鏁版嵁
+ commonPage = lightReportErrorService.queryErrorCode(baseConditionVO);
+ if (!commonPage.getList().isEmpty()) {
+ for (LightReportErrorBo lightReportError : (List<LightReportErrorBo>) commonPage.getList()) {
+ ErrorMsgDto errorMsgDto = new ErrorMsgDto();
+ errorMsgDto.setMac(lightReportError.getDeviceCode());
+ errorMsgDto.setErrorCode(lightReportError.getErrorCode());
+ errorMsgDto.setErrorDesc(lightReportError.getErrorMsg());
+ errorMsgDto.setErrorTime(lightReportError.getCreateTime());
+ errorMsgDto.setDeviceType(1);
+ Light one = lightService.getOne(Wrappers.lambdaQuery(Light.class).eq(Light::getDeviceCode, lightReportError.getDeviceCode()));
+ if (one != null) {
+ errorMsgDto.setDeviceJson(JSON.toJSONString(one));
+ }
+ }
}
- errorMsgDtos.add(errorMsgDto);
- });
+ break;
+ case "鍏呯數妗╂晠闅�":
+ //鍏呯數妗╂晠闅滄暟鎹�
+ List<C3ReportErrorBo> c3ReportErrorBos = c3mReportErrorService.listReportError(baseConditionVO);
+ if (!c3ReportErrorBos.isEmpty()) {
+ List<C3ReportErrorBo> list = c3ReportErrorBos;
+ list.forEach(c3ReportError -> {
+ ErrorMsgDto errorMsgDto = new ErrorMsgDto();
+ errorMsgDto.setMac(c3ReportError.getC3Mac());
+ errorMsgDto.setErrorDesc(c3ReportError.getErrorMsg());
+ errorMsgDto.setErrorTime(c3ReportError.getCreateTime());
+ errorMsgDto.setDeviceType(3);
+ C3mCharging one = c3ChargingService.getOne(Wrappers.lambdaQuery(C3mCharging.class).eq(C3mCharging::getC3Mac, c3ReportError.getC3Mac()));
+ if (one != null) {
+ errorMsgDto.setDeviceJson(JSON.toJSONString(one));
+ }
+ });
+ commonPage = new CommonPage();
+ commonPage.setList(c3ReportErrorBos);
+ }
+
+ break;
+ case "澶ф皵鏁呴殰":
+ //澶ф皵鏁呴殰鏁版嵁 todo 鏆傛棤
+
+ break;
+ default:
+ throw new BusinessException("绫诲瀷涓嶆纭紝璇风‘璁わ紒");
}
-
- //澶ф皵鏁呴殰鏁版嵁 todo 鏆傛棤
-
- //瀵筫rrorMsgDtos鎸夊垱寤烘椂闂村�掑彊
- errorMsgDtos.sort((a, b) -> b.getErrorTime().compareTo(a.getErrorTime()));
- //鎵嬪姩鍒嗛〉 baseConditionVO.getPageNo() 褰撳墠椤� baseConditionVO.getPageSize() 姣忛〉鏉℃暟
- return errorMsgDtos.subList((baseConditionVO.getPageNo() - 1) * baseConditionVO.getPageSize(), baseConditionVO.getPageNo() * baseConditionVO.getPageSize());
+//
+//
+// //瀵筫rrorMsgDtos鎸夊垱寤烘椂闂村�掑彊
+// errorMsgDtos.sort((a, b) -> b.getErrorTime().compareTo(a.getErrorTime()));
+// //鎵嬪姩鍒嗛〉 baseConditionVO.getPageNo() 褰撳墠椤� baseConditionVO.getPageSize() 姣忛〉鏉℃暟
+//// return errorMsgDtos.subList((baseConditionVO.getPageNo() - 1) * baseConditionVO.getPageSize(), baseConditionVO.getPageNo() * baseConditionVO.getPageSize());
+// ListPagingUtils.pages(errorMsgDtos, baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+ return commonPage;
}
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportErrorService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportErrorService.java
index 064ac73..1d918fb 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportErrorService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/LightReportErrorService.java
@@ -1,6 +1,7 @@
package com.sandu.ximon.admin.service;
import com.github.pagehelper.PageHelper;
+import com.sandu.common.domain.CommonPage;
import com.sandu.common.execption.BusinessException;
import com.sandu.common.object.BaseConditionVO;
import com.sandu.common.service.impl.BaseServiceImpl;
@@ -15,6 +16,7 @@
import com.sandu.ximon.admin.manager.iot.rrpc.enums.LightErrorEnum;
import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.security.SecurityUtils;
+import com.sandu.ximon.admin.utils.ListPagingUtils;
import com.sandu.ximon.admin.utils.StoreOperationRecordsUtils;
import com.sandu.ximon.dao.bo.LightReportErrorBo;
import com.sandu.ximon.dao.domain.LightReportError;
@@ -23,6 +25,7 @@
import org.springframework.stereotype.Service;
import java.util.List;
+import java.util.stream.Collectors;
/**
* @author chenjiantian
@@ -69,11 +72,12 @@
*
* @return
*/
- public List<LightReportErrorBo> queryErrorCode(BaseConditionVO baseConditionVO) {
-
- PageHelper.startPage(baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+ public CommonPage queryErrorCode(BaseConditionVO baseConditionVO) {
List<LightReportErrorBo> lightReportErrorBos = baseMapper.listError(SecurityUtils.getClientId());
- for (LightReportErrorBo lightReportErrorBo : lightReportErrorBos) {
+ lightReportErrorBos = lightReportErrorBos.stream().filter(bean -> bean.getErrorCode() != 0).collect(Collectors.toList());
+ CommonPage commonPage = ListPagingUtils.pages(lightReportErrorBos, baseConditionVO.getPageNo(), baseConditionVO.getPageSize());
+
+ for (LightReportErrorBo lightReportErrorBo : (List<LightReportErrorBo>) commonPage.getList()) {
Integer errorCode = lightReportErrorBo.getErrorCode();
StringBuilder sb = new StringBuilder();
LightErrorEnum[] values = LightErrorEnum.values();
@@ -84,7 +88,7 @@
}
lightReportErrorBo.setErrorMsg(sb.toString());
}
- return lightReportErrorBos;
+ return commonPage;
}
/**
--
Gitblit v1.9.3