Răsfoiți Sursa

新增设备激活费用,重复校验

tanbin 1 an în urmă
părinte
comite
66e0c493fb

+ 13 - 0
device-api-service/src/main/java/com/xy/service/DeviceTypeAlgorithmBeforConfigServiceImpl.java

@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollUtil;
 import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xy.annotation.LogOperate;
 import com.xy.collections.list.JList;
@@ -15,6 +16,7 @@ import com.xy.dto.DeviceTypeAlgorithmBeforConfigDto;
 import com.xy.entity.DeviceInfo;
 import com.xy.entity.DeviceTypeAlgorithmBeforConfig;
 import com.xy.entity.SysDictRedis;
+import com.xy.error.CommRuntimeException;
 import com.xy.mapper.DeviceTypeAlgorithmBeforConfigMapper;
 import com.xy.utils.Emptys;
 import com.xy.utils.MybatisPlusQuery;
@@ -137,6 +139,17 @@ public class DeviceTypeAlgorithmBeforConfigServiceImpl extends ServiceImpl<Devic
     @PostMapping("save")
     @ApiOperation("添加")
     public R save(@RequestBody @Validated DeviceTypeAlgorithmBeforConfigDto.Save save) {
+        Integer deviceType = save.getDeviceType();
+        Long algorithmId = save.getAlgorithmId();
+        Long mercId = save.getMercId();
+        DeviceTypeAlgorithmBeforConfig dc = this.getOne(Wrappers.<DeviceTypeAlgorithmBeforConfig>lambdaQuery()
+                .eq(DeviceTypeAlgorithmBeforConfig::getMercId, mercId)
+                .eq(DeviceTypeAlgorithmBeforConfig::getAlgorithmId, algorithmId)
+                .eq(DeviceTypeAlgorithmBeforConfig::getDeviceType, deviceType)
+        );
+        if (dc != null) {
+            throw new CommRuntimeException("该类型配置已存在,请勿重复添加!");
+        }
         LocalDateTime now = LocalDateTime.now();
         DeviceTypeAlgorithmBeforConfig saveInfo = copy(DeviceTypeAlgorithmBeforConfig.class, save)
                 .setCreateTime(now)