Newspaper 1 year ago
parent
commit
1856cc47b4

+ 6 - 0
snowy-web-app/src/main/java/vip/xiaonuo/modular/energy/energyDevice/service/impl/EnergyDeviceServiceImpl.java

@@ -106,6 +106,9 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
     public void add(EnergyDeviceAddParam energyDeviceAddParam) {
     public void add(EnergyDeviceAddParam energyDeviceAddParam) {
         String orgId = energyDeviceAddParam.getOrgId();
         String orgId = energyDeviceAddParam.getOrgId();
         EnergyDevice energyDevice = BeanUtil.toBean(energyDeviceAddParam, EnergyDevice.class);
         EnergyDevice energyDevice = BeanUtil.toBean(energyDeviceAddParam, EnergyDevice.class);
+        if (basePigpenMapper.selectById(energyDeviceAddParam.getInstallPosition()).getType() != 2) {
+            throw new CommonException("只能在单元添加设备");
+        }
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
                 .eq(EnergyDevice::getOrgId,orgId)
                 .eq(EnergyDevice::getOrgId,orgId)
                 .eq(EnergyDevice::getDeviceCode,energyDevice.getDeviceCode())) > 0) {
                 .eq(EnergyDevice::getDeviceCode,energyDevice.getDeviceCode())) > 0) {
@@ -130,6 +133,9 @@ public class EnergyDeviceServiceImpl extends ServiceImpl<EnergyDeviceMapper, Ene
         EnergyDevice energyDevice = this.queryEntity(energyDeviceEditParam.getId());
         EnergyDevice energyDevice = this.queryEntity(energyDeviceEditParam.getId());
         String orgId = energyDevice.getOrgId();
         String orgId = energyDevice.getOrgId();
         BeanUtil.copyProperties(energyDeviceEditParam, energyDevice);
         BeanUtil.copyProperties(energyDeviceEditParam, energyDevice);
+        if (basePigpenMapper.selectById(energyDeviceEditParam.getInstallPosition()).getType() != 2) {
+            throw new CommonException("只能在单元添加设备");
+        }
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
         if (this.count(new QueryWrapper<EnergyDevice>().lambda()
                 .eq(EnergyDevice::getOrgId,orgId)
                 .eq(EnergyDevice::getOrgId,orgId)
                 .eq(EnergyDevice::getDeviceCode,energyDevice.getDeviceCode())
                 .eq(EnergyDevice::getDeviceCode,energyDevice.getDeviceCode())

+ 22 - 1
snowy-web-app/src/main/java/vip/xiaonuo/modular/env/envdevice/service/impl/EnvDeviceServiceImpl.java

@@ -119,6 +119,23 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
         queryWrapper.eq("org_id", envDeviceAddParam.getOrgId())
         queryWrapper.eq("org_id", envDeviceAddParam.getOrgId())
                 .eq("device_code", envDeviceAddParam.getDeviceCode())
                 .eq("device_code", envDeviceAddParam.getDeviceCode())
                 .or().eq("install_position", envDeviceAddParam.getInstallPosition());
                 .or().eq("install_position", envDeviceAddParam.getInstallPosition());
+
+        if (basePigpenMapper.selectById(envDeviceAddParam.getInstallPosition()).getType() != 2) {
+            throw new CommonException("只能在单元添加设备");
+        }
+        if (this.count(new QueryWrapper<EnvDevice>().lambda()
+                .eq(EnvDevice::getOrgId,envDeviceAddParam.getOrgId())
+                .eq(EnvDevice::getDeviceCode,envDevice.getDeviceCode())
+                .ne(EnvDevice::getId,envDevice.getId())) > 0) {
+            throw new CommonException("存在相同设备编号,编号为:{}",envDevice.getDeviceCode());
+        }
+        if (this.count(new QueryWrapper<EnvDevice>().lambda()
+                .eq(EnvDevice::getOrgId,envDeviceAddParam.getOrgId())
+                .eq(EnvDevice::getDeviceName,envDevice.getDeviceName())
+                .ne(EnvDevice::getId,envDevice.getId())) > 0) {
+            throw new CommonException("存在相同设备名称,名称为:{}",envDevice.getDeviceName());
+        }
+
         if (ObjectUtil.isEmpty(envDeviceMapper.selectOne(queryWrapper))) {
         if (ObjectUtil.isEmpty(envDeviceMapper.selectOne(queryWrapper))) {
             for (int i = 1; i <= envDeviceAddParam.getFanNum(); i++) {
             for (int i = 1; i <= envDeviceAddParam.getFanNum(); i++) {
                 EnvDeviceEquipment equipment = new EnvDeviceEquipment();
                 EnvDeviceEquipment equipment = new EnvDeviceEquipment();
@@ -149,7 +166,7 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
             this.save(envDevice);
             this.save(envDevice);
             return CommonResult.ok();
             return CommonResult.ok();
         } else {
         } else {
-            return new CommonResult(500, "设备编号重复或者安装位置已存在设备", false);
+           throw new CommonException("设备编号重复或者安装位置已存在设备");
         }
         }
 
 
     }
     }
@@ -178,6 +195,10 @@ public class EnvDeviceServiceImpl extends ServiceImpl<EnvDeviceMapper, EnvDevice
                 .ne(EnvDevice::getId,envDevice.getId())) > 0) {
                 .ne(EnvDevice::getId,envDevice.getId())) > 0) {
             throw new CommonException("该位置已存在设备!");
             throw new CommonException("该位置已存在设备!");
         }
         }
+        if (basePigpenMapper.selectById(envDeviceEditParam.getInstallPosition()).getType() != 2) {
+            throw new CommonException("只能在单元添加设备");
+        }
+
         equipmentMapper.delete(new QueryWrapper<EnvDeviceEquipment>().lambda()
         equipmentMapper.delete(new QueryWrapper<EnvDeviceEquipment>().lambda()
                 .eq(EnvDeviceEquipment::getDeviceCode,envDeviceEditParam.getDeviceCode())
                 .eq(EnvDeviceEquipment::getDeviceCode,envDeviceEditParam.getDeviceCode())
                 .eq(EnvDeviceEquipment::getOrgId,envDeviceEditParam.getOrgId()));
                 .eq(EnvDeviceEquipment::getOrgId,envDeviceEditParam.getOrgId()));