Browse Source

档案文件查找替换

cr 1 month ago
parent
commit
de6aff578d

+ 17 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/dto/FindAndReplaceDto1.java

@@ -0,0 +1,17 @@
+package org.springblade.business.dto;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springblade.archive.dto.FindAndReplaceDto;
+import org.springblade.business.entity.ArchiveFile;
+
+import java.util.List;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+public class FindAndReplaceDto1 {
+    private FindAndReplaceDto dto;
+    private List<ArchiveFile> list;
+}

+ 5 - 1
blade-service-api/blade-business-api/src/main/java/org/springblade/business/feign/ArchiveFileClient.java

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import org.springblade.archive.dto.FindAndReplaceDto;
 import org.springblade.archive.dto.SendsWebSocketArchiveDTO;
+import org.springblade.business.dto.FindAndReplaceDto1;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.vo.ArchiveFileVO;
 import org.springblade.common.constant.BusinessConstant;
@@ -170,5 +171,8 @@ public interface ArchiveFileClient {
     List<ArchiveFile> getArchiveFileByArchiveIds(@RequestParam String archiveIds);
 
     @PostMapping(API_PREFIX + "/findAndReplace")
-    boolean findAndReplace(@RequestBody List<ArchiveFile> archiveFiles, @RequestParam FindAndReplaceDto dto);
+    boolean findAndReplace(@RequestBody FindAndReplaceDto1 dto1);
+
+    @PostMapping(API_PREFIX + "/getAllArchiveFileByIds")
+    List<ArchiveFile> getAllArchiveFileByIds(@RequestBody List<String> strList);
 }

+ 4 - 2
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveFileController.java

@@ -15,6 +15,7 @@ import org.springblade.archive.entity.ArchivesAuto;
 import org.springblade.archive.service.IArchivesAutoService;
 import org.springblade.archive.utils.FileUtils;
 import org.springblade.archive.vo.ArchiveDataVo;
+import org.springblade.business.dto.FindAndReplaceDto1;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.feign.ArchiveFileClient;
 import org.springblade.business.feign.MetadataClassificationClient;
@@ -476,7 +477,8 @@ public class ArchiveFileController extends BladeController {
     @ApiOperationSupport(order = 12)
     @ApiOperation(value = "查找并替换", notes = "传入ids")
     public R findAndReplace(@RequestBody FindAndReplaceDto dto){
-        List<ArchiveFile> archiveFiles = archiveFileClient.getAllArchiveFileByArchiveIds(Func.toStrList(dto.getIds()));
-        return R.status(archiveFileClient.findAndReplace(archiveFiles,dto));
+        List<ArchiveFile> archiveFiles = archiveFileClient.getAllArchiveFileByIds(Func.toStrList(dto.getIds()));
+        FindAndReplaceDto1 dto1 = new FindAndReplaceDto1(dto, archiveFiles);
+        return R.status(archiveFileClient.findAndReplace(dto1));
     }
 }

+ 9 - 1
blade-service/blade-business/src/main/java/org/springblade/business/feignClient/ArchiveFileClientImpl.java

@@ -11,6 +11,7 @@ import org.apache.commons.lang.StringUtils;
 import org.springblade.archive.dto.FindAndReplaceDto;
 import org.springblade.archive.entity.ArchivesAuto;
 import org.springblade.archive.vo.ArchivesAutoVO;
+import org.springblade.business.dto.FindAndReplaceDto1;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.feign.ArchiveFileClient;
 import org.springblade.business.mapper.ArchiveFileMapper;
@@ -356,7 +357,9 @@ public class ArchiveFileClientImpl implements ArchiveFileClient {
     }
 
     @Override
-    public boolean findAndReplace(List<ArchiveFile> archiveFiles, FindAndReplaceDto dto) {
+    public boolean findAndReplace(FindAndReplaceDto1 dto1) {
+        List<ArchiveFile> archiveFiles = dto1.getList();
+        FindAndReplaceDto dto = dto1.getDto();
         List<ArchiveFile> updates = new ArrayList<>();
         for (ArchiveFile archiveFile : archiveFiles) {
             ArchiveFile auto = new ArchiveFile();
@@ -433,4 +436,9 @@ public class ArchiveFileClientImpl implements ArchiveFileClient {
         return true;
     }
 
+    @Override
+    public List<ArchiveFile> getAllArchiveFileByIds(List<String> strList) {
+        return fileMapper.getAllArchiveFileByIds(strList);
+    }
+
 }

+ 2 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.java

@@ -120,4 +120,6 @@ public interface ArchiveFileMapper extends BaseMapper<ArchiveFile> {
      * @return
      */
     Map<String, BigDecimal> getAllArchiveAutoByContractTypeSummary(@Param("projectId") Long projectId);
+
+    List<ArchiveFile> getAllArchiveFileByIds(@Param("strList") List<String> strList);
 }

+ 9 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.xml

@@ -554,4 +554,13 @@
       ) a
 
     </select>
+    <select id="getAllArchiveFileByIds" resultType="org.springblade.business.entity.ArchiveFile">
+        select * from u_archive_file where is_deleted = 0
+        <if test="strList != null and strList != ''">
+            and id in
+            <foreach collection="strList" item="id" open="(" separator="," close=")">
+                #{id}
+            </foreach>
+        </if>
+    </select>
 </mapper>