From fe82f1f9a9be911d1420fe3b018ea85dd5fff1a3 Mon Sep 17 00:00:00 2001
From: yangys <y_ys79@sina.com>
Date: 星期四, 21 十一月 2024 21:22:58 +0800
Subject: [PATCH] 代码整理
---
collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackAnalyseResultBuilder.java | 4
collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackHandlerStrategy.java | 111 ++++++++++++++++++++++--------------
collect/src/main/java/com/qianwen/mdc/collect/service/feedback/WorkstationFeedbackService.java | 5 -
collect/src/main/java/com/qianwen/mdc/collect/service/DeviceStateAggregateService.java | 2
collect/src/main/resources/application-dev.yml | 6 +-
collect/src/main/java/com/qianwen/mdc/collect/job/FeedbackDealJob.java | 1
collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java | 3 +
collect/src/main/java/com/qianwen/mdc/collect/enums/FeedbackTypeEnum.java | 3 +
8 files changed, 83 insertions(+), 52 deletions(-)
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java b/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
index 592d1e1..cfbba4d 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/config/MqttConfig.java
@@ -65,6 +65,9 @@
*/
public static final String FEEDBACK_TOPIC = "mdc/feedback";
+ /**
+ * 宸ヤ綅鍒涘缓娑堟伅锛宮dc涓柊寤哄伐浣嶆椂鍙戦�侊紝鏈簲鐢ㄦ帴鏀跺苟澶勭悊
+ */
public static final String WOCKSTATION_CREATE_TOPIC = "mdc/workstation-create";
/**
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/enums/FeedbackTypeEnum.java b/collect/src/main/java/com/qianwen/mdc/collect/enums/FeedbackTypeEnum.java
index c1a4e1e..42a7afa 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/enums/FeedbackTypeEnum.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/enums/FeedbackTypeEnum.java
@@ -1,5 +1,8 @@
package com.qianwen.mdc.collect.enums;
+/**
+ * 鍙嶉绫诲瀷
+ */
public enum FeedbackTypeEnum {
TIME_RANGE_FEEDBACK(0, "鏃堕棿娈靛弽棣�"),
IMMEDIATE_FEEDBACK(1, "鎸佺画鍙嶉"),
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/job/FeedbackDealJob.java b/collect/src/main/java/com/qianwen/mdc/collect/job/FeedbackDealJob.java
index 8fb660a..ad0b739 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/job/FeedbackDealJob.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/job/FeedbackDealJob.java
@@ -25,6 +25,7 @@
XxlJobLogger.log("XXL-JOB, 瀹氭椂鎵弿鍙嶉璁板綍缁撴潫", new Object[0]);
} catch (Exception ex) {
log.info("瀹氭椂鎵弿妫�鏌ュ弽棣堣褰�,鍙戠敓寮傚父", ex);
+ return ReturnT.FAIL;
}
return ReturnT.SUCCESS;
}
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/service/DeviceStateAggregateService.java b/collect/src/main/java/com/qianwen/mdc/collect/service/DeviceStateAggregateService.java
index a53d294..50b50f3 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/service/DeviceStateAggregateService.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/service/DeviceStateAggregateService.java
@@ -97,7 +97,7 @@
deviceStateService.saveDeviceStates(noFeedbackStateList);//鏇存柊isSync=true
////浣跨敤workstationWcsFeedbackMapper鏇存柊鍙嶉寰楃姸鎬�,鎴戜滑涓嶉渶瑕�
//IWorkstationFeedbackService workstationFeedbackService = SpringUtil.getBean(IWorkstationFeedbackService.class);
- workstationFeedbackService.handlerFeedbackComplete(workstationId);
+ workstationFeedbackService.handlerFeedbackComplete(workstationId);//澶勭悊鍙嶉鏃跺�欎細鐢熸垚processing鐘舵�佺殑鍙嶉鏁版嵁锛岃繖閲屾槸瀹屾垚
log.info("鑱氬悎鐘舵�佸畬鎴�:宸ヤ綅{}",workstationId);
}
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackAnalyseResultBuilder.java b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackAnalyseResultBuilder.java
index 576832f..bb50334 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackAnalyseResultBuilder.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackAnalyseResultBuilder.java
@@ -48,7 +48,7 @@
relatedWorkstationFeedbackList.forEach(item -> {
WorkstationFeedbackViewDTO temp = new WorkstationFeedbackViewDTO();
temp.setWorkstationWcsFeedback(item);
- temp.setIsDeleted(Boolean.FALSE);
+ temp.setIsDeleted(false);
if (FeedbackTypeEnum.TIME_RANGE_FEEDBACK.isEqual(Integer.valueOf(feedback.getFeedbackType()))) {
List<WorkstationWcsFeedbackDetail> detailList = this.workstationWcsFeedbackDetailMapper.selectList(Wrappers.<WorkstationWcsFeedbackDetail>lambdaQuery()
.eq(WorkstationWcsFeedbackDetail::getCancel, 0)
@@ -61,7 +61,7 @@
.eq(WorkstationWcsFeedbackDetail::getCancel, 1).eq(WorkstationWcsFeedbackDetail::getStatus, FeedbackDetailStatusEnum.LOSE_EFFECT.getValue())
.eq(WorkstationWcsFeedbackDetail::getFeedbackId, item.getId()));
if (Func.isNotEmpty(deletedList))
- temp.setIsDeleted(Boolean.TRUE);
+ temp.setIsDeleted(true);
}
}
workstationFeedbackViewList.add(temp);
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackHandlerStrategy.java b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackHandlerStrategy.java
index 6a48696..79569de 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackHandlerStrategy.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/NoImmediateFeedbackHandlerStrategy.java
@@ -26,6 +26,7 @@
import com.qianwen.mdc.collect.mapper.iotdb.DeviceStateMapper;
import com.qianwen.mdc.collect.mapper.mgr.WorkstationWcsFeedbackMapper;
import com.qianwen.mdc.collect.service.DeviceStateAggregateService;
+import com.qianwen.mdc.collect.service.DeviceStateService;
import com.qianwen.mdc.collect.service.WorkstationService;
/**
* 鏃堕棿娈靛弽棣堢殑澶勭悊绛栫暐
@@ -69,20 +70,24 @@
*/
List<DeviceState> fixPointStateList = stateMapper.workstationFixPointStatesInTimeRange(analyseResult.getWorkstationId(),analyseResult.getEffectiveStartDate().getTime(),analyseResult.getEffectiveEndDate().getTime());
List<DeviceState> newFeedbackStateList = new ArrayList<>();
- if (Func.isNotEmpty(analyseResult.getEffectiveFeedbackTimePointList()))
- for (WorkstationFeedbackTimePointDTO item : analyseResult.getEffectiveFeedbackTimePointList()) {
- newFeedbackStateList.add(convertFeedbackPointToWorkstationState(analyseResult.getWorkstationId(), item, fixPointStateList, stateMapper));
- }
+ if (Func.isNotEmpty(analyseResult.getEffectiveFeedbackTimePointList())) {
+ for (WorkstationFeedbackTimePointDTO item : analyseResult.getEffectiveFeedbackTimePointList()) {
+ newFeedbackStateList.add(convertFeedbackPointToWorkstationState(analyseResult.getWorkstationId(), item, fixPointStateList, stateMapper));
+ }
+ }
List<DeviceState> insertData = generateWorkstationState(newFeedbackStateList, effectiveStateList);
//insertData.addAll((Collection<? extends WorkstationState>)analyseResult.getCompensateStateList().stream().map(item -> wrapperShiftInfo(item, stateMapper)).collect(Collectors.toList()));
insertData.addAll(analyseResult.getCompensateStateList().stream().map(item -> wrapperShiftInfo(item, stateMapper)).collect(Collectors.toList()));
-
+ insertData.forEach(s -> {s.setWorkstationId(feedback.getWorkstationId());});
//stateMapper.batchSave(feedback.getWorkstationId(), insertData);
//鎴戜滑浣跨敤servcie淇濆瓨
+ DeviceStateService stateService = SpringUtil.getBean(DeviceStateService.class);
+ stateService.saveDeviceStates(insertData);
List<WorkstationFeedbackTimeQuantumDTO> effectiveFeedbackTimeQuantumList = analyseResult.getEffectiveFeedbackTimeQuantumList();
- List<WorkstationWcsFeedbackDetail> detailList = (List<WorkstationWcsFeedbackDetail>)effectiveFeedbackTimeQuantumList.stream().map(x -> convertFeedbackTimeQuantumToDetail(analyseResult.getWorkstationId(), x)).collect(Collectors.toList());
+ List<WorkstationWcsFeedbackDetail> detailList = effectiveFeedbackTimeQuantumList.stream().map(x -> convertFeedbackTimeQuantumToDetail(analyseResult.getWorkstationId(), x)).collect(Collectors.toList());
+
this.workstationFeedbackDetailService.remove(Wrappers.<WorkstationWcsFeedbackDetail>lambdaQuery()
.eq(WorkstationWcsFeedbackDetail::getFeedbackId, analyseResult.getFeedbackId())
.eq(WorkstationWcsFeedbackDetail::getStatus, FeedbackDetailStatusEnum.BE_EFFECTIVE.getValue()));
@@ -102,6 +107,32 @@
deviceStateAggregateService.stateAggregate(feedback.getWorkstationId());
}
+ /**
+ * 闈炲浐瀹氱偣鏀逛负鍒犻櫎鐘舵�侊紱鍥哄畾鐐硅缃负鍒濆鐘舵��
+ * @param deviceState
+ * @return
+ */
+ private DeviceState resetEffectiveWorkstationState(DeviceState deviceState) {
+ if (deviceState.getIsFixPoint()) {
+ deviceState.setFeedbackPointType(FeedbackTimePointEnum.NO_FEED_BACK_POINT.getValue());
+ deviceState.setValueCollect(0);
+ deviceState.setWcs(0);
+ deviceState.setIsPlan(null);
+ deviceState.setRps(0);
+ deviceState.setIsSync(false);
+ deviceState.setIsDeleted(false);
+ } else {
+ deviceState.setIsDeleted(true);
+ }
+ return deviceState;
+ }
+
+ /**
+ * 浠ewFeedbackStateList涓哄熀纭�锛屽鏋渆ffectiveStateList涓殑鐐逛笌newFeedbackStateList涓殑鏁版嵁鏃堕棿涓嶇浉绛夛紝鍒欏皢effectiveStateList涓殑鐐瑰姞鍏�
+ * @param newFeedbackStateList 鏍规嵁鍙嶉杞崲鍑烘潵鐨勭姸鎬佹暟鎹�
+ * @param effectiveStateList 鍙嶉鏃堕棿娈靛唴鐨勯潪鍙嶉鐐�
+ * @return
+ */
private List<DeviceState> generateWorkstationState(List<DeviceState> newFeedbackStateList, List<DeviceState> effectiveStateList) {
List<DeviceState> resultList = new ArrayList<>();
resultList.addAll(newFeedbackStateList);
@@ -118,40 +149,47 @@
return resultList;
}
+ /**
+ * 灏嗗弽棣堢殑鏃堕棿鐐硅浆鎹负璁惧鐘舵��
+ * @param workstationId
+ * @param timePoint
+ * @param fixPointStateList
+ * @param stateMapper
+ * @return
+ */
private DeviceState convertFeedbackPointToWorkstationState(Long workstationId, WorkstationFeedbackTimePointDTO timePoint, List<DeviceState> fixPointStateList, DeviceStateMapper stateMapper) {
- DeviceState workstationState = new DeviceState();
- workstationState.setTime(Long.valueOf(timePoint.getFeedbackTime().getTime()));
- workstationState.setWcs(Integer.valueOf(timePoint.getWcs()));
- workstationState.setValueCollect(Integer.valueOf(timePoint.getWcs()));
- workstationState.setWorkstationId(workstationId);
- workstationState.setIsDeleted(Boolean.FALSE);
- workstationState.setIsSync(false);
- workstationState.setIsFixPoint(Boolean.FALSE);
- workstationState.setFeedbackId(timePoint.getFeedbackId());
- workstationState.setFeedbackPointType(timePoint.getPointEnum().getValue());
+ DeviceState state = new DeviceState();
+ state.setTime(timePoint.getFeedbackTime().getTime());
+ state.setWcs(Integer.valueOf(timePoint.getWcs()));
+ state.setValueCollect(Integer.valueOf(timePoint.getWcs()));
+ state.setWorkstationId(workstationId);
+ state.setIsDeleted(false);
+ state.setIsSync(false);
+ state.setIsFixPoint(false);
+ state.setFeedbackId(timePoint.getFeedbackId());
+ state.setFeedbackPointType(timePoint.getPointEnum().getValue());
DeviceState matchRecord = fixPointStateList.stream().filter(x -> {
return x.getTime().equals(Long.valueOf(timePoint.getFeedbackTime().getTime()));
}).findFirst().orElse(null);
if (Func.isNotEmpty(matchRecord)) {
- workstationState.setCalendarCode(matchRecord.getCalendarCode());
- workstationState.setFactoryYear(matchRecord.getFactoryYear());
- workstationState.setFactoryWeek(matchRecord.getFactoryWeek());
- workstationState.setFactoryMonth(matchRecord.getFactoryMonth());
- workstationState.setFactoryDate(matchRecord.getFactoryDate());
- workstationState.setIsFixPoint(matchRecord.getIsFixPoint());
- workstationState.setShiftTimeType(matchRecord.getShiftTimeType());
- workstationState.setShiftIndex(matchRecord.getShiftIndex());
+ state.setCalendarCode(matchRecord.getCalendarCode());
+ state.setFactoryYear(matchRecord.getFactoryYear());
+ state.setFactoryWeek(matchRecord.getFactoryWeek());
+ state.setFactoryMonth(matchRecord.getFactoryMonth());
+ state.setFactoryDate(matchRecord.getFactoryDate());
+ state.setIsFixPoint(matchRecord.getIsFixPoint());
+ state.setShiftTimeType(matchRecord.getShiftTimeType());
+ state.setShiftIndex(matchRecord.getShiftIndex());
} else {
- workstationState = wrapperShiftInfo(workstationState, stateMapper);
+ state = wrapperShiftInfo(state, stateMapper);
}
-
//GlobalWcsOfRps setting = WorkstationCache.getWorkstationWcsSetting(workstationId, timePoint.getWcs());
WorkstationCache workstationCache = SpringUtil.getBean(WorkstationCache.class);
GlobalWcsOfRps setting = workstationCache.getWorkstationWcsSetting(workstationId, timePoint.getWcs());
- workstationState.setRps(setting.getRps());
- workstationState.setIsPlan(setting.getIsPlan());
- return workstationState;
+ state.setRps(setting.getRps());
+ state.setIsPlan(setting.getIsPlan());
+ return state;
}
private DeviceState wrapperShiftInfo(DeviceState workstationState, DeviceStateMapper stateMapper) {
@@ -197,18 +235,5 @@
return detail;
}
- private DeviceState resetEffectiveWorkstationState(DeviceState workstationState) {
- if (workstationState.getIsFixPoint().booleanValue()) {
- workstationState.setFeedbackPointType(FeedbackTimePointEnum.NO_FEED_BACK_POINT.getValue());
- workstationState.setValueCollect(0);
- workstationState.setWcs(0);
- workstationState.setIsPlan(null);
- workstationState.setRps(0);
- workstationState.setIsSync(Boolean.FALSE);
- workstationState.setIsDeleted(Boolean.FALSE);
- } else {
- workstationState.setIsDeleted(Boolean.TRUE);
- }
- return workstationState;
- }
+
}
diff --git a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/WorkstationFeedbackService.java b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/WorkstationFeedbackService.java
index b026049..d178f30 100644
--- a/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/WorkstationFeedbackService.java
+++ b/collect/src/main/java/com/qianwen/mdc/collect/service/feedback/WorkstationFeedbackService.java
@@ -54,7 +54,6 @@
this.bladeRedis = bladeRedis;
}*/
- //@Override
/**
* 鍙戦�佹秷鎭�
* @param workstationId
@@ -86,7 +85,7 @@
}
}
- //@Override
+
// @RedisLock(value = "lock:posting:state", param = "#workstationId", leaseTime = 240)
/**
* 澶勭悊鐘舵�佸弽棣�
@@ -110,7 +109,7 @@
/**/
/**
- * 澶勭悊鍙嶉瀹屾垚
+ * 澶勭悊鍙嶉瀹屾垚锛屽湪鐘舵�佽仛鍚堝畬鎴愮殑鏃跺�欒皟鐢�
* @param workstationId
*/
public void handlerFeedbackComplete(Long workstationId) {
diff --git a/collect/src/main/resources/application-dev.yml b/collect/src/main/resources/application-dev.yml
index 66a4cb5..cd74fe0 100644
--- a/collect/src/main/resources/application-dev.yml
+++ b/collect/src/main/resources/application-dev.yml
@@ -1,6 +1,6 @@
spring:
redis:
- database: 2
+ database: 5
host: 120.46.212.231
port: 6379
password: root
@@ -11,7 +11,7 @@
#MQTT-鏈嶅姟绔湴鍧�
mqtt:
- host: tcp://82.156.1.83:1884
+ host: tcp://broker.emqx.io:1883
#username=admin #MQTT-鏈嶅姟绔敤鎴峰悕
#password=public #MQTT-鏈嶅姟绔瘑鐮�
cleansession: false #MQTT-鏄惁娓呯悊session
@@ -35,7 +35,7 @@
#iotdb 浠ュ強鍏秊dbc涓�璧烽厤缃�
iotdb:
driver: org.apache.iotdb.jdbc.IoTDBDriver
- host: 120.46.212.231 #120.46.212.231 localhost
+ host: 116.63.148.72 #120.46.212.231 localhost 116.63.148.72
port: 6667
maxSize: 100
username: root
--
Gitblit v1.9.3