From 0a8964d69af8898623640b9c0226f457a19e5c05 Mon Sep 17 00:00:00 2001 From: 75349 <753495441@qq.com> Date: Fri, 16 Dec 2022 11:19:47 +0800 Subject: [PATCH] =?UTF-8?q?1.=E4=BF=AE=E6=94=B9=E5=88=9B=E5=BB=BA=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=E6=95=B0=E6=8D=AE=E6=96=B9=E6=B3=95=EF=BC=8C=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/BaseDataServiceImpl.java | 33 ++++++++++++++----- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/example/liteflow/mysql/service/impl/BaseDataServiceImpl.java b/src/main/java/com/example/liteflow/mysql/service/impl/BaseDataServiceImpl.java index 69ab62c..6e57606 100644 --- a/src/main/java/com/example/liteflow/mysql/service/impl/BaseDataServiceImpl.java +++ b/src/main/java/com/example/liteflow/mysql/service/impl/BaseDataServiceImpl.java @@ -1,13 +1,12 @@ package com.example.liteflow.mysql.service.impl; import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReflectUtil; import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.example.liteflow.mysql.entity.BaseDataEntity; -import com.example.liteflow.mysql.enums.BaseDataContentTypeEnum; import com.example.liteflow.mysql.mapper.BaseDataMapper; import com.example.liteflow.mysql.model.BaseCenter; import com.example.liteflow.mysql.model.CommonResult; @@ -17,6 +16,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import java.lang.reflect.Field; +import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; @@ -46,6 +46,14 @@ public class BaseDataServiceImpl extends ServiceImpl queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BaseDataEntity::getTemplateId, templateId) + .eq(BaseDataEntity::getType, type); + BaseDataEntity checkExists = this.getOne(queryWrapper); + if (ObjectUtil.isNotNull(checkExists)) { + return CommonResult.fail("已存在该字段基础数据", createBaseDataFrom); + } BaseDataEntity baseDataEntity = BeanUtil.toBean(createBaseDataFrom, BaseDataEntity.class); this.save(baseDataEntity); return CommonResult.success("创建基础数据成功", baseDataEntity); @@ -54,17 +62,24 @@ public class BaseDataServiceImpl extends ServiceImpl createBaseDataFromList) { log.info("进入【批量创建基础数据】方法 = {}", JSONUtil.toJsonStr(createBaseDataFromList)); - List notExistsType = createBaseDataFromList.stream().filter(createBaseDataFrom -> { + List baseDataEntityList = new ArrayList<>(); + for (CreateBaseDataFrom createBaseDataFrom : createBaseDataFromList) { String type = createBaseDataFrom.getType(); Field[] fields = ReflectUtil.getFields(BaseCenter.class); List fieldNameList = Arrays.stream(fields).map(Field::getName).collect(Collectors.toList()); - return !fieldNameList.contains(type); - }).collect(Collectors.toList()); - if (CollUtil.isNotEmpty(notExistsType)) { - return CommonResult.fail("添加数据无对应字段", notExistsType); + if (!fieldNameList.contains(type)) { + return CommonResult.fail("添加数据无对应字段", createBaseDataFrom); + } + String templateId = createBaseDataFrom.getTemplateId(); + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.eq(BaseDataEntity::getTemplateId, templateId) + .eq(BaseDataEntity::getType, type); + BaseDataEntity checkExists = this.getOne(queryWrapper); + if (ObjectUtil.isNotNull(checkExists)) { + return CommonResult.fail("已存在该字段基础数据", createBaseDataFrom); + } + baseDataEntityList.add(BeanUtil.toBean(createBaseDataFrom, BaseDataEntity.class)); } - List baseDataEntityList = createBaseDataFromList.stream() - .map(createBaseDataFrom -> BeanUtil.toBean(createBaseDataFrom, BaseDataEntity.class)).collect(Collectors.toList()); this.saveBatch(baseDataEntityList); return CommonResult.success("批量创建基础数据成功", baseDataEntityList); }