Pārlūkot izejas kodu

档案系统-档案树查询文件数量区分,指定页面的接口才查询

LHB 3 nedēļas atpakaļ
vecāks
revīzija
333ecefebb

+ 5 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ArchiveTreeContractController.java

@@ -272,11 +272,12 @@ public class ArchiveTreeContractController extends BladeController {
     @ApiImplicitParams(value = {
             @ApiImplicitParam(name = "parentId", value = "父级id", required = true),
             @ApiImplicitParam(name = "projectId", value = "项目id", required = true),
-            @ApiImplicitParam(name = "contractId", value = "合同段id", required = true)
+            @ApiImplicitParam(name = "contractId", value = "合同段id", required = true),
+            @ApiImplicitParam(name = "type", value = "类型:1-查询文件数量", required = true)
     })
-    public R<List<ArchiveTreeContractVO2>> lazyTree(Long parentId, Long projectId, Long contractId) {
+    public R<List<ArchiveTreeContractVO2>> lazyTree(Long parentId, Long projectId, Long contractId, Integer type) {
 
-        List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), parentId, projectId, contractId);
+        List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), parentId, projectId, contractId, type);
         if (tree != null && tree.size() > 0) {
             List<ArchiveTreeContractVO2> newTrees = new ArrayList<>();
             if (parentId == 0 && tree.size() > 1) {
@@ -327,7 +328,7 @@ public class ArchiveTreeContractController extends BladeController {
             return R.fail(200, "初始化归档树失败");
         }
 
-        List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), 0L, projectId, null);
+        List<ArchiveTreeContractVO2> tree = archiveTreeContractService.lazyTree2(AuthUtil.getTenantId(), 0L, projectId, null,null);
         if (tree != null && tree.size() > 0) {
             return R.data(tree);
         }

+ 6 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ArchiveTreeContractMapper.java

@@ -63,10 +63,15 @@ public interface ArchiveTreeContractMapper extends BaseMapper<ArchiveTreeContrac
     List<ArchiveTreeContractVO2> lazyTree2(@Param("tenantId") String tenantId, @Param("parentId") Long parentId, @Param("projectId") Long projectId
             , @Param("code") String code, @Param("contractId") String contractId);
 
+    /**
+     * 归档树不带文件数量
+     * */
+    List<ArchiveTreeContractVO2> lazyTree3(@Param("tenantId") String tenantId, @Param("parentId") Long parentId, @Param("projectId") Long projectId
+            , @Param("code") String code, @Param("contractId") String contractId);
+
     List<ArchiveTreeContractVO2> tree2(@Param("tenantId") String tenantId, @Param("disPlayTree") Integer disPlayTree, @Param("nodeType") Integer nodeType, @Param("projectId") Long projectId
             , @Param("code") String code, @Param("contractId") String contractId);
 
-    List<ArchiveTreeContractVO2> lazyTree3(@Param("tenantId") String tenantId, @Param("parentId") Long parentId, @Param("projectId") Long projectId, @Param("treeCode") Long treeCode);
 
     List<ArchiveTreeContractVO2> tree3(@Param("tenantId") String tenantId, @Param("disPlayTree") Integer disPlayTree, @Param("nodeType") Integer nodeType, @Param("projectId") Long projectId, @Param("treeCode") Long treeCode);
 

+ 48 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/ArchiveTreeContractMapper.xml

@@ -287,6 +287,54 @@
         </if>
         ORDER BY d.tree_sort, d.sort
     </select>
+    <!-- 归档数不带文件数量 -->
+    <select id="lazyTree3" resultMap="ArchiveTreeContractVO2ResultMap">
+        SELECT
+        d.id,
+        d.parent_id,
+        IFNULL(if(length(trim(d.full_name))>0,d.full_name,d.node_name),d.node_name)AS title,
+        d.id AS "value",
+        d.id AS "key",
+        d.major_data_type AS "majorDataType",
+        d.display_hierarchy AS "displayHierarchy",
+        d.is_storage_node AS "isStorageNode",
+        d.post_type AS postType,
+        d.node_type AS nodeType,
+        d.association_type,
+        d.project_type,
+        d.storage_type,
+        d.ext_type,
+        d.ext_id,
+        d.exp_data_type,
+        d.archive_auto_type,
+        d.archive_auto_node_id,
+        d.archive_auto_group_select,
+        d.archive_auto_group_id,
+        d.tree_sort,
+        d.file_number_prefix,
+        d.storage_time,
+        d.rollor,
+        d.reviewer,
+        d.specification,
+        d.archive_name_suffix,
+        d.contract_id,
+        d.project_id,
+        #{code} as code,
+        (SELECT CASE WHEN count(1) > 0 THEN 1 ELSE 0 END FROM m_archive_tree_contract WHERE parent_id = d.id and is_deleted = 0 and project_id = #{projectId}) AS "has_children"
+        FROM
+        m_archive_tree_contract d
+        WHERE
+        d.parent_id = #{parentId} AND d.is_deleted = 0 and project_id = #{projectId}
+        <if test="tenantId!=null and tenantId!=''">
+            AND d.tenant_id = #{tenantId}
+        </if>
+        <if test="code!=null and code!=''">
+            AND (d.tree_code = #{code} or d.tree_code = #{contractId} or d.parent_id = 0)
+        </if>
+        ORDER BY d.tree_sort, d.sort
+    </select>
+
+
     <!-- 文件收集 归档树的文件数量 -->
     <select id="selectFileNumber" resultType="java.lang.Integer">
         SELECT  count(1)  FROM m_archive_tree_contract a

+ 1 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/IArchiveTreeContractService.java

@@ -70,7 +70,7 @@ public interface IArchiveTreeContractService extends BaseService<ArchiveTreeCont
 
     List<ArchiveTreeContractVO> tree(String tenantI, Integer disPlayTree, Integer nodeType, Long projectId);
 
-    List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId);
+    List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId,Integer type);
 
     List<ArchiveTreeContractVO2> tree2(String tenantI, Integer disPlayTree, Integer nodeType, Long projectId, Long contractId);
 

+ 5 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeContractServiceImpl.java

@@ -191,11 +191,14 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 	}
 
 	@Override
-	public List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId) {
+	public List<ArchiveTreeContractVO2> lazyTree2(String tenantId, Long parentId, Long projectId, Long contractId,Integer type) {
 		if (AuthUtil.isAdministrator()) {
 			tenantId = StringPool.EMPTY;
 		}
-		return ForestNodeMergerEx.merge(baseMapper.lazyTree2(tenantId, parentId,projectId,getAuthCode(contractId),getAuthContractId(contractId)));
+		if(type != null && type == 1){
+			return ForestNodeMergerEx.merge(baseMapper.lazyTree2(tenantId, parentId,projectId,getAuthCode(contractId),getAuthContractId(contractId)));
+		}
+		return ForestNodeMergerEx.merge(baseMapper.lazyTree3(tenantId, parentId,projectId,getAuthCode(contractId),getAuthContractId(contractId)));
 	}
 
 	@Override