Преглед изворни кода

档案统计-原生数字化文件数量

qianxb пре 2 година
родитељ
комит
be8970565b

+ 3 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/feign/ArchiveFileClient.java

@@ -67,4 +67,7 @@ public interface ArchiveFileClient {
 
     @PostMapping(API_PREFIX + "/getListByProjectId")
     List<ArchiveFile> getListByProjectId(@RequestBody Long projectId);
+
+    @PostMapping(API_PREFIX + "/getAllArchiveFileByContractType")
+    List<Map<String,Object>> getAllArchiveFileByContractType(@RequestBody Long projectId);
 }

+ 5 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/vo/ArchiveFileVO.java

@@ -80,4 +80,9 @@ public class ArchiveFileVO extends ArchiveFile {
 
 	private String sheetSourceValue;
 
+	/**
+	 * 案卷合同类型,C施工、S监理、空业主
+	 */
+	private String contractType;
+
 }

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

@@ -265,4 +265,15 @@ public class ArchiveFileController extends BladeController {
         }
 
     }
+
+    /**
+     * 档案统计-原生数字化文件数量
+     */
+    @GetMapping("/allArchiveFileByContractType")
+    @ApiOperationSupport(order = 3)
+    @ApiOperation(value = "档案统计-原生数字化文件数量")
+    public R allArchiveFileByContractType(Long projectId) {
+        List<Map<String, Object>> mapList = archiveFileClient.getAllArchiveFileByContractType(projectId);
+        return R.data(mapList);
+    }
 }

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

@@ -116,7 +116,7 @@ public class ArchivesAutoController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "档案统计-已组案卷")
 	public R allArchiveByContractType(Long projectId) {
-		Map<String, String> map = archivesAutoService.getAllArchiveByContractType(projectId,"0");
+		Map<String, Integer> map = archivesAutoService.getAllArchiveByContractType(projectId,"0");
 		return R.data(map);
 	}
 
@@ -127,7 +127,7 @@ public class ArchivesAutoController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "档案统计-已销毁案卷")
 	public R allDeletedArchiveByContractType(Long projectId) {
-		Map<String, String> map = archivesAutoService.getAllArchiveByContractType(projectId,"1");
+		Map<String, Integer> map = archivesAutoService.getAllArchiveByContractType(projectId,"1");
 		return R.data(map);
 	}
 

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

@@ -47,7 +47,7 @@ public interface IArchivesAutoService extends BaseService<ArchivesAuto> {
 
 	boolean updateArchivesAutoFileByNodeId(String ids, String nodeId,String nodeSort);
 
-	Map<String,String> getAllArchiveByContractType(Long projectId,String type);
+	Map<String,Integer> getAllArchiveByContractType(Long projectId,String type);
 
 	List<Map<String, String>> getAllArchiveAgeByContractType(Long projectId);
 }

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

@@ -158,7 +158,7 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 	}
 
 	@Override
-	public Map<String, String> getAllArchiveByContractType(Long projectId,String typ) {
+	public Map<String, Integer> getAllArchiveByContractType(Long projectId,String typ) {
 		List<ArchivesAutoVO> list = baseMapper.getAllArchiveByContractType(projectId,typ);
 		List<ContractInfo> infos = contractClient.queryContractListByIds(Arrays.asList(projectId));
 		int key1=0,key2=0,key3=0;
@@ -192,10 +192,10 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 				System.out.println(type);
 			}
 		}
-		Map<String,String> map = new HashMap<>();
-		map.put("key1",key1+"");
-		map.put("key2",key2+"");
-		map.put("key3",key3+"");
+		Map<String,Integer> map = new HashMap<>();
+		map.put("key1",key1);
+		map.put("key2",key2);
+		map.put("key3",key3);
 		return map;
 	}
 

+ 61 - 2
blade-service/blade-business/src/main/java/org/springblade/business/feignClient/ArchiveFileClientImpl.java

@@ -6,15 +6,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import lombok.AllArgsConstructor;
+import org.apache.commons.lang.StringUtils;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.feign.ArchiveFileClient;
 import org.springblade.business.mapper.ArchiveFileMapper;
 import org.springblade.business.service.IArchiveFileService;
 import org.springblade.business.vo.ArchiveFileVO;
+import org.springblade.manager.entity.ContractInfo;
+import org.springblade.manager.feign.ContractClient;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 
 @RestController
@@ -25,6 +27,9 @@ public class ArchiveFileClientImpl implements ArchiveFileClient {
 
     private final ArchiveFileMapper fileMapper;
 
+    private ContractClient contractClient;
+
+
 
     @Override
     public void saveArchiveFile(ArchiveFileVO vo) {
@@ -102,4 +107,58 @@ public class ArchiveFileClientImpl implements ArchiveFileClient {
     public List<ArchiveFile> getListByProjectId(Long projectId) {
         return fileMapper.getListByProjectId(projectId);
     }
+
+    @Override
+    public List<Map<String,Object>> getAllArchiveFileByContractType(Long projectId) {
+        List<ArchiveFileVO> list = fileMapper.getAllArchiveFileByContractType(projectId);
+        List<ContractInfo> infos = contractClient.queryContractListByIds(Arrays.asList(projectId));
+        int key1=0,key2=0,key3=0;
+        //判断案卷属于1施工,2监理,还是3业主
+        for (ArchiveFileVO l : list) {
+            String type = l.getContractType();
+            if (StringUtils.isBlank(type)){
+                //业主
+                key3++;
+            }else if ("S".equals(type)){
+                //监理
+                key2++;
+            }else if ("C".equals(type)){
+                //施工
+                key1++;
+            }else if (type.length() > 10){
+                for (ContractInfo info : infos) {
+                    if (type.equals(info.getId()+"")){
+                        Integer t = info.getContractType();
+                        if (t == 1){
+                            key1++;
+                        }else if(t==2){
+                            key2++;
+                        }else {
+                            key3++;
+                        }
+                        break;
+                    }
+                }
+            }else {
+                System.out.println(type);
+            }
+        }
+        List<Map<String,Object>> mapList = new ArrayList<>();
+        Map<String,Object> map = new HashMap<>();
+        map.put("title","施工");
+        map.put("key1",0);
+        map.put("key2",key1);
+        Map<String,Object> map2 = new HashMap<>();
+        map2.put("title","监理");
+        map2.put("key1",0);
+        map2.put("key2",key2);
+        Map<String,Object> map3 = new HashMap<>();
+        map3.put("title","业主");
+        map3.put("key1",0);
+        map3.put("key2",key3);
+        mapList.add(map);
+        mapList.add(map2);
+        mapList.add(map3);
+        return mapList;
+    }
 }

+ 2 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.java

@@ -68,4 +68,6 @@ public interface ArchiveFileMapper extends BaseMapper<ArchiveFile> {
 	List<ArchiveFile> getArchiveFileByFileIds(@Param("ids") List<Long> ids);
 
 	public List<ArchiveFile> getListByProjectId(@Param("projectId") Long projectId);
+
+	List<ArchiveFileVO> getAllArchiveFileByContractType(@Param("projectId")Long projectId);
 }

+ 5 - 0
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ArchiveFileMapper.xml

@@ -276,4 +276,9 @@
         from u_archive_file
         where project_id=#{projectId};
     </select>
+    <select id="getAllArchiveFileByContractType" resultType="org.springblade.business.vo.ArchiveFileVO">
+        SELECT uaf.*,matc.tree_code as 'contractType'
+        FROM u_archive_file uaf inner join m_archive_tree_contract matc on uaf.node_id =matc.id
+        WHERE  uaf.project_id = #{projectId};
+    </select>
 </mapper>