Bladeren bron

发票添加发票号展示项

user5 10 maanden geleden
bovenliggende
commit
4cbec70135
37 gewijzigde bestanden met toevoegingen van 674 en 162 verwijderingen
  1. 14 10
      src/main/java/com/jeeplus/modules/projectcontentinfo/web/ProjectReportRecordController.java
  2. 13 9
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/ProjectPaperFilingController.java
  3. 15 11
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewController.java
  4. 14 10
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewTwoController.java
  5. 19 15
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectRecordsController.java
  6. 15 11
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageNewController.java
  7. 13 9
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageNewTwoController.java
  8. 19 15
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectRecordsController.java
  9. 21 0
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectSignatureOldMessageDisposeController.java
  10. 26 16
      src/main/java/com/jeeplus/modules/szCenterservice/service/szCloud/FinanceInvoiceRequest.java
  11. 18 14
      src/main/java/com/jeeplus/modules/workclientinfo/web/WorkClientInfoController.java
  12. 20 15
      src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java
  13. 19 15
      src/main/java/com/jeeplus/modules/workcontractrecord/web/WorkContractRecordController.java
  14. 7 1
      src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullManageService.java
  15. 14 0
      src/main/java/com/jeeplus/modules/workinvoice/dao/WorkInvoiceDao.java
  16. 9 0
      src/main/java/com/jeeplus/modules/workinvoice/entity/WorkInvoice.java
  17. 89 0
      src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceService.java
  18. 16 0
      src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceTwoController.java
  19. 26 1
      src/main/java/com/jeeplus/modules/workprojectnotify/web/WorkProjectNotifyController.java
  20. 2 0
      src/main/resources/jeeplus.properties
  21. 105 0
      src/main/resources/mappings/modules/workinvoice/WorkInvoiceDao.xml
  22. 13 2
      src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectRecordsForm.jsp
  23. 6 0
      src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/projectcontentinfo/new/projectRecordsMessageModify.jsp
  24. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceAllForm.jsp
  25. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceAllModify.jsp
  26. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceAudit.jsp
  27. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceAuditEnd.jsp
  28. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineAudit.jsp
  29. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineAuditEnd.jsp
  30. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineModify.jsp
  31. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceModify.jsp
  32. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectAudit.jsp
  33. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectAuditEnd.jsp
  34. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectModify.jsp
  35. 17 1
      src/main/webapp/webpage/modules/workinvoice/workInvoiceTwoForm.jsp
  36. 17 2
      src/main/webapp/webpage/modules/workinvoice/workInvoiceTwoModify.jsp
  37. 6 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceView.jsp

+ 14 - 10
src/main/java/com/jeeplus/modules/projectcontentinfo/web/ProjectReportRecordController.java

@@ -627,16 +627,20 @@ public class ProjectReportRecordController extends BaseController {
 	}
 
 	public void sendProjectInfoDataToCloud(ProjectReportRecord reportData){
-		String path = Global.getConfig("SZ_PATH");
-
-		RuralProjectRecords records = new RuralProjectRecords();
-		records.setId(reportData.getProjectId());
-		records.setPrrId(reportData.getId());
-		records.setProjectReportRecordStatus(Integer.parseInt(reportData.getStatus()));
-		HttpHeaders headers = new HttpHeaders();
-		String url = path+"/ccpmData/data/saveProjectReportOnline";
-		HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-		restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+		String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+		boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+		if(pathFlag) {
+			String path = Global.getConfig("SZ_PATH");
+
+			RuralProjectRecords records = new RuralProjectRecords();
+			records.setId(reportData.getProjectId());
+			records.setPrrId(reportData.getId());
+			records.setProjectReportRecordStatus(Integer.parseInt(reportData.getStatus()));
+			HttpHeaders headers = new HttpHeaders();
+			String url = path + "/ccpmData/data/saveProjectReportOnline";
+			HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+			restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+		}
 	}
 
 	/**

+ 13 - 9
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/ProjectPaperFilingController.java

@@ -186,16 +186,20 @@ public class ProjectPaperFilingController extends BaseController {
     }
 
     public void sendProjectInfoDataToCloud(ProjectPaperFiling paperFiling){
-        String path = Global.getConfig("SZ_PATH");
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
 
-        RuralProjectRecords records = new RuralProjectRecords();
-        records.setId(paperFiling.getProjectId());
-        records.setPrrdId(paperFiling.getId());
-        records.setDownProjectReportRecordStatus(paperFiling.getStatus());
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveProjectReportPaper";
-        HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+            RuralProjectRecords records = new RuralProjectRecords();
+            records.setId(paperFiling.getProjectId());
+            records.setPrrdId(paperFiling.getId());
+            records.setDownProjectReportRecordStatus(paperFiling.getStatus());
+            HttpHeaders headers = new HttpHeaders();
+            String url = path + "/ccpmData/data/saveProjectReportPaper";
+            HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+            restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+        }
     }
 
     /**

+ 15 - 11
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewController.java

@@ -808,17 +808,21 @@ public class RuralCostProjectMessageNewController extends BaseController {
      * @param reportData
      */
     public void sendProjectInfoDataToCloud(ProjectReportData reportData){
-        String path = Global.getConfig("SZ_PATH");
-
-        RuralProjectRecords records = new RuralProjectRecords();
-        records.setId(reportData.getProject().getId());
-        records.setPrdId(reportData.getId());
-        records.setProjectReportStatus(Integer.parseInt(reportData.getStatus()));
-        records.setProjectReportNumber(reportData.getNumber());
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveProjectReview";
-        HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
+
+            RuralProjectRecords records = new RuralProjectRecords();
+            records.setId(reportData.getProject().getId());
+            records.setPrdId(reportData.getId());
+            records.setProjectReportStatus(Integer.parseInt(reportData.getStatus()));
+            records.setProjectReportNumber(reportData.getNumber());
+            HttpHeaders headers = new HttpHeaders();
+            String url = path + "/ccpmData/data/saveProjectReview";
+            HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+            restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+        }
     }
 
 

+ 14 - 10
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewTwoController.java

@@ -900,15 +900,19 @@ public class RuralCostProjectMessageNewTwoController extends BaseController {
     }
 
     public void sendProjectInfoDataToCloud(ProjectReportRecord reportData){
-        String path = Global.getConfig("SZ_PATH");
-
-        RuralProjectRecords records = new RuralProjectRecords();
-        records.setId(reportData.getProjectId());
-        records.setPrrId(reportData.getId());
-        records.setProjectReportRecordStatus(Integer.parseInt(reportData.getStatus()));
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveProjectReportOnline";
-        HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
+
+            RuralProjectRecords records = new RuralProjectRecords();
+            records.setId(reportData.getProjectId());
+            records.setPrrId(reportData.getId());
+            records.setProjectReportRecordStatus(Integer.parseInt(reportData.getStatus()));
+            HttpHeaders headers = new HttpHeaders();
+            String url = path + "/ccpmData/data/saveProjectReportOnline";
+            HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+            restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+        }
     }
 }

+ 19 - 15
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectRecordsController.java

@@ -449,21 +449,25 @@ public class RuralCostProjectRecordsController extends BaseController {
 	 * @param ruralProjectRecords
 	 */
 	public void sendProjectInfoDataToCloud(RuralProjectRecords ruralProjectRecords){
-		String path = Global.getConfig("SZ_PATH");
-
-		RuralProjectRecords records = new RuralProjectRecords();
-		records.setId(ruralProjectRecords.getId());
-		records.setProjectId(ruralProjectRecords.getProjectId());
-		records.setProjectName(ruralProjectRecords.getProjectName());
-		records.setProjectType(ruralProjectRecords.getProjectType());
-		records.setArea(ruralProjectRecords.getArea());
-		WorkContractInfo workContractInfo = new WorkContractInfo();
-		workContractInfo.setId(ruralProjectRecords.getWorkContractInfo().getId());
-		records.setWorkContractInfo(workContractInfo);
-		HttpHeaders headers = new HttpHeaders();
-		String url = path+"/ccpmData/data/saveProjectInfo";
-		HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-		restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+		String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+		boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+		if(pathFlag) {
+			String path = Global.getConfig("SZ_PATH");
+
+			RuralProjectRecords records = new RuralProjectRecords();
+			records.setId(ruralProjectRecords.getId());
+			records.setProjectId(ruralProjectRecords.getProjectId());
+			records.setProjectName(ruralProjectRecords.getProjectName());
+			records.setProjectType(ruralProjectRecords.getProjectType());
+			records.setArea(ruralProjectRecords.getArea());
+			WorkContractInfo workContractInfo = new WorkContractInfo();
+			workContractInfo.setId(ruralProjectRecords.getWorkContractInfo().getId());
+			records.setWorkContractInfo(workContractInfo);
+			HttpHeaders headers = new HttpHeaders();
+			String url = path + "/ccpmData/data/saveProjectInfo";
+			HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+			restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+		}
 	}
 
 

+ 15 - 11
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageNewController.java

@@ -1049,17 +1049,21 @@ public class RuralProjectMessageNewController extends BaseController {
      * @param reportData
      */
     public void sendProjectInfoDataToCloud(ProjectReportData reportData){
-        String path = Global.getConfig("SZ_PATH");
-
-        RuralProjectRecords records = new RuralProjectRecords();
-        records.setId(reportData.getProject().getId());
-        records.setPrdId(reportData.getId());
-        records.setProjectReportStatus(Integer.parseInt(reportData.getStatus()));
-        records.setProjectReportNumber(reportData.getNumber());
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveProjectReview";
-        HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
+
+            RuralProjectRecords records = new RuralProjectRecords();
+            records.setId(reportData.getProject().getId());
+            records.setPrdId(reportData.getId());
+            records.setProjectReportStatus(Integer.parseInt(reportData.getStatus()));
+            records.setProjectReportNumber(reportData.getNumber());
+            HttpHeaders headers = new HttpHeaders();
+            String url = path + "/ccpmData/data/saveProjectReview";
+            HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+            restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+        }
     }
 
     @RequestMapping(value = "revoke")

+ 13 - 9
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageNewTwoController.java

@@ -442,16 +442,20 @@ public class RuralProjectMessageNewTwoController  extends BaseController {
     }
 
     public void sendProjectInfoDataToCloud1(ProjectReportDataTwo reportData){
-        String path = Global.getConfig("SZ_PATH");
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
 
-        RuralProjectRecords records = new RuralProjectRecords();
-        records.setId(reportData.getProject().getId());
-        records.setPrdtId(reportData.getId());
-        records.setProjectReportStatusTwo(Integer.parseInt(reportData.getStatus()));
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveProjectReportTwo";
-        HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+            RuralProjectRecords records = new RuralProjectRecords();
+            records.setId(reportData.getProject().getId());
+            records.setPrdtId(reportData.getId());
+            records.setProjectReportStatusTwo(Integer.parseInt(reportData.getStatus()));
+            HttpHeaders headers = new HttpHeaders();
+            String url = path + "/ccpmData/data/saveProjectReportTwo";
+            HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+            restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+        }
     }
 
     /**

+ 19 - 15
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectRecordsController.java

@@ -406,21 +406,25 @@ public class RuralProjectRecordsController extends BaseController {
 	 * @param ruralProjectRecords
 	 */
 	public void sendProjectInfoDataToCloud(RuralProjectRecords ruralProjectRecords){
-		String path = Global.getConfig("SZ_PATH");
-
-		RuralProjectRecords records = new RuralProjectRecords();
-		records.setId(ruralProjectRecords.getId());
-		records.setProjectId(ruralProjectRecords.getProjectId());
-		records.setProjectName(ruralProjectRecords.getProjectName());
-		records.setProjectType(ruralProjectRecords.getProjectType());
-		records.setArea(ruralProjectRecords.getArea());
-		WorkContractInfo workContractInfo = new WorkContractInfo();
-		workContractInfo.setId(ruralProjectRecords.getWorkContractInfo().getId());
-		records.setWorkContractInfo(workContractInfo);
-		HttpHeaders headers = new HttpHeaders();
-		String url = path+"/ccpmData/data/saveProjectInfo";
-		HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records,headers);
-		restTemplate.exchange(url, HttpMethod.POST,httpEntity,RuralProjectRecords.class);
+		String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+		boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+		if(pathFlag) {
+			String path = Global.getConfig("SZ_PATH");
+
+			RuralProjectRecords records = new RuralProjectRecords();
+			records.setId(ruralProjectRecords.getId());
+			records.setProjectId(ruralProjectRecords.getProjectId());
+			records.setProjectName(ruralProjectRecords.getProjectName());
+			records.setProjectType(ruralProjectRecords.getProjectType());
+			records.setArea(ruralProjectRecords.getArea());
+			WorkContractInfo workContractInfo = new WorkContractInfo();
+			workContractInfo.setId(ruralProjectRecords.getWorkContractInfo().getId());
+			records.setWorkContractInfo(workContractInfo);
+			HttpHeaders headers = new HttpHeaders();
+			String url = path + "/ccpmData/data/saveProjectInfo";
+			HttpEntity<RuralProjectRecords> httpEntity = new HttpEntity<>(records, headers);
+			restTemplate.exchange(url, HttpMethod.POST, httpEntity, RuralProjectRecords.class);
+		}
 	}
 
 	/**

+ 21 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectSignatureOldMessageDisposeController.java

@@ -751,4 +751,25 @@ public class RuralProjectSignatureOldMessageDisposeController extends BaseContro
         return map;
     }
 
+    /**
+     * 报表处理
+     * @return
+     */
+    @RequestMapping(value = "/invoiceUpdateRedNumberByNumber")
+    @ResponseBody
+    @Transactional(readOnly = false)
+    public Map<String,Object> invoiceUpdateRedNumberByNumber(MultipartFile file){
+        Map<String,Object> map = new HashMap<>();
+        try {
+            ImportExcel ei = new ImportExcel(file, 0, 0);
+            List<TemporaryInvoiceInfo> invoiceInfoList = ei.getNewDataList(TemporaryInvoiceInfo.class);
+            workInvoiceService.getAndDisposeInvoiceRedInfo(invoiceInfoList);
+
+        } catch (Exception e){
+
+        }
+        map.put("msgMonth","月度报表处理完成");
+        return map;
+    }
+
 }

+ 26 - 16
src/main/java/com/jeeplus/modules/szCenterservice/service/szCloud/FinanceInvoiceRequest.java

@@ -34,11 +34,15 @@ public class FinanceInvoiceRequest {
         Map<String, Object> paramMap = new HashMap<>();
         paramMap.put("id", id);
         paramMap.put("processDefKey", processDefKey);
-        String path=Global.getConfig("SZ_PATH");
-        String url = szRestTemplateService.getUrl(path,"/transpond/detailFinance",paramMap);
-        ResponseEntity<String> exchange = restTemplate.exchange(url, HttpMethod.GET, null, String.class);
         String res = null;
-        res = exchange.getBody();
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
+            String url = szRestTemplateService.getUrl(path, "/transpond/detailFinance", paramMap);
+            ResponseEntity<String> exchange = restTemplate.exchange(url, HttpMethod.GET, null, String.class);
+            res = exchange.getBody();
+        }
         return res ;
     }
 
@@ -53,18 +57,24 @@ public class FinanceInvoiceRequest {
         bodyMap.put("comment", workInvoice.getComment());
         bodyMap.put("processDefKey", workInvoice.getType());
         bodyMap.put("workInvoice",workInvoice);
-        String path=Global.getConfig("SZ_PATH");
-        String url = path + "/transpond/auditDistribute";
-        HttpHeaders headers = new HttpHeaders();
-        User user = UserUtils.getUser();
-        String cookie = szRestTemplateService.ccpmValidatePassword(user);
-        headers.add("cookie", cookie);
-        headers.add("Accept", MediaType.ALL_VALUE);
-        headers.add("domain","127.0.0.17");
-        headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));
-        HttpEntity<Object> httpEntity = new HttpEntity<>(bodyMap,headers);
-        Object res = restTemplate.exchange(url, HttpMethod.POST, httpEntity, Object.class);
-        return res;
+
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag) {
+            String path = Global.getConfig("SZ_PATH");
+            String url = path + "/transpond/auditDistribute";
+            HttpHeaders headers = new HttpHeaders();
+            User user = UserUtils.getUser();
+            String cookie = szRestTemplateService.ccpmValidatePassword(user);
+            headers.add("cookie", cookie);
+            headers.add("Accept", MediaType.ALL_VALUE);
+            headers.add("domain", "127.0.0.17");
+            headers.setContentType(new MediaType("application", "json", Charset.forName("UTF-8")));
+            HttpEntity<Object> httpEntity = new HttpEntity<>(bodyMap, headers);
+            Object res = restTemplate.exchange(url, HttpMethod.POST, httpEntity, Object.class);
+            return res;
+        }
+        return "";
     }
 
 

+ 18 - 14
src/main/java/com/jeeplus/modules/workclientinfo/web/WorkClientInfoController.java

@@ -253,20 +253,24 @@ public class WorkClientInfoController extends BaseController {
 	}
 
 	private void sendDataToCloud(WorkClientInfo workClientInfo) {
-		String path = Global.getConfig("SZ_PATH");
-		WorkClientInfo info = new WorkClientInfo();
-		info.setId(workClientInfo.getId());
-		info.setName(workClientInfo.getName());
-		info.setHasUscc(workClientInfo.getHasUscc());
-		info.setUscCode(workClientInfo.getUscCode());
-		info.setRegisterAddress(workClientInfo.getRegisterAddress());
-		info.setTelephone(workClientInfo.getTelephone());
-		info.setCompanyIndustry(workClientInfo.getCompanyIndustry());
-		info.setWorkClientBankList(workClientInfo.getWorkClientBankList());
-		HttpHeaders headers = new HttpHeaders();
-		String url = path+"/ccpmData/data/saveClient";
-		HttpEntity<WorkClientInfo> httpEntity = new HttpEntity<>(info,headers);
- 		restTemplate.exchange(url, HttpMethod.POST,httpEntity,WorkClientInfo.class);
+		String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+		boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+		if(pathFlag) {
+			String path = Global.getConfig("SZ_PATH");
+			WorkClientInfo info = new WorkClientInfo();
+			info.setId(workClientInfo.getId());
+			info.setName(workClientInfo.getName());
+			info.setHasUscc(workClientInfo.getHasUscc());
+			info.setUscCode(workClientInfo.getUscCode());
+			info.setRegisterAddress(workClientInfo.getRegisterAddress());
+			info.setTelephone(workClientInfo.getTelephone());
+			info.setCompanyIndustry(workClientInfo.getCompanyIndustry());
+			info.setWorkClientBankList(workClientInfo.getWorkClientBankList());
+			HttpHeaders headers = new HttpHeaders();
+			String url = path + "/ccpmData/data/saveClient";
+			HttpEntity<WorkClientInfo> httpEntity = new HttpEntity<>(info, headers);
+			restTemplate.exchange(url, HttpMethod.POST, httpEntity, WorkClientInfo.class);
+		}
 	}
 
 	/**

+ 20 - 15
src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java

@@ -1196,25 +1196,30 @@ public class WorkContractInfoController extends BaseController {
      * @param contractInfo
      */
     public void sendContractInfoDataToCloud(WorkContractInfo contractInfo){
-        String path = Global.getConfig("SZ_PATH");
+        String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+        boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+        if(pathFlag){
+            String path = Global.getConfig("SZ_PATH");
 
-        WorkContractInfo info = new WorkContractInfo();
-        info.setId(contractInfo.getId());
-        info.setName(contractInfo.getName());
-        info.setRecordNum(contractInfo.getFileNum());
+            WorkContractInfo info = new WorkContractInfo();
+            info.setId(contractInfo.getId());
+            info.setName(contractInfo.getName());
+            info.setRecordNum(contractInfo.getFileNum());
 
-        WorkClientInfo workClientInfo = new WorkClientInfo();
-        workClientInfo.setId(contractInfo.getClient().getId());
-        info.setClient(workClientInfo);
+            WorkClientInfo workClientInfo = new WorkClientInfo();
+            workClientInfo.setId(contractInfo.getClient().getId());
+            info.setClient(workClientInfo);
 
-        info.setContractState(contractInfo.getContractState());
-        info.setRecordNum(contractInfo.getFileNum());
-        info.setContractRecordState(contractInfo.getContractRecordState());
+            info.setContractState(contractInfo.getContractState());
+            info.setRecordNum(contractInfo.getFileNum());
+            info.setContractRecordState(contractInfo.getContractRecordState());
+
+            HttpHeaders headers = new HttpHeaders();
+            String url = path+"/ccpmData/data/saveContractInfo";
+            HttpEntity<WorkContractInfo> httpEntity = new HttpEntity<>(info,headers);
+            restTemplate.exchange(url, HttpMethod.POST,httpEntity,WorkContractInfo.class);
+        }
 
-        HttpHeaders headers = new HttpHeaders();
-        String url = path+"/ccpmData/data/saveContractInfo";
-        HttpEntity<WorkContractInfo> httpEntity = new HttpEntity<>(info,headers);
-        restTemplate.exchange(url, HttpMethod.POST,httpEntity,WorkContractInfo.class);
     }
 
    /* public WorkContractInfo getSort(WorkContractInfo workContractInfo){

+ 19 - 15
src/main/java/com/jeeplus/modules/workcontractrecord/web/WorkContractRecordController.java

@@ -218,25 +218,29 @@ public class WorkContractRecordController extends BaseController {
 	 * @param contractInfo
 	 */
 	public void sendContractInfoDataToCloud(WorkContractInfo contractInfo){
-		String path = Global.getConfig("SZ_PATH");
+		String pathFlagStr = Global.getConfig("SZ_PATH_flag");
+		boolean pathFlag = Boolean.parseBoolean(pathFlagStr);
+		if(pathFlag) {
+			String path = Global.getConfig("SZ_PATH");
 
-		WorkContractInfo info = new WorkContractInfo();
-		info.setId(contractInfo.getId());
-		info.setName(contractInfo.getName());
-		info.setRecordNum(contractInfo.getFileNum());
+			WorkContractInfo info = new WorkContractInfo();
+			info.setId(contractInfo.getId());
+			info.setName(contractInfo.getName());
+			info.setRecordNum(contractInfo.getFileNum());
 
-		WorkClientInfo workClientInfo = new WorkClientInfo();
-		workClientInfo.setId(contractInfo.getClient().getId());
-		info.setClient(workClientInfo);
+			WorkClientInfo workClientInfo = new WorkClientInfo();
+			workClientInfo.setId(contractInfo.getClient().getId());
+			info.setClient(workClientInfo);
 
-		info.setContractState(contractInfo.getContractState());
-		info.setRecordNum(contractInfo.getFileNum());
-		info.setContrractRecordStatus(contractInfo.getContrractRecordStatus());
+			info.setContractState(contractInfo.getContractState());
+			info.setRecordNum(contractInfo.getFileNum());
+			info.setContrractRecordStatus(contractInfo.getContrractRecordStatus());
 
-		HttpHeaders headers = new HttpHeaders();
-		String url = path+"/ccpmData/data/saveContractInfo";
-		HttpEntity<WorkContractInfo> httpEntity = new HttpEntity<>(info,headers);
-		restTemplate.exchange(url, HttpMethod.POST,httpEntity,WorkContractInfo.class);
+			HttpHeaders headers = new HttpHeaders();
+			String url = path + "/ccpmData/data/saveContractInfo";
+			HttpEntity<WorkContractInfo> httpEntity = new HttpEntity<>(info, headers);
+			restTemplate.exchange(url, HttpMethod.POST, httpEntity, WorkContractInfo.class);
+		}
 	}
 	/**
 	 * 保存合同归档

+ 7 - 1
src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullManageService.java

@@ -874,7 +874,13 @@ public class WorkFullManageService extends CrudService<WorkFullManageDao, WorkFu
 			String endingDateStr = dateStr(projectReportSignatureInfo.getAgreedEndDate());
 			data.put("consultOperationalPeriod",startDateStr + "至" + endingDateStr);
 		}else{
-			data.put("consultOperationalPeriod","");
+			if(null != ruralProjectRecords && null != ruralProjectRecords.getStartDate() && null != ruralProjectRecords.getEndingDate()){
+				String startDateStr = dateStr(ruralProjectRecords.getStartDate());
+				String endingDateStr = dateStr(ruralProjectRecords.getEndingDate());
+				data.put("consultOperationalPeriod",startDateStr + "至" + endingDateStr);
+			}else{
+				data.put("consultOperationalPeriod","");
+			}
 		}
 
 		if(null != currentConsultant && org.apache.commons.lang3.StringUtils.isNotBlank(currentConsultant.getZixunyuanName())){

+ 14 - 0
src/main/java/com/jeeplus/modules/workinvoice/dao/WorkInvoiceDao.java

@@ -215,9 +215,23 @@ public interface WorkInvoiceDao extends CrudDao<WorkInvoice> {
 	WorkInvoice getByNumber(String number);
 
 	/**
+	 * 根据发票申请编号查询数据信息(最近的一条有效数据)
+	 * @param workInvoice
+	 * @return
+	 */
+	List<WorkInvoice> getByInvoiceList(WorkInvoice workInvoice);
+
+	/**
 	 * 修改红冲数据关联数据信息
 	 * @param workInvoice
 	 * @return
 	 */
 	Integer updateInvoceOnRed(WorkInvoice workInvoice);
+
+	/**
+	 * 根据发票编号查询其所有发票号
+	 * @param invoiceId
+	 * @return
+	 */
+	String getInvoiceNumberStr(String invoiceId);
 }

+ 9 - 0
src/main/java/com/jeeplus/modules/workinvoice/entity/WorkInvoice.java

@@ -50,6 +50,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 	private User drawer;		// 开票经办人(暂时弃用)
 	private Office office;		// 所属部门
 	private Integer invoiceNumber;		// 发票编号(暂时弃用)
+	private String invoiceNumberStr;		// 发票编号
 	private Date invoiceDate;		// 开票日期
 	private Date takeDate;          //领票日期
 	private String drawerName;      //开票人(发票管理员名称)
@@ -438,6 +439,14 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.invoiceNumber = invoiceNumber;
 	}
 
+	public String getInvoiceNumberStr() {
+		return invoiceNumberStr;
+	}
+
+	public void setInvoiceNumberStr(String invoiceNumberStr) {
+		this.invoiceNumberStr = invoiceNumberStr;
+	}
+
 	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 	@ExcelField(title="开票日期", align=2, sort=15)
 	public Date getInvoiceDate() {

+ 89 - 0
src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceService.java

@@ -212,6 +212,10 @@ public class WorkInvoiceService extends CrudService<WorkInvoiceDao, WorkInvoice>
 		return workInvoice;
 	}
 
+	public String getInvoiceNumberStr(String invoiceId) {
+		return dao.getInvoiceNumberStr(invoiceId);
+	}
+
 	/**
 	 * 根据开票id查询关联项目
 	 * @param workInvoice
@@ -545,6 +549,37 @@ public class WorkInvoiceService extends CrudService<WorkInvoiceDao, WorkInvoice>
 	}
 
 	/**
+	 * 获取关联项目名称list
+	 * @param workInvoice
+	 * @return
+	 */
+	public List<String> getProjectNameListOnRed(WorkInvoice workInvoice){
+		//项目名称获取
+		List<String> projectNameList = Lists.newArrayList();
+		if(null != workInvoice.getWorkInvoiceProjectRelationList()){
+			for (WorkInvoiceProjectRelation projectRelation : workInvoice.getWorkInvoiceProjectRelationList()) {
+				//处理开票是非项目还是项目开票
+				if(StringUtils.isNotBlank(projectRelation.getProjectId())){
+					if (WorkInvoiceReceipt.DEL_FLAG_NORMAL.equals(projectRelation.getDelFlag())) {
+						ProjectRecords projectRecords = projectRecordsService.getRuralMasters(projectRelation.getProjectId());
+						if (null != projectRecords) {
+							projectNameList.add(projectRecords.getProjectName());
+						}
+
+					}
+				}else{
+					if(projectNameList.contains("非项目发票")){
+						continue;
+					}
+					projectNameList.add(projectRelation.getDetails().replaceAll("\\r|\\n*",""));
+				}
+
+			}
+		}
+		return projectNameList;
+	}
+
+	/**
 	 * 提交存储
 	 * @param workInvoice
 	 * @param variables
@@ -3994,4 +4029,58 @@ public class WorkInvoiceService extends CrudService<WorkInvoiceDao, WorkInvoice>
 		}
 	}
 
+
+	public void getAndDisposeInvoiceRedInfo(List<TemporaryInvoiceInfo> list){
+		for (TemporaryInvoiceInfo info : list) {
+			if(StringUtils.isNotBlank(info.getNumber())){
+				//根据申请编号查询最近的一条有效的发票数据
+				//根据关联申请编号查询最近的一条有效的发票数据
+				WorkInvoice invoice = workInvoiceDao.getByNumber(info.getNumber());
+
+				invoice.setWorkInvoiceProjectRelationList(this.getProjectRelation(invoice));
+				List<String> projectNameList = this.getProjectNameListOnRed(invoice);
+				String projectNameStr = String.join(",", projectNameList);
+				if(projectNameStr.contains("\r")){
+					projectNameStr = projectNameStr.replaceAll("\r"," ");
+				}
+				if(projectNameStr.contains("\n")){
+					projectNameStr = projectNameStr.replaceAll("\n"," ");
+				}
+				invoice.setProjectName(projectNameStr);
+
+				if(null != invoice){
+					//获取开票金额并确认小于零
+					if(invoice.getMoney()<0){
+						//将金额转换为整数,并和 项目名称、开票单位、经办人、开票金额、开票内容进行对比,如果能查出来数据,且唯一,则认位其是对应的红冲数据,否则不进行调整
+						double positiveMoney = Math.abs(invoice.getMoney());
+						WorkInvoice selectInvoice = new WorkInvoice();
+						selectInvoice.setMoney(positiveMoney);
+						WorkClientInfo clientInfo = new WorkClientInfo();
+						clientInfo.setName(invoice.getClient().getName());
+						selectInvoice.setClient(clientInfo);
+						selectInvoice.setSubmitterId(invoice.getCreateBy().getId());
+						selectInvoice.setBillingContent(invoice.getBillingContent());
+						selectInvoice.setProjectName(invoice.getProjectName());
+						List<WorkInvoice> relevanceInvoiceList = workInvoiceDao.getByInvoiceList(selectInvoice);
+						if(relevanceInvoiceList.size() == 1){
+							invoice.setRedInvoiceFlag(1);
+							invoice.setRedInvoiceRelevancyId(relevanceInvoiceList.get(0).getId());
+							invoice.setRedInvoiceRelevancyNumber(relevanceInvoiceList.get(0).getNumber());
+							workInvoiceDao.updateInvoceOnRed(invoice);
+						}
+
+					}
+					//将关联的发票申请编号填入需要修改的发票数据中并保存
+					/*WorkInvoice relevanceInvoice = workInvoiceDao.getByNumber(info.getRedNumber());
+					if(null != relevanceInvoice){
+						invoice.setRedInvoiceFlag(1);
+						invoice.setRedInvoiceRelevancyId(relevanceInvoice.getId());
+						invoice.setRedInvoiceRelevancyNumber(relevanceInvoice.getNumber());
+						workInvoiceDao.updateInvoceOnRed(invoice);
+					}*/
+				}
+			}
+		}
+	}
+
 }

+ 16 - 0
src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceTwoController.java

@@ -1725,4 +1725,20 @@ public class WorkInvoiceTwoController extends BaseController {
 		return yearList;
 	}
 
+
+
+	/**
+	 * 根据发票id查询开票的发票编号
+	 * @param invoiceId
+	 * @return
+	 */
+	@RequestMapping(value = "getInvoiceNumberStr")
+	@ResponseBody
+	public String getInvoiceNumberStr(String invoiceId) {
+		HashMap<Object, Object> map = Maps.newHashMap();
+		String invoiceNumberStr = workInvoiceService.getInvoiceNumberStr(invoiceId);
+		map.put("data",invoiceNumberStr);
+		return JsonMapper.toJsonString(map);
+	}
+
 }

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

@@ -2246,6 +2246,12 @@ public class WorkProjectNotifyController extends BaseController {
 					} else {
 						workInvoice.setHome("home");
 					}
+
+					//查询关联红冲发票的开票号
+					if("1".equals(workInvoice.getRedInvoiceFlag()) && StringUtils.isNotBlank(workInvoice.getRedInvoiceRelevancyId())){
+						String invoiceNumberStr = workInvoiceService.getInvoiceNumberStr(workInvoice.getRedInvoiceRelevancyId());
+						workInvoice.setInvoiceNumberStr(invoiceNumberStr);
+					}
 					workInvoice.setAct(getByAct(workInvoice.getProcessInstanceId()));
 					String taskDefKey = workInvoice.getAct().getTaskDefKey();
 					model.addAttribute("workInvoice", workInvoice);
@@ -2313,6 +2319,13 @@ public class WorkProjectNotifyController extends BaseController {
 					} else {
 						workInvoice.setHome("home");
 					}
+
+					//查询关联红冲发票的开票号
+					if("1".equals(workInvoice.getRedInvoiceFlag()) && StringUtils.isNotBlank(workInvoice.getRedInvoiceRelevancyId())){
+						String invoiceNumberStr = workInvoiceService.getInvoiceNumberStr(workInvoice.getRedInvoiceRelevancyId());
+						workInvoice.setInvoiceNumberStr(invoiceNumberStr);
+					}
+
 					workInvoice.setAct(getByAct(workInvoice.getProcessInstanceId()));
 					String taskDefKey = workInvoice.getAct().getTaskDefKey();
 					model.addAttribute("workInvoice", workInvoice);
@@ -2373,6 +2386,13 @@ public class WorkProjectNotifyController extends BaseController {
 					} else {
 						workInvoice.setHome("home");
 					}
+
+					//查询关联红冲发票的开票号
+					if("1".equals(workInvoice.getRedInvoiceFlag()) && StringUtils.isNotBlank(workInvoice.getRedInvoiceRelevancyId())){
+						String invoiceNumberStr = workInvoiceService.getInvoiceNumberStr(workInvoice.getRedInvoiceRelevancyId());
+						workInvoice.setInvoiceNumberStr(invoiceNumberStr);
+					}
+
 					//获取发票开户银行信息
 					String bankName = workInvoiceService.getBankNameByNameOrId(workInvoice.getBank());
 					if (StringUtils.isNotBlank(bankName)) {
@@ -4990,7 +5010,7 @@ public class WorkProjectNotifyController extends BaseController {
 						Iterator<RuralReportConsultant> itView = consultants.iterator();
 						while (itView.hasNext()) {
 							RuralReportConsultant consultant = itView.next();
-							if (consultant.getZixunyuan().equals(projectReportData.getBzshbUserId())) {
+							if (consultant.getZixunyuan().equals(projectReportData.getBzshbUserId()) && "技术负责人".equals(consultant.getRole())) {
 								itView.remove();
 							}
 						}
@@ -10725,6 +10745,11 @@ public class WorkProjectNotifyController extends BaseController {
 				break;
 			}
 		}
+		//查询关联红冲发票的开票号
+		if("1".equals(workInvoice.getRedInvoiceFlag())){
+			String invoiceNumberStr = workInvoiceService.getInvoiceNumberStr(workInvoice.getRedInvoiceRelevancyId());
+			workInvoice.setInvoiceNumberStr(invoiceNumberStr);
+		}
 		workInvoice.setAct(getByAct(workInvoice.getProcessInstanceId()));
 		String taskDefKey = workInvoice.getAct().getTaskDefKey();
 		model.addAttribute("workInvoice", workInvoice);

+ 2 - 0
src/main/resources/jeeplus.properties

@@ -377,6 +377,8 @@ signature_project_approval_work = 3245192847945704016
 
 #其他系统的地址
 CPA_PATH:   http://localhost:2800
+#苏州分公司是否同步数据
+SZ_PATH_flag: false
 #苏州分公司 发票
 SZ_PATH: http://localhost:9527
 #flowable

+ 105 - 0
src/main/resources/mappings/modules/workinvoice/WorkInvoiceDao.xml

@@ -3081,5 +3081,110 @@
 		WHERE id = #{id}
 	</update>
 
+	<select id="getByInvoiceList" resultType="WorkInvoice">
+		SELECT
+		DISTINCT(a.id) AS "id",
+		a.number AS "number",
+		a.process_instance_id AS "processInstanceId",
+		a.client_id AS "client.id",
+		a.project_id AS "project.id",
+		a.project_name AS "projectName",
+		a.money AS "money",
+		a.money AS "moneyStr",
+		a.invoice_type AS "invoiceType",
+		(case when a.invoice_type = '1' then '专票' when a.invoice_type = '2' then '普票' else '' end) as invoiceTypeStr,
+		a.charge_type AS "chargeType",
+		a.content AS "content",
+		a.drawer_id AS "drawer.id",
+		a.office_id AS "office.id",
+		a.invoice_number AS "invoiceNumber",
+		a.invoice_date AS "invoiceDate",
+		a.drawer_name AS "drawerName",
+		a.take_date AS "takeDate",
+		a.invoice_remarks AS "invoiceRemarks",
+		a.is_invoice AS "isInvoice",
+		a.is_charge AS "isCharge",
+		a.is_invalid AS "isInvalid",
+		a.create_by AS "createBy.id",
+		a.create_date AS "createDate",
+		a.update_by AS "updateBy.id",
+		a.update_date AS "updateDate",
+		a.remarks AS "remarks",
+		a.del_flag AS "delFlag",
+		a.orUnicode AS "orUnicode",
+		a.address AS "address",
+		a.telephone AS "telephone",
+		a.bank AS "bank",
+		a.bank_number AS "bankNumber",
+		a.cancle_reason AS "cancaleReason",
+		su.name AS "createBy.name",
+		so.show_name AS "office.name",
+		w.name AS "client.name",
+		a.invoice_state AS "invoiceState",
+		w.usc_code AS "client.uscCode",
+		w.fax AS "client.fax",
+		w.or_unicode AS "client.orUnicode",
+		w.telephone AS "client.telephone",
+		a.company_id AS "companyId",
+		a.cancle_reason AS "cancleReason",
+		w.address AS "client.address",
+		a.officee_id AS "officeId",
+		a.province AS "province",
+		a.ext AS "ext",
+		a.billing_content as "billingContent",
+		a.receipt_money_date as "receiptMoneyDate",
+		(case when a.receipt_money = '0' then '否' when a.receipt_money = '1' then '是' when a.receipt_money = '2' then '部分收款' else '否' end) as receiptMoney,
+		a.cancellation_remark as "cancellationRemark",
+		a.account_checking_user_id as "accountCheckingUserId",
+		a.area_id as "area.id",
+		a.new_drawer_id as "newDrawerId",
+		a.new_drawer as "newDrawer",
+		a.actual_drawer_email_address as "actualDrawerEmailAddress",
+		a.actual_drawer_id as "actualDrawerId",
+		a.electronic_invoice_flag as "electronicInvoiceFlag",
+		a.cancellation_process_instance_id as "cancellationProcessInstanceId",
+		a.cancellation_state as "cancellationState",
+		a.red_invoice_flag as "redInvoiceFlag",
+		a.red_invoice_relevancy_id as "redInvoiceRelevancyId",
+		a.red_invoice_relevancy_number as "redInvoiceRelevancyNumber"
+		FROM work_invoice a
+		LEFT JOIN sys_user su ON su.id = a.create_by
+		LEFT JOIN work_client_info w ON  w.id = a.client_id
+		LEFT join sys_office so on so.id = a.office_id
+		left join work_invoice_project_relation wipr on a.id = wipr.invoice_id
+		left join rural_project_records rpr on rpr.id = wipr.project_id
+		<where>
+			a.del_flag = 0
+			<if test="client != null and client.name != null and client.name != ''">
+				AND w.name = #{client.name}
+			</if>
+			<if test="money != null and money != ''">
+				AND a.money = #{money}
+			</if>
+			<if test="(submitterId != null and submitterId != '') or (submitterName != null and submitterName != '')">
+				AND a.create_by = #{submitterId}
+			</if>
+			<if test="invoiceType != null and invoiceType != ''">
+				AND a.invoice_type = #{invoiceType}
+			</if>
+			<if test="chargeType != null and chargeType != ''">
+				AND a.charge_type = #{chargeType}
+			</if>
+			<if test="billingContent != null and billingContent != ''">
+				AND a.billing_content = #{billingContent}
+			</if>
+			<if test="projectName != null and projectName != ''">
+				and (wipr.details = #{projectName}
+				or rpr.project_name = #{projectName}
+				)
+			</if>
+			AND a.receipt_money = 0
+		</where>
+	</select>
+
+	<select id="getInvoiceNumberStr" resultType="java.lang.String">
+		select group_concat(number) from work_invoice_detail where invoice_id = #{invoiceId}
+	</select>
+
 
 </mapper>

+ 13 - 2
src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectRecordsForm.jsp

@@ -161,8 +161,18 @@
                         return flags;
                     }
                 }
-                $("#inputForm").submit();
-                return true;
+                var subbmitFlag = $("#subbmitFlag").val();
+                subbmitFlag ++;
+                $("#subbmitFlag").val(subbmitFlag)
+                console.log(subbmitFlag)
+
+                if(1 === subbmitFlag){
+                    $("#inputForm").submit();
+                    return true;
+                }else{
+                    parent.layer.msg("请勿重复提交!", {icon: 5});
+                    return false;
+                }
             }else{
                 parent.layer.msg("信息未填写完整!", {icon: 5});
             }
@@ -905,6 +915,7 @@
             <form:hidden path="id"/>
             <form:hidden path="workContractInfo.client.id" id="contractClientId" value="${workContractInfo.client.id}"/>
             <input type="hidden" id="flagFile" value="">
+            <input type="hidden" id="subbmitFlag" value="0">
             <input type="hidden" id="createReportFlag" name="createReportFlag" value="${ruralProjectRecords.createReportFlag}">
             <input type="hidden" id="emergencyProjectFlag" name="emergencyProject" value="${ruralProjectRecords.emergencyProject}">
 

+ 6 - 0
src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/projectcontentinfo/new/projectRecordsMessageModify.jsp

@@ -497,6 +497,12 @@
             bornTemplete(list, idx+1, tpl, row, idx);
         }
 
+        function delRow(obj, prefix){
+            var id = $(prefix+"_id");
+            var delFlag = $(prefix+"_delFlag");
+            $(obj).parent().parent().remove();
+        }
+
         function bornTemplete(list, idx, tpl, row, idx1){
             $(list).append(Mustache.render(tpl, {
                 idx: idx, delBtn: true, row: row,

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllForm.jsp

@@ -406,7 +406,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1198,6 +1208,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label double-line"><span class="require-item contractType">*</span>开票内容要求:</label>
 					<div class="layui-input-block">

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllModify.jsp

@@ -355,7 +355,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1123,6 +1133,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceAudit.jsp

@@ -194,6 +194,12 @@
 					<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 				</div>
 			</div>
+			<div class="layui-item layui-col-sm6 redInvoice">
+				<label class="layui-form-label">关联发票号:</label>
+				<div class="layui-input-block">
+					<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+				</div>
+			</div>
 			<div class="layui-item layui-col-sm6">
 				<label class="layui-form-label">开票内容要求:</label>
 				<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceAuditEnd.jsp

@@ -695,6 +695,12 @@
 					<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 				</div>
 			</div>
+			<div class="layui-item layui-col-sm6 redInvoice">
+				<label class="layui-form-label">关联发票号:</label>
+				<div class="layui-input-block">
+					<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+				</div>
+			</div>
 			<div class="layui-item layui-col-sm12">
 				<label class="layui-form-label">开票内容要求:</label>
 				<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineAudit.jsp

@@ -573,6 +573,12 @@
 						<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineAuditEnd.jsp

@@ -611,6 +611,12 @@
 					<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 				</div>
 			</div>
+			<div class="layui-item layui-col-sm6 redInvoice">
+				<label class="layui-form-label">关联发票号:</label>
+				<div class="layui-input-block">
+					<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+				</div>
+			</div>
 			<div class="layui-item layui-col-sm12">
 				<label class="layui-form-label">开票内容要求:</label>
 				<div class="layui-input-block">

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceExamineModify.jsp

@@ -228,7 +228,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -953,6 +963,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceModify.jsp

@@ -368,7 +368,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1130,6 +1140,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label">开票内容要求:</label>

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectAudit.jsp

@@ -632,6 +632,12 @@
 						<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectAuditEnd.jsp

@@ -676,6 +676,12 @@
 					<input id="redInvoiceRelevancyNumber" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 				</div>
 			</div>
+			<div class="layui-item layui-col-sm6 redInvoice">
+				<label class="layui-form-label">关联发票号:</label>
+				<div class="layui-input-block">
+					<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+				</div>
+			</div>
 			<div class="layui-item layui-col-sm12">
 				<label class="layui-form-label">开票内容要求:</label>
 				<div class="layui-input-block">

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceNotProjectModify.jsp

@@ -353,7 +353,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1118,6 +1128,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 17 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceTwoForm.jsp

@@ -448,7 +448,17 @@
         }
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1256,6 +1266,12 @@
 										labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label double-line"><span class="require-item contractType">*</span>开票内容要求:</label>

+ 17 - 2
src/main/webapp/webpage/modules/workinvoice/workInvoiceTwoModify.jsp

@@ -365,7 +365,17 @@
 
 
 		function setInvoiceValue (obj){
-
+			$.ajax({
+				type:'post',
+				url:'${ctx}/workinvoiceTwo/workinvoiceTwo/getInvoiceNumberStr',
+				data:{
+					"invoiceId":obj
+				},
+				success:function(data){
+					var d = JSON.parse(data);
+					$("#invoiceNumberStr").val(d.data);
+				}
+			})
 		}
 
 		function moneyChange(obj){
@@ -1130,7 +1140,12 @@
 										   labelValue="${workInvoice.redInvoiceRelevancyNumber}" cssClass="form-control judgment layui-input" fieldLabels="单位" fieldKeys="number" searchLabel="红字发票" searchKey="number" ></sys:selectinvoice>
 					</div>
 				</div>
-
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12 with-textarea">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">

+ 6 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceView.jsp

@@ -228,6 +228,12 @@
 						<input id="redInvoiceRelevancyNumber"  style="background-color: #f1f1f1" name="redInvoiceRelevancyNumber" htmlEscape="false" readonly="true"   class="form-control layui-input" value="${workInvoice.redInvoiceRelevancyNumber}"/>
 					</div>
 				</div>
+				<div class="layui-item layui-col-sm6 redInvoice">
+					<label class="layui-form-label">关联发票号:</label>
+					<div class="layui-input-block">
+						<input id="invoiceNumberStr" htmlEscape="false" readonly="true" class="form-control layui-input" value=""/>
+					</div>
+				</div>
 				<div class="layui-item layui-col-sm12">
 					<label class="layui-form-label">开票内容要求:</label>
 					<div class="layui-input-block">