From d1bcbbefab4da603c275ed61d0018a46dbc67d1e Mon Sep 17 00:00:00 2001
From: 唐耀东 <18861537@qq.com>
Date: 星期三, 12 十月 2022 16:31:51 +0800
Subject: [PATCH] 施工交付增加其他录入交付功能

---
 ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SgReserveIpServiceImpl.java |   32 ++++++++++++++++++++++++++++++++
 1 files changed, 32 insertions(+), 0 deletions(-)

diff --git a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SgReserveIpServiceImpl.java b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SgReserveIpServiceImpl.java
index 8004b4c..c6e527f 100644
--- a/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SgReserveIpServiceImpl.java
+++ b/ruoyi-oa/src/main/java/com/ruoyi/oa/service/impl/SgReserveIpServiceImpl.java
@@ -1,6 +1,8 @@
 package com.ruoyi.oa.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.http.HttpStatus;
+import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.StringUtils;
 import com.ruoyi.common.utils.PageUtils;
 import com.ruoyi.common.core.page.PagePlus;
@@ -14,6 +16,7 @@
 import com.ruoyi.oa.domain.SgReserveIp;
 import com.ruoyi.oa.mapper.SgReserveIpMapper;
 import com.ruoyi.oa.service.ISgReserveIpService;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 import java.util.Map;
@@ -49,11 +52,24 @@
         LambdaQueryWrapper<SgReserveIp> lqw = Wrappers.lambdaQuery();
         lqw.like(StringUtils.isNotBlank(bo.getIp()), SgReserveIp::getIp, bo.getIp());
         lqw.eq(bo.getBuildingId() != null, SgReserveIp::getBuildingId, bo.getBuildingId());
+        lqw.eq(SgReserveIp::getSchoolId, bo.getSchoolId());
+        lqw.orderByDesc(SgReserveIp::getUpdateTime);
         return lqw;
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean insertByBo(SgReserveIpBo bo) {
+        List<SgReserveIp> ipList = baseMapper.selectList(new LambdaQueryWrapper<SgReserveIp>()
+            .eq(SgReserveIp::getIp, bo.getIp()).eq(SgReserveIp::getSchoolId, bo.getSchoolId()));
+        if (ipList.size() > 0) {
+            throw new ServiceException("IP鍦板潃閲嶅", HttpStatus.HTTP_PARTIAL);
+        }
+        List<SgReserveIp> macList = baseMapper.selectList(new LambdaQueryWrapper<SgReserveIp>()
+            .eq(SgReserveIp::getMac, bo.getMac()).eq(SgReserveIp::getSchoolId, bo.getSchoolId()));
+        if (macList.size() > 0) {
+            throw new ServiceException("MAC鍦板潃閲嶅", HttpStatus.HTTP_PARTIAL);
+        }
         SgReserveIp add = BeanUtil.toBean(bo, SgReserveIp.class);
         validEntityBeforeSave(add);
         boolean flag = save(add);
@@ -64,7 +80,22 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean updateByBo(SgReserveIpBo bo) {
+        List<SgReserveIp> ipList = baseMapper.selectList(new LambdaQueryWrapper<SgReserveIp>()
+            .ne(SgReserveIp::getId, bo.getId())
+            .eq(SgReserveIp::getIp, bo.getIp())
+            .eq(SgReserveIp::getSchoolId, bo.getSchoolId()));
+        if (ipList.size() > 0) {
+            throw new ServiceException("IP鍦板潃閲嶅", HttpStatus.HTTP_PARTIAL);
+        }
+        List<SgReserveIp> macList = baseMapper.selectList(new LambdaQueryWrapper<SgReserveIp>()
+            .ne(SgReserveIp::getId, bo.getId())
+            .eq(SgReserveIp::getMac, bo.getMac())
+            .eq(SgReserveIp::getSchoolId, bo.getSchoolId()));
+        if (macList.size() > 0) {
+            throw new ServiceException("MAC鍦板潃閲嶅", HttpStatus.HTTP_PARTIAL);
+        }
         SgReserveIp update = BeanUtil.toBean(bo, SgReserveIp.class);
         validEntityBeforeSave(update);
         return updateById(update);
@@ -80,6 +111,7 @@
     }
 
     @Override
+    @Transactional(rollbackFor = Exception.class)
     public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
         if(isValid){
             //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠�

--
Gitblit v1.9.1