|
@@ -2,6 +2,7 @@ package org.springblade.archive.controller;
|
|
|
|
|
|
import com.alibaba.fastjson.JSONArray;
|
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
@@ -16,11 +17,15 @@ import org.springblade.core.boot.ctrl.BladeController;
|
|
|
|
|
|
import org.springblade.core.oss.model.BladeFile;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.manager.entity.ArchiveTree;
|
|
|
+import org.springblade.manager.entity.ArchiveTreeContract;
|
|
|
+import org.springblade.manager.feign.ArchiveTreeContractClient;
|
|
|
import org.springblade.resource.feign.IOSSClient;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
|
|
|
|
import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
/**
|
|
@@ -37,6 +42,7 @@ public class ArchiveFileController extends BladeController {
|
|
|
|
|
|
private final ArchiveFileClient archiveFileClient;
|
|
|
private final IOSSClient iossClient;
|
|
|
+ private final ArchiveTreeContractClient archiveTreeContractClient;
|
|
|
/**
|
|
|
* 上传文件
|
|
|
*
|
|
@@ -63,14 +69,38 @@ public class ArchiveFileController extends BladeController {
|
|
|
@ApiOperationSupport(order = 3)
|
|
|
@ApiOperation(value = "批量新增")
|
|
|
public R<Boolean> batchSave(@RequestBody ArchiveFileVO vo){
|
|
|
- List<ArchiveFileVO> saveList = vo.getList();
|
|
|
- if(saveList != null && saveList.size() > 0){
|
|
|
- for(ArchiveFileVO saveVo : saveList){
|
|
|
- saveVo.setStatus(new Integer("0").equals(saveVo.getIsApproval()) ? 2 : 0);
|
|
|
- saveVo.setIsCertification(new Integer("0").equals(saveVo.getIsNeedCertification()) ? 1 : 0);
|
|
|
+ try {
|
|
|
+ List<ArchiveFileVO> saveList = vo.getList();
|
|
|
+ if(saveList != null && saveList.size() > 0){
|
|
|
+ for(ArchiveFileVO saveVo : saveList){
|
|
|
+ saveVo.setStatus(new Integer("0").equals(saveVo.getIsApproval()) ? 2 : 0);
|
|
|
+ saveVo.setIsCertification(new Integer("0").equals(saveVo.getIsNeedCertification()) ? 1 : 0);
|
|
|
+ }
|
|
|
}
|
|
|
+ this.archiveFileClient.saveArchiveFile(vo);
|
|
|
+ } catch (NumberFormatException e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ return R.data(false);
|
|
|
}
|
|
|
- archiveFileClient.saveArchiveFile(vo);
|
|
|
return R.data(true);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 分页
|
|
|
+ */
|
|
|
+ @PostMapping("/page")
|
|
|
+ @ApiOperationSupport(order = 4)
|
|
|
+ @ApiOperation(value = "分页")
|
|
|
+ public R<Object> page(ArchiveFileVO queryVo){
|
|
|
+ if(queryVo.getNodeIds().isEmpty() || queryVo.getNodeIds().equals("")){
|
|
|
+ return R.data(null);
|
|
|
+ }
|
|
|
+ List<ArchiveTreeContract> archiveTreeContracts = this.archiveTreeContractClient.queryAllChildByAncestors(queryVo.getNodeIds());
|
|
|
+ if(archiveTreeContracts != null && archiveTreeContracts.size() > 0){
|
|
|
+ List<String> ids = JSONArray.parseArray(JSONObject.toJSONString(archiveTreeContracts.stream().map(ArchiveTreeContract::getId).distinct().collect(Collectors.toList())), String.class);
|
|
|
+ ids.add(queryVo.getNodeIds());
|
|
|
+ queryVo.setNodeIdArray(ids);
|
|
|
+ }
|
|
|
+
|
|
|
+ return R.data(this.archiveFileClient.selectArchiveFilePage(queryVo));
|
|
|
+ }
|
|
|
}
|