Browse Source

档案统计-档案年限占比

qianxb 2 years ago
parent
commit
24fec032f4

+ 11 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchivesAutoController.java

@@ -131,6 +131,17 @@ public class ArchivesAutoController extends BladeController {
 		return R.data(map);
 	}
 
+	/**
+	 * 档案统计-档案年限占比
+	 */
+	@GetMapping("/allArchiveAgeByContractType")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "档案统计-档案年限占比")
+	public R allArchiveAgeByContractType(Long projectId) {
+		List<Map<String, String>> list = archivesAutoService.getAllArchiveAgeByContractType(projectId);
+		return R.data(list);
+	}
+
 	/**
 	 * 新增 
 	 */

+ 8 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.archive.mapper;
 
+import org.apache.ibatis.annotations.MapKey;
 import org.apache.ibatis.annotations.Param;
 import org.springblade.archive.dto.ArchivesAutoDTO;
 import org.springblade.archive.entity.ArchivesAuto;
@@ -23,6 +24,7 @@ import org.springblade.archive.vo.ArchivesAutoVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import java.util.List;
+import java.util.Map;
 
 /**
  *  Mapper 接口
@@ -67,4 +69,10 @@ public interface ArchivesAutoMapper extends BaseMapper<ArchivesAuto> {
 	 */
 	List<ArchivesAutoVO> getAllArchiveByContractType(@Param("projectId") Long projectId,@Param("type") String type);
 
+	/**
+	 * 获取所有案卷年限,并分组
+	 */
+	@MapKey("storage_time")
+	List<Map<String,String>> getAllArchiveAgeByContractType(@Param("projectId") Long projectId);
+
 }

+ 6 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml

@@ -183,6 +183,12 @@
         FROM u_archives_auto uaa left join m_archive_tree_contract matc on uaa.node_id =matc.id
         WHERE uaa.project_id =#{projectId} and uaa.is_deleted = #{type}
     </select>
+    <select id="getAllArchiveAgeByContractType" resultType="java.util.Map">
+        SELECT CASE storage_time WHEN '10' THEN '10年' WHEN '30' THEN '30年' ELSE '永久' END as name,COUNT(storage_time) as value
+        FROM u_archives_auto uaa
+        WHERE project_id =#{projectId} and is_deleted =0
+        GROUP BY storage_time
+    </select>
 
 
 </mapper>

+ 3 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/service/IArchivesAutoService.java

@@ -21,6 +21,7 @@ import org.springblade.archive.vo.ArchivesAutoVO;
 import org.springblade.core.mp.base.BaseService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -47,4 +48,6 @@ public interface IArchivesAutoService extends BaseService<ArchivesAuto> {
 	boolean updateArchivesAutoFileByNodeId(String ids, String nodeId,String nodeSort);
 
 	Map<String,String> getAllArchiveByContractType(Long projectId,String type);
+
+	List<Map<String, String>> getAllArchiveAgeByContractType(Long projectId);
 }

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

@@ -199,6 +199,12 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		return map;
 	}
 
+	@Override
+	public List<Map<String, String>> getAllArchiveAgeByContractType(Long projectId) {
+		List<Map<String,String>> list = baseMapper.getAllArchiveAgeByContractType(projectId);
+		return list;
+	}
+
 
 	public void archiveAutoMethod(Long projectId){
 		//步骤一:把项目下未锁定的案卷拆卷。