From 4625170c05e5a1e1920c3445331287b5464bdfd1 Mon Sep 17 00:00:00 2001
From: Junjie <540245094@qq.com>
Date: 星期五, 05 七月 2024 19:37:43 +0800
Subject: [PATCH] #物料档导入允许update
---
zy-asrs-common/src/main/java/com/zy/asrs/common/utils/MatExcelListener.java | 27 +++++++++++++++++++++------
1 files changed, 21 insertions(+), 6 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 5632f3c..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
@@ -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;
}
/**
@@ -62,9 +64,9 @@
// 鍒嗙被
// 涓�绾у垎绫�
if (!Cools.isEmpty(excel.getPriClass()) && !Cools.isEmpty(excel.getSecClass())) {
- Tag priTag = tagService.getOne(new LambdaQueryWrapper<Tag>().eq(Tag::getName, excel.getPriClass()).eq(Tag::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) {
- Tag top = tagService.getTop();
+ Tag top = tagService.getTop(hostId);
NodeUtils nodeUtils = new NodeUtils();
nodeUtils.executePath(top.getId());
priTag = new Tag(
@@ -88,12 +90,13 @@
null, // 淇敼浜哄憳
null // 澶囨敞
);
+ priTag.setHostId(hostId);
if (tagMapper.insert(priTag) == 0) {
throw new CoolException("淇濆瓨涓�绾у垎绫诲け璐�");
}
}
// 浜岀骇鍒嗙被
- Tag secTag = tagService.getOne(new LambdaQueryWrapper<Tag>().eq(Tag::getName, excel.getPriClass()).eq(Tag::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());
@@ -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();
}
// 鍟嗗搧
- Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::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