From a27f1b573fc5cf9a3b78e2eacb56e44310f83456 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期三, 27 八月 2025 12:17:01 +0800
Subject: [PATCH] art: 添加入库逻辑,SAP订单同步参数动态配置

---
 src/main/java/org/jeecg/modules/lsw/service/impl/LswMaterialInboundServiceImpl.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/lsw/service/impl/LswMaterialInboundServiceImpl.java b/src/main/java/org/jeecg/modules/lsw/service/impl/LswMaterialInboundServiceImpl.java
index ae750d2..3c2899e 100644
--- a/src/main/java/org/jeecg/modules/lsw/service/impl/LswMaterialInboundServiceImpl.java
+++ b/src/main/java/org/jeecg/modules/lsw/service/impl/LswMaterialInboundServiceImpl.java
@@ -4,12 +4,20 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.apache.commons.lang.StringUtils;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.modules.lsw.entity.LswMaterial;
 import org.jeecg.modules.lsw.entity.LswMaterialInbound;
+import org.jeecg.modules.lsw.entity.LswMaterialInventory;
 import org.jeecg.modules.lsw.mapper.LswMaterialInboundMapper;
 import org.jeecg.modules.lsw.service.ILswMaterialInboundService;
+import org.jeecg.modules.lsw.service.ILswMaterialInventoryService;
+import org.jeecg.modules.lsw.service.ILswMaterialService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import javax.servlet.http.HttpServletRequest;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -21,6 +29,10 @@
  */
 @Service
 public class LswMaterialInboundServiceImpl extends ServiceImpl<LswMaterialInboundMapper, LswMaterialInbound> implements ILswMaterialInboundService {
+    @Autowired
+    private ILswMaterialInventoryService inventoryService;
+    @Autowired
+    private ILswMaterialService materialService;
 
     @Override
     public IPage<Map<String, Object>> getlswMaterialInboundListData(Integer pageNo, Integer pageSize, HttpServletRequest req) {
@@ -40,4 +52,29 @@
         }
         return super.getBaseMapper().getlswMaterialInboundListData(pageData, paramMap);
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public boolean inboundMaterial(LswMaterialInbound materialInbound) {
+        if (StringUtils.isBlank(materialInbound.getMaterialNumber())
+                || StringUtils.isBlank(materialInbound.getFactoryId())
+                || StringUtils.isBlank(materialInbound.getWarehouseId())
+                || materialInbound.getQuantity() == null
+                || materialInbound.getQuantity().intValue() > 0
+                || StringUtils.isBlank(materialInbound.getBatchNumber())) {
+            return false;
+        }
+        LswMaterial material = materialService.queryByMaterialNumber(materialInbound.getMaterialNumber());
+        if(material == null) {
+            return false;
+        }
+        //淇濆瓨鍏ュ簱淇℃伅
+        materialInbound.setDelFlag(CommonConstant.DEL_FLAG_0);
+        materialInbound.setReceiveTime(new Date());
+        super.save(materialInbound);
+        //淇濆瓨搴撳瓨淇℃伅
+        LswMaterialInventory lswMaterialInventory = new LswMaterialInventory(materialInbound, material.getId(), material.getMaterialCategory());
+        inventoryService.save(lswMaterialInventory);
+        return true;
+    }
 }

--
Gitblit v1.9.3