From ceab656e93edafbdaa0d908a2f723336af811b5a Mon Sep 17 00:00:00 2001 From: skyouc <958836976@qq.com> Date: 星期三, 03 九月 2025 12:47:23 +0800 Subject: [PATCH] 站点任务功能优化 --- rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/impl/WmsRcsServiceImpl.java | 43 +++++++++++++++++++++++++++++++++++++------ 1 files changed, 37 insertions(+), 6 deletions(-) diff --git a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/impl/WmsRcsServiceImpl.java b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/impl/WmsRcsServiceImpl.java index 0ecefd8..6560a4d 100644 --- a/rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/impl/WmsRcsServiceImpl.java +++ b/rsf-open-api/src/main/java/com/vincent/rsf/openApi/service/impl/WmsRcsServiceImpl.java @@ -11,9 +11,11 @@ import com.vincent.rsf.framework.exception.CoolException; import com.vincent.rsf.openApi.config.PlatformProperties; import com.vincent.rsf.openApi.entity.Loc; +import com.vincent.rsf.openApi.entity.constant.WmsConstant; import com.vincent.rsf.openApi.entity.dto.CommonResponse; import com.vincent.rsf.openApi.entity.constant.RcsConstant; import com.vincent.rsf.openApi.entity.dto.SyncLocsDto; +import com.vincent.rsf.openApi.entity.params.ExMsgCallbackParams; import com.vincent.rsf.openApi.entity.params.RcsPubTaskParams; import com.vincent.rsf.openApi.entity.params.SyncRcsLocsParam; import com.vincent.rsf.openApi.mapper.LocMapper; @@ -41,6 +43,9 @@ private PlatformProperties rcsApi; @Autowired + private PlatformProperties.WmsApi wmsApi; + + @Autowired private RestTemplate restTemplate; @@ -52,7 +57,7 @@ */ @Override @Transactional(rollbackFor = Exception.class) - public R pubTasks(RcsPubTaskParams params) { + public CommonResponse pubTasks(RcsPubTaskParams params) { /**RCS鍩虹閰嶇疆閾炬帴*/ String rcsUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.pubTask; log.info("浠诲姟涓嬪彂锛岃姹傚湴鍧�锛� {}锛� 璇锋眰鍙傛暟锛� {}", rcsUrl , JSONObject.toJSONString(params)); @@ -71,7 +76,7 @@ try { CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class); if (result.getCode() == 200) { - return R.ok(); + return result; } else { throw new CoolException("浠诲姟涓嬪彂澶辫触锛侊紒"); } @@ -88,8 +93,8 @@ * @version 1.0 */ @Override - public R cancelTasks(Map<String, Object> params) { - return R.ok(); + public CommonResponse cancelTasks(Map<String, Object> params) { + return new CommonResponse(); } /** @@ -99,8 +104,34 @@ * @version 1.0 */ @Override - public R callBackEvent(Map<String, Object> params) { - return R.ok(); + public CommonResponse callBackEvent(ExMsgCallbackParams params) { + String callUrl = wmsApi.getHost() + ":" + wmsApi.getPort() + WmsConstant.callBack; + /**WMS鍩虹閰嶇疆閾炬帴*/ + log.info("浠诲姟鎵ц鐘舵�佷笂鎶ワ紝璇锋眰鍦板潃锛� {}锛� 璇锋眰鍙傛暟锛� {}", callUrl , JSONObject.toJSONString(params)); + HttpHeaders headers = new HttpHeaders(); + headers.add("Content-Type", "application/json"); + headers.add("api-version", "v2.0"); + HttpEntity httpEntity = new HttpEntity(params, headers); + ResponseEntity<String> exchange = restTemplate.exchange(callUrl, HttpMethod.POST, httpEntity, String.class); + log.info("浠诲姟鎵ц鐘舵�佷笂鎶ワ紝鍝嶅簲缁撴灉锛� {}", exchange); + if (Objects.isNull(exchange.getBody())) { + return new CommonResponse(); + } else { + ObjectMapper objectMapper = new ObjectMapper(); + objectMapper.coercionConfigDefaults() + .setCoercion(CoercionInputShape.EmptyString, CoercionAction.AsEmpty); + try { + CommonResponse result = objectMapper.readValue(exchange.getBody(), CommonResponse.class); + if (result.getCode() == 200) { + return result; + } else { + return result; +// throw new CoolException("浠诲姟鎵ц鐘舵�佷笂鎶ュけ璐ワ紒锛�"); + } + } catch (JsonProcessingException e) { + throw new CoolException(e.getMessage()); + } + } } /** -- Gitblit v1.9.1