From 59fd5ae5baacfe11ca2b1066358b2a469c0afbab Mon Sep 17 00:00:00 2001 From: huangfeng Date: Fri, 5 Jan 2024 10:23:08 +0800 Subject: [PATCH] =?UTF-8?q?pert:=20=E5=A2=9E=E5=8A=A0=E4=B8=BB=E8=AE=BE?= =?UTF-8?q?=E5=A4=87=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/xydl/cac/entity/Zsb.java | 8 +++ .../java/com/xydl/cac/service/BdzService.java | 2 +- .../java/com/xydl/cac/service/ZsbService.java | 6 +- .../xydl/cac/service/impl/BdzServiceImpl.java | 11 +++- .../xydl/cac/service/impl/JgServiceImpl.java | 4 +- .../xydl/cac/service/impl/ZsbServiceImpl.java | 55 ++++++++++++++++--- 6 files changed, 72 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/xydl/cac/entity/Zsb.java b/src/main/java/com/xydl/cac/entity/Zsb.java index a45feeb..0859a62 100644 --- a/src/main/java/com/xydl/cac/entity/Zsb.java +++ b/src/main/java/com/xydl/cac/entity/Zsb.java @@ -204,4 +204,12 @@ public class Zsb { @Column(name = "sssj") private String sssj; + @ApiModelProperty("变电站名称") + @Transient + private String bdzName; + + @ApiModelProperty("区域名称") + @Transient + private String jgName; + } \ No newline at end of file diff --git a/src/main/java/com/xydl/cac/service/BdzService.java b/src/main/java/com/xydl/cac/service/BdzService.java index b4cee95..503b379 100644 --- a/src/main/java/com/xydl/cac/service/BdzService.java +++ b/src/main/java/com/xydl/cac/service/BdzService.java @@ -12,5 +12,5 @@ public interface BdzService { void update(Bdz item); - void delete(Integer id); + void delete(Integer id) throws Exception; } diff --git a/src/main/java/com/xydl/cac/service/ZsbService.java b/src/main/java/com/xydl/cac/service/ZsbService.java index d244743..c583988 100644 --- a/src/main/java/com/xydl/cac/service/ZsbService.java +++ b/src/main/java/com/xydl/cac/service/ZsbService.java @@ -6,11 +6,13 @@ import java.util.List; public interface ZsbService { - List listAll(Integer jgid); + List listAll(Integer jgid) throws Exception; Zsb add(Zsb item) throws Exception; void update(Zsb item) throws Exception; - void delete(Integer id); + void delete(Integer id) throws Exception; + + Zsb detail(Integer id) throws Exception; } diff --git a/src/main/java/com/xydl/cac/service/impl/BdzServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/BdzServiceImpl.java index 2b1261b..75cdbf4 100644 --- a/src/main/java/com/xydl/cac/service/impl/BdzServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/BdzServiceImpl.java @@ -1,11 +1,14 @@ package com.xydl.cac.service.impl; import com.xydl.cac.entity.Bdz; +import com.xydl.cac.entity.Jg; import com.xydl.cac.repository.BdzRepository; +import com.xydl.cac.repository.JgRepository; import com.xydl.cac.service.BdzService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.util.List; @@ -17,6 +20,8 @@ public class BdzServiceImpl implements BdzService { @Resource BdzRepository repository; + @Resource + JgRepository jgRepository; @Override public List listAll() { @@ -35,7 +40,11 @@ public class BdzServiceImpl implements BdzService { } @Override - public void delete(Integer id) { + public void delete(Integer id) throws Exception { + List jgList = jgRepository.findByBdzid(id); + if (!CollectionUtils.isEmpty(jgList)) { + throw new Exception("已被区域使用不能删除"); + } repository.deleteById(id); } } diff --git a/src/main/java/com/xydl/cac/service/impl/JgServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/JgServiceImpl.java index 9351e7a..67bc593 100644 --- a/src/main/java/com/xydl/cac/service/impl/JgServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/JgServiceImpl.java @@ -47,8 +47,8 @@ public class JgServiceImpl implements JgService { } private void fillBdzName(List list) { - if (!CollectionUtils.isEmpty(list)) { - List bdzList = bdzRepository.findAll(); + List bdzList = bdzRepository.findAll(); + if (!CollectionUtils.isEmpty(list) && !CollectionUtils.isEmpty(bdzList)) { for (Jg jg : list) { for (Bdz bdz : bdzList) { if (bdz.getId().equals(jg.getBdzid())) { diff --git a/src/main/java/com/xydl/cac/service/impl/ZsbServiceImpl.java b/src/main/java/com/xydl/cac/service/impl/ZsbServiceImpl.java index 6026a07..148034c 100644 --- a/src/main/java/com/xydl/cac/service/impl/ZsbServiceImpl.java +++ b/src/main/java/com/xydl/cac/service/impl/ZsbServiceImpl.java @@ -10,6 +10,7 @@ import com.xydl.cac.service.ZsbService; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.util.List; @@ -28,11 +29,36 @@ public class ZsbServiceImpl implements ZsbService { LxRepository lxRepository; @Override - public List listAll(Integer jgid) { + public List listAll(Integer jgid) throws Exception { if (jgid == null) { - return repository.findAll(); + List result = repository.findAll(); + this.fillJgBdzName(result); + return result; } else { - return repository.findByJgid(jgid); + List result = repository.findByJgid(jgid); + Jg jg = jgService.detail(jgid); + if (!CollectionUtils.isEmpty(result)) { + for (Zsb zsb : result) { + zsb.setJgName(jg.getMc()); + zsb.setBdzName(jg.getBdzName()); + } + } + return result; + } + } + + private void fillJgBdzName(List list) { + List jgList = jgService.listAll(null); + if (!CollectionUtils.isEmpty(list) && !CollectionUtils.isEmpty(jgList)) { + for (Zsb zsb : list) { + for (Jg jg : jgList) { + if (jg.getId().equals(zsb.getJgid())) { + zsb.setBdzName(jg.getBdzName()); + zsb.setJgName(jg.getMc()); + break; + } + } + } } } @@ -41,8 +67,8 @@ public class ZsbServiceImpl implements ZsbService { item.setId(null); Jg jg = jgService.detail(item.getJgid()); item.setBdzid(jg.getBdzid()); - Optional optional = lxRepository.findById(item.getLxid()); - if (!optional.isPresent()) { + Optional optionalLx = lxRepository.findById(item.getLxid()); + if (!optionalLx.isPresent()) { throw new Exception("未找到该设备类型"); } return repository.save(item); @@ -52,15 +78,28 @@ public class ZsbServiceImpl implements ZsbService { public void update(Zsb item) throws Exception { Jg jg = jgService.detail(item.getJgid()); item.setBdzid(jg.getBdzid()); - Optional optional = lxRepository.findById(item.getLxid()); - if (!optional.isPresent()) { + Optional optionalLx = lxRepository.findById(item.getLxid()); + if (!optionalLx.isPresent()) { throw new Exception("未找到该设备类型"); } repository.save(item); } @Override - public void delete(Integer id) { + public void delete(Integer id) throws Exception { repository.deleteById(id); } + + @Override + public Zsb detail(Integer id) throws Exception { + Optional optional = repository.findById(id); + if (!optional.isPresent()) { + throw new Exception("未找到该主设备"); + } + Zsb zsb = optional.get(); + Jg jg = jgService.detail(zsb.getJgid()); + zsb.setBdzName(jg.getBdzName()); + zsb.setJgName(jg.getMc()); + return zsb; + } }