feat: bug-1278 机型参数名称在同一个父级下不允许重复
This commit is contained in:
parent
9ea1e02e60
commit
3c148bca39
|
|
@ -275,6 +275,14 @@ public class ProductModelController extends ControllerBase {
|
||||||
*/
|
*/
|
||||||
@PostMapping("/addParamsIndexName")
|
@PostMapping("/addParamsIndexName")
|
||||||
public ApiResult<Integer> addParamsIndexName(@Valid @RequestBody ProductModelParamsNameAddRequest request) {
|
public ApiResult<Integer> addParamsIndexName(@Valid @RequestBody ProductModelParamsNameAddRequest request) {
|
||||||
|
VUtils.trueThrowBusinessError(Objects.nonNull(request.getModelParamsId())
|
||||||
|
&& StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
&& productModelParamsItemService.lambdaQuery()
|
||||||
|
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||||
|
.eq(ProductModelParamsItem::getLanguageCode, Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
.eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||||
|
.exists()
|
||||||
|
).throwMessage("指标名称已存在");
|
||||||
if (Objects.isNull(request.getModelParamsId())) {
|
if (Objects.isNull(request.getModelParamsId())) {
|
||||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), IdUtil.getSnowflakeNextIdStr()));
|
request.setModelParamsId(productModelParamsService.add(request.getModelId(), IdUtil.getSnowflakeNextIdStr()));
|
||||||
}
|
}
|
||||||
|
|
@ -292,6 +300,13 @@ public class ProductModelController extends ControllerBase {
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||||
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
||||||
|
VUtils.trueThrowBusinessError(StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
&& productModelParamsItemService.lambdaQuery()
|
||||||
|
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||||
|
.eq(ProductModelParamsItem::getLanguageCode, Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
.eq(ProductModelParamsItem::getIndexName, request.getNewIndexName())
|
||||||
|
.exists()
|
||||||
|
).throwMessage("指标名称已存在");
|
||||||
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
||||||
Integer oldId = request.getModelParamsId();
|
Integer oldId = request.getModelParamsId();
|
||||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
||||||
|
|
@ -330,6 +345,14 @@ public class ProductModelController extends ControllerBase {
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||||
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
||||||
|
VUtils.trueThrowBusinessError(StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
&& productModelParamsItemService.lambdaQuery()
|
||||||
|
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||||
|
.eq(ProductModelParamsItem::getLanguageCode, Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
.eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||||
|
.eq(ProductModelParamsItem::getName, request.getName())
|
||||||
|
.exists()
|
||||||
|
).throwMessage("参数名称重复");
|
||||||
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
||||||
Integer oldId = request.getModelParamsId();
|
Integer oldId = request.getModelParamsId();
|
||||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
||||||
|
|
@ -364,6 +387,15 @@ public class ProductModelController extends ControllerBase {
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
VUtils.trueThrowBusinessError(Objects.isNull(request.getModelParamsId())).throwMessage("机型参数id不能为空");
|
||||||
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
ProductModelParams info = productModelParamsService.getById(request.getModelParamsId());
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
VUtils.trueThrowBusinessError(Objects.isNull(info)).throwMessage("无效的数据");
|
||||||
|
VUtils.trueThrowBusinessError(StrUtil.equals(request.getLanguageCode(), Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
&& productModelParamsItemService.lambdaQuery()
|
||||||
|
.ne(ProductModelParamsItem::getId,request.getModelParamsItemId())
|
||||||
|
.eq(ProductModelParamsItem::getModelParamsId, request.getModelParamsId())
|
||||||
|
.eq(ProductModelParamsItem::getLanguageCode, Constant.DEFAULT_LANGUAGE_CODE)
|
||||||
|
.eq(ProductModelParamsItem::getIndexName, request.getIndexName())
|
||||||
|
.eq(ProductModelParamsItem::getName, request.getName())
|
||||||
|
.exists()
|
||||||
|
).throwMessage("参数名称重复");
|
||||||
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
if (Objects.equals(info.getState(), PublishState.Published.getState())) {
|
||||||
Integer oldId = request.getModelParamsId();
|
Integer oldId = request.getModelParamsId();
|
||||||
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
request.setModelParamsId(productModelParamsService.add(request.getModelId(), info.getBatchNumber()));
|
||||||
|
|
@ -625,6 +657,7 @@ public class ProductModelController extends ControllerBase {
|
||||||
, @Valid @RequestParam(value = "file") @NotNull MultipartFile file) {
|
, @Valid @RequestParam(value = "file") @NotNull MultipartFile file) {
|
||||||
ProductModel model = productModelService.getById(modelId);
|
ProductModel model = productModelService.getById(modelId);
|
||||||
VUtils.trueThrowBusinessError(Objects.isNull(model)).throwMessage("无效的" + modelId);
|
VUtils.trueThrowBusinessError(Objects.isNull(model)).throwMessage("无效的" + modelId);
|
||||||
|
List<String> repeats=new ArrayList<>();
|
||||||
try (InputStream inputStream = file.getInputStream(); org.apache.poi.ss.usermodel.Workbook workbook = new XSSFWorkbook(inputStream)) {
|
try (InputStream inputStream = file.getInputStream(); org.apache.poi.ss.usermodel.Workbook workbook = new XSSFWorkbook(inputStream)) {
|
||||||
Sheet sheet = workbook.getSheetAt(0);
|
Sheet sheet = workbook.getSheetAt(0);
|
||||||
String no = StrUtil.trim(sheet.getRow(1).getCell(1).getStringCellValue());
|
String no = StrUtil.trim(sheet.getRow(1).getCell(1).getStringCellValue());
|
||||||
|
|
@ -658,8 +691,15 @@ public class ProductModelController extends ControllerBase {
|
||||||
dto.setMain(StrUtil.equals(cell3.getStringCellValue(), "是"));
|
dto.setMain(StrUtil.equals(cell3.getStringCellValue(), "是"));
|
||||||
Cell cell4 = row.getCell(4);
|
Cell cell4 = row.getCell(4);
|
||||||
dto.setCompare(StrUtil.equals(cell4.getStringCellValue(), "是"));
|
dto.setCompare(StrUtil.equals(cell4.getStringCellValue(), "是"));
|
||||||
|
if (datas.stream().anyMatch(d -> StrUtil.equals(d.getIndexName(), dto.getIndexName())
|
||||||
|
&& StrUtil.equals(dto.getName(), d.getName()))) {
|
||||||
|
repeats.add(dto.getIndexName() + "->" + dto.getName());
|
||||||
|
} else {
|
||||||
datas.add(dto);
|
datas.add(dto);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
VUtils.trueThrowBusinessError(CollectionUtil.isNotEmpty(repeats))
|
||||||
|
.throwMessage("以下参数名称重复:" + StrUtil.join(",", repeats));
|
||||||
// log.info("导入的数据是:{}", JSONUtil.toJsonStr(datas));
|
// log.info("导入的数据是:{}", JSONUtil.toJsonStr(datas));
|
||||||
VUtils.trueThrowBusinessError(CollectionUtil.isEmpty(datas)).throwMessage("数据不能为空");
|
VUtils.trueThrowBusinessError(CollectionUtil.isEmpty(datas)).throwMessage("数据不能为空");
|
||||||
List<Language> languages = languageService.getLanguages();
|
List<Language> languages = languageService.getLanguages();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue