From dc3f9cc91759823ce59486f19b138be4b296a0f1 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 28 四月 2026 09:43:28 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/controller/OpenController.java | 43 ++++++++++++++++++++++++++++++++++++++++---
1 files changed, 40 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/OpenController.java b/src/main/java/com/zy/asrs/controller/OpenController.java
index 6cda1e6..e421c08 100644
--- a/src/main/java/com/zy/asrs/controller/OpenController.java
+++ b/src/main/java/com/zy/asrs/controller/OpenController.java
@@ -12,6 +12,7 @@
import com.zy.asrs.entity.WrkMast;
import com.zy.asrs.service.DeviceConfigService;
import com.zy.asrs.service.LocMastService;
+import com.zy.asrs.service.RuntimeConfigService;
import com.zy.asrs.service.WrkMastService;
import com.zy.common.annotations.OpenApiLog;
import com.zy.common.service.CommonService;
@@ -64,6 +65,8 @@
private ConfigService configService;
@Autowired
private DeviceConfigService deviceConfigService;
+ @Autowired
+ private RuntimeConfigService runtimeConfigService;
// 绉诲簱浠诲姟
@PostMapping("/createLocMoveTask")
@@ -388,6 +391,15 @@
return R.ok().add(map);
}
+ @PostMapping("/runtimeConfig/update")
+ @OpenApiLog(memo = "淇敼杩愯鍙傛暟")
+ public R updateRuntimeConfig(@RequestBody RuntimeConfigUpdateParam param) {
+ if (param == null || param.getConfigMap() == null || param.getConfigMap().isEmpty()) {
+ return R.error("鍙傛暟涓嶈兘涓虹┖");
+ }
+ return R.ok().add(runtimeConfigService.updateRuntimeConfig(param.getConfigMap()));
+ }
+
@GetMapping("/getFakeSystemRunStatus")
public R getFakeSystemRunStatus() {
HashMap<String, Object> map = new HashMap<>();
@@ -446,20 +458,45 @@
return R.error("鍙傛暟涓嶈兘涓虹┖");
}
Set<String> allowKeys = FakeConfigKeys.ALL_KEYS;
+ Map<String, String> normalizedMap = new LinkedHashMap<>();
for (Map.Entry<String, Object> entry : param.getConfigMap().entrySet()) {
String key = entry.getKey();
if (!allowKeys.contains(key)) {
return R.error("涓嶆敮鎸佺殑閰嶇疆椤�: " + key);
}
- String normalized = normalizeFakeConfigValue(key, entry.getValue());
- if (!configService.saveConfigValue(key, normalized)) {
- return R.error("淇濆瓨澶辫触: " + key);
+ normalizedMap.put(key, normalizeFakeConfigValue(key, entry.getValue()));
+ }
+ validateFakeCrnLaserConfig(normalizedMap);
+ for (Map.Entry<String, String> entry : normalizedMap.entrySet()) {
+ if (!configService.saveConfigValue(entry.getKey(), entry.getValue())) {
+ return R.error("淇濆瓨澶辫触: " + entry.getKey());
}
}
configService.refreshSystemConfigCache();
return getFakeConfig();
}
+ private void validateFakeCrnLaserConfig(Map<String, String> normalizedMap) {
+ long bayMin = resolveFakeLongValue(normalizedMap, FakeConfigKeys.FAKE_CRN_BAY_MIN);
+ long bayMax = resolveFakeLongValue(normalizedMap, FakeConfigKeys.FAKE_CRN_BAY_MAX);
+ long laserMin = resolveFakeLongValue(normalizedMap, FakeConfigKeys.FAKE_CRN_LASER_MIN);
+ long laserMax = resolveFakeLongValue(normalizedMap, FakeConfigKeys.FAKE_CRN_LASER_MAX);
+ if (bayMax <= bayMin) {
+ throw new CoolException("鍫嗗灈鏈� bay 鏈�澶у�煎繀椤诲ぇ浜庢渶灏忓��");
+ }
+ if (laserMax <= laserMin) {
+ throw new CoolException("鍫嗗灈鏈洪暛灏勬渶澶у�煎繀椤诲ぇ浜庢渶灏忓��");
+ }
+ }
+
+ private long resolveFakeLongValue(Map<String, String> normalizedMap, String key) {
+ String value = normalizedMap.get(key);
+ if (value == null) {
+ value = configService.getConfigValue(key, FakeConfigKeys.DEFAULTS.get(key));
+ }
+ return Long.parseLong(value);
+ }
+
private String normalizeFakeConfigValue(String key, Object rawValue) {
if (rawValue == null) {
throw new CoolException(key + " 鍙傛暟涓嶈兘涓虹┖");
--
Gitblit v1.9.1