From 3ca1cefd9bed863131ee3f684ff127bd7ac877aa Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期三, 05 八月 2026 11:35:16 +0800
Subject: [PATCH] feat(ai): 优化AI知识文档处理功能
---
yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java | 100 -------------------------------------------------
1 files changed, 1 insertions(+), 99 deletions(-)
diff --git a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
index c8f85a6..0899d3a 100644
--- a/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
+++ b/yudao-module-mes/src/main/java/cn/iocoder/yudao/module/mes/service/md/item/MesMdItemServiceImpl.java
@@ -2,12 +2,8 @@
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjUtil;
-import cn.hutool.core.util.StrUtil;
-import cn.iocoder.yudao.framework.common.exception.ServiceException;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
-import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.MesMdItemImportExcelVO;
-import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.MesMdItemImportRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.MesMdItemPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.md.item.vo.MesMdItemSaveReqVO;
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
@@ -17,7 +13,7 @@
import cn.iocoder.yudao.module.mes.dal.dataobject.md.unitmeasure.MesMdUnitMeasureDO;
import cn.iocoder.yudao.module.mes.dal.mysql.md.item.MesMdItemMapper;
import cn.iocoder.yudao.module.mes.enums.md.MesMdItemTypeEnum;
-import cn.iocoder.yudao.module.mes.enums.md.autocode.MesMdAutoCodeRuleCodeEnum;
+
import cn.iocoder.yudao.module.mes.enums.wm.BarcodeBizTypeEnum;
import cn.iocoder.yudao.module.mes.service.md.unitmeasure.MesMdUnitMeasureService;
import cn.iocoder.yudao.module.mes.service.md.autocode.MesMdAutoCodeRecordService;
@@ -31,7 +27,6 @@
import java.math.BigDecimal;
import java.util.*;
-import java.util.concurrent.atomic.AtomicInteger;
import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception;
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertSet;
@@ -218,11 +213,6 @@
if (itemTypeService.getItemType(itemTypeId) == null) {
throw exception(MD_ITEM_TYPE_NOT_EXISTS);
}
- // 鏍¢獙蹇呴』鏄彾瀛愬垎绫伙紙娌℃湁瀛愬垎绫伙級
- List<MesMdItemTypeDO> children = itemTypeService.getItemTypeChildrenList(itemTypeId);
- if (CollUtil.isNotEmpty(children)) {
- throw exception(MD_ITEM_TYPE_NOT_LEAF);
- }
}
private void validateUnitMeasureExists(Long unitMeasureId) {
@@ -308,94 +298,6 @@
@Override
public Long getItemCountByUnitMeasureId(Long unitMeasureId) {
return itemMapper.selectCountByUnitMeasureId(unitMeasureId);
- }
-
- @Override
- @Transactional(rollbackFor = Exception.class)
- public MesMdItemImportRespVO importItemList(List<MesMdItemImportExcelVO> importItems, boolean updateSupport) {
- // 1. 鍙傛暟鏍¢獙
- if (CollUtil.isEmpty(importItems)) {
- throw exception(MD_ITEM_IMPORT_LIST_IS_EMPTY);
- }
-
- // 2. 閬嶅巻锛岄�愪釜鍒涘缓 or 鏇存柊
- MesMdItemImportRespVO respVO = MesMdItemImportRespVO.builder()
- .createCodes(new ArrayList<>()).updateCodes(new ArrayList<>())
- .failureCodes(new LinkedHashMap<>()).build();
- AtomicInteger index = new AtomicInteger(1);
- importItems.forEach(importItem -> {
- int currentIndex = index.getAndIncrement();
- // 2.1 鏍¢獙瀛楁
- if (StrUtil.isBlank(importItem.getCode())) {
- // 绌虹紪鐮佹椂鑷姩鐢熸垚
- importItem.setCode(autoCodeRecordService.generateAutoCode(MesMdAutoCodeRuleCodeEnum.MD_ITEM_CODE.getCode()));
- }
- String key = importItem.getCode();
- if (StrUtil.isBlank(importItem.getName())) {
- respVO.getFailureCodes().put(key, "鐗╂枡鍚嶇О涓嶈兘涓虹┖");
- return;
- }
- if (StrUtil.isBlank(importItem.getUnitMeasureCode())) {
- respVO.getFailureCodes().put(key, "鍗曚綅缂栫爜涓嶈兘涓虹┖");
- return;
- }
- // 灏嗗崟浣嶇紪鐮佽浆鎹负鍗曚綅 ID
- MesMdUnitMeasureDO unitMeasure = unitMeasureService.getUnitMeasureByCode(importItem.getUnitMeasureCode());
- if (unitMeasure == null) {
- respVO.getFailureCodes().put(key, "鍗曚綅缂栫爜[" + importItem.getUnitMeasureCode() + "]涓嶅瓨鍦�");
- return;
- }
- if (importItem.getItemTypeId() == null) {
- respVO.getFailureCodes().put(key, "鐗╂枡鍒嗙被缂栧彿涓嶈兘涓虹┖");
- return;
- }
- // 2.2 鏍¢獙鍒嗙被鏄惁瀛樺湪
- try {
- validateItemTypeExists(importItem.getItemTypeId());
- } catch (ServiceException ex) {
- respVO.getFailureCodes().put(key, ex.getMessage());
- return;
- }
-
- // 2.3 鍒ゆ柇锛氬垱寤� or 鏇存柊
- MesMdItemDO existItem = itemMapper.selectByCode(importItem.getCode());
- if (existItem == null) {
- // 2.3.1 鍒涘缓
- try {
- validateItemNameUnique(null, importItem.getName());
- } catch (ServiceException ex) {
- respVO.getFailureCodes().put(key, ex.getMessage());
- return;
- }
- MesMdItemDO item = BeanUtils.toBean(importItem, MesMdItemDO.class);
- item.setUnitMeasureId(unitMeasure.getId());
- item.setStatus(CommonStatusEnum.DISABLE.getStatus()); // 榛樿绂佺敤銆備俊鎭畬鎴愬悗锛屽啀鍚敤
- clearStockIfNotSafe(item);
- itemMapper.insert(item);
- // 鑷姩鐢熸垚鏉$爜
- barcodeService.autoGenerateBarcode(BarcodeBizTypeEnum.ITEM.getValue(),
- item.getId(), item.getCode(), item.getName());
- respVO.getCreateCodes().add(importItem.getCode());
- } else if (updateSupport) {
- // 2.3.2 鏇存柊
- try {
- validateItemNameUnique(existItem.getId(), importItem.getName());
- } catch (ServiceException ex) {
- respVO.getFailureCodes().put(key, ex.getMessage());
- return;
- }
- MesMdItemDO updateObj = BeanUtils.toBean(importItem, MesMdItemDO.class);
- updateObj.setId(existItem.getId());
- updateObj.setUnitMeasureId(unitMeasure.getId());
- clearStockIfNotSafe(updateObj);
- itemMapper.updateById(updateObj);
- respVO.getUpdateCodes().add(importItem.getCode());
- } else {
- // 涓嶆敮鎸佹洿鏂�
- respVO.getFailureCodes().put(key, "鐗╂枡缂栫爜宸插瓨鍦�");
- }
- });
- return respVO;
}
/**
--
Gitblit v1.9.3