|
@@ -29,6 +29,7 @@ import com.jeeplus.modules.projectcontentinfo.entity.Projectcontentinfo;
|
|
|
import com.jeeplus.modules.projectcontentinfo.service.ProjectReportDataService;
|
|
|
import com.jeeplus.modules.projectrecord.entity.ProjectRecordTreeData;
|
|
|
import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
|
|
|
+import com.jeeplus.modules.projectreportnum.service.ProjectReportNumService;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectClientLinkmanDao;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectRecordsDao;
|
|
|
import com.jeeplus.modules.ruralprojectrecords.dao.RuralWorkProjectUserDao;
|
|
@@ -153,6 +154,8 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
|
|
|
private ProjectEngineeringService engineeringService;
|
|
|
@Autowired
|
|
|
private WorkContractInfoService workContractInfoService;
|
|
|
+ @Autowired
|
|
|
+ private ProjectReportNumService projectReportNumService;
|
|
|
|
|
|
/**
|
|
|
* 获取咨询项目类别
|
|
@@ -442,82 +445,83 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
|
|
|
this.saveAttachments(projectRecords);
|
|
|
}
|
|
|
//启动审批流程
|
|
|
- if (projectRecords.getProjectStatus()== ProjectStatusEnum.IN_APRL.getValue()&&(oldStatus==null|| ProjectStatusEnum.REJECTED.getValue()!=oldStatus)) {
|
|
|
+ /*if (projectRecords.getProjectStatus()== ProjectStatusEnum.IN_APRL.getValue()&&(oldStatus==null|| ProjectStatusEnum.REJECTED.getValue()!=oldStatus)) {
|
|
|
this.startAudit(projectRecords,projectRecords.getProcessInstanceId());
|
|
|
- //项目送审之后处理项目合同文件信息
|
|
|
- //查询咨询合同附件类型id
|
|
|
- ProjectTemplateInfo projectTemplateInfo = projectTemplateDao.getProjectTemplateInfoByName("咨询合同");
|
|
|
- //删除该项目咨询合同类型中老合同对应的附件信息
|
|
|
- WorkClientAttachment attchment = new WorkClientAttachment();
|
|
|
- attchment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
- attchment.setProjectId(projectRecords.getId());
|
|
|
- if(null != oldWorkContractInfo && null != oldWorkContractInfo.getWorkAttachments()){
|
|
|
- for (WorkClientAttachment info:oldWorkContractInfo.getWorkAttachments()) {
|
|
|
- attchment.setAttachmentName(info.getAttachmentName());
|
|
|
- workattachmentService.deleteByAttachIdAndProject(attchment);
|
|
|
- }
|
|
|
+ }*/
|
|
|
+ //项目送审之后处理项目合同文件信息
|
|
|
+ //查询咨询合同附件类型id
|
|
|
+ ProjectTemplateInfo projectTemplateInfo = projectTemplateDao.getProjectTemplateInfoByName("咨询合同");
|
|
|
+ //删除该项目咨询合同类型中老合同对应的附件信息
|
|
|
+ WorkClientAttachment attchment = new WorkClientAttachment();
|
|
|
+ attchment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
+ attchment.setProjectId(projectRecords.getId());
|
|
|
+ if(null != oldWorkContractInfo && null != oldWorkContractInfo.getWorkAttachments()){
|
|
|
+ for (WorkClientAttachment info:oldWorkContractInfo.getWorkAttachments()) {
|
|
|
+ attchment.setAttachmentName(info.getAttachmentName());
|
|
|
+ workattachmentService.deleteByAttachIdAndProject(attchment);
|
|
|
}
|
|
|
- //将新合同对应的附件信息添加到咨询合同中
|
|
|
- if(null != newWorkContractInfo && null != newWorkContractInfo.getWorkAttachments()){
|
|
|
- WorkClientAttachment workattachment = new WorkClientAttachment();
|
|
|
- for (WorkClientAttachment info:newWorkContractInfo.getWorkAttachments()) {
|
|
|
- workattachment.setType(info.getType());
|
|
|
- workattachment.setAttachmentName(info.getAttachmentName());
|
|
|
- workattachment.setUrl(info.getUrl());
|
|
|
- workattachment.setAttachmentUser(info.getAttachmentUser());
|
|
|
- workattachment.setAttachmentFlag(info.getAttachmentFlag());
|
|
|
- workattachment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
- workattachment.setProjectId(projectRecords.getId());
|
|
|
- switch (uploadMode){
|
|
|
- case "1":
|
|
|
- workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
- break;
|
|
|
- }
|
|
|
- workattachment.preInsert();
|
|
|
- workClientAttachmentDao.insert(workattachment);
|
|
|
+ }
|
|
|
+ //将新合同对应的附件信息添加到咨询合同中
|
|
|
+ if(null != newWorkContractInfo && null != newWorkContractInfo.getWorkAttachments()){
|
|
|
+ WorkClientAttachment workattachment = new WorkClientAttachment();
|
|
|
+ for (WorkClientAttachment info:newWorkContractInfo.getWorkAttachments()) {
|
|
|
+ workattachment.setType(info.getType());
|
|
|
+ workattachment.setAttachmentName(info.getAttachmentName());
|
|
|
+ workattachment.setUrl(info.getUrl());
|
|
|
+ workattachment.setAttachmentUser(info.getAttachmentUser());
|
|
|
+ workattachment.setAttachmentFlag(info.getAttachmentFlag());
|
|
|
+ workattachment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
+ workattachment.setProjectId(projectRecords.getId());
|
|
|
+ switch (uploadMode){
|
|
|
+ case "1":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
+ break;
|
|
|
+ case "2":
|
|
|
+ workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
+ break;
|
|
|
}
|
|
|
+ workattachment.preInsert();
|
|
|
+ workClientAttachmentDao.insert(workattachment);
|
|
|
}
|
|
|
- }else if(StringUtils.isNotBlank(projectRecords.getModifyFlag()) && "1".equals(projectRecords.getModifyFlag())){
|
|
|
- //项目送审之后处理项目合同文件信息
|
|
|
- //查询咨询合同附件类型id
|
|
|
- ProjectTemplateInfo projectTemplateInfo = projectTemplateDao.getProjectTemplateInfoByName("咨询合同");
|
|
|
- //删除该项目咨询合同类型中老合同对应的附件信息
|
|
|
- WorkClientAttachment attchment = new WorkClientAttachment();
|
|
|
- attchment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
- attchment.setProjectId(projectRecords.getId());
|
|
|
- if(null != oldWorkContractInfo && null != oldWorkContractInfo.getWorkAttachments()){
|
|
|
- for (WorkClientAttachment info:oldWorkContractInfo.getWorkAttachments()) {
|
|
|
- attchment.setAttachmentName(info.getAttachmentName());
|
|
|
- workattachmentService.deleteByAttachIdAndProject(attchment);
|
|
|
- }
|
|
|
+ }
|
|
|
+
|
|
|
+ //项目添加报告号
|
|
|
+ //查询该项目是否已经存在报告号,若存在则不进行添加
|
|
|
+ ProjectReportData reportData = projectReportDataDao.getProjectReportData(projectRecords.getId());
|
|
|
+ if(null == reportData){
|
|
|
+ //添加查询报告号模板的bizCode参数
|
|
|
+ ProjectReportData projectReportData = new ProjectReportData();
|
|
|
+ if("1".equals(projectRecords.getProjectType())){
|
|
|
+ projectReportData.setConditionType("10");
|
|
|
+ }else if("2".equals(projectRecords.getProjectType())){
|
|
|
+ projectReportData.setConditionType("1003");
|
|
|
}
|
|
|
- //将新合同对应的附件信息添加到咨询合同中
|
|
|
- if(null != newWorkContractInfo && null != newWorkContractInfo.getWorkAttachments()){
|
|
|
- WorkClientAttachment workattachment = new WorkClientAttachment();
|
|
|
- for (WorkClientAttachment info:newWorkContractInfo.getWorkAttachments()) {
|
|
|
- workattachment.setType(info.getType());
|
|
|
- workattachment.setAttachmentName(info.getAttachmentName());
|
|
|
- workattachment.setUrl(info.getUrl());
|
|
|
- workattachment.setAttachmentUser(info.getAttachmentUser());
|
|
|
- workattachment.setAttachmentFlag(info.getAttachmentFlag());
|
|
|
- workattachment.setAttachmentId(projectTemplateInfo.getId());
|
|
|
- workattachment.setProjectId(projectRecords.getId());
|
|
|
- switch (uploadMode){
|
|
|
- case "1":
|
|
|
- workattachment.setUrl(workattachment.getUrl().replace(bosUrl,""));
|
|
|
- break;
|
|
|
- case "2":
|
|
|
- workattachment.setUrl(workattachment.getUrl().replace(aliyunUrl,""));
|
|
|
- break;
|
|
|
- }
|
|
|
- workattachment.preInsert();
|
|
|
- workClientAttachmentDao.insert(workattachment);
|
|
|
- }
|
|
|
+ synchronized (SYN_BYTE) {
|
|
|
+ String reportNo = createReportNo(projectReportData.getConditionType());
|
|
|
+ projectReportData.setNumber(reportNo);
|
|
|
+ ProjectRecords project = new ProjectRecords();
|
|
|
+ project.setId(projectRecords.getId());
|
|
|
+ projectReportData.setProject(project);
|
|
|
+ projectReportData.setCompanyId(UserUtils.getSelectCompany().getId());
|
|
|
+ projectReportData.setOfficeId(UserUtils.getSelectOffice().getId());
|
|
|
+ projectReportData.setName(projectRecords.getProjectName());
|
|
|
+ projectReportData.preInsert();
|
|
|
+ projectReportData.setCreateDate(new Date());
|
|
|
+ projectReportDataDao.insert(projectReportData);
|
|
|
}
|
|
|
+ //添加项目工作内容表
|
|
|
+ Projectcontentinfo projectcontentinfo = new Projectcontentinfo();
|
|
|
+ projectcontentinfo.setProjectOnRural(projectRecords);
|
|
|
+ projectcontentinfo.setCompanyId(projectRecords.getCompany().getId());
|
|
|
+ projectcontentinfo.setOfficeId(projectRecords.getOffice().getId());
|
|
|
+ projectcontentinfo.setSort(30);
|
|
|
+ projectcontentinfo.setParentIds("0,");
|
|
|
+ projectcontentinfo.setParent(new Projectcontentinfo("0"));
|
|
|
+ projectcontentinfo.setName(projectRecords.getProjectId());
|
|
|
+ projectcontentinfo.preInsert();
|
|
|
+ projectcontentinfoDao.insertOnRural(projectcontentinfo);
|
|
|
}
|
|
|
+
|
|
|
logger.info("保存项目耗时:{}ms;启动流程耗时:{}ms",t4-t1,System.currentTimeMillis()-t4);
|
|
|
}
|
|
|
|
|
@@ -2129,4 +2133,11 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
|
|
|
public void updateProjectMaster(RuralProjectRecords ruralProjectRecords){
|
|
|
dao.updateProjectMaster(ruralProjectRecords);
|
|
|
}
|
|
|
+ /**
|
|
|
+ * 生成一个报告号
|
|
|
+ */
|
|
|
+ public String createReportNo(String bizCode){
|
|
|
+ String msg = projectReportNumService.saveNumber(bizCode);//保存
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
}
|