From ebf0db91e09be33fcbfe97ed5b91965dc2e61dfd Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期四, 01 八月 2024 10:54:26 +0800
Subject: [PATCH] 1. 托盘管理 2. 入库通知档导入功能 3. 工作档明细 新增来源单据类型及单据编号 4. 库存明细统计表 增加一栏ERP数量(需跟ERP确认接口实现方式)。 5. 存货档案、单据管理、库存管理可以支持模糊搜索(各个单据界面)。

---
 zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java |   47 +++++++++++++++++++++++++++++++----------------
 1 files changed, 31 insertions(+), 16 deletions(-)

diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java
index 200b6cc..279113b 100644
--- a/zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java
+++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java
@@ -4,11 +4,11 @@
 import com.alibaba.excel.event.AnalysisEventListener;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.zy.asrs.common.domain.entity.MatExcel;
-import com.zy.asrs.common.wms.entity.ManMat;
-import com.zy.asrs.common.wms.entity.ManTag;
-import com.zy.asrs.common.wms.mapper.ManTagMapper;
-import com.zy.asrs.common.wms.service.ManMatService;
-import com.zy.asrs.common.wms.service.ManTagService;
+import com.zy.asrs.common.wms.entity.Mat;
+import com.zy.asrs.common.wms.entity.Tag;
+import com.zy.asrs.common.wms.mapper.TagMapper;
+import com.zy.asrs.common.wms.service.MatService;
+import com.zy.asrs.common.wms.service.TagService;
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.common.SpringUtils;
 import com.zy.asrs.framework.exception.CoolException;
@@ -27,12 +27,14 @@
 
     private int total = 0;
     private Long userId;
+    private Long hostId;
 
     public MatExcelListener() {
     }
 
-    public MatExcelListener(Long userId) {
+    public MatExcelListener(Long userId, Long hostId) {
         this.userId = userId;
+        this.hostId = hostId;
     }
 
     /**
@@ -54,20 +56,20 @@
      */
     @Override
     public void invoke(MatExcel excel, AnalysisContext ctx) {
-        ManTagService tagService = SpringUtils.getBean(ManTagService.class);
-        ManTagMapper tagMapper = SpringUtils.getBean(ManTagMapper.class);
-        ManMatService matService = SpringUtils.getBean(ManMatService.class);
+        TagService tagService = SpringUtils.getBean(TagService.class);
+        TagMapper tagMapper = SpringUtils.getBean(TagMapper.class);
+        MatService matService = SpringUtils.getBean(MatService.class);
         Date now = new Date();
         Long tagId;
         // 鍒嗙被
         // 涓�绾у垎绫�
         if (!Cools.isEmpty(excel.getPriClass()) && !Cools.isEmpty(excel.getSecClass())) {
-            ManTag priTag = tagService.getOne(new LambdaQueryWrapper<ManTag>().eq(ManTag::getName, excel.getPriClass()).eq(ManTag::getLevel, 2));
+            Tag priTag = tagService.getOne(new LambdaQueryWrapper<Tag>().eq(Tag::getName, excel.getPriClass()).eq(Tag::getLevel, 2).eq(Tag::getHostId, hostId));
             if (priTag == null) {
-                ManTag top = tagService.getTop();
+                Tag top = tagService.getTop(hostId);
                 NodeUtils nodeUtils = new NodeUtils();
                 nodeUtils.executePath(top.getId());
-                priTag = new ManTag(
+                priTag = new Tag(
                         null,    // 缂栧彿
                         excel.getPriClass(),    // 鍚嶇О
                         top.getId(),    // 鐖剁骇
@@ -88,16 +90,17 @@
                         null,    // 淇敼浜哄憳
                         null    // 澶囨敞
                 );
+                priTag.setHostId(hostId);
                 if (tagMapper.insert(priTag) == 0) {
                     throw new CoolException("淇濆瓨涓�绾у垎绫诲け璐�");
                 }
             }
             // 浜岀骇鍒嗙被
-            ManTag secTag = tagService.getOne(new LambdaQueryWrapper<ManTag>().eq(ManTag::getName, excel.getPriClass()).eq(ManTag::getLevel, 3));
+            Tag secTag = tagService.getOne(new LambdaQueryWrapper<Tag>().eq(Tag::getName, excel.getSecClass()).eq(Tag::getLevel, 3).eq(Tag::getHostId, hostId));
             if (secTag == null) {
                 NodeUtils nodeUtils = new NodeUtils();
                 nodeUtils.executePath(priTag.getId());
-                secTag = new ManTag(
+                secTag = new Tag(
                         null,    // 缂栧彿
                         excel.getSecClass(),    // 鍚嶇О
                         priTag.getId(),    // 鐖剁骇
@@ -118,19 +121,31 @@
                         null,    // 淇敼浜哄憳
                         null    // 澶囨敞
                 );
+                secTag.setHostId(hostId);
                 if (tagMapper.insert(secTag) == 0) {
                     throw new CoolException("淇濆瓨浜岀骇鍒嗙被澶辫触");
                 }
             }
             tagId = secTag.getId();
         } else {
-            tagId = tagService.getTop().getId();
+            tagId = tagService.getTop(hostId).getId();
         }
         // 鍟嗗搧
-        ManMat mat = matService.getOne(new LambdaQueryWrapper<ManMat>().eq(ManMat::getMatnr, excel.getMatnr()));
+        Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, excel.getMatnr()).eq(Mat::getHostId, hostId));
         if (mat == null) {
             mat = excel;
             mat.setTagId(tagId);
+            mat.setHostId(hostId);
+            if (!matService.save(mat)) {
+                throw new CoolException("淇濆瓨鍟嗗搧淇℃伅澶辫触锛屽晢鍝佺紪鐮侊細" + excel.getMatnr());
+            }
+            total++;
+        }else {
+            matService.removeById(mat.getId());
+
+            mat = excel;
+            mat.setTagId(tagId);
+            mat.setHostId(hostId);
             if (!matService.save(mat)) {
                 throw new CoolException("淇濆瓨鍟嗗搧淇℃伅澶辫触锛屽晢鍝佺紪鐮侊細" + excel.getMatnr());
             }

--
Gitblit v1.9.1