浏览代码

档案相关修改

qianxb 1 年之前
父节点
当前提交
f4aa0d3a3d

+ 2 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchiveExpertConclusionMapper.java

@@ -24,4 +24,6 @@ public interface ArchiveExpertConclusionMapper extends BaseMapper<ArchiveExpertC
     void updateAllArchiveByProject(@Param("projectId") Long projectId);
 
     void updateAllNodeByProject(@Param("projectId") Long projectId);
+
+    List<ArchiveExpertScore> getAllScore(@Param("projectId") Long projectId,@Param("id") Long id);
 }

+ 7 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchiveExpertConclusionMapper.xml

@@ -18,4 +18,11 @@
             #{id}
         </foreach>
     </select>
+
+    <select id="getAllScore" resultType="org.springblade.archive.entity.ArchiveExpertScore">
+        SELECT id,score_item ,unit_type,IFNULL(integrality,0) as integrality,IFNULL(integrality_deduction,0) as integrality_deduction,
+               IFNULL(normative,0) as normative ,IFNULL(normative_deduction,0) as normative_deduction
+        FROM u_archive_expert_score
+        WHERE project_id = #{projectId} and conclusion_id = #{id} and is_deleted = 0
+    </select>
 </mapper>

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

@@ -1134,6 +1134,11 @@
         <foreach collection="ids" item="id" open="(" separator="," close=")">
             #{id}
         </foreach>
+        order by FIELD(uaa.id,
+        <foreach collection="ids" item="id" separator="," >
+            #{id}
+        </foreach>
+        )
     </select>
     <select id="getRoutingInspection" resultType="org.springblade.archive.vo.ArchiveWarningVO">
         select uaf.file_name ,uaf.file_url,0 as sourceType,uaf.node_id,

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

@@ -296,9 +296,11 @@ public class ArchiveExpertConclusionServiceImpl extends BaseServiceImpl<ArchiveE
 
     private String buildPdf(ArchiveExpertConclusion conclusion,List<User> users) throws Exception {
         //获取评分基础数据
-        List<ArchiveExpertScore> list1 = scoreService.list(new LambdaQueryWrapper<ArchiveExpertScore>()
-                .eq(ArchiveExpertScore::getProjectId, conclusion.getProjectId())
-                .eq(ArchiveExpertScore::getConclusionId, conclusion.getId()));
+//        List<ArchiveExpertScore> list1 = scoreService.list(new LambdaQueryWrapper<ArchiveExpertScore>()
+//                .eq(ArchiveExpertScore::getProjectId, conclusion.getProjectId())
+//                .eq(ArchiveExpertScore::getConclusionId, conclusion.getId()));
+        //手动获取评分数据,为null补零
+        List<ArchiveExpertScore> list1 = baseMapper.getAllScore(conclusion.getProjectId(),conclusion.getId());
         Map<Integer, List<ArchiveExpertScore>> map = list1.stream().collect(Collectors.groupingBy(ArchiveExpertScore::getUnitType));
         //获取专家组长
         User us = null;

+ 36 - 38
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchiveExpertScoreServiceImpl.java

@@ -46,46 +46,44 @@ public class ArchiveExpertScoreServiceImpl extends BaseServiceImpl<ArchiveExpert
     public void saveBaseScoreInfo(Long projectId,Long conclusionId) {
         List<ArchiveExpertScore> list = new ArrayList<>();
         //业主
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"施工准备文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"工地试验室资质证书、延期文件、仪器标定证书",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"会议纪要、往来文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"桥隧工程风险评估报告",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"质评资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"进度进化控制文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"计量支付文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"工程变更令",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"总结",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"照片",10,0,10,0));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"立项审批",10,null,10,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"设计审批文件",7,null,7,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"招投标文件",7,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"工程准备文件",5,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"施工文件",4,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"交、竣工文件",8,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"资金管理文件",5,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,1,"照片",4,null,null,null));
         //监理
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"监理机构、制度",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"会议纪要、往来文件、监理费用、支付报表、监理日志、总结",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"工地试验室资质证书、延期文件、仪器标定证书",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"试验资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"质评资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"安全资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"监理指令及回复、旁站记录、巡视记录",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"照片",10,0,10,0));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"监理机构、制度",3,null,10,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"会议纪要、往来文件、监理费用、支付报表、监理日志、总结",10,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"工地试验室资质证书、延期文件、仪器标定证书",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"试验资料",6,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"质检资料",6,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"质评资料",6,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"安全资料",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"监理指令及回复、旁站记录、巡视记录",9,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,2,"照片",4,null,null,null));
         //施工
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"设计变更及竣工图",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"施工准备文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"试验资料(含工地试验室资质证书、仪器标定证书等)",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"路基工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"路面工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"隧道工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"绿化工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"交通与安全工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"机电工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"房建工程质检资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"质评资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"进度进化控制文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"安全生产、文明施工资料",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"施工日志、大事记",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"计量支付文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"会议纪要、往来文件",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"照片",10,0,10,0));
-        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"总结",10,0,10,0));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"设计变更及竣工图",9,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"施工准备文件",5,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"试验资料(含工地试验室资质证书、仪器标定证书等)",9,null,10,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"质检资料",10,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"路基工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"路面工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"隧道工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"绿化工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"交通与安全工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"机电工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"房建工程质检资料",null,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"质评资料",5,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"进度进化控制文件",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"安全生产、文明施工资料",2,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"施工日志、大事记",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"计量支付文件",5,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"会议纪要、往来文件",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"照片",3,null,null,null));
+        list.add(new ArchiveExpertScore(projectId,conclusionId,3,"总结",3,null,null,null));
         this.saveBatch(list);
     }
 

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

@@ -3120,6 +3120,11 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 	@Override
 	@Transactional
 	public void updateInspectStatus(Long archiveId,Long projectId,Long conclusionId) {
+		try {
+			Thread.sleep(100);
+		} catch (InterruptedException e) {
+			e.printStackTrace();
+		}
 		//查看当前档案是否存在有意见的数据,存在则什么都不修改,不存在则修改已抽检,合格
 		long count2 = inspectionService.count(new LambdaQueryWrapper<ExpertInspection>()
 				.eq(ExpertInspection::getIsPass, 0)
@@ -3181,6 +3186,19 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 		//专家基本信息
 		Long userId = AuthUtil.getUserId();
 		String userName = AuthUtil.getNickName();
+		//判断是否存在id,存在则代表是记录里面直接修改
+		if (inspection.getId() != null && inspection.getId() != -1){
+			//获取当前意见
+			ExpertInspection inspect = inspectionService.getById(inspection.getId());
+			if (inspect == null){
+				throw new ServiceException("未获取到当前意见");
+			}
+			//判断意见专家和当前用户是否为同一人
+			if (!userId.equals(inspect.getExpertId())){
+				userId = inspect.getExpertId();
+				userName = inspect.getExpertName();
+			}
+		}
 		//获取档案信息,如果状态未未查阅则修改
 		ArchivesAuto archive = this.getById(inspection.getArchiveId());
 		if (archive == null || archive.getNodeId() == null){
@@ -3251,6 +3269,7 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 					.eq(ExpertInspection::getConclusionId, inspection.getConclusionId()));
 			//如果不存在数据,然后保存
 			if (one == null) {
+				inspection.setId(null);
 				inspectionService.save(inspection);
 			} else {
 				//如果存在数据,则判断是否存在意见,然后修改

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

@@ -1447,7 +1447,7 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 		String userId = AuthUtil.getUserId()+"";
 		String userName = AuthUtil.getNickName();
 		//取出所有选择的节点,只获取专家名称和专家id字段
-		List<Long> longs = Func.toLongList(ids);
+		List<Long> longs = Func.toLongList(ids).stream().distinct().collect(Collectors.toList());
 		List<ArchiveTreeContract> list = baseMapper.getSelectNodes(longs);
 		//循环判断是否已经存在专家,存在则追加
 		list.stream().forEach(l->{
@@ -1456,11 +1456,13 @@ public class ArchiveTreeContractServiceImpl extends BaseServiceImpl<ArchiveTreeC
 				l.setExpertId(userId);
 				l.setExpertName(userName);
 			}else {
-				//不为空
-				String expertId = l.getExpertId();
-				l.setExpertId(expertId+","+userId);
-				String expertName = l.getExpertName();
-				l.setExpertName(expertName+"/"+userName);
+				//不为空,并且不包含当前专家
+				if (!l.getExpertId().contains(userId)) {
+					String expertId = l.getExpertId();
+					l.setExpertId(expertId + "," + userId);
+					String expertName = l.getExpertName();
+					l.setExpertName(expertName + "/" + userName);
+				}
 			}
 		});
 		//保存所有节点