|
@@ -1093,28 +1093,36 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
|
|
|
//保存工作报告相关数据
|
|
|
ProjectReportData projectReportData = projectcontentinfo.getProjectReportData();
|
|
|
if(StringUtils.isNotBlank(projectReportData.getId())){
|
|
|
- projectReportData = projectReportDataDao.get(projectReportData.getId());
|
|
|
- }
|
|
|
- projectReportData.setName(projectcontentinfo.getProjectOnRural().getProjectName());
|
|
|
- projectReportData.setCompanyId(contentinfo.getCompanyId());
|
|
|
- projectReportData.setOfficeId(contentinfo.getOfficeId());
|
|
|
- projectReportData.setProject(contentinfo.getProject());
|
|
|
- if(null == projectReportData.getAuditPassDate()){
|
|
|
- projectReportData.setAuditPassDate(new Date());
|
|
|
- }
|
|
|
- projectReportData.setReportDate(new Date());
|
|
|
- if (com.jeeplus.common.utils.StringUtils.isBlank(projectReportData.getId())){
|
|
|
- projectReportData.setFileStatus("1");
|
|
|
- }
|
|
|
- //修改保存
|
|
|
-// String num = projectReportData.getNumber();
|
|
|
+ ProjectReportData oldProjectReportData = projectReportDataDao.get(projectReportData.getId());
|
|
|
+ try {
|
|
|
+ MyBeanUtils.copyBeanNotNull2Bean(projectReportData,oldProjectReportData);//将编辑表单中的非NULL值覆盖数据库记录中的值
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ logger.error("Exception e:"+e);
|
|
|
+ }
|
|
|
+
|
|
|
+ oldProjectReportData.setName(projectcontentinfo.getProjectOnRural().getProjectName());
|
|
|
+ oldProjectReportData.setCompanyId(contentinfo.getCompanyId());
|
|
|
+ oldProjectReportData.setOfficeId(contentinfo.getOfficeId());
|
|
|
+ oldProjectReportData.setProject(contentinfo.getProject());
|
|
|
+ if(null == oldProjectReportData.getAuditPassDate()){
|
|
|
+ oldProjectReportData.setAuditPassDate(new Date());
|
|
|
+ }
|
|
|
+ oldProjectReportData.setReportDate(new Date());
|
|
|
+ if (com.jeeplus.common.utils.StringUtils.isBlank(oldProjectReportData.getId())){
|
|
|
+ oldProjectReportData.setFileStatus("1");
|
|
|
+ }
|
|
|
+ //修改保存
|
|
|
+// String num = oldProjectReportData.getNumber();
|
|
|
// if(com.jeeplus.common.utils.StringUtils.isNotBlank(num)){
|
|
|
// projectReportNumService.updateNum(num);
|
|
|
// }
|
|
|
- projectReportDataService.save(projectReportData);
|
|
|
-// contentinfo.setDictType(projectReportData.getType());
|
|
|
-// contentinfo.setInfoId(projectReportData.getId());
|
|
|
+ projectReportDataService.save(oldProjectReportData);
|
|
|
+// contentinfo.setDictType(oldProjectReportData.getType());
|
|
|
+// contentinfo.setInfoId(oldProjectReportData.getId());
|
|
|
// projectcontentinfoDao.updateInfoId(contentinfo);
|
|
|
+ }
|
|
|
+
|
|
|
}
|
|
|
historicalService.save(historicalData);
|
|
|
//上报修改
|
|
@@ -3979,6 +3987,201 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
|
|
|
|
|
|
|
|
|
/**
|
|
|
+ * 根据项目id 和 documentId生成合同id
|
|
|
+ * @param projectId
|
|
|
+ * @param documentList
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public HashMap getSignatureContractId1(String projectId, List<String> documentList ,String principalUserId,String generalManagerUserId){
|
|
|
+ HashMap hashMap = new HashMap();
|
|
|
+ Set<String> serialIdSet = new HashSet<>();
|
|
|
+ //根据项目id查询项目信息
|
|
|
+ RuralProjectRecords ruralProjectRecords = ruralProjectRecordsService.get(projectId);
|
|
|
+ //创建签署方信息
|
|
|
+ List<Action> actions = Lists.newArrayList();
|
|
|
+ Action companyAction = new Action();
|
|
|
+ companyAction.setType("CORPORATE");
|
|
|
+ companyAction.setName("公司印章");
|
|
|
+ companyAction.setSerialNo("1");
|
|
|
+ //公司圆章-竖
|
|
|
+ serialIdSet.add(COMPANYROUNDSEALIDVERTICAL);
|
|
|
+ //添加盖章位置
|
|
|
+ List<Location> locations = Lists.newArrayList();
|
|
|
+ for (String documentId: documentList) {
|
|
|
+ Location location = new Location();
|
|
|
+ location.setSealId(COMPANYROUNDSEALIDVERTICAL);
|
|
|
+ location.setDocumentId(documentId);
|
|
|
+ location.setPage("0");
|
|
|
+ location.setRectType("SEAL_CORPORATE");
|
|
|
+ location.setKeywordIndex(-1);
|
|
|
+ location.setOffsetX("0.5264");
|
|
|
+ location.setOffsetY("0.6787");
|
|
|
+ locations.add(location);
|
|
|
+ }
|
|
|
+
|
|
|
+ //根据角色信息录入签署方信息
|
|
|
+ //负责人
|
|
|
+ if(StringUtils.isNotBlank(principalUserId)){
|
|
|
+ User user = UserUtils.get(principalUserId);
|
|
|
+ if(null != user){
|
|
|
+ //获取成员印章id信息
|
|
|
+ String userSealId = SignaturePostUtil.getUserSealByMobile(user.getMobile(),"",user.getName() + "一级注册造价工程师章-竖");
|
|
|
+ if(StringUtils.isNotBlank(userSealId)){
|
|
|
+ for (String documentId: documentList) {
|
|
|
+ //添加盖章位置
|
|
|
+ Location principalLocation = new Location();
|
|
|
+ serialIdSet.add(userSealId);
|
|
|
+ principalLocation.setSealId(userSealId);
|
|
|
+ principalLocation.setDocumentId(documentId);
|
|
|
+ principalLocation.setPage("0");
|
|
|
+ principalLocation.setRectType("SEAL_CORPORATE");
|
|
|
+ principalLocation.setKeywordIndex(-1);
|
|
|
+ principalLocation.setOffsetX("0.5971");
|
|
|
+ principalLocation.setOffsetY("0.8176");
|
|
|
+ locations.add(principalLocation);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ hashMap.put("code","2");
|
|
|
+ hashMap.put("message","查询不到项目负责人 "+ user.getName() + " 的印章信息!请联系管理员");
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ hashMap.put("code","2");
|
|
|
+ hashMap.put("message","查询不到项目负责人信息!请联系管理员");
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+ //总经理
|
|
|
+ User technologyPrincipalUser = UserUtils.getByLoginName("陈红星");
|
|
|
+ if(null != technologyPrincipalUser){
|
|
|
+ //获取成员印章id信息
|
|
|
+ String userSealId = SignaturePostUtil.getUserSealByMobile(technologyPrincipalUser.getMobile(),"","陈红星个人签名章-竖");
|
|
|
+ if(StringUtils.isNotBlank(userSealId)){
|
|
|
+ for (String documentId: documentList) {
|
|
|
+ //添加盖章位置
|
|
|
+ Location principalLocation = new Location();
|
|
|
+ serialIdSet.add(userSealId);
|
|
|
+ principalLocation.setSealId(userSealId);
|
|
|
+ principalLocation.setDocumentId(documentId);
|
|
|
+ principalLocation.setPage("0");
|
|
|
+ principalLocation.setRectType("SEAL_CORPORATE");
|
|
|
+ principalLocation.setKeywordIndex(-1);
|
|
|
+ principalLocation.setOffsetX("0.7758");
|
|
|
+ principalLocation.setOffsetY("0.7339");
|
|
|
+ locations.add(principalLocation);
|
|
|
+ }
|
|
|
+
|
|
|
+ }else{
|
|
|
+ hashMap.put("code","2");
|
|
|
+ hashMap.put("message","查询不到技术负责人 陈红星 的印章信息!请联系管理员");
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ hashMap.put("code","2");
|
|
|
+ hashMap.put("message","查询不到技术负责人信息!请联系管理员");
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+ List<String> serialIdList = new ArrayList<String>(serialIdSet);
|
|
|
+ companyAction.setSealIds("[" + String.join(",", serialIdList) + "]");
|
|
|
+ companyAction.setAutoSign("true");
|
|
|
+ companyAction.setLocations(locations);
|
|
|
+ actions.add(companyAction);
|
|
|
+
|
|
|
+ //创建个人职业章参数
|
|
|
+ Action professionalChapterAction = new Action();
|
|
|
+ professionalChapterAction.setType("PRACTICE");
|
|
|
+ professionalChapterAction.setName("个人职业章");
|
|
|
+ professionalChapterAction.setSerialNo("1");
|
|
|
+
|
|
|
+ //添加盖章位置
|
|
|
+ List<Location> professionalChapterLocations = Lists.newArrayList();
|
|
|
+
|
|
|
+ Set<String> professionalChapterSerialIdSet = new HashSet<>();
|
|
|
+
|
|
|
+ //添加个人职业章人员信息
|
|
|
+ ActionOperatorInfo actionOperatorInfo = new ActionOperatorInfo();
|
|
|
+ actionOperatorInfo.setOperatorContact("15240492484");
|
|
|
+ List<ActionOperatorInfo> actionOperators = Lists.newArrayList();
|
|
|
+ professionalChapterAction.setActionOperators(actionOperators);
|
|
|
+
|
|
|
+ //获取成员印章id信息
|
|
|
+ String userSealId = SignaturePostUtil.getUserSealByMobile("15240492484","","杨荣华个人签名");
|
|
|
+ if(StringUtils.isNotBlank(userSealId)){
|
|
|
+ for (String documentId: documentList) {
|
|
|
+ //添加盖章位置
|
|
|
+ Location principalLocation = new Location();
|
|
|
+ professionalChapterSerialIdSet.add(userSealId);
|
|
|
+ principalLocation.setSealId(userSealId);
|
|
|
+ principalLocation.setDocumentId(documentId);
|
|
|
+ principalLocation.setPage("0");
|
|
|
+ principalLocation.setRectType("SEAL_CORPORATE");
|
|
|
+ principalLocation.setKeywordIndex(-1);
|
|
|
+ principalLocation.setOffsetX("0.5971");
|
|
|
+ principalLocation.setOffsetY("0.8176");
|
|
|
+ professionalChapterLocations.add(principalLocation);
|
|
|
+ }
|
|
|
+ }else{
|
|
|
+ hashMap.put("code","2");
|
|
|
+ hashMap.put("message","查询不到项目负责人 的印章信息!请联系管理员");
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+
|
|
|
+ /*//获取成员印章id信息
|
|
|
+ String userSealId2 = SignaturePostUtil.getUserSealByMobile("18351935168","","陈红星造价工程师章");
|
|
|
+ if(StringUtils.isNotBlank(userSealId2)){
|
|
|
+ for (String documentId: documentList) {
|
|
|
+ //添加盖章位置
|
|
|
+ Location principalLocation = new Location();
|
|
|
+ professionalChapterSerialIdSet.add(userSealId2);
|
|
|
+ principalLocation.setSealId(userSealId2);
|
|
|
+ principalLocation.setDocumentId(documentId);
|
|
|
+ principalLocation.setPage("0");
|
|
|
+ principalLocation.setRectType("SEAL_CORPORATE");
|
|
|
+ principalLocation.setKeywordIndex(-1);
|
|
|
+ principalLocation.setOffsetX("0.7758");
|
|
|
+ principalLocation.setOffsetY("0.7339");
|
|
|
+ professionalChapterLocations.add(principalLocation);
|
|
|
+ }
|
|
|
+
|
|
|
+ }*/
|
|
|
+
|
|
|
+ List<String> serialIdsList = new ArrayList<String>(professionalChapterSerialIdSet);
|
|
|
+ professionalChapterAction.setSealIds("[" + String.join(",", serialIdsList) + "]");
|
|
|
+ professionalChapterAction.setLocations(locations);
|
|
|
+ net.sf.json.JSONObject professionalChapterJson = net.sf.json.JSONObject.fromObject(professionalChapterAction);
|
|
|
+ System.out.println(professionalChapterJson.toString());
|
|
|
+ actions.add(professionalChapterAction);
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ //创建签署方信息表
|
|
|
+ List<SignatorieInfo> signatories = Lists.newArrayList();
|
|
|
+ SignatorieInfo signatorieInfo1 = new SignatorieInfo();
|
|
|
+ signatorieInfo1.setSerialNo("1");
|
|
|
+ signatorieInfo1.setTenantName("江苏兴光项目管理有限公司");
|
|
|
+ signatorieInfo1.setTenantType("COMPANY");
|
|
|
+ signatorieInfo1.setActions(actions);
|
|
|
+ signatories.add(signatorieInfo1);
|
|
|
+ SignatureContract signatureContract = new SignatureContract();
|
|
|
+ signatureContract.setDocuments(documentList);
|
|
|
+ //审定单用印流程id
|
|
|
+ signatureContract.setCategoryId(APPROVALCATEGORYID);
|
|
|
+ signatureContract.setSend(true);
|
|
|
+ signatureContract.setSignatories(signatories);
|
|
|
+ signatureContract.setSn("");
|
|
|
+ signatureContract.setSubject(ruralProjectRecords.getProjectName());//添加项目名称
|
|
|
+ net.sf.json.JSONObject json = net.sf.json.JSONObject.fromObject(signatureContract);
|
|
|
+ String contractIdMapStr = SignaturePostUtil.sendPostApplicationJson(HTTPTOP + "/contract/createbycategory", json.toString());
|
|
|
+ hashMap = JSON.parseObject(contractIdMapStr, HashMap.class);
|
|
|
+
|
|
|
+ return hashMap;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
* 根据项目id 和 documentId生成合同id(盐城)
|
|
|
* @param projectId
|
|
|
* @param documentList
|