From 212996a79167f899b34b155192cd253d9d77f134 Mon Sep 17 00:00:00 2001 From: hxh <762326930@qq.com> Date: Mon, 4 Dec 2023 13:47:53 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=AE=8C=E5=96=84=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxgh/df/service/DfCheckingService.java | 226 +++++++++--------- .../kms/yxgh/df/service/DfRecordService.java | 2 +- .../yxgh/sz/service/SzCheckingService.java | 226 +++++++++--------- .../kms/yxgh/sz/service/SzRecordService.java | 2 +- 4 files changed, 240 insertions(+), 216 deletions(-) diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfCheckingService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfCheckingService.java index e34c1a4a..40b74931 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfCheckingService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfCheckingService.java @@ -4,24 +4,27 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.kms.yxgh.base.DfException; -import com.kms.yxgh.df.dto.DfCheckingDetailDto; -import com.kms.yxgh.df.dto.DfCheckingDetailDto.DfCheckingItemDto; import com.kms.yxgh.df.domain.DfChecking; import com.kms.yxgh.df.domain.DfCheckingItem; +import com.kms.yxgh.df.domain.DfPlan; +import com.kms.yxgh.df.dto.DfCheckingDetailDto; +import com.kms.yxgh.df.dto.DfCheckingDetailDto.DfCheckingItemDto; import com.kms.yxgh.df.mapper.DfCheckingItemMapper; import com.kms.yxgh.df.mapper.DfCheckingMapper; +import com.kms.yxgh.df.mapper.DfPlanMapper; import com.kms.yxgh.util.BeanCopyUtils; import com.kms.yxgh.util.StreamUtils; import com.shuili.common.core.domain.SearchParam; import com.shuili.common.core.service.BaseService; import com.shuili.common.utils.StringUtils; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import java.util.Arrays; import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; -import lombok.AllArgsConstructor; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; /** * 堤防巡视检查Service接口 @@ -33,117 +36,126 @@ import org.springframework.transaction.annotation.Transactional; @AllArgsConstructor public class DfCheckingService extends BaseService { - private final DfCheckingItemMapper dfCheckingItemMapper; - public final static String PART_SEPARATOR = ":"; - - public List selectSimple(SearchParam sp) { - Wrapper wp = Wrappers.lambdaQuery() - .select(DfChecking::getId, DfChecking::getName) - .eq(DfChecking::getType, sp.getData().getType()); - return getBaseMapper().selectList(wp); - } - - - public DfCheckingDetailDto getDetailById(String id) { - DfChecking checking = this.getById(id); - DfCheckingDetailDto dto = BeanCopyUtils.copy(checking, DfCheckingDetailDto.class); - if (dto != null) { - Wrapper wp = Wrappers.lambdaQuery() - .select(DfCheckingItem::getId, DfCheckingItem::getParts, DfCheckingItem::getContent) - .eq(DfCheckingItem::getXcId, id); - dto.setItems(StreamUtils.toList(dfCheckingItemMapper.selectList(wp), (o) -> { - DfCheckingItemDto itemDto = new DfCheckingItemDto(); - itemDto.setContent(o.getContent()); - itemDto.setId(o.getId()); - itemDto.setParts(Arrays.stream(StringUtils.split(o.getParts(), PART_SEPARATOR)) - .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); - return itemDto; - })); + private final DfCheckingItemMapper dfCheckingItemMapper; + private final DfPlanMapper dfPlanMapper; + public final static String PART_SEPARATOR = ":"; + + public List selectSimple(SearchParam sp) { + Wrapper wp = Wrappers.lambdaQuery() + .select(DfChecking::getId, DfChecking::getName) + .eq(DfChecking::getType, sp.getData().getType()); + return getBaseMapper().selectList(wp); } - return dto; - } - - - @Transactional(rollbackFor = Exception.class) - public DfCheckingDetailDto add(DfCheckingDetailDto dto) { - DfChecking checking = BeanCopyUtils.copy(dto, DfChecking.class); - if (checking != null) { - if (checkNameDistinct(checking.getId(), checking.getName())) { - getBaseMapper().insert(checking); - String id = checking.getId(); - if (CollectionUtil.isNotEmpty(dto.getItems())) { - dto.getItems().forEach((o) -> { - DfCheckingItem item = new DfCheckingItem(); - item.setXcId(id); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - dfCheckingItemMapper.insert(item); - }); + + + public DfCheckingDetailDto getDetailById(String id) { + DfChecking checking = this.getById(id); + DfCheckingDetailDto dto = BeanCopyUtils.copy(checking, DfCheckingDetailDto.class); + if (dto != null) { + Wrapper wp = Wrappers.lambdaQuery() + .select(DfCheckingItem::getId, DfCheckingItem::getParts, DfCheckingItem::getContent) + .eq(DfCheckingItem::getXcId, id); + dto.setItems(StreamUtils.toList(dfCheckingItemMapper.selectList(wp), (o) -> { + DfCheckingItemDto itemDto = new DfCheckingItemDto(); + itemDto.setContent(o.getContent()); + itemDto.setId(o.getId()); + itemDto.setParts(Arrays.stream(StringUtils.split(o.getParts(), PART_SEPARATOR)) + .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); + return itemDto; + })); } - return this.getDetailById(id); - } else { - throw new DfException("该名称已存在"); - } + return dto; + } + + + @Transactional(rollbackFor = Exception.class) + public DfCheckingDetailDto add(DfCheckingDetailDto dto) { + DfChecking checking = BeanCopyUtils.copy(dto, DfChecking.class); + if (checking != null) { + if (checkNameDistinct(checking.getId(), checking.getName())) { + getBaseMapper().insert(checking); + String id = checking.getId(); + if (CollectionUtil.isNotEmpty(dto.getItems())) { + dto.getItems().forEach((o) -> { + DfCheckingItem item = new DfCheckingItem(); + item.setXcId(id); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + dfCheckingItemMapper.insert(item); + }); + } + return this.getDetailById(id); + } else { + throw new DfException("该名称已存在"); + } + + } + return null; + } + + @Transactional(rollbackFor = Exception.class) + public DfCheckingDetailDto update(DfCheckingDetailDto dto) { + if (exist(dto.getId())) { + DfChecking checking = BeanCopyUtils.copy(dto, DfChecking.class); + if (checking != null) { + if (checkNameDistinct(checking.getId(), checking.getName())) { + getBaseMapper().updateById(checking); + String id = checking.getId(); + deleteItems(id); + if (CollectionUtil.isNotEmpty(dto.getItems())) { + dto.getItems().forEach((o) -> { + DfCheckingItem item = new DfCheckingItem(); + item.setXcId(id); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + dfCheckingItemMapper.insert(item); + }); + } + return this.getDetailById(id); + } else { + throw new DfException("该名称已存在"); + } + } + } + throw new DfException("源数据不存在,请确认id值是否正确"); } - return null; - } - - @Transactional(rollbackFor = Exception.class) - public DfCheckingDetailDto update(DfCheckingDetailDto dto) { - if (exist(dto.getId())) { - DfChecking checking = BeanCopyUtils.copy(dto, DfChecking.class); - if (checking != null) { - if (checkNameDistinct(checking.getId(), checking.getName())) { - getBaseMapper().updateById(checking); - String id = checking.getId(); - deleteItems(id); - if (CollectionUtil.isNotEmpty(dto.getItems())) { - dto.getItems().forEach((o) -> { - DfCheckingItem item = new DfCheckingItem(); - item.setXcId(id); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - dfCheckingItemMapper.insert(item); - }); - } - return this.getDetailById(id); - } else { - throw new DfException("该名称已存在"); + + + @Transactional(rollbackFor = Exception.class) + public Boolean deleteById(String id) { + if (isUsed(id)) { + throw new DfException("已被巡查计划,不能删除!"); } - } + boolean rt = removeById(id); + if (rt) { + deleteItems(id); + } + return rt; } - throw new DfException("源数据不存在,请确认id值是否正确"); - } + private boolean isUsed(String id) { + return dfPlanMapper.selectCount(Wrappers.lambdaQuery() + .eq(DfPlan::getXcId, id)) > 0; + } + private void deleteItems(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(DfCheckingItem::getXcId, id); + dfCheckingItemMapper.delete(wp); + } + + private boolean checkNameDistinct(String id, String name) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(DfChecking::getName, name) + .ne(StringUtils.isNotEmpty(id), DfChecking::getId, id); + return this.getBaseMapper().selectCount(wp) <= 0; + } - @Transactional(rollbackFor = Exception.class) - public Boolean deleteById(String id) { - boolean rt = removeById(id); - if (rt) { - deleteItems(id); + private boolean exist(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(DfChecking::getId, id); + return this.getBaseMapper().selectCount(wp) > 0; } - return rt; - } - - private void deleteItems(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(DfCheckingItem::getXcId, id); - dfCheckingItemMapper.delete(wp); - } - - private boolean checkNameDistinct(String id, String name) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(DfChecking::getName, name) - .ne(StringUtils.isNotEmpty(id), DfChecking::getId, id); - return this.getBaseMapper().selectCount(wp) <= 0; - } - - private boolean exist(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(DfChecking::getId, id); - return this.getBaseMapper().selectCount(wp) > 0; - } } diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java index 78162192..f5824534 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfRecordService.java @@ -100,7 +100,7 @@ public class DfRecordService extends BaseService { if (checkingDetailDto != null) { DfRecord record = new DfRecord(); record.setPlanId(startPlan.getPlanId()); - record.setName(planDetailDto.getName() + DateUtils.dateTimeNow()); + record.setName(planDetailDto.getName() + DateUtils.getTime()); record.setStatus(RecordStatus.CHECKING.getValue()); getBaseMapper().insert(record); String id = record.getId(); diff --git a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzCheckingService.java b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzCheckingService.java index c977eff2..94ac5903 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzCheckingService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzCheckingService.java @@ -4,24 +4,27 @@ import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.kms.yxgh.base.SzException; -import com.kms.yxgh.sz.dto.SzCheckingDetailDto.SzCheckingItemDto; -import com.kms.yxgh.sz.dto.SzCheckingDetailDto; import com.kms.yxgh.sz.domain.SzChecking; import com.kms.yxgh.sz.domain.SzCheckingItem; +import com.kms.yxgh.sz.domain.SzPlan; +import com.kms.yxgh.sz.dto.SzCheckingDetailDto; +import com.kms.yxgh.sz.dto.SzCheckingDetailDto.SzCheckingItemDto; import com.kms.yxgh.sz.mapper.SzCheckingItemMapper; import com.kms.yxgh.sz.mapper.SzCheckingMapper; +import com.kms.yxgh.sz.mapper.SzPlanMapper; import com.kms.yxgh.util.BeanCopyUtils; import com.kms.yxgh.util.StreamUtils; import com.shuili.common.core.domain.SearchParam; import com.shuili.common.core.service.BaseService; import com.shuili.common.utils.StringUtils; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + import java.util.Arrays; import java.util.Comparator; import java.util.List; import java.util.stream.Collectors; -import lombok.AllArgsConstructor; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; /** * 水闸巡视检查Service接口 @@ -33,117 +36,126 @@ import org.springframework.transaction.annotation.Transactional; @AllArgsConstructor public class SzCheckingService extends BaseService { - private final SzCheckingItemMapper SzCheckingItemMapper; - public final static String PART_SEPARATOR = ":"; - - public List selectSimple(SearchParam sp) { - Wrapper wp = Wrappers.lambdaQuery() - .select(SzChecking::getId, SzChecking::getName) - .eq(SzChecking::getType, sp.getData().getType()); - return getBaseMapper().selectList(wp); - } - - - public SzCheckingDetailDto getDetailById(String id) { - SzChecking checking = this.getById(id); - SzCheckingDetailDto dto = BeanCopyUtils.copy(checking, SzCheckingDetailDto.class); - if (dto != null) { - Wrapper wp = Wrappers.lambdaQuery() - .select(SzCheckingItem::getId, SzCheckingItem::getParts, SzCheckingItem::getContent) - .eq(SzCheckingItem::getXcId, id); - dto.setItems(StreamUtils.toList(SzCheckingItemMapper.selectList(wp), (o) -> { - SzCheckingItemDto itemDto = new SzCheckingItemDto(); - itemDto.setContent(o.getContent()); - itemDto.setId(o.getId()); - itemDto.setParts(Arrays.stream(StringUtils.split(o.getParts(), PART_SEPARATOR)) - .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); - return itemDto; - })); + private final SzCheckingItemMapper SzCheckingItemMapper; + private final SzPlanMapper szPlanMapper; + public final static String PART_SEPARATOR = ":"; + + public List selectSimple(SearchParam sp) { + Wrapper wp = Wrappers.lambdaQuery() + .select(SzChecking::getId, SzChecking::getName) + .eq(SzChecking::getType, sp.getData().getType()); + return getBaseMapper().selectList(wp); } - return dto; - } - - - @Transactional(rollbackFor = Exception.class) - public SzCheckingDetailDto add(SzCheckingDetailDto dto) { - SzChecking checking = BeanCopyUtils.copy(dto, SzChecking.class); - if (checking != null) { - if (checkNameDistinct(checking.getId(), checking.getName())) { - getBaseMapper().insert(checking); - String id = checking.getId(); - if (CollectionUtil.isNotEmpty(dto.getItems())) { - dto.getItems().forEach((o) -> { - SzCheckingItem item = new SzCheckingItem(); - item.setXcId(id); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - SzCheckingItemMapper.insert(item); - }); + + + public SzCheckingDetailDto getDetailById(String id) { + SzChecking checking = this.getById(id); + SzCheckingDetailDto dto = BeanCopyUtils.copy(checking, SzCheckingDetailDto.class); + if (dto != null) { + Wrapper wp = Wrappers.lambdaQuery() + .select(SzCheckingItem::getId, SzCheckingItem::getParts, SzCheckingItem::getContent) + .eq(SzCheckingItem::getXcId, id); + dto.setItems(StreamUtils.toList(SzCheckingItemMapper.selectList(wp), (o) -> { + SzCheckingItemDto itemDto = new SzCheckingItemDto(); + itemDto.setContent(o.getContent()); + itemDto.setId(o.getId()); + itemDto.setParts(Arrays.stream(StringUtils.split(o.getParts(), PART_SEPARATOR)) + .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); + return itemDto; + })); } - return this.getDetailById(id); - } else { - throw new SzException("该名称已存在"); - } + return dto; + } + + + @Transactional(rollbackFor = Exception.class) + public SzCheckingDetailDto add(SzCheckingDetailDto dto) { + SzChecking checking = BeanCopyUtils.copy(dto, SzChecking.class); + if (checking != null) { + if (checkNameDistinct(checking.getId(), checking.getName())) { + getBaseMapper().insert(checking); + String id = checking.getId(); + if (CollectionUtil.isNotEmpty(dto.getItems())) { + dto.getItems().forEach((o) -> { + SzCheckingItem item = new SzCheckingItem(); + item.setXcId(id); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + SzCheckingItemMapper.insert(item); + }); + } + return this.getDetailById(id); + } else { + throw new SzException("该名称已存在"); + } + + } + return null; + } + + @Transactional(rollbackFor = Exception.class) + public SzCheckingDetailDto update(SzCheckingDetailDto dto) { + if (exist(dto.getId())) { + SzChecking checking = BeanCopyUtils.copy(dto, SzChecking.class); + if (checking != null) { + if (checkNameDistinct(checking.getId(), checking.getName())) { + getBaseMapper().updateById(checking); + String id = checking.getId(); + deleteItems(id); + if (CollectionUtil.isNotEmpty(dto.getItems())) { + dto.getItems().forEach((o) -> { + SzCheckingItem item = new SzCheckingItem(); + item.setXcId(id); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + SzCheckingItemMapper.insert(item); + }); + } + return this.getDetailById(id); + } else { + throw new SzException("该名称已存在"); + } + } + } + throw new SzException("源数据不存在,请确认id值是否正确"); } - return null; - } - - @Transactional(rollbackFor = Exception.class) - public SzCheckingDetailDto update(SzCheckingDetailDto dto) { - if (exist(dto.getId())) { - SzChecking checking = BeanCopyUtils.copy(dto, SzChecking.class); - if (checking != null) { - if (checkNameDistinct(checking.getId(), checking.getName())) { - getBaseMapper().updateById(checking); - String id = checking.getId(); - deleteItems(id); - if (CollectionUtil.isNotEmpty(dto.getItems())) { - dto.getItems().forEach((o) -> { - SzCheckingItem item = new SzCheckingItem(); - item.setXcId(id); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - SzCheckingItemMapper.insert(item); - }); - } - return this.getDetailById(id); - } else { - throw new SzException("该名称已存在"); + + + @Transactional(rollbackFor = Exception.class) + public Boolean deleteById(String id) { + if (isUsed(id)) { + throw new SzException("已被巡查计划,不能删除!"); } - } + boolean rt = removeById(id); + if (rt) { + deleteItems(id); + } + return rt; } - throw new SzException("源数据不存在,请确认id值是否正确"); - } + private boolean isUsed(String id) { + return szPlanMapper.selectCount(Wrappers.lambdaQuery() + .eq(SzPlan::getXcId, id)) > 0; + } + private void deleteItems(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzCheckingItem::getXcId, id); + SzCheckingItemMapper.delete(wp); + } + + private boolean checkNameDistinct(String id, String name) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzChecking::getName, name) + .ne(StringUtils.isNotEmpty(id), SzChecking::getId, id); + return this.getBaseMapper().selectCount(wp) <= 0; + } - @Transactional(rollbackFor = Exception.class) - public Boolean deleteById(String id) { - boolean rt = removeById(id); - if (rt) { - deleteItems(id); + private boolean exist(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzChecking::getId, id); + return this.getBaseMapper().selectCount(wp) > 0; } - return rt; - } - - private void deleteItems(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzCheckingItem::getXcId, id); - SzCheckingItemMapper.delete(wp); - } - - private boolean checkNameDistinct(String id, String name) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzChecking::getName, name) - .ne(StringUtils.isNotEmpty(id), SzChecking::getId, id); - return this.getBaseMapper().selectCount(wp) <= 0; - } - - private boolean exist(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzChecking::getId, id); - return this.getBaseMapper().selectCount(wp) > 0; - } } diff --git a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzRecordService.java b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzRecordService.java index eef175d9..1b449b49 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzRecordService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzRecordService.java @@ -101,7 +101,7 @@ public class SzRecordService extends BaseService { if (checkingDetailDto != null) { SzRecord record = new SzRecord(); record.setPlanId(startPlan.getPlanId()); - record.setName(planDetailDto.getName() + DateUtils.dateTimeNow()); + record.setName(planDetailDto.getName() + DateUtils.getTime()); record.setStatus(RecordStatus.CHECKING.getValue()); getBaseMapper().insert(record); String id = record.getId();