From 87b82dcbff6c382ec32ed9c577c7e969a4a55e95 Mon Sep 17 00:00:00 2001 From: hxh <762326930@qq.com> Date: Mon, 8 Jan 2024 18:14:28 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=96=B0=E5=A2=9E=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=97=B6=E9=81=BF=E5=85=8D=E5=A4=96=E9=83=A8=E8=AE=BE=E7=BD=AE?= =?UTF-8?q?id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxgh/df/service/DfAnimalPlanService.java | 1 + .../df/service/DfAnimalRecordService.java | 1 + .../yxgh/df/service/DfCheckingService.java | 1 + .../kms/yxgh/df/service/DfPlanService.java | 44 ++-- .../kms/yxgh/df/service/DfRecordService.java | 245 +++++++++--------- .../kms/yxgh/df/service/DfYhPlanService.java | 1 + .../yxgh/df/service/DfYhRecordService.java | 1 + .../yxgh/sz/service/SzCheckingService.java | 1 + .../kms/yxgh/sz/service/SzPlanService.java | 244 ++++++++--------- .../kms/yxgh/sz/service/SzYhPlanService.java | 1 + .../yxgh/sz/service/SzYhRecordService.java | 1 + 11 files changed, 272 insertions(+), 269 deletions(-) diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfAnimalPlanService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfAnimalPlanService.java index 44d5a0a7..0ea1d997 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfAnimalPlanService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfAnimalPlanService.java @@ -72,6 +72,7 @@ public class DfAnimalPlanService extends BaseService public DfCheckingDetailDto add(DfCheckingDetailDto dto) { DfChecking checking = BeanCopyUtils.copy(dto, DfChecking.class); if (checking != null) { + checking.setId(null); if (checkNameDistinct(checking.getId(), checking.getName())) { getBaseMapper().insert(checking); String id = checking.getId(); diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfPlanService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfPlanService.java index e124f826..5c9322fb 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfPlanService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfPlanService.java @@ -8,7 +8,6 @@ import com.kms.yxgh.base.DfException; import com.kms.yxgh.df.domain.DfPlan; import com.kms.yxgh.df.domain.DfPlanOperator; import com.kms.yxgh.df.domain.DfPoint; -import com.kms.yxgh.df.dto.DfAnimalPlanDto; import com.kms.yxgh.df.dto.DfPlanDetailDto; import com.kms.yxgh.df.dto.DfPlanDetailDto.OperatorDto; import com.kms.yxgh.df.dto.DfPointDto; @@ -36,34 +35,35 @@ import java.util.function.Consumer; @AllArgsConstructor public class DfPlanService extends BaseService { - private final DfPlanOperatorMapper dfPlanOperatorMapper; - private final DfPointMapper dfPointMapper; - - public DfPlanDetailDto getDetailById(String id) { - DfPlan dfPlan = this.getById(id); - DfPlanDetailDto dto = BeanCopyUtils.copy(dfPlan, DfPlanDetailDto.class); - if (dto != null) { - dto.setOtherConfig(JSON.parseObject(dfPlan.getOtherConfig())); - Wrapper wp = Wrappers.lambdaQuery() - .select(DfPlanOperator::getId, DfPlanOperator::getOperatorUid, - DfPlanOperator::getOperatorName) - .eq(DfPlanOperator::getPlanId, id); - dto.setOperators(StreamUtils.toList(dfPlanOperatorMapper.selectList(wp), (o) -> { - OperatorDto itemDto = new OperatorDto(); - itemDto.setId(o.getId()); - itemDto.setUid(o.getOperatorUid()); - itemDto.setName(o.getOperatorName()); - return itemDto; - })); + private final DfPlanOperatorMapper dfPlanOperatorMapper; + private final DfPointMapper dfPointMapper; + + public DfPlanDetailDto getDetailById(String id) { + DfPlan dfPlan = this.getById(id); + DfPlanDetailDto dto = BeanCopyUtils.copy(dfPlan, DfPlanDetailDto.class); + if (dto != null) { + dto.setOtherConfig(JSON.parseObject(dfPlan.getOtherConfig())); + Wrapper wp = Wrappers.lambdaQuery() + .select(DfPlanOperator::getId, DfPlanOperator::getOperatorUid, + DfPlanOperator::getOperatorName) + .eq(DfPlanOperator::getPlanId, id); + dto.setOperators(StreamUtils.toList(dfPlanOperatorMapper.selectList(wp), (o) -> { + OperatorDto itemDto = new OperatorDto(); + itemDto.setId(o.getId()); + itemDto.setUid(o.getOperatorUid()); + itemDto.setName(o.getOperatorName()); + return itemDto; + })); + } + return dto; } - return dto; - } @Transactional(rollbackFor = Exception.class) public DfPlanDetailDto add(DfPlanDetailDto dto) { DfPlan dfPlan = BeanCopyUtils.copy(dto, DfPlan.class); if (dfPlan != null) { + dfPlan.setId(null); if (checkNameDistinct(dfPlan.getId(), dfPlan.getName())) { dfPlan.setOtherConfig(JSON.toJSONString(dto.getOtherConfig())); getBaseMapper().insert(dfPlan); 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 f5824534..98987355 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 @@ -1,7 +1,5 @@ package com.kms.yxgh.df.service; -import static com.kms.yxgh.df.service.DfCheckingService.PART_SEPARATOR; - import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -13,12 +11,8 @@ import com.kms.yxgh.base.enums.CheckingStatus; import com.kms.yxgh.base.enums.RecordStatus; import com.kms.yxgh.df.domain.DfRecord; import com.kms.yxgh.df.domain.DfRecordItem; -import com.kms.yxgh.df.dto.DfCheckingDetailDto; -import com.kms.yxgh.df.dto.DfPlanDetailDto; -import com.kms.yxgh.df.dto.DfRecordDetailDto; +import com.kms.yxgh.df.dto.*; import com.kms.yxgh.df.dto.DfRecordDetailDto.DfRecordItemDto; -import com.kms.yxgh.df.dto.DfRecordSearchDto; -import com.kms.yxgh.df.dto.StartPlan; import com.kms.yxgh.df.mapper.DfRecordItemMapper; import com.kms.yxgh.df.mapper.DfRecordMapper; import com.kms.yxgh.util.BeanCopyUtils; @@ -28,17 +22,15 @@ import com.shuili.common.core.domain.entity.SysUser; import com.shuili.common.core.service.BaseService; import com.shuili.common.utils.DateUtils; import com.shuili.common.utils.StringUtils; -import java.util.Arrays; -import java.util.Collections; -import java.util.Comparator; -import java.util.List; -import java.util.Map; -import java.util.Optional; -import java.util.stream.Collectors; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.*; +import java.util.stream.Collectors; + +import static com.kms.yxgh.df.service.DfCheckingService.PART_SEPARATOR; + /** * 堤防巡视检查记录Service接口 * @@ -49,130 +41,131 @@ import org.springframework.transaction.annotation.Transactional; @AllArgsConstructor public class DfRecordService extends BaseService { - private final DfRecordItemMapper dfRecordItemMapper; - private final DfCheckingService dfCheckingService; - private final DfPlanService dfPlanService; - private final SysUserService userService; + private final DfRecordItemMapper dfRecordItemMapper; + private final DfCheckingService dfCheckingService; + private final DfPlanService dfPlanService; + private final SysUserService userService; - public IPage search(SearchParam sp) { - IPage page = selectPage(sp); - if (CollectionUtil.isNotEmpty(page.getRecords())) { - List ids = page.getRecords().stream().map(DfRecord::getId) - .collect(Collectors.toList()); - Wrapper wp = Wrappers.lambdaQuery() - .in(DfRecordItem::getRecordId, ids) - .eq(DfRecordItem::getStatus, CheckingStatus.ABNORMAL.getValue()); - Map> items = Optional.ofNullable(dfRecordItemMapper.selectList(wp)) - .map(list -> list.stream().collect( - Collectors.groupingBy(DfRecordItem::getRecordId, Collectors.toList()))) - .orElseGet(Collections::emptyMap); + public IPage search(SearchParam sp) { + IPage page = selectPage(sp); + if (CollectionUtil.isNotEmpty(page.getRecords())) { + List ids = page.getRecords().stream().map(DfRecord::getId) + .collect(Collectors.toList()); + Wrapper wp = Wrappers.lambdaQuery() + .in(DfRecordItem::getRecordId, ids) + .eq(DfRecordItem::getStatus, CheckingStatus.ABNORMAL.getValue()); + Map> items = Optional.ofNullable(dfRecordItemMapper.selectList(wp)) + .map(list -> list.stream().collect( + Collectors.groupingBy(DfRecordItem::getRecordId, Collectors.toList()))) + .orElseGet(Collections::emptyMap); - List records = page.getRecords().stream().map(r -> { - DfRecordSearchDto dto = BeanCopyUtils.copy(r, DfRecordSearchDto - .class); - if (dto != null) { - dto.setParts(items.getOrDefault(r.getId(), Collections.emptyList()) - .stream().map(item -> { - List parts = Arrays.stream(item.getParts().split(PART_SEPARATOR)) - .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList()); - return parts.get(parts.size() - 1); - }).collect(Collectors.toList())); - dto.setOperatorName(Optional.ofNullable(userService.getWithRedis(r.getCreateUid())).map( - SysUser::getNickName).orElse("")); + List records = page.getRecords().stream().map(r -> { + DfRecordSearchDto dto = BeanCopyUtils.copy(r, DfRecordSearchDto + .class); + if (dto != null) { + dto.setParts(items.getOrDefault(r.getId(), Collections.emptyList()) + .stream().map(item -> { + List parts = Arrays.stream(item.getParts().split(PART_SEPARATOR)) + .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList()); + return parts.get(parts.size() - 1); + }).collect(Collectors.toList())); + dto.setOperatorName(Optional.ofNullable(userService.getWithRedis(r.getCreateUid())).map( + SysUser::getNickName).orElse("")); + } + return dto; + }).collect(Collectors.toList()); + Page recordSearchDtoPage = new Page<>(page.getCurrent(), page.getSize(), + page.getTotal()); + recordSearchDtoPage.setRecords(records); + return recordSearchDtoPage; + } else { + return new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); } - return dto; - }).collect(Collectors.toList()); - Page recordSearchDtoPage = new Page<>(page.getCurrent(), page.getSize(), - page.getTotal()); - recordSearchDtoPage.setRecords(records); - return recordSearchDtoPage; - } else { - return new Page<>(page.getCurrent(), page.getSize(), page.getTotal()); } - } - @Transactional(rollbackFor = Exception.class) - public DfRecordDetailDto start(StartPlan startPlan) { - DfPlanDetailDto planDetailDto = dfPlanService.getDetailById(startPlan.getPlanId()); - if (planDetailDto != null) { - DfCheckingDetailDto checkingDetailDto = dfCheckingService.getDetailById( - planDetailDto.getXcId()); - if (checkingDetailDto != null) { - DfRecord record = new DfRecord(); - record.setPlanId(startPlan.getPlanId()); - record.setName(planDetailDto.getName() + DateUtils.getTime()); - record.setStatus(RecordStatus.CHECKING.getValue()); - getBaseMapper().insert(record); - String id = record.getId(); - if (CollectionUtil.isNotEmpty(checkingDetailDto.getItems())) { - checkingDetailDto.getItems().forEach(o -> { - DfRecordItem item = new DfRecordItem(); - item.setRecordId(id); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - item.setStatus(CheckingStatus.NORMAL.getValue()); - item.setProblem(""); - dfRecordItemMapper.insert(item); - }); + @Transactional(rollbackFor = Exception.class) + public DfRecordDetailDto start(StartPlan startPlan) { + DfPlanDetailDto planDetailDto = dfPlanService.getDetailById(startPlan.getPlanId()); + if (planDetailDto != null) { + planDetailDto.setId(null); + DfCheckingDetailDto checkingDetailDto = dfCheckingService.getDetailById( + planDetailDto.getXcId()); + if (checkingDetailDto != null) { + DfRecord record = new DfRecord(); + record.setPlanId(startPlan.getPlanId()); + record.setName(planDetailDto.getName() + DateUtils.getTime()); + record.setStatus(RecordStatus.CHECKING.getValue()); + getBaseMapper().insert(record); + String id = record.getId(); + if (CollectionUtil.isNotEmpty(checkingDetailDto.getItems())) { + checkingDetailDto.getItems().forEach(o -> { + DfRecordItem item = new DfRecordItem(); + item.setRecordId(id); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + item.setStatus(CheckingStatus.NORMAL.getValue()); + item.setProblem(""); + dfRecordItemMapper.insert(item); + }); + } + return this.getDetailById(id); + } else { + throw new DfException("查询巡查检查项数据异常"); + } } - return this.getDetailById(id); - } else { - throw new DfException("查询巡查检查项数据异常"); - } + throw new DfException("查询巡查计划"); } - throw new DfException("查询巡查计划"); - } - public DfRecordDetailDto getDetailById(String id) { - DfRecord record = this.getBaseMapper().selectById(id); - if (record != null) { - DfRecordDetailDto dto = BeanCopyUtils.copy(record, DfRecordDetailDto.class); - Wrapper wp = Wrappers.lambdaQuery() - .eq(DfRecordItem::getRecordId, id); - List items = dfRecordItemMapper.selectList(wp); - if (CollectionUtil.isNotEmpty(items) && dto != null) { - dto.setItems(StreamUtils.toList(items, r -> { - DfRecordItemDto itemDto = BeanCopyUtils.copy(r, DfRecordItemDto.class); - if (itemDto != null) { - itemDto.setParts(Arrays.stream(StringUtils.split(r.getParts(), PART_SEPARATOR)) - .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); - } - return itemDto; - })); - } - return dto; + public DfRecordDetailDto getDetailById(String id) { + DfRecord record = this.getBaseMapper().selectById(id); + if (record != null) { + DfRecordDetailDto dto = BeanCopyUtils.copy(record, DfRecordDetailDto.class); + Wrapper wp = Wrappers.lambdaQuery() + .eq(DfRecordItem::getRecordId, id); + List items = dfRecordItemMapper.selectList(wp); + if (CollectionUtil.isNotEmpty(items) && dto != null) { + dto.setItems(StreamUtils.toList(items, r -> { + DfRecordItemDto itemDto = BeanCopyUtils.copy(r, DfRecordItemDto.class); + if (itemDto != null) { + itemDto.setParts(Arrays.stream(StringUtils.split(r.getParts(), PART_SEPARATOR)) + .sorted(Comparator.comparingInt(String::length)).collect(Collectors.toList())); + } + return itemDto; + })); + } + return dto; + } + return null; } - return null; - } - @Transactional(rollbackFor = Exception.class) - public DfRecordDetailDto update(DfRecordDetailDto dfRecord) { - if (CollectionUtil.isNotEmpty(dfRecord.getItems())) { - dfRecord.getItems().forEach(o -> { - DfRecordItem item = new DfRecordItem(); - item.setRecordId(dfRecord.getId()); - item.setContent(o.getContent()); - item.setParts(String.join(PART_SEPARATOR, o.getParts())); - item.setStatus(o.getStatus()); - item.setProblem(o.getProblem()); - dfRecordItemMapper.updateById(item); - }); + @Transactional(rollbackFor = Exception.class) + public DfRecordDetailDto update(DfRecordDetailDto dfRecord) { + if (CollectionUtil.isNotEmpty(dfRecord.getItems())) { + dfRecord.getItems().forEach(o -> { + DfRecordItem item = new DfRecordItem(); + item.setRecordId(dfRecord.getId()); + item.setContent(o.getContent()); + item.setParts(String.join(PART_SEPARATOR, o.getParts())); + item.setStatus(o.getStatus()); + item.setProblem(o.getProblem()); + dfRecordItemMapper.updateById(item); + }); + } + return dfRecord; } - return dfRecord; - } - @Transactional(rollbackFor = Exception.class) - public Boolean deleteById(String id) { - boolean rt = removeById(id); - if (rt) { - deleteItems(id); + @Transactional(rollbackFor = Exception.class) + public Boolean deleteById(String id) { + boolean rt = removeById(id); + if (rt) { + deleteItems(id); + } + return rt; } - return rt; - } - private void deleteItems(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(DfRecordItem::getRecordId, id); - dfRecordItemMapper.delete(wp); - } + private void deleteItems(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(DfRecordItem::getRecordId, id); + dfRecordItemMapper.delete(wp); + } } diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhPlanService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhPlanService.java index afed0d1e..a79cdc79 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhPlanService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhPlanService.java @@ -32,6 +32,7 @@ public class DfYhPlanService extends BaseService { public DfYhPlanDetailDto add(DfYhPlanDetailDto dto) { DfYhPlan dfPlan = BeanCopyUtils.copy(dto, DfYhPlan.class); if (dfPlan != null) { + dfPlan.setId(null); if (checkNameDistinct(dfPlan.getId(), dfPlan.getName())) { getBaseMapper().insert(dfPlan); dto.setId(dfPlan.getId()); diff --git a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhRecordService.java b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhRecordService.java index c560ec4f..22197216 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhRecordService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/df/service/DfYhRecordService.java @@ -58,6 +58,7 @@ public class DfYhRecordService extends BaseService public DfYhRecordDetailDto add(DfYhRecordDetailDto dto) { DfYhRecord dfYhRecord = BeanCopyUtils.copy(dto, DfYhRecord.class); if (dfYhRecord != null) { + dfYhRecord.setId(null); if (!existRecord(dto.getPlanId())) { getBaseMapper().insert(dfYhRecord); dto.setId(dfYhRecord.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 94ac5903..dbc59762 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 @@ -72,6 +72,7 @@ public class SzCheckingService extends BaseService public SzCheckingDetailDto add(SzCheckingDetailDto dto) { SzChecking checking = BeanCopyUtils.copy(dto, SzChecking.class); if (checking != null) { + checking.setId(null); if (checkNameDistinct(checking.getId(), checking.getName())) { getBaseMapper().insert(checking); String id = checking.getId(); diff --git a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzPlanService.java b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzPlanService.java index 6301c556..f711d2e4 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzPlanService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzPlanService.java @@ -18,12 +18,13 @@ import com.kms.yxgh.util.BeanCopyUtils; import com.kms.yxgh.util.StreamUtils; import com.shuili.common.core.service.BaseService; import com.shuili.common.utils.StringUtils; -import java.util.List; -import java.util.function.Consumer; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.List; +import java.util.function.Consumer; + /** * 水闸巡视检查计划Service接口 * @@ -34,134 +35,135 @@ import org.springframework.transaction.annotation.Transactional; @AllArgsConstructor public class SzPlanService extends BaseService { - private final SzPlanOperatorMapper SzPlanOperatorMapper; - private final SzPointMapper SzPointMapper; - - public SzPlanDetailDto getDetailById(String id) { - SzPlan SzPlan = this.getById(id); - SzPlanDetailDto dto = BeanCopyUtils.copy(SzPlan, SzPlanDetailDto.class); - if (dto != null) { - dto.setOtherConfig(JSON.parseObject(SzPlan.getOtherConfig())); - Wrapper wp = Wrappers.lambdaQuery() - .select(SzPlanOperator::getId, SzPlanOperator::getOperatorUid, - SzPlanOperator::getOperatorName) - .eq(SzPlanOperator::getPlanId, id); - dto.setOperators(StreamUtils.toList(SzPlanOperatorMapper.selectList(wp), (o) -> { - OperatorDto itemDto = new OperatorDto(); - itemDto.setId(o.getId()); - itemDto.setUid(o.getOperatorUid()); - itemDto.setName(o.getOperatorName()); - return itemDto; - })); + private final SzPlanOperatorMapper SzPlanOperatorMapper; + private final SzPointMapper SzPointMapper; + + public SzPlanDetailDto getDetailById(String id) { + SzPlan SzPlan = this.getById(id); + SzPlanDetailDto dto = BeanCopyUtils.copy(SzPlan, SzPlanDetailDto.class); + if (dto != null) { + dto.setOtherConfig(JSON.parseObject(SzPlan.getOtherConfig())); + Wrapper wp = Wrappers.lambdaQuery() + .select(SzPlanOperator::getId, SzPlanOperator::getOperatorUid, + SzPlanOperator::getOperatorName) + .eq(SzPlanOperator::getPlanId, id); + dto.setOperators(StreamUtils.toList(SzPlanOperatorMapper.selectList(wp), (o) -> { + OperatorDto itemDto = new OperatorDto(); + itemDto.setId(o.getId()); + itemDto.setUid(o.getOperatorUid()); + itemDto.setName(o.getOperatorName()); + return itemDto; + })); + } + return dto; } - return dto; - } - - - @Transactional(rollbackFor = Exception.class) - public SzPlanDetailDto add(SzPlanDetailDto dto) { - SzPlan SzPlan = BeanCopyUtils.copy(dto, SzPlan.class); - if (SzPlan != null) { - if (checkNameDistinct(SzPlan.getId(), SzPlan.getName())) { - SzPlan.setOtherConfig(JSON.toJSONString(dto.getOtherConfig())); - getBaseMapper().insert(SzPlan); - String id = SzPlan.getId(); - if (CollectionUtil.isNotEmpty(dto.getOperators())) { - dto.getOperators().forEach(insertOperator(id)); + + + @Transactional(rollbackFor = Exception.class) + public SzPlanDetailDto add(SzPlanDetailDto dto) { + SzPlan szPlan = BeanCopyUtils.copy(dto, SzPlan.class); + if (szPlan != null) { + szPlan.setId(null); + if (checkNameDistinct(szPlan.getId(), szPlan.getName())) { + szPlan.setOtherConfig(JSON.toJSONString(dto.getOtherConfig())); + getBaseMapper().insert(szPlan); + String id = szPlan.getId(); + if (CollectionUtil.isNotEmpty(dto.getOperators())) { + dto.getOperators().forEach(insertOperator(id)); + } + return this.getDetailById(id); + } else { + throw new SzException("该名称已存在"); + } + } - return this.getDetailById(id); - } else { - throw new SzException("该名称已存在"); - } + return null; + } + private Consumer insertOperator(String id) { + return (o) -> { + SzPlanOperator item = new SzPlanOperator(); + item.setPlanId(id); + item.setOperatorName(o.getName()); + item.setOperatorUid(o.getUid()); + SzPlanOperatorMapper.insert(item); + }; } - return null; - } - - private Consumer insertOperator(String id) { - return (o) -> { - SzPlanOperator item = new SzPlanOperator(); - item.setPlanId(id); - item.setOperatorName(o.getName()); - item.setOperatorUid(o.getUid()); - SzPlanOperatorMapper.insert(item); - }; - } - - @Transactional(rollbackFor = Exception.class) - public SzPlanDetailDto update(SzPlanDetailDto dto) { - if (exist(dto.getId())) { - SzPlan SzPlan = BeanCopyUtils.copy(dto, SzPlan.class); - if (SzPlan != null) { - if (checkNameDistinct(SzPlan.getId(), SzPlan.getName())) { - SzPlan.setOtherConfig(JSON.toJSONString(dto.getOtherConfig())); - getBaseMapper().updateById(SzPlan); - String id = SzPlan.getId(); - deleteItems(id); - if (CollectionUtil.isNotEmpty(dto.getOperators())) { - dto.getOperators().forEach(insertOperator(id)); - } - return this.getDetailById(id); - } else { - throw new SzException("该名称已存在"); + + @Transactional(rollbackFor = Exception.class) + public SzPlanDetailDto update(SzPlanDetailDto dto) { + if (exist(dto.getId())) { + SzPlan SzPlan = BeanCopyUtils.copy(dto, SzPlan.class); + if (SzPlan != null) { + if (checkNameDistinct(SzPlan.getId(), SzPlan.getName())) { + SzPlan.setOtherConfig(JSON.toJSONString(dto.getOtherConfig())); + getBaseMapper().updateById(SzPlan); + String id = SzPlan.getId(); + deleteItems(id); + if (CollectionUtil.isNotEmpty(dto.getOperators())) { + dto.getOperators().forEach(insertOperator(id)); + } + return this.getDetailById(id); + } else { + throw new SzException("该名称已存在"); + } + } } - } - } - throw new SzException("源数据不存在,请确认id值是否正确"); + throw new SzException("源数据不存在,请确认id值是否正确"); - } + } - @Transactional(rollbackFor = Exception.class) - public Boolean deleteById(String id) { - boolean rt = removeById(id); - if (rt) { - deleteItems(id); + @Transactional(rollbackFor = Exception.class) + public Boolean deleteById(String id) { + boolean rt = removeById(id); + if (rt) { + deleteItems(id); + } + return rt; } - return rt; - } - - @Transactional(rollbackFor = Exception.class) - public Boolean addPoints(String id, List points) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzPoint::getPlanId, id); - SzPointMapper.delete(wp); - if (CollectionUtil.isNotEmpty(points)) { - points.forEach(po -> { - SzPoint point = BeanCopyUtils.copy(po, SzPoint.class); - if (point != null) { - point.setPlanId(id); - SzPointMapper.insert(point); + + @Transactional(rollbackFor = Exception.class) + public Boolean addPoints(String id, List points) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzPoint::getPlanId, id); + SzPointMapper.delete(wp); + if (CollectionUtil.isNotEmpty(points)) { + points.forEach(po -> { + SzPoint point = BeanCopyUtils.copy(po, SzPoint.class); + if (point != null) { + point.setPlanId(id); + SzPointMapper.insert(point); + } + }); } - }); + return true; + } + + + public List getPoints(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzPoint::getPlanId, id); + return StreamUtils.toList(SzPointMapper.selectList(wp), + (o) -> BeanCopyUtils.copy(o, SzPointDto.class)); + } + + private void deleteItems(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzPlanOperator::getPlanId, id); + SzPlanOperatorMapper.delete(wp); + } + + private boolean checkNameDistinct(String id, String name) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzPlan::getName, name) + .ne(StringUtils.isNotEmpty(id), SzPlan::getId, id); + return this.getBaseMapper().selectCount(wp) <= 0; + } + + private boolean exist(String id) { + Wrapper wp = Wrappers.lambdaQuery() + .eq(SzPlan::getId, id); + return this.getBaseMapper().selectCount(wp) > 0; } - return true; - } - - - public List getPoints(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzPoint::getPlanId, id); - return StreamUtils.toList(SzPointMapper.selectList(wp), - (o) -> BeanCopyUtils.copy(o, SzPointDto.class)); - } - - private void deleteItems(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzPlanOperator::getPlanId, id); - SzPlanOperatorMapper.delete(wp); - } - - private boolean checkNameDistinct(String id, String name) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzPlan::getName, name) - .ne(StringUtils.isNotEmpty(id), SzPlan::getId, id); - return this.getBaseMapper().selectCount(wp) <= 0; - } - - private boolean exist(String id) { - Wrapper wp = Wrappers.lambdaQuery() - .eq(SzPlan::getId, id); - return this.getBaseMapper().selectCount(wp) > 0; - } } diff --git a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhPlanService.java b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhPlanService.java index 9dd65164..2bedcdc5 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhPlanService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhPlanService.java @@ -32,6 +32,7 @@ public class SzYhPlanService extends BaseService { public SzYhPlanDetailDto add(SzYhPlanDetailDto dto) { SzYhPlan szPlan = BeanCopyUtils.copy(dto, SzYhPlan.class); if (szPlan != null) { + szPlan.setId(null); if (checkNameDistinct(szPlan.getId(), szPlan.getName())) { getBaseMapper().insert(szPlan); dto.setId(szPlan.getId()); diff --git a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhRecordService.java b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhRecordService.java index 10727978..ff4b8e70 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhRecordService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/sz/service/SzYhRecordService.java @@ -36,6 +36,7 @@ public class SzYhRecordService extends BaseService public SzYhRecordDetailDto getDetailById(String id) { SzYhRecord record = this.getBaseMapper().selectById(id); if (record != null) { + record.setId(null); SzYhRecordDetailDto dto = BeanCopyUtils.copy(record, SzYhRecordDetailDto.class); Wrapper wp = Wrappers.lambdaQuery() .eq(SzYhOperator::getRecordId, id);