From 4d5c3bd8bfea7a5ae0b3cd606156a1e83e633bd9 Mon Sep 17 00:00:00 2001
From: 1 <1@123>
Date: 星期三, 18 三月 2026 12:37:22 +0800
Subject: [PATCH] lsh#

---
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReportMsgServiceImpl.java |   50 ++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 42 insertions(+), 8 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReportMsgServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReportMsgServiceImpl.java
index 3d83a26..026b9bb 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReportMsgServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/ReportMsgServiceImpl.java
@@ -21,9 +21,9 @@
 import com.vincent.rsf.server.api.service.ReportMsgService;
 import com.vincent.rsf.server.manager.entity.WkOrder;
 import com.vincent.rsf.server.manager.entity.WkOrderItem;
+import com.vincent.rsf.server.manager.mapper.AsnOrderMapper;
 import com.vincent.rsf.server.manager.entity.Purchase;
 import com.vincent.rsf.server.manager.service.AsnOrderItemService;
-import com.vincent.rsf.server.manager.service.AsnOrderService;
 import com.vincent.rsf.server.manager.service.PurchaseService;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.BeanUtils;
@@ -61,7 +61,7 @@
     @Autowired
     private RemotesInfoProperties remotesInfoProperties;
     @Autowired
-    private AsnOrderService asnOrderService;
+    private AsnOrderMapper asnOrderMapper;
     @Autowired
     private AsnOrderItemService asnOrderItemService;
     @Autowired
@@ -71,8 +71,10 @@
      * @author Ryan
      * @description 涓婃姤璐ㄦ鍒楄〃
      * @params [items 鍒楄〃]
+     *
      * @return boolean
      * @time 2025/3/7 09:12
+     * 11
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
@@ -158,13 +160,13 @@
             //ASN鏄庣粏鍗曟嵁鍒嗙粍
             Map<Long, List<WkOrderItem>> asnIds = wkOrderItems.stream().collect(Collectors.groupingBy(WkOrderItem::getOrderId));
             ids.forEach(id -> {
-                int count = asnOrderService.count(new LambdaQueryWrapper<WkOrder>().in(WkOrder::getId, id));
+                long count = Optional.ofNullable(asnOrderMapper.selectCount(new LambdaQueryWrapper<WkOrder>().in(WkOrder::getId, id))).orElse(0L);
                 if (count == asnIds.get(id).size()) {
-                    if (!asnOrderService.update(new LambdaUpdateWrapper<WkOrder>().eq(WkOrder::getId, id).set(WkOrder::getNtyStatus, 1))) {
+                    if (asnOrderMapper.update(null, new LambdaUpdateWrapper<WkOrder>().eq(WkOrder::getId, id).set(WkOrder::getNtyStatus, 1)) <= 0) {
                         throw new CoolException("ASN涓诲崟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                     }
                 } else {
-                    if (!asnOrderService.update(new LambdaUpdateWrapper<WkOrder>().eq(WkOrder::getId, id).set(WkOrder::getNtyStatus, 2))) {
+                    if (asnOrderMapper.update(null, new LambdaUpdateWrapper<WkOrder>().eq(WkOrder::getId, id).set(WkOrder::getNtyStatus, 2)) <= 0) {
                         throw new CoolException("ASN涓诲崟鐘舵�佷慨鏀瑰け璐ワ紒锛�");
                     }
                 }
@@ -207,7 +209,8 @@
                 if (result.getCode() == 200) {
                     return R.ok().add(result.getData());
                 } else {
-                    throw new CoolException("淇敼澶辫触锛侊紒");
+                    return R.ok(result.getMsg()).add(result.getData());
+//                    throw new CoolException("淇敼澶辫触锛侊紒");
                 }
             } catch (JsonProcessingException e) {
                 throw new CoolException(e.getMessage());
@@ -216,13 +219,44 @@
     }
 
     /**
-     * 搴撳瓨鏁版嵁淇敼
+     * 鐩樼偣搴撳瓨鏁版嵁淇敼
      * @param params
      * @return
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
     public R uploadCheckOrder(ReportParams params) {
-        return null;
+        if (Objects.isNull(params)) {
+            throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+        /**WMS鍩虹閰嶇疆閾炬帴*/
+        String rcsUrl = rcsApi.getHost() + ":" + rcsApi.getPort() + RcsConstant.CHECK_LOCITEM_UPDATE;
+        log.info("鐩樼偣搴撳瓨淇敼锛歿}锛� 璇锋眰鍙傛暟锛� {}", rcsUrl, JSONObject.toJSONString(params));
+        HttpHeaders headers = new HttpHeaders();
+        headers.add("Content-Type", "application/json");
+        headers.add("api-version", "v2.0");
+
+        params.setAction("Update").setOrderType("PD_stock");
+
+        HttpEntity httpEntity = new HttpEntity(params, headers);
+        ResponseEntity<String> exchange = restTemplate.exchange(rcsUrl, HttpMethod.POST, httpEntity, String.class);
+        log.info("鐩樼偣搴撳瓨淇敼锛岃繑鍥炵粨鏋滐細 {}", exchange);
+        if (Objects.isNull(exchange.getBody())) {
+            throw new CoolException("淇敼澶辫触锛侊紒");
+        } 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 R.ok().add(result.getData());
+                } else {
+                    throw new CoolException("淇敼澶辫触锛侊紒");
+                }
+            } catch (JsonProcessingException e) {
+                throw new CoolException(e.getMessage());
+            }
+        }
     }
 }
+

--
Gitblit v1.9.1