Browse Source

B级紧急项目电子归档驳回(可修改复核信息)

[user3] 3 years ago
parent
commit
618803dfac

+ 60 - 0
src/main/java/com/jeeplus/modules/projectAccessory/service/ProjectTemplateService.java

@@ -355,6 +355,66 @@ public class ProjectTemplateService extends TreeService<ProjectTemplateDao, Proj
 
         return projectTemplateList;
     }
+    public List<ProjectTemplateInfo> getProjectTemplateUrgentList(ProjectAccessoryRelationInfo projectTemplateInfo){
+        //查询所有被选择为必填项展示列,并查询附件信息
+        List<ProjectTemplateInfo> projectTemplateList = dao.getProjectTemplateList(projectTemplateInfo);
+        for (ProjectTemplateInfo info: projectTemplateList) {
+            WorkClientAttachment attchment = new WorkClientAttachment();
+            attchment.setProjectId(projectTemplateInfo.getId());
+            attchment.setAttachmentId(info.getId());
+            List<WorkClientAttachment> attachments = workattachmentService.getList(attchment);
+            CollectAccessoryInfo cAInfo = new CollectAccessoryInfo();
+            cAInfo.setOfficeId(UserUtils.getUser().getOffice().getId());
+            cAInfo.setCompanyId(UserUtils.getUser().getCompany().getId());
+            cAInfo.setCreateBy(UserUtils.getUser());
+            //遍历附件信息,判定改附件信息是否被收藏
+            for (WorkClientAttachment info1: attachments) {
+                //url截取
+                String aliyunUrl = Global.getAliDownloadUrl();
+                if(info1.getUrl().indexOf(aliyunUrl)!=-1){
+                    cAInfo.setUrl(info1.getUrl().replace(aliyunUrl,""));
+                }
+                CollectAccessoryInfo collectAccessoryInfo = projectAccessoryDao.getCollectAccessoryInfo1(cAInfo);
+                if(null != collectAccessoryInfo){
+                    info1.setCollectFlag("1");
+                }else{
+                    info1.setCollectFlag("0");
+                }
+            }
+            //数据处理(如果为阿里云文件服务器,则对查看的路径进行处理)
+            workattachmentService.clientAttachmentManageOnUrl(attachments);
+            info.setWorkAttachments(attachments);
+            //判断是否为必填项,若为必填项则添加必填判定字段
+            if(info.getRequiredStage() == 1 || info.getRequiredStage() == 2){
+                info.setMustFlag(1);
+                //判定必填项的下的是否有附件信息
+                if (attachments.size()!=0){
+                    info.setFileFlag(1);
+                }
+            } else {
+                info.setMustFlag(0);
+                info.setFileFlag(0);
+            }
+        }
+        //查询没有被选择必填项的数据并查询是否已经上传附件,若有则添加到展示列中
+        List<ProjectTemplateInfo> otherProjectTemplateList = dao.projectAccessoryListByParentId(projectTemplateInfo);
+        for (ProjectTemplateInfo otherInfo: otherProjectTemplateList) {
+            WorkClientAttachment attchment = new WorkClientAttachment();
+            attchment.setProjectId(projectTemplateInfo.getId());
+            attchment.setAttachmentId(otherInfo.getId());
+            List<WorkClientAttachment> attachments = workattachmentService.getList(attchment);
+            //数据处理(如果为阿里云文件服务器,则对查看的路径进行处理)
+            workattachmentService.clientAttachmentManageOnUrl(attachments);
+            if(attachments.size()>0){
+                otherInfo.setWorkAttachments(attachments);
+                otherInfo.setFileFlag(0);
+                otherInfo.setMustFlag(0);
+                projectTemplateList.add(otherInfo);
+            }
+        }
+
+        return projectTemplateList;
+    }
 
     /**
      * 归档审核页面各附件保存信息查看展示数据(归档中将报告的必填项也展示出来)

+ 12 - 0
src/main/java/com/jeeplus/modules/projectcontentinfo/entity/ProjectReportRecord.java

@@ -8,6 +8,7 @@ import com.google.common.collect.Lists;
 import com.jeeplus.common.persistence.ActEntity;
 import com.jeeplus.common.utils.excel.annotation.ExcelField;
 import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralReportConsultant;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
 import org.activiti.engine.history.HistoricProcessInstance;
@@ -64,6 +65,9 @@ public class ProjectReportRecord extends ActEntity<ProjectReportRecord> {
 	private ProjectReportData projectReportData;		// 报告信息(仅作为展示用)
 	private List<String> chargeCriterionList;	//合同收费标准
 
+	private List<RuralReportConsultant> reportedConsultantList= Lists.newArrayList();;//咨询员列表
+
+
 	private Integer type;//(1:ProjectReportRecord  2:RuralProjectReportRecord)
 
 	public Integer getType() {
@@ -431,4 +435,12 @@ public class ProjectReportRecord extends ActEntity<ProjectReportRecord> {
 	public void setCatalogueAttachmentId(String catalogueAttachmentId) {
 		this.catalogueAttachmentId = catalogueAttachmentId;
 	}
+
+	public List<RuralReportConsultant> getReportedConsultantList() {
+		return reportedConsultantList;
+	}
+
+	public void setReportedConsultantList(List<RuralReportConsultant> reportedConsultantList) {
+		this.reportedConsultantList = reportedConsultantList;
+	}
 }

+ 47 - 0
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportRecordService.java

@@ -17,12 +17,14 @@ import com.jeeplus.modules.act.service.ActTaskService;
 import com.jeeplus.modules.projectAccessory.dao.ProjectTemplateDao;
 import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
 import com.jeeplus.modules.projectcontentinfo.dao.ProjectReportRecordDao;
+import com.jeeplus.modules.projectcontentinfo.dao.ProjectcontentinfoDao;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectMaterialDefectRecord;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportRecord;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectMessageDao;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectcontentinfo;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralReportConsultant;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectMessageService;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
@@ -107,6 +109,8 @@ public class ProjectReportRecordService extends CrudService<ProjectReportRecordD
 	@Autowired
 	private ProjectTemplateDao projectTemplateDao;
 	@Autowired
+	private ProjectcontentinfoDao projectcontentinfoDao;
+	@Autowired
 	ProjectReportRecordDao projectReportRecordDao;
 	public ProjectReportRecord get(String id) {
 		ProjectReportRecord projectReportRecord= super.get(id);
@@ -937,6 +941,16 @@ public class ProjectReportRecordService extends CrudService<ProjectReportRecordD
 			saveWorkattachments(reportRecord);
 			flag = "yes";
 		}
+		if (flag.equals("yes")){
+			//只有B级紧急项目可以修改质量复核信息
+			RuralProjectRecords ruralProjectRecords=ruralProjectRecordsService.get(reportRecord.getReport().getProject().getId());
+			if ("1".equals(ruralProjectRecords.getSubmitMoney()) && "1".equals(ruralProjectRecords.getEmergencyProject()) ){
+				uploadBReport(reportRecord);
+			}
+		}
+
+
+
 		projectReportRecord.setReferenceRemarks(reportRecord.getReferenceRemarks());
 		projectReportRecord.setFileNum(reportRecord.getFileNum());
 		projectReportRecord.setFileNumTow(reportRecord.getFileNumTow());
@@ -1335,6 +1349,39 @@ public class ProjectReportRecordService extends CrudService<ProjectReportRecordD
 		}
 		return "保存审核意见成功!";
 	}
+	//修改质量符合报告信息
+	public void uploadBReport(ProjectReportRecord reportRecord){
+		//获取项目id
+		String projectId=reportRecord.getReport().getProject().getId();
+		//删除上报咨询员信息
+		projectcontentinfoDao.deleteConsultant(projectId);
+		//保存咨询员信息
+		//判定是否是第一个得参数
+		Integer consultantFlag = 0;
+		for (int i = 0; i<reportRecord.getReportedConsultantList().size();i++){
+			RuralReportConsultant info = reportRecord.getReportedConsultantList().get(i);
+			if (info.getZixunyuan() == null){
+				continue;
+			}
+			consultantFlag ++;
+			if(1 == consultantFlag){
+				//第一个有效数据为负责人信息,同步到项目表信息中
+				//将项目表中的项目负责人信息修改
+				RuralProjectRecords projectRecords = new RuralProjectRecords();
+				projectRecords.setId(projectId);
+				projectRecords.setProjectMasterId(info.getZixunyuan());
+				ruralProjectRecordsService.updateProjectMaster(projectRecords);
+			}
+			//添加项目id
+			info.setProjectId(projectId);
+			info.preInsert();
+			projectcontentinfoDao.insertConsultant(info);
+		}
+		//修改质量复核
+		ProjectReportData projectReportData = reportRecord.getReport();
+		projectReportDataService.save(projectReportData);
+	}
+
 
 	/**
 	 * 将备考表下载到本地

+ 3 - 0
src/main/java/com/jeeplus/modules/projectcontentinfo/web/ProjectReportRecordController.java

@@ -559,6 +559,9 @@ public class ProjectReportRecordController extends BaseController {
 				if (StringUtils.isNotBlank(projectReportRecord.getHome()) && projectReportRecord.getHome().equals("recordAll")){
 					return "redirect:" + Global.getAdminPath() + "/ruralProject/ruralProjectMessageAll/?repage";
 				}
+				if (StringUtils.isNotBlank(projectReportRecord.getView()) && projectReportRecord.getView().equals("Reurgent")){
+					return "redirect:" + Global.getAdminPath() + "/ruralProject/ruralProjectMessage/?repage";
+				}
 				if("1".equals(ruralProjectRecords.getProjectType())){
 					return "redirect:" + Global.getAdminPath() + "/ruralProject/ruralProjectMessage/?repage";
 				}else if("2".equals(ruralProjectRecords.getProjectType())){

+ 0 - 9
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageNewService.java

@@ -3332,15 +3332,6 @@ public class RuralProjectMessageNewService extends CrudService<RuralProjectMessa
         //生成质量复核标准送审数据
         RuralProjectRecords records = ruralProjectRecordsService.getQueryProjectUsers(projectRecord.getId());
         String reviewId="";
-        if ("2".equals(records.getSubmitMoney())){
-            reviewId="1";
-        }else{
-            if (records.getEmergencyProject().equals("0")){
-                reviewId="2";
-            }else{
-                reviewId="3";
-            }
-        }
         Boolean status = false;
         if (com.jeeplus.common.utils.StringUtils.isBlank(projectReportData.getId())){
             status = true;

+ 203 - 1
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewController.java

@@ -1178,7 +1178,6 @@ public class RuralCostProjectMessageNewController extends BaseController {
             projectReportRecord.setCreateDate(new Date());
             projectReportRecord.setCreateBy(UserUtils.getUser());
         }
-
         //获取项目信息
         RuralProjectRecords ruralProjectRecords = projectRecordsService.get(projectReportRecord.getReport().getProject().getId());
         ProjectAccessoryRelationInfo relateInfo = new ProjectAccessoryRelationInfo();
@@ -1267,6 +1266,7 @@ public class RuralCostProjectMessageNewController extends BaseController {
         projectRecords.setWorkContractInfo(projectContractInfo);
         projectReportRecord.getReport().setProject(projectRecords);
         projectReportRecord.setView("modify");
+
         model.addAttribute("projectReportRecord", projectReportRecord);
         model.addAttribute("workClientInfoName", projectReportRecord.getClientName());
         model.addAttribute("project", projectReportRecord.getReport().getProject());
@@ -1298,6 +1298,208 @@ public class RuralCostProjectMessageNewController extends BaseController {
     }
 
     /**
+     * B级紧急项目驳回修改
+     * 查看,增加,编辑报告归档表单页面
+     */
+    @RequestMapping(value = "formRecordUrgentModify")
+    public String formRecordUrgentModify(ProjectReportRecord projectReportRecord, Model model) {
+        //查询“配农网”工程类型id
+        String engineeringId = engineeringService.getEngineeringId("202");
+        projectReportRecord = projectReportRecordService.get(projectReportRecord.getId());
+        if(StringUtils.isBlank(projectReportRecord.getId())){
+            projectReportRecord.setCreateDate(new Date());
+            projectReportRecord.setCreateBy(UserUtils.getUser());
+        }
+        //根据项目id查询报告信息
+        ProjectReportData projectReportData = projectReportDataService.getReportDataByProjectId(projectReportRecord.getReport().getProject().getId());
+        projectReportRecord.setReport(projectReportData);
+        //获取项目信息
+        RuralProjectRecords ruralProjectRecords = projectRecordsService.get(projectReportRecord.getReport().getProject().getId());
+        List<RuralReportConsultant> consultants=reConsultants(ruralProjectRecords,projectReportData);
+        ProjectAccessoryRelationInfo relateInfo = new ProjectAccessoryRelationInfo();
+        //添加项目类型
+        relateInfo.setAttachmentProjectType(ruralProjectRecords.getProjectType());
+        relateInfo.setAttachmentProjectSort(ruralProjectRecords.getAttachmentProjectSort());
+        //判断是否为打包项目,打包项目无需查看项目送审金额是否为500w以上判定
+        String money=ruralProjectRecords.getSubmitMoney();
+        Integer approvalMoney=null;
+        if(StringUtils.isBlank(money)){
+            approvalMoney=1;
+        }else{
+            approvalMoney=Integer.parseInt(money);
+        }
+        switch (approvalMoney){
+            case 0:
+                //金额为0
+                relateInfo.setAttachmentProjectApprovalMoney(null);
+                break;
+            case 1:
+                //500w以下金额状态
+                relateInfo.setAttachmentProjectApprovalMoney("1");
+                break;
+            case 2:
+                //500w以上金额状态
+                relateInfo.setAttachmentProjectApprovalMoney("2");
+                break;
+        }
+
+        //添加报告类型
+        relateInfo.setRequiredStage(1);
+        relateInfo.setId(ruralProjectRecords.getId());
+        //查询报告文件、依据性文件、其他文件必填列表以及数据
+        List<MainDictDetail> mainDictDetails = projectTemplateService.attachmentTemplateList();
+        for (MainDictDetail mainDict : mainDictDetails) {
+            relateInfo.setAttachType(mainDict.getValue());
+            switch (mainDict.getValue()) {
+                case "11":
+                    List<ProjectTemplateInfo> fileAttachmentList = projectTemplateService.getProjectTemplateUrgentList(relateInfo);
+                    for (ProjectTemplateInfo info: fileAttachmentList) {
+                        info.setAttachTypes(info.getAttachTypes().toLowerCase());
+                        if(engineeringId.equals(ruralProjectRecords.getEngineeringType())){
+                            if("审定单".equals(info.getAttachName()) || "咨询报告书正文(含附件)  附件一:工程预算或结算汇总表 附件二:编制或审核说明 附件三:工程预算或结算审定单 附件四:工程预算或结算书".equals(info.getAttachName()) ){
+                                if(!info.getAttachTypes().contains("zip")){
+                                    info.setAttachTypes(info.getAttachTypes()+",zip");
+                                }
+                                if(!info.getAttachTypes().contains("rar")){
+                                    info.setAttachTypes(info.getAttachTypes()+",rar");
+                                }
+                            }
+                        }
+                    }
+                    projectReportRecord.setFileAttachmentList(fileAttachmentList);
+                    break;
+                case "12":
+                    List<ProjectTemplateInfo> projectTemplateList = projectTemplateService.getProjectTemplateUrgentList(relateInfo);
+                    for (ProjectTemplateInfo info: projectTemplateList) {
+                        info.setAttachTypes(info.getAttachTypes().toLowerCase());
+                        if(engineeringId.equals(ruralProjectRecords.getEngineeringType())){
+                            if("投标文件、中标通知书、工程承包合同(协议书记专用条款部分)、补充协议".equals(info.getAttachName()) || "送审工程预算、结算书".equals(info.getAttachName()) ){
+                                if(!info.getAttachTypes().contains("zip")){
+                                    info.setAttachTypes(info.getAttachTypes()+",zip");
+                                }
+                                if(!info.getAttachTypes().contains("rar")){
+                                    info.setAttachTypes(info.getAttachTypes()+",rar");
+                                }
+                            }
+                        }
+                    }
+                    projectReportRecord.setFileGistdataList(projectTemplateList);
+                    break;
+                case "13":
+                    projectReportRecord.setFileOtherList(projectTemplateService.getProjectTemplateUrgentList(relateInfo));
+                    break;
+            }
+
+        }
+        ProjectRecords projectRecords = new ProjectRecords();
+        try {
+            MyBeanUtils.copyBeanNotNull2Bean(ruralProjectRecords, projectRecords);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        //获取合同信息
+        WorkContractInfo projectContractInfo = ruralProjectMessageService.getProjectContractInfo(ruralProjectRecords.getWorkContractInfo().getId());
+        projectRecords.setWorkContractInfo(projectContractInfo);
+        projectReportRecord.getReport().setProject(projectRecords);
+        projectReportRecord.setView("modify");
+        model.addAttribute("info", consultants);
+        model.addAttribute("projectReportData", projectReportData);
+        model.addAttribute("projectReportRecord", projectReportRecord);
+        model.addAttribute("workClientInfoName", projectReportRecord.getClientName());
+        model.addAttribute("project", projectReportRecord.getReport().getProject());
+
+        if(StringUtils.isNotBlank(projectReportRecord.getProcessInstanceId())){
+            ProcessInstance processInstance = actTaskService.getProcIns(projectReportRecord.getProcessInstanceId());
+            if (processInstance!=null) {
+                Task taskInfok = actTaskService.getCurrentTaskInfo(processInstance);
+                Act act = new Act();
+                act.setTaskId(taskInfok.getId());
+                act.setTaskName(taskInfok.getName());
+                act.setProcDefId(taskInfok.getProcessDefinitionId());
+                act.setTaskDefKey(taskInfok.getTaskDefinitionKey());
+                act.setProcInsId(taskInfok.getProcessInstanceId());
+                act.setTask(taskInfok);
+                projectReportRecord.setAct(act);
+            }
+        }
+        return "modules/ruralprojectrecords/record/cost/projectReportRecordUrgentModify";
+    }
+
+    public List<RuralReportConsultant> reConsultants(RuralProjectRecords records,ProjectReportData projectReportData){
+        //查询总审人员信息
+        List<User> auditUserList = userService.getAuditUserListByType(records.getSubmitMoney());
+        records.setBzshbUserList(auditUserList);
+        if(null == projectReportData.getConsultant()){
+            projectReportData.setConsultant(UserUtils.getUser());
+        }
+        if(null == projectReportData.getPrincipal()){
+            projectReportData.setPrincipal(UserUtils.getUser());
+        }
+        List<RuralReportConsultant> consultants = Lists.newArrayList();
+        //将自己添加到咨询员数据中
+        //根据用户查询技能信息
+        RuralReportConsultant currentConsultant = new RuralReportConsultant();
+        List<WorkStaffCertificate> userCertificateList = Lists.newArrayList();
+        if(StringUtils.isNotBlank(records.getProjectMasterId())){
+            userCertificateList = ruralProjectMessageService.getCertificateByUser(records.getProjectMasterId());
+        }
+        //获取专业类型
+        List<MainDictDetail> certificateMajor = DictUtils.getMainDictList("certificate_major");
+        for (WorkStaffCertificate certificateInfo: userCertificateList) {
+            currentConsultant.setZhucezigezhID(certificateInfo.getNum());
+            currentConsultant.setZhucezigezhKey(certificateInfo.getName());
+            for (MainDictDetail type : certificateMajor) {
+                if(certificateInfo.getMajor().equals(type.getValue())){
+                    currentConsultant.setMajor(type.getLabel());
+                }
+            }
+            User currentUser=userService.get(records.getProjectMasterId());
+            currentConsultant.setZixunyuanName(currentUser.getName());
+            currentConsultant.setZixunyuan(currentUser.getId());
+            currentConsultant.setRole("负责人");
+            consultants.add(currentConsultant);
+        }
+        //总审
+        RuralReportConsultant zongshen = new RuralReportConsultant();
+        zongshen.setZixunyuan(projectReportData.getBzshbUserId());
+        //根据项目id查找报告咨询员信息
+        List<RuralReportConsultant> consultantList = ruralProjectMessageService.getConsultantsList(records.getId());
+        //使用迭代器去除重复信息
+        //排除 重新申请|撤销
+        Iterator<RuralReportConsultant> it = consultantList.iterator();
+        while(it.hasNext()){
+            RuralReportConsultant consultant = it.next();
+            //判定重新复核中总审人员信息去除展示
+            if(consultant.getZixunyuan().equals(zongshen.getZixunyuan())){
+                it.remove();
+            }else if(consultant.getZixunyuan().equals(currentConsultant.getZixunyuan())){
+                try {
+                    MyBeanUtils.copyBeanNotNull2Bean(consultant, currentConsultant);
+                } catch (Exception e) {
+                    e.printStackTrace();
+                }
+                it.remove();
+            }else{
+                //根据用户查询技能信息
+                List<WorkStaffCertificate> certificateList = ruralProjectMessageService.getCertificateByUser(consultant.getZixunyuan());
+                for (WorkStaffCertificate certificateInfo: certificateList) {
+                    if(certificateInfo.getName().equals(consultant.getZhucezigezhKey())){
+                        consultant.setZhucezigezhID(certificateInfo.getNum());
+                    }
+                    for (MainDictDetail type : certificateMajor) {
+                        if(certificateInfo.getMajor().equals(type.getValue())){
+                            consultant.setMajor(type.getLabel());
+                        }
+                    }
+                }
+                User user=userService.get(consultant.getZixunyuan());
+                consultant.setZixunyuanName(user.getName());
+            }
+        }
+        consultants.addAll(consultantList);
+        return consultants;
+    }
+    /**
      * 项目上报
      * @param projectRecords
      * @return

+ 85 - 1
src/main/java/com/jeeplus/modules/workprojectnotify/web/WorkProjectNotifyController.java

@@ -3653,6 +3653,7 @@ public class WorkProjectNotifyController extends BaseController {
 					}
 					ProjectReportData projectReportData = projectReportDataService.getOnRural(projectReportRecord.getReport().getId());
 					projectReportRecord.setProjectReportData(projectReportData);
+					projectReportRecord.setReport(projectReportData);
 					Projectcontentinfo projectcontentinfo = projectcontentinfoService.getByInfoId(projectReportData.getId());
 					projectcontentinfo.setProjectReportData(projectReportData);
 					//获取项目信息
@@ -3798,7 +3799,13 @@ public class WorkProjectNotifyController extends BaseController {
 						}
 						return "modules/ruralprojectrecords/record/projectReportRecordAudit";
 					} else if (workProjectNotify.getRemarks().contains("重新申请") && !"1".equals(workProjectNotify.getStatus())) {
-						return "modules/ruralprojectrecords/record/projectReportRecordModifyApply";
+						if("1".equals(ruralProjectRecords.getEmergencyProject())){
+							List<RuralReportConsultant> consultants=reConsultants(ruralProjectRecords,projectReportData);
+							model.addAttribute("info", consultants);
+							return "modules/ruralprojectrecords/record/projectReportRecordUrgentModifyApply";
+						}else{
+							return "modules/ruralprojectrecords/record/projectReportRecordModifyApply";
+						}
 					} else {
 						projectReportRecord.setFileAttachmentList(ruralProjectRecordsService.disposeDataAttachment(projectReportRecord.getFileAttachmentList()));
 						projectReportRecord.setFileGistdataList(ruralProjectRecordsService.disposeDataAttachment(projectReportRecord.getFileGistdataList()));
@@ -5552,4 +5559,81 @@ public class WorkProjectNotifyController extends BaseController {
 		return projectRecords;
 	}
 
+	//获取项目组成员
+	public List<RuralReportConsultant> reConsultants(RuralProjectRecords records,ProjectReportData projectReportData){
+		//查询总审人员信息
+		List<User> auditUserList = userService.getAuditUserListByType(records.getSubmitMoney());
+		records.setBzshbUserList(auditUserList);
+		if(null == projectReportData.getConsultant()){
+			projectReportData.setConsultant(UserUtils.getUser());
+		}
+		if(null == projectReportData.getPrincipal()){
+			projectReportData.setPrincipal(UserUtils.getUser());
+		}
+		List<RuralReportConsultant> consultants = Lists.newArrayList();
+		//将自己添加到咨询员数据中
+		//根据用户查询技能信息
+		RuralReportConsultant currentConsultant = new RuralReportConsultant();
+		List<WorkStaffCertificate> userCertificateList = Lists.newArrayList();
+		if(StringUtils.isNotBlank(records.getProjectMasterId())){
+			userCertificateList = ruralProjectMessageService.getCertificateByUser(records.getProjectMasterId());
+		}
+		//获取专业类型
+		List<MainDictDetail> certificateMajor = DictUtils.getMainDictList("certificate_major");
+		for (WorkStaffCertificate certificateInfo: userCertificateList) {
+			currentConsultant.setZhucezigezhID(certificateInfo.getNum());
+			currentConsultant.setZhucezigezhKey(certificateInfo.getName());
+			for (MainDictDetail type : certificateMajor) {
+				if(certificateInfo.getMajor().equals(type.getValue())){
+					currentConsultant.setMajor(type.getLabel());
+				}
+			}
+			User currentUser=userService.get(records.getProjectMasterId());
+			currentConsultant.setZixunyuanName(currentUser.getName());
+			currentConsultant.setZixunyuan(currentUser.getId());
+			currentConsultant.setRole("负责人");
+			consultants.add(currentConsultant);
+		}
+		//总审
+		RuralReportConsultant zongshen = new RuralReportConsultant();
+		zongshen.setZixunyuan(projectReportData.getBzshbUserId());
+		//根据项目id查找报告咨询员信息
+		List<RuralReportConsultant> consultantList = ruralProjectMessageService.getConsultantsList(records.getId());
+		//使用迭代器去除重复信息
+		//排除 重新申请|撤销
+		Iterator<RuralReportConsultant> it = consultantList.iterator();
+		while(it.hasNext()){
+			RuralReportConsultant consultant = it.next();
+			//判定重新复核中总审人员信息去除展示
+			if(consultant.getZixunyuan().equals(zongshen.getZixunyuan())){
+				it.remove();
+			}else if(consultant.getZixunyuan().equals(currentConsultant.getZixunyuan())){
+				try {
+					MyBeanUtils.copyBeanNotNull2Bean(consultant, currentConsultant);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+				it.remove();
+			}else{
+				//根据用户查询技能信息
+				List<WorkStaffCertificate> certificateList = ruralProjectMessageService.getCertificateByUser(consultant.getZixunyuan());
+				for (WorkStaffCertificate certificateInfo: certificateList) {
+					if(certificateInfo.getName().equals(consultant.getZhucezigezhKey())){
+						consultant.setZhucezigezhID(certificateInfo.getNum());
+					}
+					for (MainDictDetail type : certificateMajor) {
+						if(certificateInfo.getMajor().equals(type.getValue())){
+							consultant.setMajor(type.getLabel());
+						}
+					}
+				}
+				User user=userService.get(consultant.getZixunyuan());
+				consultant.setZixunyuanName(user.getName());
+			}
+		}
+		consultants.addAll(consultantList);
+		return consultants;
+	}
+
+
 }

+ 1 - 1
src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectMessageList.jsp

@@ -819,7 +819,7 @@
 										if(d.projectReportRecordStatus == 4){
 											//驳回操作
 											// if(d.newRecordNotifyFlag == 1){
-												xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralCostProjectMessageNew/formRecordModify?id=" + d.prrId + "&view=modify','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";
+											xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralCostProjectMessageNew/formRecordUrgentModify?id=" + d.prrId + "&view=urgent ','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";
 											<%--}else{--%>
 											<%--	xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralCostProjectMessage/formRecordModify?id=" + d.prrId + "&view=modify','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";--%>
 											<%--}--%>

File diff suppressed because it is too large
+ 1552 - 0
src/main/webapp/webpage/modules/ruralprojectrecords/record/cost/projectReportRecordUrgentModify.jsp


+ 8 - 2
src/main/webapp/webpage/modules/ruralprojectrecords/record/projectReportRecordAudit.jsp

@@ -8,6 +8,7 @@
 	<link rel='stylesheet' type="text/css" href="${ctxStatic}/layui/css/layui.css"/>
 	<link href="${ctxStatic}/layer-v2.3/layui/tableTree/treetable.css" rel="stylesheet" />
 	<link rel='stylesheet' type="text/css" href="${ctxStatic}/common/css/style.css"/>
+	<script src="${ctxStatic}/common/html/js/script.js"></script>
 	<%@include file="/webpage/include/treetable.jsp" %>
 	<script type="text/javascript">
         var validateForm;
@@ -30,7 +31,12 @@
 						top.layer.msg('两次案卷号填写不同,请重新输入!', {icon: 0});
 						return;
 					}*/
-                    $('#flag').val('yes');
+					var flags=judgment();
+					if (!flags){
+						return flags;
+					}else{
+						$('#flag').val('yes');
+					}
                 }else{
                     $('#flag').val('no');
                 }
@@ -1411,7 +1417,7 @@
 					<div class="layui-item layui-col-sm11 with-textarea">
 						<label class="layui-form-label "><span class="require-item">*</span>备考表:</label>
 						<div class="layui-input-block">
-							<form:textarea placeholder="请输入备考表内容" path="referenceRemarks" htmlEscape="false" rows="7"  maxlength="500"  class="form-control required"/>
+							<form:textarea placeholder="请输入备考表内容" path="referenceRemarks" htmlEscape="false" rows="7"  maxlength="500"  class="form-control judgment"/>
 						</div>
 					</div>
 				</div>

+ 2 - 1
src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/ruralProjectMessageList.jsp

@@ -817,7 +817,8 @@
 										if(d.projectReportRecordStatus == 4){
 											//驳回操作
 											// if(d.newRecordNotifyFlag == 1){
-												xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralProjectMessageNew/formRecordModify?id=" + d.prrId + "&view=modify','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";
+											xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralCostProjectMessageNew/formRecordUrgentModify?id=" + d.prrId + "&view=Reurgent ','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";
+											<%--xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralProjectMessageNew/formRecordModify?id=" + d.prrId + "&view=modify','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";--%>
 											<%--}else{--%>
 											<%--	xml+="<a href=\"#\" onclick=\"openDialogre('调整归档信息', '${ctx}/ruralProject/ruralProjectMessage/formRecordModify?id=" + d.prrId + "&view=modify','95%', '95%','','送审,关闭')\" class=\"layui-btn layui-btn-xs  layui-bg-green\" > 线上重新归档</a>";--%>
 											<%--}--%>