From d9a9d8a2dad1d1e57b184bf8f972a03d654d883a Mon Sep 17 00:00:00 2001
From: liuhaonan <31457034@qq.com>
Date: 星期五, 22 七月 2022 15:07:01 +0800
Subject: [PATCH] 优化
---
ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java | 141 ++++++++++++++++++++++++++++++++--------------
1 files changed, 98 insertions(+), 43 deletions(-)
diff --git a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
index 770f415..c41fbda 100644
--- a/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
+++ b/ximon-admin/src/main/java/com/sandu/ximon/admin/service/PoleService.java
@@ -25,7 +25,6 @@
import com.sandu.ximon.admin.manager.iot.frame.inner.response.A1DeviceMacRespInnerFrame;
import com.sandu.ximon.admin.manager.iot.frame.inner.response.A1TernaryCodeRespInnerFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.dto.CommonFrame;
-import com.sandu.ximon.admin.manager.iot.rrpc.dto.WrapResponseCommonFrame;
import com.sandu.ximon.admin.manager.iot.rrpc.enums.*;
import com.sandu.ximon.admin.manager.iot.rrpc.mainboard.MainBoardInvokeSyncService;
import com.sandu.ximon.admin.param.*;
@@ -39,11 +38,13 @@
import com.sandu.ximon.admin.vo.PoleBindVO;
import com.sandu.ximon.dao.bo.*;
import com.sandu.ximon.dao.domain.*;
+import com.sandu.ximon.dao.enums.OrderByEnums;
import com.sandu.ximon.dao.mapper.PoleMapper;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import java.text.SimpleDateFormat;
import java.util.*;
@@ -140,7 +141,7 @@
StringBuilder sb = new StringBuilder();
String date = new SimpleDateFormat("yyMMdd").format(new Date());
sb.append(date);
- String key = LightKey.POLE_SN.key(null);
+ String key = LightKey.POLE_SN.key(date);
Long increment = redisService.incr(key, 1);
String incrementStr = increment.toString();
if (incrementStr.length() <= 4) {
@@ -174,7 +175,7 @@
result.put("poleTotalCount", list.size());
//璇虹摝
- List<LedPlayerEntity> ledPlayerEntities = SpringContextHolder.getBean(LedPlayerEntityService.class).ledPlayerEntityList(null, null);
+ List<LedPlayerEntity> ledPlayerEntities = SpringContextHolder.getBean(LedPlayerEntityService.class).ledPlayerEntityList(null, null, null, null);
int number = 0;
for (LedPlayerEntity bean : ledPlayerEntities) {
if (bean.getOnlineStatus() == 1) {
@@ -189,9 +190,9 @@
BroadcastTerminalV2Param broadcastTerminalV2Param = new BroadcastTerminalV2Param();
broadcastTerminalV2Param.setBindingState(2);
broadcastTerminalV2Param.setWorkState(2);
- List<BroadcastTerminalV2EntityBo> broadcastTerminalList = SpringContextHolder.getBean(IpVolumeService.class).getBroadcastTerminalList(null, broadcastTerminalV2Param);
+ List<BroadcastTerminalV2EntityBo> broadcastTerminalList = SpringContextHolder.getBean(IpVolumeService.class).getBroadcastTerminalList(null, null, null, broadcastTerminalV2Param);
for (BroadcastTerminalV2EntityBo bean : broadcastTerminalList) {
- if (bean.getStatus() == 1 || bean.getStatus() == 0) {
+ if (bean.getStatus() != 0) {
number++;
}
}
@@ -203,9 +204,9 @@
MonitorParam monitorParam = new MonitorParam();
monitorParam.setEquipmentState(2);
monitorParam.setBindingState(2);
- List<MonitorBo> monitorBos = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, monitorParam).getList();
+ List<MonitorBo> monitorBos = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, null, null, monitorParam).getList();
monitorParam.setEquipmentState(1);
- List<MonitorBo> online = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, monitorParam).getList();
+ List<MonitorBo> online = SpringContextHolder.getBean(MonitorService.class).listMonitorByKeyword(null, null, null, monitorParam).getList();
result.put("monitorOnlineCount", online.size());
result.put("monitorTotalCount", monitorBos.size());
@@ -277,8 +278,8 @@
result.put("LightPoleHeelingTotalCount", lightPoleHeelings.size());
//鐔欒
- List<PoleLightemitEntity> poleLightemitEntities = SpringContextHolder.getBean(PoleLightemitService.class).listLed(null, false);
- List<PoleLightemitEntity> poleLightemitEntityOnlineList = SpringContextHolder.getBean(PoleLightemitService.class).listLed(null, true);
+ List<PoleLightemitEntity> poleLightemitEntities = SpringContextHolder.getBean(PoleLightemitService.class).listLed(null, null, null, false);
+ List<PoleLightemitEntity> poleLightemitEntityOnlineList = SpringContextHolder.getBean(PoleLightemitService.class).listLed(null, null, null, true);
result.put("XiXunOnlineCount", poleLightemitEntityOnlineList.size());
result.put("XiXunTotalCount", poleLightemitEntities.size());
@@ -286,16 +287,51 @@
return result;
}
- public CommonPage queryAllStatesAndList(Integer pageNo, Integer pageSize, PoleStatesParam param) {
+ public CommonPage queryAllStatesAndList(Integer pageNo, Integer pageSize, PoleStatesParam param, Integer order, Integer seq) {
if (param == null) {
param = new PoleStatesParam();
}
- System.out.println(param);
+
+ //鎺掑簭瀛楁
+ String orderByResult = OrderByEnums.POLE_ID.getCode();
+ //姝e簭銆佸�掑彊
+ String orderBySeq = OrderByEnums.ASC.getCode();
+ if (order != null) {
+ switch (order) {
+ case 1:
+ orderByResult = OrderByEnums.POLE_NAME.getCode();
+ break;
+ case 2:
+ orderByResult = OrderByEnums.POLE_ID.getCode();
+ break;
+ case 3:
+ orderByResult = OrderByEnums.POLE_CREATE_TIME.getCode();
+ break;
+ default:
+ }
+ }
+ if (seq != null) {
+ switch (seq) {
+ case 1:
+ orderBySeq = OrderByEnums.ASC.getCode();
+ break;
+ case 2:
+ orderBySeq = OrderByEnums.DESC.getCode();
+ break;
+ default:
+ break;
+ }
+ }
+ //鎺掑簭鏂瑰紡
+ String orderBy = "t1." + orderByResult + " " + orderBySeq;
+
List<Pole> poleList;
if (SecurityUtils.getClientId() == null) {
- poleList = poleMapper.queryPoleOnLineStatesList(null, param.getIsTrue(), param.getBingStates(), param.getGroupid(), param.getKeyword());
+ poleList = poleMapper.queryPoleOnLineStatesList(null, param.getIsTrue(),
+ param.getBingStates(), param.getGroupid(), param.getKeyword(), orderBy);
} else {
- poleList = poleMapper.queryPoleOnLineStatesList(SecurityUtils.getUserId(), param.getIsTrue(), param.getBingStates(), param.getGroupid(), param.getKeyword());
+ poleList = poleMapper.queryPoleOnLineStatesList(SecurityUtils.getUserId(),
+ param.getIsTrue(), param.getBingStates(), param.getGroupid(), param.getKeyword(), orderBy);
}
List<Pole> PoleResult = isOnLine(poleList, param);
@@ -542,11 +578,12 @@
}
IRequestFrame build = FrameBuilder.builderA5().orderType(A5OrderEnum.REQUEST_LIGHT_DATA.getCode()).innerFrame(new A5LightResetReqInnerFrame()).build();
CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, build);
+ StoreOperationRecordsUtils.storeInnerFrameData(deviceName, "鐏潌鎭㈠鍑哄巶璁剧疆", build, commonFrame);
System.out.println(commonFrame.toString());
-
- CommonFrame rebootFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, FrameBuilder.builderA2().innerFrame(new EmptyRequestInnerFrame()).orderType(A2OrderEnum.REQUEST_MAIN_BOARD_RESET.getCode()).build());
-
+ IRequestFrame iRequestFrame = FrameBuilder.builderA2().innerFrame(new EmptyRequestInnerFrame()).orderType(A2OrderEnum.REQUEST_MAIN_BOARD_RESET.getCode()).build();
+ CommonFrame rebootFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(deviceName, iRequestFrame);
+ StoreOperationRecordsUtils.storeInnerFrameData(deviceName, "鐏潌閲嶅惎", iRequestFrame, commonFrame);
boolean b = false;
if ("00".equals(rebootFrame.getPayload())) {
@@ -569,17 +606,13 @@
/**
* 缁欑伅鏉嗘敞鍐屼笁鍏冪爜
*/
- public boolean setMac(String baseMac) {
- // public boolean setMac() {
- //Pole pole = getById(poleId);
- /* if (pole == null) {
- throw new BusinessException("鏈壘鍒拌鐏潌");
- }*/
+ @Transactional(rollbackFor = Exception.class)
+ public Map setMac(String baseMac) {
- boolean setMac = false;
- //String baseMac = "baseDevice";
A1Frame a1Frame = new A1Frame(A1OrderEnum.REQUEST_READ_DEVICE_UNIQUE_MAC.getCode(), new EmptyRequestInnerFrame());
CommonFrame commonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, a1Frame);
+ //瀛樺偍鎸褰�
+ StoreOperationRecordsUtils.storeInnerFrameData(baseMac, "娉ㄥ唽涓夊厓鐮�", a1Frame, commonFrame);
if (commonFrame == null) {
throw new BusinessException("璇诲彇璁惧鍞竴ID澶辫触");
}
@@ -604,34 +637,47 @@
log.info(deviceDetail.toString());
// 4 閰嶇疆Mac鈶�
- WrapResponseCommonFrame<A1TernaryCodeRespInnerFrame> productKeyResp = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(MainBoardInvokeSyncService.getInstance().getProductKey())).orderType(A1OrderEnum.REQUEST_SET_PRODUCT_KEY.getCode()).build(), A1TernaryCodeRespInnerFrame.class);
- A1TernaryCodeRespInnerFrame responseInnerFrame = productKeyResp.getResponseInnerFrame();
+ IRequestFrame build1 = FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(MainBoardInvokeSyncService.getInstance().getProductKey())).orderType(A1OrderEnum.REQUEST_SET_PRODUCT_KEY.getCode()).build();
+ CommonFrame commonFrame1 = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, build1);
+ //瀛樺偍鎸褰�
+ StoreOperationRecordsUtils.storeInnerFrameData(baseMac, "璁惧閰嶇疆ProductKey", build1, commonFrame1);
+
+ A1TernaryCodeRespInnerFrame responseInnerFrame = new A1TernaryCodeRespInnerFrame().transformFrame(commonFrame1.getPayload());
if (!MainBoardInvokeSyncService.getInstance().getProductKey().equals(responseInnerFrame.getTernaryCode())) {
throw new BusinessException("璁惧閰嶇疆ProductKey澶辫触");
}
// 5 閰嶇疆Mac鈶�
- WrapResponseCommonFrame<A1TernaryCodeRespInnerFrame> responseCommonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(uniqueMac)).orderType(A1OrderEnum.REQUEST_SET_DEVICE_NAME.getCode()).build(), A1TernaryCodeRespInnerFrame.class);
- A1TernaryCodeRespInnerFrame deviceNameFrame = responseCommonFrame.getResponseInnerFrame();
- if (!uniqueMac.equals(deviceNameFrame.getTernaryCode())) {
+ IRequestFrame build2 = FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(uniqueMac)).orderType(A1OrderEnum.REQUEST_SET_DEVICE_NAME.getCode()).build();
+ CommonFrame commonFrame2 = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, build2);
+ //瀛樺偍鎸褰�
+ StoreOperationRecordsUtils.storeInnerFrameData(baseMac, "璁惧閰嶇疆鍚�", build2, commonFrame2);
+
+ A1TernaryCodeRespInnerFrame a1TernaryCodeRespInnerFrame = new A1TernaryCodeRespInnerFrame().transformFrame(commonFrame2.getPayload());
+ if (!uniqueMac.equals(a1TernaryCodeRespInnerFrame.getTernaryCode())) {
throw new BusinessException("璁惧閰嶇疆鍚嶅け璐�");
}
// 6 閰嶇疆Mac鈶�
- WrapResponseCommonFrame<A1TernaryCodeRespInnerFrame> wrapResponseCommonFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(deviceDetail.getDeviceSecret())).orderType(A1OrderEnum.REQUEST_SET_DEVICE_SECRET.getCode()).build(), A1TernaryCodeRespInnerFrame.class);
- A1TernaryCodeRespInnerFrame deviceSecretFrame = wrapResponseCommonFrame.getResponseInnerFrame();
+ IRequestFrame build3 = FrameBuilder.builderA1().innerFrame(new A1TernaryCodeReqInnerFrame(deviceDetail.getDeviceSecret())).orderType(A1OrderEnum.REQUEST_SET_DEVICE_SECRET.getCode()).build();
+ CommonFrame commonFrame3 = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, build3);
+ //瀛樺偍鎸褰�
+ StoreOperationRecordsUtils.storeInnerFrameData(baseMac, "璁惧瀵嗛挜", build3, commonFrame3);
+
+ A1TernaryCodeRespInnerFrame deviceSecretFrame = new A1TernaryCodeRespInnerFrame().transformFrame(commonFrame3.getPayload());
+
if (!deviceDetail.getDeviceSecret().equals(deviceSecretFrame.getTernaryCode())) {
throw new BusinessException("璁惧瀵嗛挜澶辫触");
}
// 7 閲嶅惎璁惧 骞朵娇鐢ㄦ柊鐨凪ac
- CommonFrame rebootFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, FrameBuilder.builderA2().innerFrame(new EmptyRequestInnerFrame()).orderType(A2OrderEnum.REQUEST_MAIN_BOARD_RESET.getCode()).build());
+ IRequestFrame build4 = FrameBuilder.builderA2().innerFrame(new EmptyRequestInnerFrame()).orderType(A2OrderEnum.REQUEST_MAIN_BOARD_RESET.getCode()).build();
+ CommonFrame rebootFrame = MainBoardInvokeSyncService.getInstance().sendRRPC(baseMac, build4);
+ //瀛樺偍鎸褰�
+ StoreOperationRecordsUtils.storeInnerFrameData(baseMac, "閲嶅惎璁惧", build4, rebootFrame);
+
if ("00".equals(rebootFrame.getPayload())) {
- // pole.setDeviceCode(uniqueMac);
-
- // setMac = updateById(pole);
-
System.out.println("閲嶅惎鎴愬姛");
}
@@ -640,11 +686,8 @@
if (pole == null) {
pole = new Pole();
}
- /* String type = uniqueMac.substring(uniqueMac.length() - 2, uniqueMac.length());
- String Code = uniqueMac.substring(0, uniqueMac.length() - 2);*/
pole.setDeviceCode(uniqueMac);
pole.setPoleName(uniqueMac);
- /* int i = Integer.parseInt(strm);*/
if ("00".equals(a1DeviceMacRespInnerFrame.getType())) {
pole.setDeviceType(0);
} else if ("01".equals(a1DeviceMacRespInnerFrame.getType())) {
@@ -652,20 +695,32 @@
}
pole.setPoleCode(generatePoleCode());
-// setMac = save(pole);
boolean result = saveOrUpdate(pole);
+
+ if (result) {
+ Light light = new Light();
+ light.setDeviceCode(uniqueMac);
+ light.setLightCount(2);
+ SpringContextHolder.getBean(LightService.class).save(light);
+ }
/**
* 瀹炰綋鐏潌娉ㄥ唽鏃ュ織璁板綍寮�濮�
*/
- String content = "{鐏潌ID锛�" + pole.getId() + ",鐏潌缂栧彿锛�" + pole.getPoleCode() + ",鐏潌鍚嶇О锛�" + pole.getPoleName() + ",鐏潌绫诲瀷锛�" + pole.getDeviceType() + ",鐏潌MAC锛�" + pole.getDeviceCode() + " }";
- StoreOperationRecordsUtils.storeOperationData(null, null, "瀹炰綋鐏潌娉ㄥ唽", content);
+// String content = "{鐏潌ID锛�" + pole.getId() + ",鐏潌缂栧彿锛�" + pole.getPoleCode() + ",鐏潌鍚嶇О锛�" + pole.getPoleName() + ",鐏潌绫诲瀷锛�" + pole.getDeviceType() + ",鐏潌MAC锛�" + pole.getDeviceCode() + " }";
+// StoreOperationRecordsUtils.storeOperationData(null, null, "瀹炰綋鐏潌娉ㄥ唽", content);
/**
* 瀹炰綋鐏潌娉ㄥ唽鏃ュ織璁板綍缁撴潫
*/
+ Map map = new HashMap();
+ if (true) {
+ map.put("mac", uniqueMac);
+ } else {
+ map.put("mac", -1);
+ }
- return result;
+ return map;
}
public List<String> listDeviceCodeByIds(List<Long> poleIdList) {
--
Gitblit v1.9.3