summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzhangshuai <[email protected]>2023-08-29 10:14:57 +0800
committerzhangshuai <[email protected]>2023-08-29 10:14:57 +0800
commit4c91c70184db856b60e7c256ca69d285e64f25ff (patch)
treeaf0f6f1a8b0d88383ccbafb0e2c2c83079df41a1
parent8e52c3af27af18f7ca574947e7c427dfd054c66b (diff)
fix: NEZ-3145 调整子网修改接口,子网掩码不能修改
-rw-r--r--nz-admin/src/main/java/com/nis/modules/ipam/service/impl/IpamSubnetServiceImpl.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/nz-admin/src/main/java/com/nis/modules/ipam/service/impl/IpamSubnetServiceImpl.java b/nz-admin/src/main/java/com/nis/modules/ipam/service/impl/IpamSubnetServiceImpl.java
index d303235d..7772f3b8 100644
--- a/nz-admin/src/main/java/com/nis/modules/ipam/service/impl/IpamSubnetServiceImpl.java
+++ b/nz-admin/src/main/java/com/nis/modules/ipam/service/impl/IpamSubnetServiceImpl.java
@@ -166,6 +166,13 @@ public class IpamSubnetServiceImpl extends ServiceImpl<IpamSubnetDao, IpamSubnet
// 校验ip以及掩码值之前是否有创建或者包含
String ip = StrUtil.builder(ipamSubnet.getAddr(),StrUtil.SLASH,ipamSubnet.getMask().toString()).toString();
+ if (ObjectUtil.isNotEmpty(ipamSubnet.getId())){
+ IpamSubnet cidr = this.getById(ipamSubnet.getId());
+ String oidCidr = StrUtil.builder(cidr.getAddr(), StrUtil.SLASH, cidr.getMask().toString()).toString();
+ if (! ip.equals(oidCidr)){
+ throw new NZException(RCode.IPAM_SUBNET_MASK_NOT_MODIFIED);
+ }
+ }
IPAddress ipAddress = new IPAddressString(ip).toAddress();
List<IpamSubnet> ipamSubnets = this.list(new QueryWrapper<IpamSubnet>().lambda().ne(ObjectUtil.isNotEmpty(ipamSubnet.getId()),IpamSubnet::getId, ipamSubnet.getId()));
List<String> ips = ipamSubnets.stream().map(o -> StrUtil.builder(o.getAddr(),StrUtil.SLASH,o.getMask().toString()).toString()).collect(Collectors.toList());