|
@@ -17,6 +17,8 @@
|
|
|
package org.springblade.archive.controller;
|
|
|
|
|
|
import cn.hutool.core.text.split.SplitIter;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import io.swagger.annotations.*;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import lombok.AllArgsConstructor;
|
|
@@ -29,6 +31,8 @@ import org.springblade.core.mp.support.Condition;
|
|
|
import org.springblade.core.mp.support.Query;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
+import org.springblade.manager.entity.ArchiveTreeContract;
|
|
|
+import org.springblade.manager.feign.ArchiveTreeContractClient;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
@@ -41,6 +45,7 @@ import org.springblade.core.boot.ctrl.BladeController;
|
|
|
import java.util.Arrays;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
* 控制器
|
|
@@ -57,6 +62,7 @@ public class ArchivesAutoController extends BladeController {
|
|
|
private final IArchivesAutoService archivesAutoService;
|
|
|
|
|
|
private final IArchiveAutoPdfService archiveAutoPdfService;
|
|
|
+ private final ArchiveTreeContractClient archiveTreeContractClient;
|
|
|
|
|
|
/**
|
|
|
* 详情
|
|
@@ -87,8 +93,18 @@ public class ArchivesAutoController extends BladeController {
|
|
|
@GetMapping("/page")
|
|
|
@ApiOperationSupport(order = 3)
|
|
|
@ApiOperation(value = "分页", notes = "传入archivesAuto")
|
|
|
- public R<IPage<ArchivesAutoVO>> page(ArchivesAutoVO archivesAuto, Query query) {
|
|
|
- IPage<ArchivesAutoVO> pages = archivesAutoService.selectArchivesAutoPage(Condition.getPage(query), archivesAuto);
|
|
|
+ public R<IPage<ArchivesAutoVO>> page(ArchivesAutoVO queryVo, Query query) {
|
|
|
+// IPage<ArchivesAutoVO> pages = archivesAutoService.selectArchivesAutoPage(Condition.getPage(query), archivesAuto);
|
|
|
+ if(queryVo.getNodeIds() == null || 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);
|
|
|
+ }
|
|
|
+ IPage<ArchivesAutoVO> pages = archivesAutoService.selectArchivesAutoFilePage(queryVo);
|
|
|
return R.data(pages);
|
|
|
}
|
|
|
|