소스 검색

档案统计-归档树

qianxb 2 년 전
부모
커밋
803414c61b

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

@@ -289,8 +289,8 @@ public class ArchiveFileController extends BladeController {
         //统计案卷文件大小
         Long fileSize = archiveFileClient.getAllArchiveFileSize(projectId);
         //统计表单数据大小
-        Long tableSize = wbsTreeContractClient.getAllTableFileSize(projectId);
-        String size = org.springblade.common.utils.FileUtils.formatSize(fileSize + tableSize);
+//        Long tableSize = wbsTreeContractClient.getAllTableFileSize(projectId);
+        String size = org.springblade.common.utils.FileUtils.formatSize(fileSize );
         return R.data(size);
     }
 }

+ 1 - 1
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -75,7 +75,7 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 
 	@Override
 	public IPage<ArchivesAutoVO> pageByArchivesAuto(ArchivesAutoVO vo) {
-		IPage<ArchivesAutoVO> page = new Page<>();
+		IPage<ArchivesAutoVO> page = new Page<>(vo.getCurrent(),vo.getSize());
 		if (StringUtils.isNotBlank(vo.getStorageTime())) {
 			vo.setStorageTimes(Arrays.asList(vo.getStorageTime().split(",")));
 		}

+ 12 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ArchiveTreeContractController.java

@@ -64,7 +64,7 @@ import static org.springblade.core.cache.constant.CacheConstant.SYS_CACHE;
 @RestController
 @AllArgsConstructor
 @RequestMapping("/archiveTreeContract")
-@Api(value = "", tags = "接口")
+@Api(value = "档案归档树", tags = "档案归档树接口")
 public class ArchiveTreeContractController extends BladeController {
 
 	private final IArchiveTreeContractService archiveTreeContractService;
@@ -295,6 +295,17 @@ public class ArchiveTreeContractController extends BladeController {
 		return R.data(archiveTreeContractService.getSameGradeNode(id));
 	}
 
+	/**
+	 * 档案统计-归档树及其档案总数
+	 */
+	@GetMapping("/getArchiveTreeAndArchiveCount")
+	@ApiOperationSupport(order = 12)
+	@ApiOperation(value = "获取归档树及其档案总数", notes = "传入节点id")
+	public R getArchiveTreeAndArchiveCount(Long projectId,Long nodeId) {
+		List<Map<String,Object>> list = archiveTreeContractService.getArchiveTreeAndArchiveCount(projectId,nodeId);
+		return R.data(list);
+	}
+
 	/**
 	 * 提交归档树手动排序
 	 */

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

@@ -17,6 +17,7 @@
 package org.springblade.manager.mapper;
 
 
+import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.manager.entity.ArchiveTreeContract;
 import org.springblade.manager.vo.ArchiveTreeContractVO;
@@ -26,6 +27,7 @@ import org.springblade.manager.vo.ArchiveTreeContractVO2;
 import org.springblade.manager.vo.ArchiveTreeVO;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  *  Mapper 接口
@@ -72,4 +74,7 @@ public interface ArchiveTreeContractMapper extends BaseMapper<ArchiveTreeContrac
 	List<ArchiveTreeContract> getListByProjectId(@Param("projectId")Long projectId);
 
 	List<ArchiveTreeContract> getSelectNodeByGroupId(@Param("projectId") Long projectId,@Param("archiveAutoGroupId") Long archiveAutoGroupId);
+
+	@MapKey("id")
+	List<Map<String, Object>> getArchiveTreeAndArchiveCount(@Param("projectId") Long projectId,@Param("nodeId") Long nodeId);
 }

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

@@ -351,5 +351,22 @@
           AND archive_auto_group_id =#{archiveAutoGroupId}
         order by tree_sort asc
     </select>
+    <select id="getArchiveTreeAndArchiveCount" resultType="java.util.Map">
+        SELECT
+            matc1.id as id,
+            matc1.node_name as name,
+            (SELECT COUNT(*)
+             FROM u_archives_auto uaa1
+             WHERE  uaa1.is_deleted =0 and (uaa1.node_id in
+                 (select id from m_archive_tree_contract matc2 WHERE matc2.project_id = #{projectId} and matc2.ancestors like CONCAT('%',matc1.id,'%')) or uaa1.node_id = matc1.id)
+            ) as 'auto',
+            (SELECT COUNT(*)
+             FROM u_archives_auto uaa1
+             WHERE  uaa1.is_deleted =1 and (uaa1.node_id in
+                (select id from m_archive_tree_contract matc2 WHERE matc2.project_id = #{projectId} and matc2.ancestors like CONCAT('%',matc1.id,'%')) or uaa1.node_id = matc1.id)
+            ) as 'deleted',
+            if((SELECT COUNT(*) from m_archive_tree_contract matc WHERE parent_id = matc1.id)=0,false,true) as hasChildren
+        FROM m_archive_tree_contract matc1 WHERE matc1.project_id =#{projectId} and matc1.parent_id = #{nodeId}
+    </select>
 
 </mapper>

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

@@ -92,4 +92,6 @@ public interface IArchiveTreeContractService extends BaseService<ArchiveTreeCont
 
 	void  fillDefaultArchiveAutoInfo(List<ArchiveTreeContract> archiveTreeContracts);
 
+	List<Map<String,Object>> getArchiveTreeAndArchiveCount(Long projectId,Long nodeId);
+
 }

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

@@ -849,10 +849,10 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 		}
 	}
 
-
-
-
-
+	@Override
+	public List<Map<String, Object>> getArchiveTreeAndArchiveCount(Long projectId,Long nodeId) {
+		return baseMapper.getArchiveTreeAndArchiveCount(projectId,nodeId);
+	}
 
 
 }