From d75cbb1bbf53219034aeff3a27b0d1dd083c51ff Mon Sep 17 00:00:00 2001
From: ZY <zc857179121@qq.com>
Date: 星期一, 28 十月 2024 15:01:29 +0800
Subject: [PATCH] 1

---
 src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java |   59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 58 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
index 58d4ffb..22aaa45 100644
--- a/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OpenServiceImpl.java
@@ -16,7 +16,9 @@
 import com.zy.asrs.utils.MatUtils;
 import com.zy.common.model.DetlDto;
 import com.zy.common.utils.NodeUtils;
+import lombok.Synchronized;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -59,6 +61,10 @@
     private WrkDetlService wrkDetlService;
     @Autowired
     private ReportQueryMapper reportQueryMapper;
+    @Autowired
+    private AgvLocMastService agvLocMastService;
+    @Autowired
+    private AgvLocDetlService agvLocDetlService;
 
     @Override
     @Transactional
@@ -129,6 +135,9 @@
             }
             OrderDetl orderDetl = new OrderDetl();
             orderDetl.sync(mat);
+            if (!Cools.isEmpty(detlDto.getCFree1())){
+                orderDetl.setSpecs(detlDto.getCFree1());
+            }
             orderDetl.setBatch(detlDto.getBatch());
             orderDetl.setAnfme(detlDto.getAnfme());
             orderDetl.setOrderId(order.getId());
@@ -624,6 +633,7 @@
         } else {
             mat.setTagId(tag.getId());
             syncMat(mat,param);
+            System.out.println(mat.getMaktx().length());
             if (matService.updateById(mat)) {
                 callApiLogSave(mat, "/open/asrs/mat/v1", "鎺ユ敹ERP涓嬪彂鍟嗗搧淇℃伅鎴愬姛锛佹坊鍔犲晢鍝佷俊鎭垚鍔燂紒", true);
             } else {
@@ -918,6 +928,49 @@
         return true;
     }
 
+    @Override
+    @Transactional
+    @Synchronized
+    public boolean checkAndAdjustLocDetl(CheckParam params) {
+
+        //鍒ゆ柇搴撲綅鏄惁瀛樺湪
+        AgvLocMast agvLocMast = agvLocMastService.selectById(params.getLocNo());
+        if(Cools.isEmpty(agvLocMast)){
+            throw new CoolException("搴撲綅鍙蜂笉瀛樺湪");
+        }
+
+        if(!Cools.eq("O",agvLocMast.getLocSts()) && !Cools.eq("F",agvLocMast.getLocSts())){
+            throw new CoolException("褰撳墠搴撲綅姝e湪浣滀笟涓紝鏃犳硶鐩樼偣璋冩暣");
+        }
+
+        if(Cools.isEmpty(params.getLocDetls())){
+            agvLocMast.setLocSts("O");
+        }else {
+            agvLocMast.setLocSts("F");
+        }
+
+        agvLocMastService.updateById(agvLocMast);
+
+        //鍒犻櫎鏃у簱瀛�
+        agvLocDetlService.delete(new EntityWrapper<AgvLocDetl>().eq("loc_no",params.getLocNo()));
+
+        //鏂板鐩樼偣搴撳瓨
+        for (DetlDto detlDto : params.getLocDetls()){
+            AgvLocDetl agvLocDetl = new AgvLocDetl();
+            Mat mat = matService.selectByMatnr(detlDto.getMatnr());
+            BeanUtils.copyProperties(mat,agvLocDetl);
+            agvLocDetl.setLocNo(params.getLocNo());
+            agvLocDetl.setSuppCode(params.getContainerCode());
+            agvLocDetl.setAnfme(detlDto.getAnfme());
+            agvLocDetl.setBatch(detlDto.getBatch());
+            agvLocDetl.setThreeCode(detlDto.getCsocode());
+            agvLocDetl.setDeadTime(detlDto.getIsoseq());
+            agvLocDetlService.insert(agvLocDetl);
+        }
+
+        return true;
+    }
+
     private Order orderMapping(OrderSyncParam param, Date now, boolean pakin, String docName){
         Order order = new Order();
         //uuid
@@ -929,6 +982,9 @@
         order.setDocType(docType.getDocId());
         //鍗曟嵁鏃ユ湡
         order.setOrderTime(param.getDdate());
+
+        //渚涘簲鍟嗙紪鐮�
+        order.setSalesman(param.getCVenCode());
 
         order.setMemo(param.getCMemo());
         //鍒跺崟浜�
@@ -975,10 +1031,11 @@
         //鑷敱椤�
         od.setDeadTime(odParam.getBFree1());
         //IDs
-        od.setSku(odParam.getID());
+        od.setSku(odParam.getId());
 
         od.setLength(odParam.getINum());
 
+        od.setSource(order.getDocType().intValue());
         od.setStatus(1);
         od.setQty(0.0D);
         od.setCreateBy(9999L);

--
Gitblit v1.9.1