From 1305d0aa469fe7330fd2f8e9fbb10d95042571be Mon Sep 17 00:00:00 2001
From: zhangfeng <1603559716@qq.com>
Date: 星期一, 10 十月 2022 12:33:36 +0800
Subject: [PATCH] 应急系统和事故管理统计接口
---
goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java | 47 ++++++++++++++++++++++++++++++++++-------------
1 files changed, 34 insertions(+), 13 deletions(-)
diff --git a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java
index ca56269..8aa7c7d 100644
--- a/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java
+++ b/goal-manage/goal-manage-service/src/main/java/com/gkhy/safePlatform/targetDuty/service/impl/TargetDivideDetailServiceImpl.java
@@ -5,6 +5,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.gkhy.safePlatform.targetDuty.entity.ExamineItem;
import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
import com.gkhy.safePlatform.targetDuty.enums.TargetDutyResultCodes;
import com.gkhy.safePlatform.targetDuty.excepiton.TargetDutyException;
@@ -13,6 +14,8 @@
import com.gkhy.safePlatform.targetDuty.entity.TargetDivideDetail;
import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository;
import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
+import com.gkhy.safePlatform.targetDuty.service.baseService.TargetDivideDetailBaseService;
+import com.gkhy.safePlatform.targetDuty.service.baseService.TargetMngBaseService;
import org.springframework.stereotype.Service;
import org.springframework.beans.factory.annotation.Autowired;
import com.gkhy.safePlatform.commons.enums.ResultCodes;
@@ -26,6 +29,7 @@
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
@@ -37,13 +41,13 @@
* @since 2022-07-20 13:32:39
*/
@Service("targetDivideDetailService")
-public class TargetDivideDetailServiceImpl extends ServiceImpl<TargetDivideDetailRepository, TargetDivideDetail> implements TargetDivideDetailService {
+public class TargetDivideDetailServiceImpl implements TargetDivideDetailService {
@Autowired
- private TargetDivideDetailRepository targetDivideDetailRepository;
+ private TargetDivideDetailBaseService targetDivideDetailBaseService;
@Autowired
- private TargetMngRepository targetMngRepository;
+ private TargetMngBaseService targetMngBaseService;
@@ -53,14 +57,14 @@
Long pageSize = pageQuery.getPageSize();
IPage<TargetDivideDetail> page = new Page<>(pageIndex, pageSize);
- page = baseMapper.selectPage(page,
+ page = targetDivideDetailBaseService.selectPage(page,
QueryHelpPlus.getPredicate(TargetDivideDetail.class, pageQuery.getSearchParams()));
List<TargetDivideDetailDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetDivideDetailDto.class);
return new SearchResultVO<>(
true,
pageIndex,
- pageSize,
+ pageSize,page.getPages(),
page.getTotal(),
respList,
ResultCodes.OK
@@ -70,12 +74,15 @@
@Override
public List<TargetDivideDetail> queryAll(TargetDivideDetailQueryCriteria criteria) {
- return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetDivideDetail.class, criteria));
+ return targetDivideDetailBaseService.queryAll(criteria);
}
@Override
public void addOrUpdate(TargetDivideDetailSaveOrUpdate infoDto) {
- TargetMng targetMng = targetMngRepository.selectOne(new QueryWrapper<TargetMng>().eq("id",infoDto.getTargetId()));
+ if(infoDto.getTargetId() == null){
+ throw new TargetDutyException("缺少targetId");
+ }
+ TargetMng targetMng = targetMngBaseService.getOne(new QueryWrapper<TargetMng>().eq("id",infoDto.getTargetId()));
if(targetMng == null){
throw new TargetDutyException(TargetDutyResultCodes.E1);
}
@@ -83,22 +90,36 @@
if(StringUtils.hasText(infoDto.getDelTargetDivideDetails())){
List<Long> idList = Arrays.stream(infoDto.getDelTargetDivideDetails().split(",")).map(s-> Long.parseLong(s.trim()))
.collect(Collectors.toList());
- this.removeByIds(idList);
+ List<TargetDivideDetail> delList = new ArrayList<>();
+ idList.forEach(f->{
+ TargetDivideDetail info = new TargetDivideDetail();
+ info.setDelFlag(1);
+ info.setId(f);
+ delList.add(info);
+ });
+ targetDivideDetailBaseService.updateBatchById(delList);
}
//保存主数据
//如果目标指标已经被分解,那么就不能再次增加
- if(targetMng.getDivideStatus() == 1){
+ if(targetMng.getDivideStatus() == 1 && infoDto.getTargetId() == null){
throw new TargetDutyException(TargetDutyResultCodes.E2);
}
List<TargetDivideDetail> list = infoDto.getTargetDivideDetailList();
list.forEach(f->{f.setTargetId(infoDto.getTargetId());});
- this.saveOrUpdateBatch(list);
+ targetDivideDetailBaseService.saveOrUpdateBatch(list);
- //设置状态为 《已分解》
- targetMng.setDivideStatus(1);
- targetMngRepository.update(targetMng,new UpdateWrapper<TargetMng>().eq("id",targetMng.getId()));
+ //查询最新的分解数量,如果>0,设置状态为 《已分解》,否则设置为未分解
+ int divideStatus = 2;
+ if(infoDto.getTargetId() != null){
+ long number = targetDivideDetailBaseService.count(new QueryWrapper<TargetDivideDetail>().eq("target_id",infoDto.getTargetId()));
+ if(number > 0){
+ divideStatus = 1;
+ }
+ }
+ targetMng.setDivideStatus(divideStatus);
+ targetMngBaseService.update(targetMng,new UpdateWrapper<TargetMng>().eq("id",targetMng.getId()));
}
--
Gitblit v1.9.2