fix(model-config): 修复部件名称重复验证逻辑

- 移除重复的部件名称存在性检查代码
- 在更新操作中添加正确的重复名称验证
- 通过排除当前项目ID来避免自匹配验证错误
- 确保验证逻辑只在默认语言代码下执行
This commit is contained in:
曹鹏飞 2026-04-01 18:04:59 +08:00
parent 995dbf3369
commit 2cc3587091
1 changed files with 7 additions and 6 deletions

View File

@ -231,12 +231,6 @@ public class ModelConfigController extends ControllerBase {
itemLanguages.stream() itemLanguages.stream()
.filter(i -> i.getConfigItemId().equals(it.getId())) .filter(i -> i.getConfigItemId().equals(it.getId()))
.forEach(i -> { .forEach(i -> {
VUtils.trueThrowBusinessError(modelConfigItemLanguageService.lambdaQuery()
.eq(QuotationModelConfigItemLanguage::getConfigId, languageItem.getConfigId())
.eq(QuotationModelConfigItemLanguage::getLanguageId, languageItem.getLanguageId())
.eq(QuotationModelConfigItemLanguage::getPartName, request.getPartName())
.exists())
.throwMessage("已存在该名称的部件或系统");
if (i.getId().equals(request.getId())) { if (i.getId().equals(request.getId())) {
i.setPartName(request.getPartName()); i.setPartName(request.getPartName());
i.setPartRemark(request.getPartRemark()); i.setPartRemark(request.getPartRemark());
@ -253,6 +247,13 @@ public class ModelConfigController extends ControllerBase {
it.setConfigId(config.getId()); it.setConfigId(config.getId());
if (StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE) if (StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE)
&& it.getId().equals(languageItem.getConfigItemId())) { && it.getId().equals(languageItem.getConfigItemId())) {
VUtils.trueThrowBusinessError(modelConfigItemLanguageService.lambdaQuery()
.eq(QuotationModelConfigItemLanguage::getConfigId, languageItem.getConfigId())
.eq(QuotationModelConfigItemLanguage::getLanguageId, languageItem.getLanguageId())
.eq(QuotationModelConfigItemLanguage::getPartName, request.getPartName())
.ne(QuotationModelConfigItemLanguage::getId, languageItem.getId())
.exists())
.throwMessage("已存在该名称的部件或系统");
it.setType(request.getType()); it.setType(request.getType());
it.setOptionalType(request.getOptionalType()); it.setOptionalType(request.getOptionalType());
it.setParentId(request.getParentId()); it.setParentId(request.getParentId());