|
@@ -1,6 +1,8 @@
|
|
|
package org.springblade.business.controller;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
@@ -25,10 +27,7 @@ import org.springblade.business.entity.RecycleBin;
|
|
|
import org.springblade.business.service.IRecycleBinService;
|
|
|
import org.springblade.core.boot.ctrl.BladeController;
|
|
|
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.List;
|
|
|
+import java.util.*;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
@@ -60,7 +59,8 @@ public class RecycleBinController extends BladeController {
|
|
|
public R<Boolean> regain(@RequestBody RecycleBinVO vo){
|
|
|
if(vo.getRegainIds() != null && vo.getRegainIds().size() > 0){
|
|
|
//获取数据
|
|
|
- List<RecycleBin> recycleBinList = this.recycleBinService.list(Wrappers.<RecycleBin>lambdaQuery().in(RecycleBin::getId, vo.getRegainIds()));
|
|
|
+ List<Long> longs = vo.getRegainIds().stream().map(i -> i.getId()).collect(Collectors.toList());
|
|
|
+ List<RecycleBin> recycleBinList = this.recycleBinService.list(Wrappers.<RecycleBin>lambdaQuery().in(RecycleBin::getId, longs));
|
|
|
//恢复数据成功后删除回收站对应记录
|
|
|
List<String> recycleBinIds = new ArrayList<>();
|
|
|
//划分数据类型
|
|
@@ -90,9 +90,17 @@ public class RecycleBinController extends BladeController {
|
|
|
if(fileList.size() > 0){
|
|
|
//文件数据包括工程文件及影像资料,这里采用最简单粗暴的方法进行恢复
|
|
|
//恢复工程文件数据
|
|
|
- regainFile = this.archiveFileService.update(Wrappers.<ArchiveFile>lambdaUpdate().set(ArchiveFile::getIsDeleted, 0).in(ArchiveFile::getId, fileList));
|
|
|
+ //regainFile = this.archiveFileService.update(Wrappers.<ArchiveFile>lambdaUpdate().set(ArchiveFile::getIsDeleted, 0).in(ArchiveFile::getId, fileList));
|
|
|
+ List<ArchiveFile> archiveFiles = this.archiveFileService.getDeleteDataByIds(fileList);
|
|
|
+ if (archiveFiles != null && archiveFiles.size() >0) {
|
|
|
+ regainFile = this.archiveFileService.recoveryByIds(fileList);
|
|
|
+ }
|
|
|
//恢复影像资料数据
|
|
|
- regainFile = this.imageClassificationFileService.update(Wrappers.<ImageClassificationFile>lambdaUpdate().set(ImageClassificationFile::getIsDeleted, 0).in(ImageClassificationFile::getId, fileList));
|
|
|
+ List<ImageClassificationFile> list = this.imageClassificationFileService.getDeleteDataByIds(fileList);
|
|
|
+ if (list != null && list.size() >0) {
|
|
|
+ //regainFile = this.imageClassificationFileService.update(Wrappers.<ImageClassificationFile>lambdaUpdate().set(ImageClassificationFile::getIsDeleted, 0).in(ImageClassificationFile::getId, fileList));
|
|
|
+ regainFile = this.imageClassificationFileService.recoveryByIds(fileList);
|
|
|
+ }
|
|
|
}
|
|
|
}catch (Exception e){
|
|
|
e.printStackTrace();
|