From 6576a240f36adb22a2ade354946babc0b18f0466 Mon Sep 17 00:00:00 2001
From: cl <1442464845@qq.com>
Date: 星期四, 16 四月 2026 17:38:27 +0800
Subject: [PATCH] 站点信号
---
rsf-open-api/src/main/java/com/vincent/rsf/openApi/tv/TvRcsStationPollService.java | 40 +++++++++++++++++++++++++++++++++-------
1 files changed, 33 insertions(+), 7 deletions(-)
diff --git a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/tv/TvRcsStationPollService.java b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/tv/TvRcsStationPollService.java
index 36944ef..59f95ab 100644
--- a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/tv/TvRcsStationPollService.java
+++ b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/tv/TvRcsStationPollService.java
@@ -47,10 +47,7 @@
String stationId = pollProperties.getTaskNoStationId();
if (StringUtils.hasText(pollProperties.getTaskNoPollUrl())) {
try {
- String url = pollProperties.getTaskNoPollUrl();
- log.info("RCS绔欑偣杞璇锋眰 GET /cv/station/getTaskNo url={}", url);
- String raw = restTemplate.getForObject(url, String.class);
- log.info("RCS绔欑偣杞鍝嶅簲 GET /cv/station/getTaskNo body={}", trimForLog(raw));
+ String raw = pollTaskNoRaw();
String taskNo = applyTaskNoResponse(raw, stationId);
enrichSnapshotFromWms(stationId, taskNo);
} catch (RestClientException e) {
@@ -124,9 +121,7 @@
private String pollErrorRaw() throws Exception {
String url = pollProperties.getErrorPollUrl();
if (pollProperties.isErrorPollUsePost()) {
- ObjectNode body = objectMapper.createObjectNode();
- body.put("staNo", pollProperties.getErrorStationId());
- String reqBody = objectMapper.writeValueAsString(body);
+ String reqBody = objectMapper.writeValueAsString(createStationBody(pollProperties.getErrorStationId()));
HttpHeaders headers = new HttpHeaders();
headers.setContentType(MediaType.APPLICATION_JSON);
HttpEntity<String> entity = new HttpEntity<>(reqBody, headers);
@@ -143,6 +138,37 @@
return raw;
}
+ private String pollTaskNoRaw() throws Exception {
+ String url = pollProperties.getTaskNoPollUrl();
+ if (pollProperties.isTaskNoPollUsePost()) {
+ String reqBody = objectMapper.writeValueAsString(createStationBody(pollProperties.getTaskNoStationId()));
+ HttpHeaders headers = new HttpHeaders();
+ headers.setContentType(MediaType.APPLICATION_JSON);
+ HttpEntity<String> entity = new HttpEntity<>(reqBody, headers);
+ // log.info("RCS绔欑偣杞璇锋眰 GET /cv/station/getTaskNo url={}", url);
+ log.info("RCS绔欑偣杞璇锋眰 POST /cv/station/getTaskNo url={} body={}", url, trimForLog(reqBody));
+ ResponseEntity<String> resp = restTemplate.exchange(
+ url, HttpMethod.POST, entity, String.class);
+ String respBody = resp.getBody();
+ // log.info("RCS绔欑偣杞鍝嶅簲 GET /cv/station/getTaskNo body={}", trimForLog(raw));
+ log.info("RCS绔欑偣杞鍝嶅簲 POST /cv/station/getTaskNo body={}", trimForLog(respBody));
+ return respBody;
+ }
+ log.info("RCS绔欑偣杞璇锋眰 GET /cv/station/getTaskNo url={}", url);
+ String raw = restTemplate.getForObject(url, String.class);
+ log.info("RCS绔欑偣杞鍝嶅簲 GET /cv/station/getTaskNo body={}", trimForLog(raw));
+ return raw;
+ }
+
+ private ObjectNode createStationBody(String stationId) {
+ ObjectNode body = objectMapper.createObjectNode();
+ if (StringUtils.hasText(stationId)) {
+ body.put("stationId", stationId);
+ body.put("staNo", stationId);
+ }
+ return body;
+ }
+
/** 鍐欏叆 tvRcs 浠诲姟鍙� Hash锛涜繑鍥炶В鏋愬嚭鐨� taskNo锛堢敤浜� WMS 鍚堝苟锛� */
private String applyTaskNoResponse(String raw, String staNo) {
if (!StringUtils.hasText(staNo)) {
--
Gitblit v1.9.1