From 66bfbdb9251c22ffa2b5f05595a76a3547a2f5eb Mon Sep 17 00:00:00 2001
From: rain <1679827795@qq.com>
Date: Mon, 09 Feb 2026 11:00:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java | 53 +++++++++++++++++++++++++++++++++++++++++++----------
1 files changed, 43 insertions(+), 10 deletions(-)
diff --git a/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java b/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java
index ff4b4e3..096eda7 100644
--- a/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java
+++ b/drone-service/drone-gd/src/main/java/org/sxkj/gd/orderdata/service/impl/GdDataObjectionServiceImpl.java
@@ -16,25 +16,30 @@
*/
package org.sxkj.gd.orderdata.service.impl;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springblade.core.secure.utils.AuthUtil;
import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
import org.sxkj.gd.orderdata.dto.GdDataObjectionDTO;
import org.sxkj.gd.orderdata.entity.GdDataObjectionAttachmentEntity;
import org.sxkj.gd.orderdata.entity.GdDataObjectionEntity;
+import org.sxkj.gd.orderdata.excel.GdDataObjectionExcel;
+import org.sxkj.gd.orderdata.mapper.GdDataObjectionMapper;
import org.sxkj.gd.orderdata.param.GdDataObjectionDetailParam;
import org.sxkj.gd.orderdata.param.GdDataObjectionPageParam;
import org.sxkj.gd.orderdata.service.IGdDataObjectionAttachmentService;
-import org.sxkj.gd.orderdata.vo.GdDataObjectionVO;
-import org.sxkj.gd.orderdata.excel.GdDataObjectionExcel;
-import org.sxkj.gd.orderdata.mapper.GdDataObjectionMapper;
import org.sxkj.gd.orderdata.service.IGdDataObjectionService;
-import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.core.conditions.Wrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.core.mp.base.BaseServiceImpl;
+import org.sxkj.gd.orderdata.vo.GdDataObjectionVO;
import org.sxkj.gd.orderdata.wrapper.GdDataObjectionWrapper;
import org.sxkj.gd.orderdata.wrapper.GdSupplyDemandAuditAttachmentWrapper;
+import org.sxkj.system.cache.SysCache;
+import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
* 数据异议申请表 服务实现类
@@ -50,6 +55,11 @@
@Override
public IPage<GdDataObjectionVO> selectGdDataObjectionPage(IPage<GdDataObjectionVO> page, GdDataObjectionPageParam gdDataObjection) {
+ List<Long> deptList = new ArrayList<>();
+ if (!AuthUtil.isAdministrator()) {
+ deptList = SysCache.getDeptChildIds(Long.valueOf(AuthUtil.getDeptId()));
+ }
+ gdDataObjection.setDeptList(deptList);
return page.setRecords(baseMapper.selectGdDataObjectionPage(page, gdDataObjection));
}
@@ -66,14 +76,37 @@
@Override
public boolean saveOrUpdateDataObjection(GdDataObjectionDTO gdDataEvaluationDTO) {
GdDataObjectionEntity gdDataObjectionEntity = GdDataObjectionWrapper.build().entityDTO(gdDataEvaluationDTO);
+ if(gdDataObjectionEntity.getObjectionStatus().equals("2")){
+ String deptName = SysCache.getDeptName(Long.valueOf(AuthUtil.getDeptId()));
+ gdDataObjectionEntity.setHandleUnit(deptName);
+ }
boolean result = saveOrUpdate(gdDataObjectionEntity);
if (result) {
if (gdDataEvaluationDTO.getAttachmentList() != null) {
- List<GdDataObjectionAttachmentEntity> gdDataObjectionAttachmentEntities = GdSupplyDemandAuditAttachmentWrapper.build().entityDTO(gdDataEvaluationDTO.getAttachmentList());
- gdDataObjectionAttachmentEntities.forEach(gdDataObjectionAttachmentEntity -> {
+ List<GdDataObjectionAttachmentEntity> entityList = GdSupplyDemandAuditAttachmentWrapper.build().entityDTO(gdDataEvaluationDTO.getAttachmentList());
+
+ List<GdDataObjectionAttachmentEntity> list = gdDataObjectionAttachmentService.list(Wrappers.<GdDataObjectionAttachmentEntity>lambdaQuery()
+ .eq(GdDataObjectionAttachmentEntity::getObjectionId, gdDataObjectionEntity.getId())
+ .eq(GdDataObjectionAttachmentEntity::getIsDeleted, 0));
+
+ // 过滤出list中存在但entityList不包含的数据(根据ID进行比较)
+ List<GdDataObjectionAttachmentEntity> toDeleteList = list.stream()
+ .filter(item -> !entityList.stream()
+ .anyMatch(entityItem -> item.getId() != null && entityItem.getId() != null && item.getId().equals(entityItem.getId())))
+ .collect(Collectors.toList());
+
+ // 删除过滤出的数据
+ if (!toDeleteList.isEmpty()) {
+ List<Long> idsToDelete = toDeleteList.stream()
+ .map(GdDataObjectionAttachmentEntity::getId)
+ .collect(Collectors.toList());
+ gdDataObjectionAttachmentService.deleteLogic(idsToDelete);
+ }
+
+ entityList.forEach(gdDataObjectionAttachmentEntity -> {
gdDataObjectionAttachmentEntity.setObjectionId(gdDataObjectionEntity.getId());
});
- return gdDataObjectionAttachmentService.saveOrUpdateBatch(gdDataObjectionAttachmentEntities);
+ return gdDataObjectionAttachmentService.saveOrUpdateBatch(entityList);
}
return true;
}
--
Gitblit v1.9.3