From 1fed5e7bab3a8f6b9adbfcd3695e14a03d47677f Mon Sep 17 00:00:00 2001
From: huang <1532065656@qq.com>
Date: 星期五, 31 十月 2025 09:52:35 +0800
Subject: [PATCH] 更新代码
---
mes-processes/mes-plcSend/src/main/java/com/mes/controller/PlcAddressController.java | 113 +++++++++++++++++++++++++++++---------------------------
1 files changed, 59 insertions(+), 54 deletions(-)
diff --git a/mes-processes/mes-plcSend/src/main/java/com/mes/controller/PlcAddressController.java b/mes-processes/mes-plcSend/src/main/java/com/mes/controller/PlcAddressController.java
index 4ba1292..71bff44 100644
--- a/mes-processes/mes-plcSend/src/main/java/com/mes/controller/PlcAddressController.java
+++ b/mes-processes/mes-plcSend/src/main/java/com/mes/controller/PlcAddressController.java
@@ -1,9 +1,8 @@
package com.mes.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.mes.config.PlcAddressMappingConfig;
-import com.mes.entity.PlcAddressMapping;
-import com.mes.service.PlcAddressMappingService;
+import com.mes.entity.PlcAddress;
+import com.mes.service.PlcAddressService;
import com.mes.vo.Result;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@@ -20,26 +19,26 @@
* PLC鍦板潃鏄犲皠閰嶇疆鎺у埗鍣�
* 鎻愪緵PLC鍦板潃鏄犲皠閰嶇疆鐨勫鍒犳敼鏌ユ帴鍙�
*
- * @author zhoush
+ * @author huang
* @date 2025/10/29
*/
@Slf4j
@RestController
@RequestMapping("address-mapping")
@Api(tags = "PLC鍦板潃鏄犲皠閰嶇疆绠$悊")
-public class PlcAddressMappingController {
+public class PlcAddressController {
@Resource
- private PlcAddressMappingService plcAddressMappingService;
+ private PlcAddressService plcAddressService;
/**
* 鑾峰彇鎵�鏈塒LC鍦板潃鏄犲皠閰嶇疆
*/
@GetMapping("/list")
@ApiOperation("鑾峰彇鎵�鏈塒LC鍦板潃鏄犲皠閰嶇疆")
- public Result<List<PlcAddressMapping>> getAllMappings() {
+ public Result<List<PlcAddress>> getAllMappings() {
try {
- List<PlcAddressMapping> mappings = plcAddressMappingService.getAllMappings();
+ List<PlcAddress> mappings = plcAddressService.getAllMappings();
return Result.success(mappings);
} catch (Exception e) {
log.error("鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆鍒楄〃澶辫触", e);
@@ -52,13 +51,13 @@
*/
@GetMapping("/page")
@ApiOperation("鍒嗛〉鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆")
- public Result<IPage<PlcAddressMapping>> getMappingsByPage(
+ public Result<IPage<PlcAddress>> getMappingsByPage(
@ApiParam("椤电爜锛屼粠1寮�濮�") @RequestParam(defaultValue = "1") int page,
@ApiParam("姣忛〉鏉℃暟") @RequestParam(defaultValue = "10") int size,
@ApiParam("椤圭洰鏍囪瘑锛屾敮鎸佹ā绯婃煡璇�") @RequestParam(required = false) String projectId,
@ApiParam("PLC IP鍦板潃锛屾敮鎸佹ā绯婃煡璇�") @RequestParam(required = false) String plcIp) {
try {
- IPage<PlcAddressMapping> pageResult = plcAddressMappingService.getMappingsByPage(page, size, projectId, plcIp);
+ IPage<PlcAddress> pageResult = plcAddressService.getMappingsByPage(page, size, projectId, plcIp);
return Result.success(pageResult);
} catch (Exception e) {
log.error("鍒嗛〉鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆澶辫触", e);
@@ -69,12 +68,12 @@
/**
* 鏍规嵁ID鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆
*/
- @GetMapping("/{id}")
+ @GetMapping("/detail")
@ApiOperation("鏍规嵁ID鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆")
- public Result<PlcAddressMapping> getMappingById(
- @ApiParam("閰嶇疆ID") @PathVariable Long id) {
+ public Result<PlcAddress> getMappingById(
+ @ApiParam("閰嶇疆ID") @RequestParam Long id) {
try {
- PlcAddressMapping mapping = plcAddressMappingService.getMappingById(id);
+ PlcAddress mapping = plcAddressService.getMappingById(id);
if (mapping != null) {
return Result.success(mapping);
} else {
@@ -89,12 +88,12 @@
/**
* 鏍规嵁椤圭洰鏍囪瘑鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆
*/
- @GetMapping("/project/{projectId}")
+ @GetMapping("/project")
@ApiOperation("鏍规嵁椤圭洰鏍囪瘑鑾峰彇PLC鍦板潃鏄犲皠閰嶇疆")
- public Result<PlcAddressMapping> getMappingByProjectId(
- @ApiParam("椤圭洰鏍囪瘑") @PathVariable String projectId) {
+ public Result<PlcAddress> getMappingByProjectId(
+ @ApiParam("椤圭洰鏍囪瘑") @RequestParam String projectId) {
try {
- PlcAddressMapping mapping = plcAddressMappingService.getMappingByProjectId(projectId);
+ PlcAddress mapping = plcAddressService.getMappingByProjectId(projectId);
if (mapping != null) {
return Result.success(mapping);
} else {
@@ -114,22 +113,28 @@
@ApiOperation("鏍规嵁椤圭洰ID鑾峰彇椤圭洰閰嶇疆锛堝寘鍚湴鍧�鏄犲皠锛�")
public Result<Map<String, Object>> getProjectConfig(String projectId) {
try {
- // 鑾峰彇鍩虹閰嶇疆
- PlcAddressMapping mapping = plcAddressMappingService.getMappingByProjectId(projectId);
+ PlcAddress mapping = plcAddressService.getProjectConfig(projectId);
- // 鑾峰彇瀹屾暣椤圭洰閰嶇疆锛堝寘鍚湴鍧�鏄犲皠锛�
- PlcAddressMappingConfig.ProjectPlcConfig projectConfig = plcAddressMappingService.getProjectConfigWithMapping(projectId);
-
- // 鍚堝苟鍩虹閰嶇疆淇℃伅
+ // 缁勮杈撳嚭锛屼粎鍩轰簬鏁版嵁搴撳疄浣�
Map<String, Object> result = new HashMap<>();
result.put("projectId", projectId);
- result.put("dbArea", projectConfig.getDbArea());
- result.put("beginIndex", projectConfig.getBeginIndex());
- result.put("plcIp", projectConfig.getPlcIp());
- result.put("plcType", projectConfig.getPlcType());
- result.put("addressMapping", projectConfig.getAddressMapping());
+ result.put("dbArea", mapping != null ? mapping.getDbArea() : "DB1");
+ result.put("beginIndex", mapping != null ? mapping.getBeginIndex() : 0);
+ result.put("plcIp", mapping != null ? mapping.getPlcIp() : null);
+ result.put("plcType", mapping != null ? mapping.getPlcType() : null);
- // 濡傛灉鏁版嵁搴撲腑鏈夐厤缃紝娣诲姞鏁版嵁搴撲腑鐨勯澶栦俊鎭�
+ // 瑙f瀽addressMapping JSON涓篗ap
+ Map<String, Integer> addressMap = new HashMap<>();
+ if (mapping != null && mapping.getAddressMapping() != null && !mapping.getAddressMapping().trim().isEmpty()) {
+ try {
+ addressMap = new com.fasterxml.jackson.databind.ObjectMapper()
+ .readValue(mapping.getAddressMapping(), new com.fasterxml.jackson.core.type.TypeReference<Map<String, Integer>>() {});
+ } catch (Exception parseEx) {
+ log.warn("瑙f瀽鍦板潃鏄犲皠JSON澶辫触: {}", mapping.getAddressMapping());
+ }
+ }
+ result.put("addressMapping", addressMap);
+
if (mapping != null) {
result.put("id", mapping.getId());
result.put("projectName", mapping.getProjectName());
@@ -148,8 +153,8 @@
*/
@PostMapping
@ApiOperation("鍒涘缓鏂扮殑PLC鍦板潃鏄犲皠閰嶇疆")
- public Result<PlcAddressMapping> createMapping(
- @ApiParam("PLC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddressMapping mapping) {
+ public Result<PlcAddress> createMapping(
+ @ApiParam("PLC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddress mapping) {
try {
// 鍙傛暟楠岃瘉
if (mapping.getProjectId() == null || mapping.getProjectId().trim().isEmpty()) {
@@ -163,7 +168,7 @@
mapping.setBeginIndex(0); // 濡傛灉涓鸿礋鏁帮紝璁剧疆涓洪粯璁よ捣濮嬬储寮�0
}
- PlcAddressMapping created = plcAddressMappingService.saveMapping(mapping);
+ PlcAddress created = plcAddressService.saveMapping(mapping);
log.info("鍒涘缓PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛孖D: {}, 椤圭洰鏍囪瘑: {}", created.getId(), created.getProjectId());
return Result.success(created);
} catch (Exception e) {
@@ -175,11 +180,11 @@
/**
* 鏇存柊PLC鍦板潃鏄犲皠閰嶇疆
*/
- @PutMapping("/{id}")
+ @PutMapping("/update")
@ApiOperation("鏇存柊PLC鍦板潃鏄犲皠閰嶇疆")
- public Result<PlcAddressMapping> updateMapping(
- @ApiParam("閰嶇疆ID") @PathVariable Long id,
- @ApiParam("鏇存柊鐨凱LC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddressMapping mapping) {
+ public Result<PlcAddress> updateMapping(
+ @ApiParam("閰嶇疆ID") @RequestParam Long id,
+ @ApiParam("鏇存柊鐨凱LC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddress mapping) {
try {
// 鍙傛暟楠岃瘉
if (mapping.getProjectId() == null || mapping.getProjectId().trim().isEmpty()) {
@@ -190,7 +195,7 @@
}
mapping.setId(id);
- PlcAddressMapping updated = plcAddressMappingService.updateMapping(mapping);
+ PlcAddress updated = plcAddressService.updateMapping(mapping);
if (updated != null) {
log.info("鏇存柊PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛孖D: {}, 椤圭洰鏍囪瘑: {}", updated.getId(), updated.getProjectId());
return Result.success(updated);
@@ -207,11 +212,11 @@
* 鏍规嵁椤圭洰ID鏇存柊閰嶇疆
* 瀵瑰簲鍓嶇锛歶pdateConfig
*/
- @PutMapping("/project/{projectId}")
+ @PutMapping("/project/update")
@ApiOperation("鏍规嵁椤圭洰ID鏇存柊閰嶇疆")
- public Result<PlcAddressMapping> updateMappingByProjectId(
- @ApiParam("椤圭洰鏍囪瘑") @PathVariable String projectId,
- @ApiParam("鏇存柊鐨凱LC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddressMapping mapping) {
+ public Result<PlcAddress> updateMappingByProjectId(
+ @ApiParam("椤圭洰鏍囪瘑") @RequestParam String projectId,
+ @ApiParam("鏇存柊鐨凱LC鍦板潃鏄犲皠閰嶇疆") @RequestBody PlcAddress mapping) {
try {
// 鍙傛暟楠岃瘉
if (mapping.getDbArea() == null || mapping.getDbArea().trim().isEmpty()) {
@@ -222,16 +227,16 @@
mapping.setProjectId(projectId);
// 鏌ユ壘鐜版湁閰嶇疆
- PlcAddressMapping existing = plcAddressMappingService.getMappingByProjectId(projectId);
+ PlcAddress existing = plcAddressService.getMappingByProjectId(projectId);
if (existing != null) {
// 鏇存柊鐜版湁閰嶇疆
mapping.setId(existing.getId());
- PlcAddressMapping updated = plcAddressMappingService.updateMapping(mapping);
+ PlcAddress updated = plcAddressService.updateMapping(mapping);
log.info("鏍规嵁椤圭洰ID鏇存柊PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛岄」鐩爣璇�: {}", projectId);
return Result.success(updated);
} else {
// 鍒涘缓鏂伴厤缃�
- PlcAddressMapping created = plcAddressMappingService.saveMapping(mapping);
+ PlcAddress created = plcAddressService.saveMapping(mapping);
log.info("鏍规嵁椤圭洰ID鍒涘缓PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛岄」鐩爣璇�: {}", projectId);
return Result.success(created);
}
@@ -244,12 +249,12 @@
/**
* 鍒犻櫎PLC鍦板潃鏄犲皠閰嶇疆
*/
- @DeleteMapping("/{id}")
+ @DeleteMapping("/delete")
@ApiOperation("鍒犻櫎PLC鍦板潃鏄犲皠閰嶇疆")
public Result<Void> deleteMapping(
- @ApiParam("閰嶇疆ID") @PathVariable Long id) {
+ @ApiParam("閰嶇疆ID") @RequestParam Long id) {
try {
- boolean deleted = plcAddressMappingService.deleteMapping(id);
+ boolean deleted = plcAddressService.deleteMapping(id);
if (deleted) {
log.info("鍒犻櫎PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛孖D: {}", id);
return Result.success();
@@ -274,7 +279,7 @@
return Result.error("ID鍒楄〃涓嶈兘涓虹┖");
}
- int deletedCount = plcAddressMappingService.deleteMappings(ids);
+ int deletedCount = plcAddressService.deleteMappings(ids);
log.info("鎵归噺鍒犻櫎PLC鍦板潃鏄犲皠閰嶇疆鎴愬姛锛屽垹闄ゆ暟閲�: {}, ID鍒楄〃: {}", deletedCount, ids);
return Result.success();
} catch (Exception e) {
@@ -286,17 +291,17 @@
/**
* 娴嬭瘯PLC杩炴帴
*/
- @PostMapping("/{id}/test-connection")
+ @PostMapping("/test-connection")
@ApiOperation("娴嬭瘯PLC杩炴帴")
public Result<String> testConnection(
- @ApiParam("閰嶇疆ID") @PathVariable Long id) {
+ @ApiParam("閰嶇疆ID") @RequestParam Long id) {
try {
- PlcAddressMapping mapping = plcAddressMappingService.getMappingById(id);
+ PlcAddress mapping = plcAddressService.getMappingById(id);
if (mapping == null) {
return Result.error("鏈壘鍒癐D涓� " + id + " 鐨凱LC鍦板潃鏄犲皠閰嶇疆");
}
- boolean isConnected = plcAddressMappingService.testConnection(mapping);
+ boolean isConnected = plcAddressService.testConnection(mapping);
if (isConnected) {
String message = String.format("PLC杩炴帴娴嬭瘯鎴愬姛 - 椤圭洰: %s, IP: %s, DB鍧�: %s",
mapping.getProjectId(), mapping.getPlcIp(), mapping.getDbArea());
@@ -321,7 +326,7 @@
@ApiOperation("閲嶆柊鍔犺浇閰嶇疆鏂囦欢涓殑鍦板潃鏄犲皠")
public Result<String> reloadConfig() {
try {
- plcAddressMappingService.reloadConfigMappings();
+ plcAddressService.reloadConfigMappings();
String message = "閰嶇疆鏂囦欢涓殑PLC鍦板潃鏄犲皠宸查噸鏂板姞杞�";
log.info(message);
return Result.success(message);
--
Gitblit v1.8.0