Explorar el Código

附件上传路径修改

user5 hace 4 años
padre
commit
688f3ff0b9
Se han modificado 81 ficheros con 902 adiciones y 185 borrados
  1. 37 12
      src/main/java/com/jeeplus/common/bos/BosController.java
  2. 1 1
      src/main/java/com/jeeplus/modules/caseinfo/service/CaseInfoService.java
  3. 1 0
      src/main/java/com/jeeplus/modules/isignature/service/ISignatureDocumentService.java
  4. 4 1
      src/main/java/com/jeeplus/modules/leaveapply/service/LeaveApplyService.java
  5. 1 1
      src/main/java/com/jeeplus/modules/oaall/service/OaAllService.java
  6. 1 1
      src/main/java/com/jeeplus/modules/oabuy/service/OaBuyService.java
  7. 1 1
      src/main/java/com/jeeplus/modules/officehonor/service/OfficehonorService.java
  8. 1 1
      src/main/java/com/jeeplus/modules/officeintroduce/service/OfficeintroduceService.java
  9. 1 1
      src/main/java/com/jeeplus/modules/officelicense/service/OfficeLicenseService.java
  10. 4 1
      src/main/java/com/jeeplus/modules/officequalify/service/OfficequalifyService.java
  11. 4 1
      src/main/java/com/jeeplus/modules/processProjectPlan/service/ProcessProjectPlanService.java
  12. 4 1
      src/main/java/com/jeeplus/modules/projectAccessory/service/ProjectAccessoryService.java
  13. 4 1
      src/main/java/com/jeeplus/modules/projectAccessory/service/ProjectTemplateService.java
  14. 5 2
      src/main/java/com/jeeplus/modules/projectConstruction/web/ContractController.java
  15. 29 2
      src/main/java/com/jeeplus/modules/projectType/service/ProjectResultsFileTemplateService.java
  16. 4 1
      src/main/java/com/jeeplus/modules/projectVisa/service/ProjectVisaService.java
  17. 5 2
      src/main/java/com/jeeplus/modules/projectVisa/web/ProjectDesignController.java
  18. 5 2
      src/main/java/com/jeeplus/modules/projectVisa/web/ProjectVisaController.java
  19. 5 2
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectBasedDataService.java
  20. 4 1
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectContentDataService.java
  21. 8 5
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportChangeService.java
  22. 29 4
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportDataService.java
  23. 4 1
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportRecordService.java
  24. 1 0
      src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectcontentinfoService.java
  25. 8 8
      src/main/java/com/jeeplus/modules/projectcontroltable/service/ProjectControlTableService.java
  26. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/ProjectPlanService.java
  27. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/ProjectRecordsAlterService.java
  28. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/ProjectRecordsService.java
  29. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/armorForMaterials/ArmorForMaterialsService.java
  30. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/concealProject/ConcealProjectService.java
  31. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/distributionSettlement/DistributionSettlementService.java
  32. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/ftlTemplate/FtlTemplateService.java
  33. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/implementStage/ProjectInterimPaymentService.java
  34. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/material/MaterialService.java
  35. 4 1
      src/main/java/com/jeeplus/modules/projectrecord/service/monthly/MonthlyConsultationReportService.java
  36. 5 2
      src/main/java/com/jeeplus/modules/projectrecord/web/check/ChechDesignController.java
  37. 5 2
      src/main/java/com/jeeplus/modules/projectrecord/web/check/CheckVisaController.java
  38. 5 2
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageService.java
  39. 4 1
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsAlterService.java
  40. 4 1
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsDownMessageService.java
  41. 4 1
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsService.java
  42. 5 2
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/SubProjectInfoService.java
  43. 119 2
      src/main/java/com/jeeplus/modules/sys/service/WorkattachmentService.java
  44. 78 18
      src/main/java/com/jeeplus/modules/utils/SftpClientUtil.java
  45. 84 0
      src/main/java/com/jeeplus/modules/utils/ViewFileController.java
  46. 137 0
      src/main/java/com/jeeplus/modules/utils/ViewFileUtil.java
  47. 4 1
      src/main/java/com/jeeplus/modules/workadministrativeatamp/service/WorkAdministrativeAtampService.java
  48. 8 5
      src/main/java/com/jeeplus/modules/workattendance/service/WorkAttendanceInfoService.java
  49. 24 0
      src/main/java/com/jeeplus/modules/workbidingdocument/service/WorkBidingDocumentService.java
  50. 4 4
      src/main/java/com/jeeplus/modules/workbidproject/service/WorkBidProjectService.java
  51. 7 4
      src/main/java/com/jeeplus/modules/workclientinfo/service/WorkClientInfoService.java
  52. 16 17
      src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractInfoService.java
  53. 1 0
      src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractReviewService.java
  54. 1 0
      src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoAlterController.java
  55. 40 24
      src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java
  56. 1 0
      src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoInvalidateController.java
  57. 4 1
      src/main/java/com/jeeplus/modules/workcontractrecord/service/WorkContractRecordService.java
  58. 4 1
      src/main/java/com/jeeplus/modules/workdailyroutine/service/WorkDailyRoutineDetailService.java
  59. 4 1
      src/main/java/com/jeeplus/modules/workdailyroutine/service/WorkDailyRoutineService.java
  60. 4 1
      src/main/java/com/jeeplus/modules/workfield/service/WorkFieldService.java
  61. 6 3
      src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullManageService.java
  62. 4 1
      src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullRecordService.java
  63. 4 1
      src/main/java/com/jeeplus/modules/workincomingmessage/service/WorkIncomingMessageService.java
  64. 1 0
      src/main/java/com/jeeplus/modules/worklog/service/WorkLogService.java
  65. 4 1
      src/main/java/com/jeeplus/modules/workout/service/WorkOutService.java
  66. 4 1
      src/main/java/com/jeeplus/modules/workovertime/service/WorkOvertimeService.java
  67. 1 1
      src/main/java/com/jeeplus/modules/workperformance/service/WorkPerformanceService.java
  68. 4 1
      src/main/java/com/jeeplus/modules/workprojectcompletion/service/WorkProjectCompletionService.java
  69. 4 1
      src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementService.java
  70. 4 1
      src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementTypeService.java
  71. 5 2
      src/main/java/com/jeeplus/modules/workrelationship/service/WorkRelationshipService.java
  72. 4 1
      src/main/java/com/jeeplus/modules/worksendmessage/service/WorkSendMessageService.java
  73. 4 5
      src/main/java/com/jeeplus/modules/workstaff/service/WorkStaffBasicInfoService.java
  74. 4 1
      src/main/java/com/jeeplus/modules/workstock/service/WorkStockService.java
  75. 5 2
      src/main/java/com/jeeplus/modules/workstockcontract/service/WorkStockContractService.java
  76. 4 1
      src/main/java/com/jeeplus/modules/worksupplier/service/WorkSupplierService.java
  77. 25 0
      src/main/java/com/jeeplus/modules/workvisa/service/WorkVisaService.java
  78. 13 9
      src/main/resources/jeeplus.properties
  79. 1 0
      src/main/resources/spring-context-shiro.xml
  80. 9 0
      src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectRecordsAdminModify.jsp
  81. 9 0
      src/main/webapp/webpage/modules/ruralprojectrecords/ruralProjectRecordsAdminModify.jsp

+ 37 - 12
src/main/java/com/jeeplus/common/bos/BosController.java

@@ -1,5 +1,6 @@
 package com.jeeplus.common.bos;
 
+import com.jeeplus.common.config.Global;
 import com.jeeplus.common.utils.FtlUtils;
 import com.jeeplus.modules.utils.SftpClientUtil;
 import org.springframework.mock.web.MockMultipartFile;
@@ -17,22 +18,46 @@ import java.util.Map;
 @Controller
 @RequestMapping(value = "${adminPath}/bos/")
 public class BosController {
+    private final static String uploadMode = Global.getConfig("remoteServer.uploadMode");
     @RequestMapping("upload")
     @ResponseBody
     public Map upload(HttpServletRequest request, MultipartFile file){
         Map map = new HashMap();
-        String storeAs = request.getParameter("storeAs");
-        try {
-            String path = "/"+storeAs;
-            BOSClientUtil bosClientUtil = new BOSClientUtil();
-            InputStream inputStream = file.getInputStream();
-            String upload = bosClientUtil.upload(path, inputStream);
-            map.put("msg","上传成功");
-            map.put("code","1");
-            map.put("url",upload);
-        }catch (Exception e){
-            map.put("msg","上传失败");
-            map.put("code","0");
+       // 文件存储方式(0:本地服务器存储。1:云端存储)
+        if("1".equals(uploadMode)){
+            String storeAs = request.getParameter("storeAs");
+            try {
+                String path = "/"+storeAs;
+                BOSClientUtil bosClientUtil = new BOSClientUtil();
+                InputStream inputStream = file.getInputStream();
+                String upload = bosClientUtil.upload(path, inputStream);
+                map.put("msg","上传成功");
+                map.put("code","1");
+                map.put("url",upload);
+            }catch (Exception e){
+                map.put("msg","上传失败");
+                map.put("code","0");
+            }
+        }else{
+
+            try {
+                //MultipartFile转File
+                File srcFile = transformMultipartFile(file);
+                SftpClientUtil fileUploadUtil = new SftpClientUtil();
+                Calendar date = Calendar.getInstance();
+                String year = String.valueOf(date.get(Calendar.YEAR));
+                String month = String.valueOf(date.get(Calendar.MONTH)+1);
+                String day = String.valueOf(date.get(Calendar.DAY_OF_MONTH));
+                String uploadPath = "/"+year+"/"+month+"/"+day;
+                String uploadFile = fileUploadUtil.uploadFile(uploadPath, srcFile, srcFile.getName());
+                map.put("msg","上传成功");
+                map.put("code","1");
+                map.put("url",uploadFile);
+            } catch (Exception e) {
+                e.printStackTrace();
+                map.put("msg","上传失败");
+                map.put("code","0");
+            }
         }
         return map;
     }

+ 1 - 1
src/main/java/com/jeeplus/modules/caseinfo/service/CaseInfoService.java

@@ -165,7 +165,7 @@ public class CaseInfoService extends CrudService<CaseInfoDao, CaseInfo> {
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("66");
-			List<WorkClientAttachment> list = workClientAttachmentDao.findList(workClientAttachment);
+			List<WorkClientAttachment> list = workattachmentService.getAttachmentList(workClientAttachment);
 			if(list!=null&&list.size()>0){
 				caseInfo.setWorkAttachments(list);
 			}

+ 1 - 0
src/main/java/com/jeeplus/modules/isignature/service/ISignatureDocumentService.java

@@ -17,6 +17,7 @@ import com.jeeplus.modules.isignature.workthread.ImageConvertThread;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.apache.commons.io.FilenameUtils;
 import org.springframework.beans.factory.annotation.Autowired;

+ 4 - 1
src/main/java/com/jeeplus/modules/leaveapply/service/LeaveApplyService.java

@@ -25,6 +25,7 @@ import com.jeeplus.modules.sys.dao.OfficeDao;
 import com.jeeplus.modules.sys.dao.UserDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.utils.ErrorCode;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -123,6 +124,8 @@ public class LeaveApplyService extends CrudService<LeaveApplyDao, LeaveApply> {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkAttendanceInfoDao workAttendanceInfoDao;
     @Autowired
     private LeaveCountService leaveCountService;
@@ -138,7 +141,7 @@ public class LeaveApplyService extends CrudService<LeaveApplyDao, LeaveApply> {
             WorkClientAttachment workClientAttachment = new WorkClientAttachment();
             workClientAttachment.setAttachmentId(id);
             workClientAttachment.setAttachmentFlag("114");
-            leaveApply.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+            leaveApply.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
         }
         return leaveApply;
     }

+ 1 - 1
src/main/java/com/jeeplus/modules/oaall/service/OaAllService.java

@@ -81,7 +81,7 @@ public class OaAllService extends CrudService<OaAllDao, OaAll> {
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("67");
-		List<WorkClientAttachment> list = workClientAttachmentDao.findList(workClientAttachment);
+		List<WorkClientAttachment> list = workattachmentService.getAttachmentList(workClientAttachment);
 		if(list.size() > 0){
 			oaAll.setWorkAttachments(list);
 		}

+ 1 - 1
src/main/java/com/jeeplus/modules/oabuy/service/OaBuyService.java

@@ -86,7 +86,7 @@ public class OaBuyService extends CrudService<OaBuyDao, OaBuy> {
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("69");//附件类型(files_info)
-		List<WorkClientAttachment> list = workClientAttachmentDao.findList(workClientAttachment);
+		List<WorkClientAttachment> list = workattachmentService.getAttachmentList(workClientAttachment);
 		if(list.size() > 0){
 			oaBuy.setWorkAttachments(list);
 		}

+ 1 - 1
src/main/java/com/jeeplus/modules/officehonor/service/OfficehonorService.java

@@ -50,7 +50,7 @@ public class OfficehonorService extends CrudService<OfficehonorDao, Officehonor>
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("110");
-		officequalify.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		officequalify.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return officequalify;
 	}
 	

+ 1 - 1
src/main/java/com/jeeplus/modules/officeintroduce/service/OfficeintroduceService.java

@@ -47,7 +47,7 @@ public class OfficeintroduceService extends CrudService<OfficeintroduceDao, Offi
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("111");
-		officeintroduce.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		officeintroduce.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return officeintroduce;
 	}
 	

+ 1 - 1
src/main/java/com/jeeplus/modules/officelicense/service/OfficeLicenseService.java

@@ -48,7 +48,7 @@ public class OfficeLicenseService extends CrudService<OfficeLicenseDao, OfficeLi
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("112");
-		officequalify.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		officequalify.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return officequalify;
 	}
 	

+ 4 - 1
src/main/java/com/jeeplus/modules/officequalify/service/OfficequalifyService.java

@@ -10,6 +10,7 @@ import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -36,6 +37,8 @@ public class OfficequalifyService extends CrudService<OfficequalifyDao, Officequ
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private SerialNumTplService serialNumTplService;
 	@Autowired
 	private OfficeService officeService;
@@ -46,7 +49,7 @@ public class OfficequalifyService extends CrudService<OfficequalifyDao, Officequ
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("109");
-		officequalify.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		officequalify.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return officequalify;
 	}
 	

+ 4 - 1
src/main/java/com/jeeplus/modules/processProjectPlan/service/ProcessProjectPlanService.java

@@ -6,6 +6,7 @@ import com.jeeplus.modules.processProjectPlan.dao.ProcessProjectPlanDao;
 import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -31,6 +32,8 @@ public class ProcessProjectPlanService extends CrudService<ProcessProjectPlanDao
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
 
 
@@ -42,7 +45,7 @@ public class ProcessProjectPlanService extends CrudService<ProcessProjectPlanDao
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(projectId);
         attchment.setAttachmentFlag("131");
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         return attachments;
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/projectAccessory/service/ProjectAccessoryService.java

@@ -11,6 +11,7 @@ import com.jeeplus.modules.projectAccessory.dao.ProjectAccessoryDao;
 import com.jeeplus.modules.projectAccessory.entity.ProjectAccessoryInfo;
 import com.jeeplus.modules.projectAccessory.entity.ProjectAccessoryTree;
 import com.jeeplus.modules.sys.entity.Office;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -31,6 +32,8 @@ public class ProjectAccessoryService extends TreeService<ProjectAccessoryDao, Pr
 
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
 	public ProjectAccessoryInfo get(String id) {
 		return super.get(id);
@@ -243,7 +246,7 @@ public class ProjectAccessoryService extends TreeService<ProjectAccessoryDao, Pr
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(attachmentId);
         attchment.setProjectId(projectId);
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.getList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         return attachments;
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/projectAccessory/service/ProjectTemplateService.java

@@ -14,6 +14,7 @@ import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -36,6 +37,8 @@ public class ProjectTemplateService extends TreeService<ProjectTemplateDao, Proj
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private RuralProjectRecordsService projectRecordsService;
     @Autowired
     private ProjectAccessoryRelationService projectAccessoryRelationService;
@@ -242,7 +245,7 @@ public class ProjectTemplateService extends TreeService<ProjectTemplateDao, Proj
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setProjectId(projectId);
             attchment.setAttachmentId(info.getId());
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.getList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getList(attchment);
             if(attachments.size()>0){
                 iterator.remove();
             }

+ 5 - 2
src/main/java/com/jeeplus/modules/projectConstruction/web/ContractController.java

@@ -39,6 +39,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.DictService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -91,6 +92,8 @@ public class ContractController extends BaseController {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectControlTableService projectControlTableService;
     @Autowired
     private ActTaskService actTaskService;
@@ -263,7 +266,7 @@ public class ContractController extends BaseController {
             //获取附件信息  并放入实施阶段合同信息中
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(constructionContract.getId());
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             constructionContract.setWorkAttachments(attachments);
         } else {
             //新增
@@ -298,7 +301,7 @@ public class ContractController extends BaseController {
         //获取附件信息
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(constructionContract.getId());
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         constructionContract.setWorkAttachments(attachments);
         model.addAttribute("constructionContract", constructionContract);
         return "modules/projectConstruction/projectConstructionView";

+ 29 - 2
src/main/java/com/jeeplus/modules/projectType/service/ProjectResultsFileTemplateService.java

@@ -7,7 +7,10 @@ import com.jeeplus.modules.projectType.dao.ProjectResultsFileTemplateDao;
 import com.jeeplus.modules.projectType.entity.ProjectTemplateType;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectContentTreeData;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportTreeData;
+import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -32,7 +35,9 @@ public class ProjectResultsFileTemplateService  extends CrudService<ProjectResul
 
     public ProjectTemplateType getProjectType(String id) {
         ProjectTemplateType projectType = dao.get(id);
-        projectType.setWorkAttachments(dao.getAttachmentByProjectTypeId(projectType.getId()));
+        List<WorkClientAttachment> list = dao.getAttachmentByProjectTypeId(projectType.getId());
+        workClientAttachmentManage(list);
+        projectType.setWorkAttachments(list);
         return projectType;
     }
 
@@ -145,7 +150,9 @@ public class ProjectResultsFileTemplateService  extends CrudService<ProjectResul
     @Transactional(readOnly = false)
     public List<WorkClientAttachment> getWorkClientAttachmentList(String typeId) {
         //根据父节点查询对应的附件信息
-        return dao.getWorkClientAttachmentList(typeId);
+        List<WorkClientAttachment> list = dao.getWorkClientAttachmentList(typeId);
+        workClientAttachmentManage(list);
+        return list;
     }
 
 
@@ -154,4 +161,24 @@ public class ProjectResultsFileTemplateService  extends CrudService<ProjectResul
         return dao.getTemplateForm(typeId);
     }
 
+    /**
+     * 数据处理
+     * @param list
+     */
+    public static void workClientAttachmentManage(List<WorkClientAttachment> list){
+        ViewFileUtil viewFileUtil = new ViewFileUtil();
+        // 判断文件存储方式(0:本地服务器存储。1:云端存储)
+        if("0".equals(viewFileUtil.getUploadMode())){
+            //获取本地服务器ip和端口号
+            String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+            //创建展示附件访问方法路径
+            String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+            for (WorkClientAttachment info: list) {
+                String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+                //变更新的文件查看地址
+                info.setUrl(newUrl);
+            }
+        }
+    }
+
 }

+ 4 - 1
src/main/java/com/jeeplus/modules/projectVisa/service/ProjectVisaService.java

@@ -18,6 +18,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectPaymentTreeData;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -48,6 +49,8 @@ public class ProjectVisaService extends CrudService<ProjectVisaDao,ProjectVisa>
     private ProjectContentDataService projectContentDataService;
     @Autowired
     private WorkattachmentDao workattachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
     @Transactional(readOnly = true)
     public ProjectVisa getVisa(ProjectVisa projectVisa) {
@@ -110,7 +113,7 @@ public class ProjectVisaService extends CrudService<ProjectVisaDao,ProjectVisa>
         if(projectContentData!=null){
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 5 - 2
src/main/java/com/jeeplus/modules/projectVisa/web/ProjectDesignController.java

@@ -24,6 +24,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.projectrecord.service.ProjectImplementEarlyService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -59,6 +60,8 @@ public class ProjectDesignController extends BaseController {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectControlTableService projectControlTableService;
     @Autowired
     private ProjectContentDataService projectContentDataService;
@@ -217,7 +220,7 @@ public class ProjectDesignController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //获取附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{
@@ -238,7 +241,7 @@ public class ProjectDesignController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //获取附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{

+ 5 - 2
src/main/java/com/jeeplus/modules/projectVisa/web/ProjectVisaController.java

@@ -26,6 +26,7 @@ import com.jeeplus.modules.sys.entity.Area;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -67,6 +68,8 @@ public class ProjectVisaController extends BaseController {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectControlTableService projectControlTableService;
     @Autowired
     private ProjectContentDataService projectContentDataService;
@@ -226,7 +229,7 @@ public class ProjectVisaController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //获取附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{
@@ -245,7 +248,7 @@ public class ProjectVisaController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //获取附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{

+ 5 - 2
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectBasedDataService.java

@@ -12,6 +12,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectBasedData;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -29,6 +30,8 @@ import java.util.List;
 public class ProjectBasedDataService extends CrudService<ProjectBasedDataDao, ProjectBasedData> {
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	public ProjectBasedData get(String id) {
 		ProjectBasedData projectBasedData = super.get(id);
@@ -36,7 +39,7 @@ public class ProjectBasedDataService extends CrudService<ProjectBasedDataDao, Pr
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
             workattachment.setAttachmentFlag("84");
-            projectBasedData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectBasedData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
 		return projectBasedData;
 	}
@@ -47,7 +50,7 @@ public class ProjectBasedDataService extends CrudService<ProjectBasedDataDao, Pr
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			workattachment.setAttachmentFlag("84");
-			projectBasedData.setWorkAttachments(workattachmentDao.getBasedDataAndWorkAttachmentInfo(workattachment));
+			projectBasedData.setWorkAttachments(workattachmentService.getBasedDataAndWorkAttachmentInfo(workattachment));
 		}
 		return projectBasedData;
 	}

+ 4 - 1
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectContentDataService.java

@@ -18,6 +18,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectRecordTreeData;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectContentData;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.workreview.entity.WorkReviewAudit;
 import com.jeeplus.modules.workreview.entity.WorkReviewStandard;
 import com.jeeplus.modules.workreview.service.WorkReviewStandardService;
@@ -42,6 +43,8 @@ public class ProjectContentDataService extends CrudService<ProjectContentDataDao
     @Autowired
     private WorkattachmentDao workattachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectBasedDataDao projectBasedDataDao;
     @Autowired
     private ProjectcontentinfoDao projectcontentinfoDao;
@@ -53,7 +56,7 @@ public class ProjectContentDataService extends CrudService<ProjectContentDataDao
         if(projectContentData!=null){
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 8 - 5
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportChangeService.java

@@ -23,6 +23,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -63,6 +64,8 @@ public class ProjectReportChangeService extends CrudService<ProjectReportChangeD
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private RuntimeService runtimeService;
 	@Autowired
 	protected TaskService taskService;
@@ -106,11 +109,11 @@ public class ProjectReportChangeService extends CrudService<ProjectReportChangeD
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			workattachment.setAttachmentFlag("87");
-			list.addAll(workattachmentDao.findList(workattachment));
+			list.addAll(workattachmentService.findList(workattachment));
 			Workattachment attachment = new Workattachment();
 			attachment.setAttachmentId(projectReportData.getReportId());
 			attachment.setAttachmentFlag("86");
-			list.addAll(workattachmentDao.findList(attachment));
+			list.addAll(workattachmentService.findList(attachment));
 			projectReportData.setWorkAttachments(list);
 			/*if (projectReportData.getSignCostOne() != null && StringUtils.isNotBlank(projectReportData.getSignCostOne().getId())) {
 				projectReportData.setSignCostOne(UserUtils.get(projectReportData.getSignCostOne().getId()));
@@ -135,11 +138,11 @@ public class ProjectReportChangeService extends CrudService<ProjectReportChangeD
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			workattachment.setAttachmentFlag("87");
-			list.addAll(workattachmentDao.findList(workattachment));
+			list.addAll(workattachmentService.findList(workattachment));
 			Workattachment attachment = new Workattachment();
 			attachment.setAttachmentId(projectReportData.getReportId());
 			attachment.setAttachmentFlag("86");
-			list.addAll(workattachmentDao.findList(attachment));
+			list.addAll(workattachmentService.findList(attachment));
 			return list;
 		}else {
 			return new ArrayList<>();
@@ -156,7 +159,7 @@ public class ProjectReportChangeService extends CrudService<ProjectReportChangeD
 		}
 		attachment.setAttachmentId(reportId);
 		attachment.setAttachmentFlag("86");
-		list.addAll(workattachmentDao.findList(attachment));
+		list.addAll(workattachmentService.findList(attachment));
 		projectReportData.setWorkAttachments(list);
 		/*if (projectReportData.getSignCostOne()!=null && StringUtils.isNotBlank(projectReportData.getSignCostOne().getId())){
 			projectReportData.setSignCostOne(UserUtils.get(projectReportData.getSignCostOne().getId()));

+ 29 - 4
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportDataService.java

@@ -29,7 +29,9 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.entity.WorkActivityProcess;
@@ -73,6 +75,8 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private RuntimeService runtimeService;
 	@Autowired
 	protected TaskService taskService;
@@ -119,7 +123,7 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentFlag("86");
 			workattachment.setAttachmentId(id);
-			projectReportData.setWorkAttachments(workattachmentDao.findList(workattachment));
+			projectReportData.setWorkAttachments(workattachmentService.findList(workattachment));
 
 			projectReportData.setProjectContentDataList(projectContentDataDao.findReportContent(projectReportData.getId(),"1"));
 			projectReportData.setProjectBasedDataList(projectBasedDataDao.findReportBased(projectReportData.getId(),"3"));
@@ -138,7 +142,7 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentFlag("86");
 			workattachment.setAttachmentId(id);
-			projectReportData.setWorkAttachments(workattachmentDao.findListOnRural(workattachment));
+			projectReportData.setWorkAttachments(workattachmentService.findListOnRural(workattachment));
 			projectReportData.setProjectContentDataList(projectContentDataDao.findReportContent(projectReportData.getId(),"1"));
 			projectReportData.setProjectBasedDataList(projectBasedDataDao.findReportBased(projectReportData.getId(),"3"));
             WorkReviewAudit workReviewAudit = new WorkReviewAudit();
@@ -156,7 +160,7 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			workattachment.setAttachmentFlag("86");
-			return workattachmentDao.findList(workattachment);
+			return workattachmentService.findList(workattachment);
 		}else {
 			return new ArrayList<>();
 		}
@@ -166,7 +170,7 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 		Workattachment workattachment = new Workattachment();
 		workattachment.setAttachmentId(id);
 		workattachment.setAttachmentFlag("86");
-		projectReportData.setWorkAttachments(workattachmentDao.findList(workattachment));
+		projectReportData.setWorkAttachments(workattachmentService.findList(workattachment));
 		if (projectReportData.getSignCostOne()!=null && StringUtils.isNotBlank(projectReportData.getSignCostOne().getId())){
 			projectReportData.setSignCostOne(UserUtils.get(projectReportData.getSignCostOne().getId()));
 		}
@@ -280,6 +284,7 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 		Workattachment workattachment = new Workattachment();
 		workattachment.setPage(page);
 		List<Workattachment> workattachmentList = dao.getContainReportData(projectReportData);
+		attachmentManage(workattachmentList);
 		for (Workattachment attachment : workattachmentList){
             User user = UserUtils.get(attachment.getAttachmentUser());
 			if (null != user){
@@ -290,6 +295,26 @@ public class ProjectReportDataService extends CrudService<ProjectReportDataDao,
 		return page;
 	}
 
+	/**
+	 * 数据处理
+	 * @param list
+	 */
+	public static void attachmentManage(List<Workattachment> list){
+		ViewFileUtil viewFileUtil = new ViewFileUtil();
+		// 判断文件存储方式(0:本地服务器存储。1:云端存储)
+		if("0".equals(viewFileUtil.getUploadMode())){
+			//获取本地服务器ip和端口号
+			String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+			//创建展示附件访问方法路径
+			String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+			for (Workattachment info: list) {
+				String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+				//变更新的文件查看地址
+				info.setUrl(newUrl);
+			}
+		}
+	}
+
 	public Page<ProjectReportData> findInvalidPage(Page<ProjectReportData> page, ProjectReportData entity) {
 		entity.setPage(page);
 		page.setList(dao.findInvalidList(entity));

+ 4 - 1
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectReportRecordService.java

@@ -20,6 +20,7 @@ import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -51,6 +52,8 @@ public class ProjectReportRecordService extends CrudService<ProjectReportRecordD
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private RuntimeService runtimeService;
 	@Autowired
 	protected TaskService taskService;
@@ -94,7 +97,7 @@ public class ProjectReportRecordService extends CrudService<ProjectReportRecordD
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			workattachment.setAttachmentFlag("99");
-			projectReportRecord.setWorkAttachments(workattachmentDao.findList(workattachment));
+			projectReportRecord.setWorkAttachments(workattachmentService.findList(workattachment));
 		}
 		if (projectReportRecord.getSignCostOne()!=null && StringUtils.isNotBlank(projectReportRecord.getSignCostOne().getId())){
 			User signCostOne = UserUtils.get(projectReportRecord.getSignCostOne().getId());

+ 1 - 0
src/main/java/com/jeeplus/modules/projectcontentinfo/service/ProjectcontentinfoService.java

@@ -26,6 +26,7 @@ import com.jeeplus.modules.sys.dao.MainDictDetailDao;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.*;
 import com.jeeplus.modules.sys.service.MainDictService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.service.WorkActivityProcessService;

+ 8 - 8
src/main/java/com/jeeplus/modules/projectcontroltable/service/ProjectControlTableService.java

@@ -493,7 +493,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else {
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "93");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "93");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -508,7 +508,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 						break;
 					}
 
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "89");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "89");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -522,7 +522,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "90");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "90");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -544,7 +544,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "91");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "91");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -568,7 +568,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "92");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "92");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -593,7 +593,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "88");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "88");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -607,7 +607,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "93");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "93");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}
@@ -621,7 +621,7 @@ public class ProjectControlTableService extends CrudService<ProjectControlTableD
 					}else{
 						break;
 					}
-					List<Workattachment> listOfAttachment = workattachmentDao.getListOfAttachment(tableId, "93");
+					List<Workattachment> listOfAttachment = workattachmentService.getListOfAttachment(tableId, "93");
 					for (Workattachment workattachment:listOfAttachment){
 						workattachmentService.deleteFileFromAliyun(workattachment,workattachment.getUrl());
 					}

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/ProjectPlanService.java

@@ -7,6 +7,7 @@ import com.jeeplus.modules.projectrecord.dao.ProjectPlanDao;
 import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -28,6 +29,8 @@ public class ProjectPlanService extends CrudService<ProjectPlanDao, ProjectPlanI
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
 
 
@@ -39,7 +42,7 @@ public class ProjectPlanService extends CrudService<ProjectPlanDao, ProjectPlanI
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(projectId);
         attchment.setAttachmentFlag("131");
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         return attachments;
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/ProjectRecordsAlterService.java

@@ -24,6 +24,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.DictService;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -105,6 +106,8 @@ public class ProjectRecordsAlterService extends CrudService<ProjectRecordsAlterD
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkActivityProcessDao workActivityProcessDao;
 
 	public ProjectRecordsAlter get(String id) {
@@ -958,7 +961,7 @@ public class ProjectRecordsAlterService extends CrudService<ProjectRecordsAlterD
     public void queryWorkAttachment(ProjectRecordsAlter projectRecords) {
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(projectRecords.getId());
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         projectRecords.setWorkAttachments(attachments);
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/ProjectRecordsService.java

@@ -29,6 +29,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -104,6 +105,8 @@ public class ProjectRecordsService extends CrudService<ProjectRecordsDao, Projec
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkClientInfoService workClientInfoService;
 	@Autowired
 	private SerialNumTplService serialNumTplService;
@@ -1301,7 +1304,7 @@ public class ProjectRecordsService extends CrudService<ProjectRecordsDao, Projec
 		WorkClientAttachment attchment = new WorkClientAttachment();
 		attchment.setAttachmentId(projectRecords.getId());
 		attchment.setAttachmentFlag("82");
-		List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+		List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
 		projectRecords.setWorkAttachments(attachments);
 	}
 

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/armorForMaterials/ArmorForMaterialsService.java

@@ -12,6 +12,7 @@ import com.jeeplus.modules.projectrecord.dao.armorForMaterials.ArmorForMaterials
 import com.jeeplus.modules.projectrecord.entity.ConcealProjectInfo;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -43,6 +44,8 @@ public class ArmorForMaterialsService extends CrudService<ArmorForMaterialsDao,
     private WorkFiveDirectionsAffirmService workFiveDirectionsAffirmService;
     @Autowired
     private WorkattachmentDao workattachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
 
     /**
@@ -69,7 +72,7 @@ public class ArmorForMaterialsService extends CrudService<ArmorForMaterialsDao,
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
             //查询对应的附件信息并添加到甲供物资信息表中
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/concealProject/ConcealProjectService.java

@@ -30,6 +30,7 @@ import com.jeeplus.modules.sys.dao.MainDictDetailDao;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.*;
 import com.jeeplus.modules.sys.service.MainDictService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.service.WorkActivityProcessService;
@@ -76,6 +77,8 @@ public class ConcealProjectService extends CrudService<ConcealProjectDao, Concea
 	private WorkConcealProjectService workConcealProjectService;
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	/**
 	 * 获取隐蔽工程量基本信息
@@ -100,7 +103,7 @@ public class ConcealProjectService extends CrudService<ConcealProjectDao, Concea
 			Workattachment workattachment = new Workattachment();
 			workattachment.setAttachmentId(id);
 			//查询并添加对应附件信息
-			projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+			projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
 		}
 		return projectContentData;
 	}

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/distributionSettlement/DistributionSettlementService.java

@@ -12,6 +12,7 @@ import com.jeeplus.modules.projectrecord.dao.distributionSettlement.Distribution
 import com.jeeplus.modules.projectrecord.entity.ConcealProjectInfo;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -44,6 +45,8 @@ public class DistributionSettlementService extends CrudService<DistributionSettl
     private WorkContentBranchAccountService workContentBranchAccountService;
     @Autowired
     private WorkattachmentDao workattachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
     /**
      * 根据合同id查询分布结算信息
@@ -69,7 +72,7 @@ public class DistributionSettlementService extends CrudService<DistributionSettl
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
             //查询并添加附件信息
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/ftlTemplate/FtlTemplateService.java

@@ -9,6 +9,7 @@ import com.jeeplus.modules.projectrecord.entity.FtlTemplateInfo;
 import com.jeeplus.modules.projectrecord.entity.MonthlyInfo;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -27,6 +28,8 @@ public class FtlTemplateService  extends CrudService<FtlTemplateDao, FtlTemplate
 
     @Autowired
     private WorkattachmentDao workattachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
     public FtlTemplateInfo get(String id) {
         return super.get(id);
@@ -93,7 +96,7 @@ public class FtlTemplateService  extends CrudService<FtlTemplateDao, FtlTemplate
         if (StringUtils.isNotBlank(ftlTemplateInfo.getId())){
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(ftlTemplateInfo.getId());
-            List<Workattachment> list = workattachmentDao.findList(workattachment);
+            List<Workattachment> list = workattachmentService.findList(workattachment);
             return list;
         }
         return null;

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/implementStage/ProjectInterimPaymentService.java

@@ -13,6 +13,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectPaymentTreeData;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -39,6 +40,8 @@ public class ProjectInterimPaymentService extends CrudService<ProjectInterimPaym
     @Autowired
     private WorkattachmentDao workattachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkScheduleService workScheduleService;
     @Autowired
     private ProjectContentDataService projectContentDataService;
@@ -69,7 +72,7 @@ public class ProjectInterimPaymentService extends CrudService<ProjectInterimPaym
         if(projectContentData!=null){
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/material/MaterialService.java

@@ -14,6 +14,7 @@ import com.jeeplus.modules.projectrecord.entity.ConcealProjectInfo;
 import com.jeeplus.modules.projectrecord.entity.MaterialProjectInfo;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -41,6 +42,8 @@ public class MaterialService extends CrudService<MaterialDao, MaterialProjectInf
     private WorkMaterialsPriceService workMaterialsPriceService;
     @Autowired
     private WorkattachmentDao workattachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
     @Autowired
     private MaterialDao dao;
@@ -69,7 +72,7 @@ public class MaterialService extends CrudService<MaterialDao, MaterialProjectInf
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
             //查询附件信息并添加
-            projectContentData.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectContentData.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectContentData;
     }

+ 4 - 1
src/main/java/com/jeeplus/modules/projectrecord/service/monthly/MonthlyConsultationReportService.java

@@ -15,6 +15,7 @@ import com.jeeplus.modules.projectreportnum.dao.ProjectReportNumDao;
 import com.jeeplus.modules.projectreportnum.entity.ReportNum;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -31,6 +32,8 @@ public class MonthlyConsultationReportService extends CrudService<MonthlyConsult
     @Autowired
     private WorkattachmentDao workattachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectBasedDataDao projectBasedDataDao;
     @Autowired
     private ProjectReportNumDao projectReportNumDao;
@@ -177,7 +180,7 @@ public class MonthlyConsultationReportService extends CrudService<MonthlyConsult
         if (StringUtils.isNotBlank(monthly.getId())){
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(monthly.getId());
-            List<Workattachment> list = workattachmentDao.findList(workattachment);
+            List<Workattachment> list = workattachmentService.findList(workattachment);
             return list;
         }
         return null;

+ 5 - 2
src/main/java/com/jeeplus/modules/projectrecord/web/check/ChechDesignController.java

@@ -22,6 +22,7 @@ import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
 import com.jeeplus.modules.projectrecord.service.ProjectImplementEarlyService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -55,6 +56,8 @@ public class ChechDesignController extends BaseController {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectControlTableService projectControlTableService;
     @Autowired
     private ProjectContentDataService projectContentDataService;
@@ -191,7 +194,7 @@ public class ChechDesignController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //查询附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{
@@ -216,7 +219,7 @@ public class ChechDesignController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //获取附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{

+ 5 - 2
src/main/java/com/jeeplus/modules/projectrecord/web/check/CheckVisaController.java

@@ -23,6 +23,7 @@ import com.jeeplus.modules.projectrecord.service.ProjectImplementEarlyService;
 import com.jeeplus.modules.projectrecord.service.concealProject.ConcealProjectService;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -56,6 +57,8 @@ public class CheckVisaController extends BaseController {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ConcealProjectService concealProjectService;
     @Autowired
     private ProjectControlTableService projectControlTableService;
@@ -194,7 +197,7 @@ public class CheckVisaController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //查询附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{
@@ -219,7 +222,7 @@ public class CheckVisaController extends BaseController {
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(projectVisa.getId());
             //查询附件信息
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             visa.setWorkAttachments(attachments);
             model.addAttribute("projectVisa", visa);
         }else{

+ 5 - 2
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageService.java

@@ -35,6 +35,7 @@ import com.jeeplus.modules.ruralprojectrecords.utils.RuralProjectReportedUtil;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.*;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.utils.MapToXmlUtil;
@@ -92,6 +93,8 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkClientInfoService workClientInfoService;
     @Autowired
     private ProjectcontentinfoDao projectcontentinfoDao;
@@ -1333,7 +1336,7 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(projectReportRecord.getId());
             workattachment.setAttachmentFlag("99");
-            projectReportRecord.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectReportRecord.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         if (projectReportRecord.getSignCostOne()!=null && com.jeeplus.common.utils.StringUtils.isNotBlank(projectReportRecord.getSignCostOne().getId())){
             User signCostOne = UserUtils.get(projectReportRecord.getSignCostOne().getId());
@@ -1406,7 +1409,7 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
     public void queryWorkAttachment(RuralProjectRecords projectRecords) {
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(projectRecords.getId());
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         projectRecords.setWorkAttachments(attachments);
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsAlterService.java

@@ -22,6 +22,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.DictService;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -101,6 +102,8 @@ public class RuralProjectRecordsAlterService extends CrudService<RuralProjectRec
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkActivityProcessDao workActivityProcessDao;
 
 	public RuralProjectRecordsAlter get(String id) {
@@ -875,7 +878,7 @@ public class RuralProjectRecordsAlterService extends CrudService<RuralProjectRec
     public void queryWorkAttachment(RuralProjectRecordsAlter projectRecords) {
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(projectRecords.getId());
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
         projectRecords.setWorkAttachments(attachments);
     }
 

+ 4 - 1
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsDownMessageService.java

@@ -15,6 +15,7 @@ import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -51,6 +52,8 @@ public class RuralProjectRecordsDownMessageService extends CrudService<RuralProj
     @Autowired
     private WorkattachmentDao workattachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private IdentityService identityService;
     @Autowired
     private WorkActivityMenuService workActivityMenuService;
@@ -80,7 +83,7 @@ public class RuralProjectRecordsDownMessageService extends CrudService<RuralProj
             projectReportRecord.setReport(reportData);
             Workattachment workattachment = new Workattachment();
             workattachment.setAttachmentId(id);
-            projectReportRecord.setWorkAttachments(workattachmentDao.findList(workattachment));
+            projectReportRecord.setWorkAttachments(workattachmentService.findList(workattachment));
         }
         return projectReportRecord;
     }

+ 4 - 1
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsService.java

@@ -30,6 +30,7 @@ import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -107,6 +108,8 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkClientInfoService workClientInfoService;
 	@Autowired
 	private SerialNumTplService serialNumTplService;
@@ -1146,7 +1149,7 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
 	public void queryWorkAttachment(RuralProjectRecords projectRecords) {
 		WorkClientAttachment attchment = new WorkClientAttachment();
 		attchment.setAttachmentId(projectRecords.getId());
-		List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+		List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
 		projectRecords.setWorkAttachments(attachments);
 	}
 

+ 5 - 2
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/SubProjectInfoService.java

@@ -18,6 +18,7 @@ import com.jeeplus.modules.ruralprojectrecords.utils.ImportExcelUtil;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.apache.commons.compress.archivers.sevenz.SevenZArchiveEntry;
@@ -52,6 +53,8 @@ public class SubProjectInfoService extends CrudService<SubProjectInfoDao, SubPro
     @Autowired
     private WorkattachmentDao workattachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private ProjectTemplateService projectTemplateService;
     @Autowired
     private RuralProjectMessageService ruralProjectMessageService;
@@ -205,7 +208,7 @@ public class SubProjectInfoService extends CrudService<SubProjectInfoDao, SubPro
         Workattachment workattachment = new Workattachment();
         workattachment.setAttachmentId(subProjectInfo.getId());
         //查询附件信息并添加
-        subProjectInfo.setWorkAttachments(workattachmentDao.findList(workattachment));
+        subProjectInfo.setWorkAttachments(workattachmentService.findList(workattachment));
     }
 
     /**
@@ -763,7 +766,7 @@ public class SubProjectInfoService extends CrudService<SubProjectInfoDao, SubPro
                         }
                         if(StringUtils.isNotBlank(workattachment.getDivIdType())){
                             //查询附件信息并添加
-                            List<Workattachment> workattachmentList = workattachmentDao.findList(workattachment);
+                            List<Workattachment> workattachmentList = workattachmentService.findList(workattachment);
                             if(0 != workattachmentList.size()) {
                                 for (Workattachment workattachmentInfo : workattachmentList) {
                                     ProjectReportRecordTree contentData = new ProjectReportRecordTree();

+ 119 - 2
src/main/java/com/jeeplus/modules/sys/service/WorkattachmentService.java

@@ -13,6 +13,9 @@ import com.jeeplus.modules.isignature.service.ISignatureDocumentService;
 import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.Workattachment;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
+import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
+import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
 import org.apache.commons.io.FilenameUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -36,18 +39,47 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
 
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
+	@Autowired
+	private WorkClientAttachmentDao workClientAttachmentDao;
 
 	public Workattachment get(String id) {
 		return super.get(id);
 	}
 
 	public List<Workattachment> findList(Workattachment workattachment) {
-		return super.findList(workattachment);
+		List<Workattachment> list = super.findList(workattachment);
+		//附件数据处理
+		attachmentManage(list);
+		return list;
 	}
 	
 	public Page<Workattachment> findPage(Page<Workattachment> page, Workattachment workattachment) {
 		return super.findPage(page, workattachment);
 	}
+
+	/**
+	 * 项目附件信息
+	 * @param workattachment
+	 * @return
+	 */
+	public List<Workattachment> findListOnRural(Workattachment workattachment) {
+		List<Workattachment> list = dao.findListOnRural(workattachment);
+		//附件数据处理
+		attachmentManage(list);
+		return list;
+	}
+
+	/**
+	 * 系统查询信息
+	 * @param workattachment
+	 * @return
+	 */
+	public List<Workattachment> getBasedDataAndWorkAttachmentInfo(Workattachment workattachment) {
+		List<Workattachment> list = dao.getBasedDataAndWorkAttachmentInfo(workattachment);
+		//附件数据处理
+		attachmentManage(list);
+		return list;
+	}
 	
 	@Transactional(readOnly = false)
 	public void save(Workattachment workattachment) {
@@ -82,6 +114,8 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
 		map.put("companyId",companyId);
 		map.put("attachmentFlag",attachmentFlag);
 		List<Workattachment> workattachmentList = workattachmentDao.getByAttachmentIdAndCompanyIdAndFlag(map);
+		//附件数据处理
+		attachmentManage(workattachmentList);
 		if(workattachmentList!=null && workattachmentList.size()>0){
 			workattachment = workattachmentList.get(0);
 		}
@@ -193,6 +227,20 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
 		if(StringUtils.isNotBlank(attachmentId)){
 			if(StringUtils.isNotBlank(attachmentId) && StringUtils.isNotBlank(type)){
 				workattachmentList = workattachmentDao.getListOfAttachment(attachmentId,type);
+				//附件数据处理
+				attachmentManage(workattachmentList);
+			}
+		}
+		return workattachmentList ;
+	}
+
+	public List<Workattachment> getListOfAttachment(String attachmentId,String type) {
+		List<Workattachment>  workattachmentList = new ArrayList<>();
+		if(StringUtils.isNotBlank(attachmentId)){
+			if(StringUtils.isNotBlank(attachmentId) && StringUtils.isNotBlank(type)){
+				workattachmentList = workattachmentDao.getListOfAttachment(attachmentId,type);
+				//附件数据处理
+				attachmentManage(workattachmentList);
 			}
 		}
 		return workattachmentList ;
@@ -210,7 +258,76 @@ public class WorkattachmentService extends CrudService<WorkattachmentDao, Workat
 		Map<String,String> map = new HashMap<>();
 		map.put("attachmentId",attachmentId);
 		map.put("attachmentFlag",flag);
-		return workattachmentDao.getListByAttachmentIdAndFlag(map);
+		List<Workattachment> list = workattachmentDao.getListByAttachmentIdAndFlag(map);
+		//附件数据处理
+		attachmentManage(list);
+		return list;
 	}
 
+
+
+	/**
+	 * 获取附件信息
+	 * @param workClientAttachment
+	 * @return
+	 */
+	public List<WorkClientAttachment> getAttachmentList(WorkClientAttachment workClientAttachment){
+		List<WorkClientAttachment> list = workClientAttachmentDao.findList(workClientAttachment);
+		//数据处理
+		workClientAttachmentManage(list);
+		return list;
+	}
+
+	/**
+	 * 获取附件信息
+	 * @param workClientAttachment
+	 * @return
+	 */
+	public List<WorkClientAttachment> getList(WorkClientAttachment workClientAttachment){
+		List<WorkClientAttachment> list = workClientAttachmentDao.getList(workClientAttachment);
+		//数据处理
+		workClientAttachmentManage(list);
+		return list;
+	}
+
+	/**
+	 * 数据处理
+	 * @param list
+	 */
+	public static void workClientAttachmentManage(List<WorkClientAttachment> list){
+		ViewFileUtil viewFileUtil = new ViewFileUtil();
+		// 判断文件存储方式(0:本地服务器存储。1:云端存储)
+		if("0".equals(viewFileUtil.getUploadMode())){
+			//获取本地服务器ip和端口号
+			String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+			//创建展示附件访问方法路径
+			String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+			for (WorkClientAttachment info: list) {
+				String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+				//变更新的文件查看地址
+				info.setUrl(newUrl);
+			}
+		}
+	}
+
+
+	/**
+	 * 数据处理
+	 * @param list
+	 */
+	public static void attachmentManage(List<Workattachment> list){
+		ViewFileUtil viewFileUtil = new ViewFileUtil();
+		// 判断文件存储方式(0:本地服务器存储。1:云端存储)
+		if("0".equals(viewFileUtil.getUploadMode())){
+			//获取本地服务器ip和端口号
+			String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+			//创建展示附件访问方法路径
+			String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+			for (Workattachment info: list) {
+				String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+				//变更新的文件查看地址
+				info.setUrl(newUrl);
+			}
+		}
+	}
 }

+ 78 - 18
src/main/java/com/jeeplus/modules/utils/SftpClientUtil.java

@@ -2,7 +2,7 @@ package com.jeeplus.modules.utils;
 
 import java.io.*;
 import java.net.URLEncoder;
-import java.util.Properties;
+import java.util.*;
 
 import com.jcraft.jsch.*;
 import com.jeeplus.common.config.Global;
@@ -12,6 +12,7 @@ import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
+import org.apache.commons.io.FileUtils;
 
 /**
  * @author: 徐滕
@@ -45,6 +46,7 @@ public class SftpClientUtil {
      */
     public String uploadFile(String remoteFolder,File file, String remoteFileName) throws Exception {
         long start = System.currentTimeMillis();
+        String thisLocality = remoteFolder;
         remoteFolder = directory + remoteFolder;
         InputStream fileStream = new FileInputStream(file); // 提升作用域
 
@@ -55,6 +57,7 @@ public class SftpClientUtil {
             }else{
                 path = Global.getConfig("remoteServer.directory");
             }
+            path = path + thisLocality;
             //检查该路径对应的目录是否存在. 如果不存在则创建目录
             File dir=new File(path);
             if (!dir.exists()) {
@@ -234,24 +237,47 @@ public class SftpClientUtil {
      */
     public byte[] download(String directory, String downloadFile, HttpServletResponse response){
         try{
-            ChannelSftp sftp = connect();
-            if(directory != null && !"".equals(directory)){
-                sftp.cd(directory);
-            }
-            String fileName = URLEncoder.encode(downloadFile,"UTF-8");
-            OutputStream out = null;
-            InputStream in = sftp.get(downloadFile);
-            response.reset();//重置 响应头
-            response.setContentType("application/x-download");
-            response.setHeader("Content-disposition", "attachment; filename=" + fileName);
-            out = response.getOutputStream();
-            byte[] b = new byte[1024];
-            int len;
-            while ((len = in.read(b)) > 0){
-                response.getOutputStream().write(b, 0, len);
+            String path = directory.substring(directory.indexOf("=")+1, directory.length());
+            if(StringUtils.isNotBlank(host) && ("127.0.0.1".equals(host) || "localhost".equals(host))){
+                String wPath = path+"/"+downloadFile;
+                File fileurl = new File(wPath);
+                //将文件读入文件流
+                InputStream inStream = new FileInputStream(fileurl);
+                //判断浏览器代理并分别设置响应给浏览器的编码格式
+                String finalFileName = URLEncoder.encode(downloadFile,"UTF8");
+                //设置HTTP响应头
+                response.reset();//重置 响应头
+                response.setContentType("application/x-download");//告知浏览器下载文件,而不是直接打开,浏览器默认为打开
+                response.addHeader("Content-Disposition" ,"attachment;filename=" +finalFileName+ "");//下载文件的名称
+
+                // 循环取出流中的数据
+                byte[] b = new byte[1024];
+                int len;
+                while ((len = inStream.read(b)) > 0){
+                    response.getOutputStream().write(b, 0, len);
+                }
+                inStream.close();
+                response.getOutputStream().close();
+            }else{
+                ChannelSftp sftp = connect();
+                if(path != null && !"".equals(path)){
+                    sftp.cd(path);
+                }
+                String fileName = URLEncoder.encode(downloadFile,"UTF-8");
+                OutputStream out = null;
+                InputStream in = sftp.get(downloadFile);
+                response.reset();//重置 响应头
+                response.setContentType("application/x-download");
+                response.setHeader("Content-disposition", "attachment; filename=" + fileName);
+                out = response.getOutputStream();
+                byte[] b = new byte[1024];
+                int len;
+                while ((len = in.read(b)) > 0){
+                    response.getOutputStream().write(b, 0, len);
+                }
+                in.close();
+                out.close();
             }
-            in.close();
-            out.close();
         }catch (SftpException | IOException e){
             logger.error("文件下载异常!", e);
         } catch (Exception e) {
@@ -279,5 +305,39 @@ public class SftpClientUtil {
         }
         return multipartFile;
     }
+
+    /**
+     * ChannelSftp下载目录下所有或指定文件
+     * ChannelSftp获取某目录下所有文件名称
+     * InputStream转File
+     */
+    public ByteArrayOutputStream downFile(String directory, String downloadFile, HttpServletResponse response) {
+        ByteArrayOutputStream parse = new ByteArrayOutputStream();
+        try{
+            ChannelSftp sftp = connect();
+            if(directory != null && !"".equals(directory)){
+                sftp.cd(directory);
+            }
+            String fileName = URLEncoder.encode(downloadFile,"UTF-8");
+            InputStream in = sftp.get(downloadFile);
+            parse = this.parse(in);
+            in.close();
+        }catch (SftpException | IOException e){
+            logger.error("文件下载异常!", e);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return parse;
+    }
+
+    public ByteArrayOutputStream parse(final InputStream in) throws Exception {
+        final ByteArrayOutputStream swapStream = new ByteArrayOutputStream();
+        int ch;
+        while ((ch = in.read()) != -1) {
+            swapStream.write(ch);
+        }
+        return swapStream;
+    }
+
 }
 

+ 84 - 0
src/main/java/com/jeeplus/modules/utils/ViewFileController.java

@@ -0,0 +1,84 @@
+package com.jeeplus.modules.utils;
+
+import com.jcraft.jsch.ChannelSftp;
+import com.jcraft.jsch.SftpException;
+import com.jeeplus.common.config.Global;
+import com.jeeplus.common.web.BaseController;
+import com.jeeplus.modules.workcontractinfo.entity.WorkContractInfo;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.servlet.mvc.support.RedirectAttributes;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+import javax.management.Query;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.*;
+import java.lang.management.ManagementFactory;
+import java.net.*;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * @author: 徐滕
+ * @create: 2021-02-02 09:35
+ **/
+@Controller
+@RequestMapping(value = "${adminPath}/viewFile/viewFile")
+public class ViewFileController extends BaseController {
+
+    /**
+     * 返回服务器文件存储类型
+     */
+    @RequestMapping(value = "getUploadFile")
+    @ResponseBody
+    public void getUploadFile(String uploadFilePath, HttpServletResponse response) throws UnsupportedEncodingException {
+        String file= uploadFilePath;
+
+        file = URLDecoder.decode(file,"UTF-8");
+        String fileName = file.substring(file.lastIndexOf("/") + 1, file.length());
+        file = file.substring(0,file.lastIndexOf("/"));
+        file = URLDecoder.decode(file,"UTF-8");
+
+
+        SftpClientUtil sftpClientUtil=new SftpClientUtil();
+        try{
+            ChannelSftp sftp = sftpClientUtil.connect();
+            if(file != null && !"".equals(file)){
+                sftp.cd(file);
+            }
+            String downName = URLEncoder.encode(fileName,"UTF-8");
+            response.setContentType("application/x-download");
+            response.setHeader("Content-disposition", "attachment; filename=" + downName);
+            InputStream in = sftp.get(fileName);
+            OutputStream outputStream = new BufferedOutputStream(response.getOutputStream());
+            //创建存放文件内容的数组
+            byte[] buff =new byte[1024];
+            //所读取的内容使用n来接收
+            int n;
+            //当没有读取完时,继续读取,循环
+            while((n=in.read(buff))!=-1){
+                //将字节数组的数据全部写入到输出流中
+                outputStream.write(buff,0,n);
+            }
+            //制将缓存区的数据进行输出
+            outputStream.flush();
+            //关流
+            outputStream.close();
+            in.close();
+        }catch (SftpException | IOException e){
+            logger.error("文件下载异常!", e);
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return;
+    }
+}

+ 137 - 0
src/main/java/com/jeeplus/modules/utils/ViewFileUtil.java

@@ -0,0 +1,137 @@
+package com.jeeplus.modules.utils;
+
+import com.jeeplus.common.config.Global;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
+import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
+import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+
+import javax.management.MBeanServer;
+import javax.management.ObjectName;
+import javax.management.Query;
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.lang.management.ManagementFactory;
+import java.net.HttpURLConnection;
+import java.net.MalformedURLException;
+import java.net.URL;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * @author: 大猫
+ * @create: 2021-02-02 16:40
+ **/
+@Service
+@Transactional(readOnly = true)
+public class ViewFileUtil {
+
+    @Autowired
+    private WorkClientAttachmentDao workClientAttachmentDao;
+
+    /** 文件存储方式(0:本地服务器存储。1:云端存储) */
+    private final static String uploadMode = Global.getConfig("remoteServer.uploadMode");
+
+    /**
+     * 判断存储位置
+     * @return
+     */
+    public static String getUploadMode(){
+        return uploadMode;
+    }
+
+    /**
+     * 返回服务器ip和端口号
+     */
+    public static String getServerIPAndPort(){
+        String ipAndPort = null;
+
+        try {
+            //获取外网ip
+            String ip = getOutIPV4();
+            //获取端口号
+            MBeanServer beanServer = ManagementFactory.getPlatformMBeanServer();
+            Set<ObjectName> objectNames = beanServer.queryNames(new ObjectName("*:type=Connector,*"),
+                    Query.match(Query.attr("protocol"), Query.value("HTTP/1.1")));
+            String port = objectNames.iterator().next().getKeyProperty("port");
+
+            ipAndPort = ip +":" +port;
+        } catch (Exception e) {
+            e.printStackTrace();
+        }
+        return ipAndPort;
+    }
+
+    /**
+     * 获取外网ip地址
+     * @return
+     */
+    public static String getOutIPV4() {
+        String ip = "";
+        String chinaz = "http://ip.chinaz.com";
+
+        StringBuilder inputLine = new StringBuilder();
+        String read = "";
+        URL url = null;
+        HttpURLConnection urlConnection = null;
+        BufferedReader in = null;
+        try {
+            url = new URL(chinaz);
+            urlConnection = (HttpURLConnection) url.openConnection();
+            in = new BufferedReader(new InputStreamReader(urlConnection.getInputStream(), "UTF-8"));
+            while ((read = in.readLine()) != null) {
+                inputLine.append(read + "\r\n");
+            }
+        } catch (MalformedURLException e) {
+            e.printStackTrace();
+        } catch (IOException e) {
+            e.printStackTrace();
+        } finally {
+            if (in != null) {
+                try {
+                    in.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+        Pattern p = Pattern.compile("\\<dd class\\=\"fz24\">(.*?)\\<\\/dd>");
+        Matcher m = p.matcher(inputLine.toString());
+        if (m.find()) {
+            String ipstr = m.group(1);
+            ip = ipstr;
+        }
+        return ip;
+    }
+
+    /**
+     * 获取附件信息
+     * @param workClientAttachment
+     * @return
+     */
+    public List<WorkClientAttachment> getAttachmentList(WorkClientAttachment workClientAttachment){
+        List<WorkClientAttachment> list = workClientAttachmentDao.findList(workClientAttachment);
+        // 判断文件存储方式(0:本地服务器存储。1:云端存储)
+        if("0".equals(uploadMode)){
+            //获取本地服务器ip和端口号
+            String serverIPAndPort = getServerIPAndPort();
+            //创建展示附件访问方法路径
+            String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+            for (WorkClientAttachment info: list) {
+                String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+                //变更新的文件查看地址
+                info.setUrl(newUrl);
+            }
+        }
+        return list;
+    }
+}

+ 4 - 1
src/main/java/com/jeeplus/modules/workadministrativeatamp/service/WorkAdministrativeAtampService.java

@@ -20,6 +20,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.UserDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -61,6 +62,8 @@ public class WorkAdministrativeAtampService extends CrudService<WorkAdministrati
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private UserDao userDao;
     @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
@@ -90,7 +93,7 @@ public class WorkAdministrativeAtampService extends CrudService<WorkAdministrati
         if(workAdministrativeAtamp!=null&&StringUtils.isNotBlank(workAdministrativeAtamp.getId())){
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(workAdministrativeAtamp.getId());
-            workAdministrativeAtamp.setWorkAttachments(workClientAttachmentDao.findList(attchment));
+            workAdministrativeAtamp.setWorkAttachments(workattachmentService.getAttachmentList(attchment));
         }
         return workAdministrativeAtamp;
     }

+ 8 - 5
src/main/java/com/jeeplus/modules/workattendance/service/WorkAttendanceInfoService.java

@@ -26,6 +26,7 @@ import com.jeeplus.modules.sys.entity.Company;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.utils.ErrorCode;
@@ -93,6 +94,8 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
     private OfficeDao officeDao;
 	@Autowired
 	private WorkattachmentDao workattachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	public static SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
 	public static SimpleDateFormat sdfs = new SimpleDateFormat("HHmm");
@@ -128,7 +131,7 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
 							Workattachment workattachment = new Workattachment();
 							workattachment.setAttachmentId(attendanceInfo.getId());
 							workattachment.setAttachmentFlag("115");
-							workattachments = workattachmentDao.findList(workattachment);
+							workattachments = workattachmentService.findList(workattachment);
 						} else if (attendanceInfo.getAttendanceType().equals("2")) {
 							WorkField workField = workFieldService.getByStaffIdAndTime(attendanceInfo.getStaffId(), time);
 							if (workField != null && StringUtils.isNotBlank(workField.getId())) {
@@ -150,7 +153,7 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
 									Workattachment workattachment = new Workattachment();
 									workattachment.setAttachmentId(workField.getId());
 									workattachment.setAttachmentFlag("75");
-									workattachments = workattachmentDao.findList(workattachment);
+									workattachments = workattachmentService.findList(workattachment);
 								}
 							}
 						} else if (attendanceInfo.getAttendanceType().equals("3")) {
@@ -174,7 +177,7 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
 									Workattachment workattachment = new Workattachment();
 									workattachment.setAttachmentId(workOut.getId());
 									workattachment.setAttachmentFlag("73");
-									workattachments = workattachmentDao.findList(workattachment);
+									workattachments = workattachmentService.findList(workattachment);
 								}
 							}
 						} else if (attendanceInfo.getAttendanceType().equals("4")) {
@@ -205,7 +208,7 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
 									Workattachment workattachment = new Workattachment();
 									workattachment.setAttachmentId(leaveApply.getId());
 									workattachment.setAttachmentFlag("114");
-									workattachments = workattachmentDao.findList(workattachment);
+									workattachments = workattachmentService.findList(workattachment);
 								}
 							}
 						}
@@ -234,7 +237,7 @@ public class WorkAttendanceInfoService extends CrudService<WorkAttendanceInfoDao
 								Workattachment workattachment = new Workattachment();
 								workattachment.setAttachmentId(workOvertime.getId());
 								workattachment.setAttachmentFlag("72");
-								List<Workattachment> workattachmentss = workattachmentDao.findList(workattachment);
+								List<Workattachment> workattachmentss = workattachmentService.findList(workattachment);
 								if (workattachmentss != null && workattachmentss.size() != 0) {
 									workattachments.addAll(workattachments);
 								}

+ 24 - 0
src/main/java/com/jeeplus/modules/workbidingdocument/service/WorkBidingDocumentService.java

@@ -20,6 +20,7 @@ import com.jeeplus.modules.sys.entity.Workattachment;
 import com.jeeplus.modules.sys.service.OfficeService;
 import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.entity.WorkActivityProcess;
 import com.jeeplus.modules.workactivity.service.ActivityService;
@@ -595,11 +596,34 @@ public class WorkBidingDocumentService extends CrudService<WorkBidingDocumentDao
 			String attachmentId = workBidingDocument.getId();
 			if(StringUtils.isNotBlank(attachmentId)){
 				workattachmentList = workBidingDocumentDao.getListOfAttachment(attachmentId);
+				//附件数据处理
+				attachmentManage(workattachmentList);
 			}
 		}
 		return workattachmentList ;
 	}
 
+
+	/**
+	 * 数据处理
+	 * @param list
+	 */
+	public static void attachmentManage(List<Workattachment> list){
+		ViewFileUtil viewFileUtil = new ViewFileUtil();
+		// 判断文件存储方式(0:本地服务器存储。1:云端存储)
+		if("0".equals(viewFileUtil.getUploadMode())){
+			//获取本地服务器ip和端口号
+			String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+			//创建展示附件访问方法路径
+			String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+			for (Workattachment info: list) {
+				String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+				//变更新的文件查看地址
+				info.setUrl(newUrl);
+			}
+		}
+	}
+
 	/**
 	 * 启动流程
 	 * @param workBidingDocument

+ 4 - 4
src/main/java/com/jeeplus/modules/workbidproject/service/WorkBidProjectService.java

@@ -171,19 +171,19 @@ public class WorkBidProjectService extends CrudService<WorkBidProjectDao, WorkBi
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("95");
-			workBidProject.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workBidProject.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			WorkClientAttachment workClientAttachment2 = new WorkClientAttachment();
 			workClientAttachment2.setAttachmentId(id);
 			workClientAttachment2.setAttachmentFlag("96");
-			workBidProject.setWorkAttachmentsprice(workClientAttachmentDao.findList(workClientAttachment2));
+			workBidProject.setWorkAttachmentsprice(workattachmentService.getAttachmentList(workClientAttachment2));
 			WorkClientAttachment workClientAttachment3 = new WorkClientAttachment();
 			workClientAttachment3.setAttachmentId(id);
 			workClientAttachment3.setAttachmentFlag("97");
-			workBidProject.setWorkAttachmentsbid(workClientAttachmentDao.findList(workClientAttachment3));
+			workBidProject.setWorkAttachmentsbid(workattachmentService.getAttachmentList(workClientAttachment3));
 			WorkClientAttachment workClientAttachment4 = new WorkClientAttachment();
 			workClientAttachment4.setAttachmentId(id);
 			workClientAttachment4.setAttachmentFlag("98");
-			workBidProject.setWorkAttachmentsopenbid(workClientAttachmentDao.findList(workClientAttachment4));
+			workBidProject.setWorkAttachmentsopenbid(workattachmentService.getAttachmentList(workClientAttachment4));
 
 		}
 		return workBidProject;

+ 7 - 4
src/main/java/com/jeeplus/modules/workclientinfo/service/WorkClientInfoService.java

@@ -20,6 +20,7 @@ import com.jeeplus.modules.sys.entity.MainDict;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.MainDictService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientBankDao;
@@ -61,6 +62,8 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkContractInfoDao workContractInfoDao;
     @Autowired
     private WorkClientInfoDao workClientInfoDao;
@@ -93,7 +96,7 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
             WorkClientAttachment workClientAttachment = new WorkClientAttachment();
             workClientAttachment.setAttachmentId(id);
             workClientAttachment.setAttachmentFlag(VarStr.attachmentFlag[0]);
-            workClientInfo.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+            workClientInfo.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 
             //多个联系人
             List<WorkClientLinkman> linkman = workClientLinkmanDao.findByClientId(workClientInfo.getId());
@@ -101,7 +104,7 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
             workClientInfo.setWorkClientLinkmanList(linkman);
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(workClientInfo.getId());
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             workClientInfo.setWorkAttachments(attachments);
         }
 		return workClientInfo;
@@ -172,7 +175,7 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
         WorkClientAttachment workClientAttachment = new WorkClientAttachment();
         workClientAttachment.setAttachmentId(workClientInfo.getId());
         workClientAttachment.setAttachmentFlag(VarStr.attachmentFlag[0]);
-        return workClientAttachmentDao.findList(workClientAttachment);
+        return workattachmentService.getAttachmentList(workClientAttachment);
     }
 
     /**
@@ -263,7 +266,7 @@ public class WorkClientInfoService extends CrudService<WorkClientInfoDao, WorkCl
         workClientAttachment.setAttachmentId(id);
         workClientAttachment.setPage(page);
         workClientAttachment.setAttachmentFlag(VarStr.attachmentFlag[0]);
-        page.setList(workClientAttachmentDao.findList(workClientAttachment));
+        page.setList(workattachmentService.getAttachmentList(workClientAttachment));
         return page;
     }
 

+ 16 - 17
src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractInfoService.java

@@ -9,7 +9,6 @@ import com.jeeplus.common.oss.OSSClientUtil;
 import com.jeeplus.common.persistence.Page;
 import com.jeeplus.common.service.CrudService;
 import com.jeeplus.common.utils.*;
-import com.jeeplus.common.websocket.onchat.ChatServerPool;
 import com.jeeplus.modules.act.entity.Act;
 import com.jeeplus.modules.act.service.ActTaskService;
 import com.jeeplus.modules.act.utils.ActUtils;
@@ -22,14 +21,16 @@ import com.jeeplus.modules.contractclient.service.WorkContractClientService;
 import com.jeeplus.modules.isignature.service.ISignatureDocumentService;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.RoleDao;
+import com.jeeplus.modules.sys.dao.WorkattachmentDao;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
-import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.RoleActivityEnname;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.entity.WorkActivityProcess;
@@ -46,8 +47,6 @@ import com.jeeplus.modules.workclientinfo.service.WorkClientInfoService;
 import com.jeeplus.modules.workcontractinfo.dao.*;
 import com.jeeplus.modules.workcontractinfo.entity.*;
 import com.jeeplus.modules.workfullmanage.dao.WorkFullRecordDao;
-import com.jeeplus.modules.workfullmanage.entity.WorkFullManage;
-import com.jeeplus.modules.workfullmanage.entity.WorkFullRecord;
 import com.jeeplus.modules.workinvoicedetail.dao.WorkInvoiceDetailDao;
 import com.jeeplus.modules.workinvoicedetail.entity.WorkInvoiceDetail;
 import com.jeeplus.modules.workprojectnotify.entity.WorkProjectNotify;
@@ -61,7 +60,6 @@ import org.activiti.engine.history.HistoricTaskInstance;
 import org.activiti.engine.history.HistoricTaskInstanceQuery;
 import org.activiti.engine.runtime.ProcessInstance;
 import org.apache.commons.beanutils.BeanUtils;
-import org.java_websocket.WebSocket;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -72,9 +70,6 @@ import java.awt.*;
 import java.io.*;
 import java.lang.reflect.InvocationTargetException;
 import java.math.BigDecimal;
-import java.net.HttpURLConnection;
-import java.net.MalformedURLException;
-import java.net.URL;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.*;
@@ -107,6 +102,10 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
+	private WorkattachmentDao workattachmentDao;
+	@Autowired
 	protected HistoryService historyService;
 	@Autowired
 	private WorkProjectNotifyService workProjectNotifyService;
@@ -162,11 +161,11 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("44");
-			workContractInfo.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workContractInfo.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			WorkClientAttachment workClientAttachment2 = new WorkClientAttachment();
 			workClientAttachment2.setAttachmentId(id);
 			workClientAttachment2.setAttachmentFlag("81");
-			workContractInfo.setWorkAttachmentAlters(workClientAttachmentDao.findList(workClientAttachment2));
+			workContractInfo.setWorkAttachmentAlters(workattachmentService.getAttachmentList(workClientAttachment2));
 			if(StringUtils.isNotBlank(workContractInfo.getAlterBeforeId())){
 				WorkContractInfo oldWorkContractInfo = this.getInfo(workContractInfo.getAlterBeforeId());
 				workContractInfo.setOldWorkContractInfo(oldWorkContractInfo);
@@ -183,7 +182,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				WorkClientAttachment clientAttachment = new WorkClientAttachment();
 				clientAttachment.setAttachmentId(workContractReview.getId());
 				clientAttachment.setAttachmentFlag("80");
-				workContractReview.setWorkAttachments(workClientAttachmentDao.findList(clientAttachment));
+				workContractReview.setWorkAttachments(workattachmentService.getAttachmentList(clientAttachment));
 				workContractInfo.setWorkContractReview(workContractReview);
 			}
 			AlterInfo alterInfo = new AlterInfo();
@@ -264,11 +263,11 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("44");
-			workContractInfo.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workContractInfo.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			WorkClientAttachment workClientAttachment2 = new WorkClientAttachment();
 			workClientAttachment2.setAttachmentId(id);
 			workClientAttachment2.setAttachmentFlag("81");
-			workContractInfo.setWorkAttachmentAlters(workClientAttachmentDao.findList(workClientAttachment2));
+			workContractInfo.setWorkAttachmentAlters(workattachmentService.getAttachmentList(workClientAttachment2));
 			String totalContractId = workContractInfo.getTotalContractId();
 			if(!Strings.isNullOrEmpty(totalContractId)){
 				WorkContractInfo wc = workContractInfoDao.get(totalContractId);
@@ -281,7 +280,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				WorkClientAttachment clientAttachment = new WorkClientAttachment();
 				clientAttachment.setAttachmentId(workContractReview.getId());
 				clientAttachment.setAttachmentFlag("80");
-				workContractReview.setWorkAttachments(workClientAttachmentDao.findList(clientAttachment));
+				workContractReview.setWorkAttachments(workattachmentService.getAttachmentList(clientAttachment));
 				workContractInfo.setWorkContractReview(workContractReview);
 			}
 			AlterInfo alterInfo = new AlterInfo();
@@ -311,11 +310,11 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("44");
-			workContractInfo.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workContractInfo.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			WorkClientAttachment workClientAttachment2 = new WorkClientAttachment();
 			workClientAttachment2.setAttachmentId(workContractInfo.getId());
 			workClientAttachment2.setAttachmentFlag("81");
-			workContractInfo.setWorkAttachmentAlters(workClientAttachmentDao.findList(workClientAttachment2));
+			workContractInfo.setWorkAttachmentAlters(workattachmentService.getAttachmentList(workClientAttachment2));
 
 			String totalContractId = workContractInfo.getTotalContractId();
 			if(!Strings.isNullOrEmpty(totalContractId)){
@@ -329,7 +328,7 @@ public class WorkContractInfoService extends CrudService<WorkContractInfoDao, Wo
 				WorkClientAttachment clientAttachment = new WorkClientAttachment();
 				clientAttachment.setAttachmentId(workContractReview.getId());
 				clientAttachment.setAttachmentFlag("80");
-				workContractReview.setWorkAttachments(workClientAttachmentDao.findList(clientAttachment));
+				workContractReview.setWorkAttachments(workattachmentService.getAttachmentList(clientAttachment));
 				workContractInfo.setWorkContractReview(workContractReview);
 			}
 			AlterInfo alterInfo = new AlterInfo();

+ 1 - 0
src/main/java/com/jeeplus/modules/workcontractinfo/service/WorkContractReviewService.java

@@ -7,6 +7,7 @@ import java.util.List;
 
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.isignature.service.ISignatureDocumentService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;

+ 1 - 0
src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoAlterController.java

@@ -27,6 +27,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.RoleActivityEnname;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.sysimportinfo.entity.SysImportInfo;

+ 40 - 24
src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoController.java

@@ -33,10 +33,12 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.RoleActivityEnname;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.sysimportinfo.entity.SysImportInfo;
 import com.jeeplus.modules.sysimportinfo.service.SysImportInfoService;
+import com.jeeplus.modules.utils.SftpClientUtil;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.service.ActivityService;
 import com.jeeplus.modules.workbidproject.entity.WorkBidProject;
@@ -86,6 +88,10 @@ import java.util.*;
 @RequestMapping(value = "${adminPath}/workcontractinfo/workContractInfo")
 public class WorkContractInfoController extends BaseController {
 
+    /** 文件存储方式(0:本地服务器存储。1:云端存储) */
+    private final static String uploadMode = Global.getConfig("remoteServer.uploadMode");
+
+
     @Autowired
     private WorkBidProjectService workBidProjectService;
     @Autowired
@@ -1582,32 +1588,42 @@ public class WorkContractInfoController extends BaseController {
 //        new OSSClientUtil().downByStream(key, fileName, response,request.getHeader("USER-AGENT"));
         OutputStream out = null;
         InputStream in = null;
-        try {
-            file = URLDecoder.decode(file,"UTF-8");
-            String path = file.substring(file.indexOf(".com") + 4, file.length());
-            String fileName = URLEncoder.encode(file.substring(file.lastIndexOf("/") + 1, file.length()),"UTF-8");
-            BOSClientUtil bosClientUtil = new BOSClientUtil();
-            in = bosClientUtil.getObject(path);
-            response.reset();//重置 响应头
-            response.setContentType("application/x-download");
-            response.setHeader("Content-disposition", "attachment; filename=" + fileName);
-            out = response.getOutputStream();
-            byte[] b = new byte[1024];
-            int len;
-            while ((len = in.read(b)) > 0){
-                response.getOutputStream().write(b, 0, len);
-            }
-            in.close();
-            out.close();
-        }catch (IOException e){
-            e.printStackTrace();
-        }finally {
-            if (out != null) {
-                out.close();
-            }
-            if (in != null) {
+        if("1".equals(uploadMode)){
+            try {
+                file = URLDecoder.decode(file,"UTF-8");
+                String path = file.substring(file.indexOf(".com") + 4, file.length());
+                String fileName = URLEncoder.encode(file.substring(file.lastIndexOf("/") + 1, file.length()),"UTF-8");
+                BOSClientUtil bosClientUtil = new BOSClientUtil();
+                in = bosClientUtil.getObject(path);
+                response.reset();//重置 响应头
+                response.setContentType("application/x-download");
+                response.setHeader("Content-disposition", "attachment; filename=" + fileName);
+                out = response.getOutputStream();
+                byte[] b = new byte[1024];
+                int len;
+                while ((len = in.read(b)) > 0){
+                    response.getOutputStream().write(b, 0, len);
+                }
                 in.close();
+                out.close();
+            }catch (IOException e){
+                e.printStackTrace();
+            }finally {
+                if (out != null) {
+                    out.close();
+                }
+                if (in != null) {
+                    in.close();
+                }
             }
+        }else{
+            file = URLDecoder.decode(file,"UTF-8");
+            String fileName = file.substring(file.lastIndexOf("/") + 1, file.length());
+            file = file.substring(0,file.lastIndexOf("/"));
+            file = URLDecoder.decode(file,"UTF-8");
+
+            SftpClientUtil sftpClientUtil=new SftpClientUtil();
+            sftpClientUtil.download(file,fileName,response);
         }
     }
 

+ 1 - 0
src/main/java/com/jeeplus/modules/workcontractinfo/web/WorkContractInfoInvalidateController.java

@@ -28,6 +28,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.RoleActivityEnname;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.sysimportinfo.entity.SysImportInfo;

+ 4 - 1
src/main/java/com/jeeplus/modules/workcontractrecord/service/WorkContractRecordService.java

@@ -18,6 +18,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -59,6 +60,8 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkContractInfoService workConttractInfoService;
 	@Autowired
 	private WorkContractInfoService workContractInfoService;
@@ -94,7 +97,7 @@ public class WorkContractRecordService extends CrudService<WorkContractRecordDao
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("85");
-			workContractRecord.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workContractRecord.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			if(workContractRecord!=null&&workContractRecord.getWorkContractInfo()!=null&& StringUtils.isNotBlank(workContractRecord.getWorkContractInfo().getId())){
 				WorkContractInfo w = workConttractInfoService.get(workContractRecord.getWorkContractInfo().getId());
 				if(w!=null){

+ 4 - 1
src/main/java/com/jeeplus/modules/workdailyroutine/service/WorkDailyRoutineDetailService.java

@@ -8,6 +8,7 @@ import java.util.List;
 
 import com.jeeplus.common.utils.IdGen;
 import com.jeeplus.common.utils.StringUtils;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -35,6 +36,8 @@ public class WorkDailyRoutineDetailService extends CrudService<WorkDailyRoutineD
     private WorkDailyRoutineDao workDailyRoutineDao;
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
 	public WorkDailyRoutineDetail get(String id) {
         WorkDailyRoutineDetail workDailyRoutineDetail = super.get(id);
@@ -84,7 +87,7 @@ public class WorkDailyRoutineDetailService extends CrudService<WorkDailyRoutineD
             if(workDailyRoutine!=null&&StringUtils.isNotBlank(workDailyRoutine.getId())){
                 WorkClientAttachment attachment = new WorkClientAttachment();
                 attachment.setAttachmentId(workDailyRoutine.getId());
-                workDailyRoutine.setWorkAttachments(workClientAttachmentDao.findList(attachment));
+                workDailyRoutine.setWorkAttachments(workattachmentService.getAttachmentList(attachment));
             }
             if(workDailyRoutineDetail.getUpdateDate()==null){
                 workDailyRoutineDetail.setUpdateDate(new Date());

+ 4 - 1
src/main/java/com/jeeplus/modules/workdailyroutine/service/WorkDailyRoutineService.java

@@ -11,6 +11,7 @@ import com.jeeplus.common.utils.DateUtils;
 import com.jeeplus.common.utils.MenuStatusEnum;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -40,6 +41,8 @@ public class WorkDailyRoutineService extends CrudService<WorkDailyRoutineDao, Wo
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
 
 	public WorkDailyRoutine get(String id) {
@@ -52,7 +55,7 @@ public class WorkDailyRoutineService extends CrudService<WorkDailyRoutineDao, Wo
         if(workDailyRoutine!=null&& StringUtils.isNotBlank(workDailyRoutine.getId())){
             WorkClientAttachment attachment = new WorkClientAttachment();
             attachment.setAttachmentId(workDailyRoutine.getId());
-            workDailyRoutine.setWorkAttachments(workClientAttachmentDao.findList(attachment));
+            workDailyRoutine.setWorkAttachments(workattachmentService.getAttachmentList(attachment));
             WorkDailyRoutineDetail routineDetail = new WorkDailyRoutineDetail();
             routineDetail.setWorkDailyRoutine(workDailyRoutine);
             workDailyRoutine.setDetailList(routineDetailService.findList(routineDetail));

+ 4 - 1
src/main/java/com/jeeplus/modules/workfield/service/WorkFieldService.java

@@ -16,6 +16,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -88,6 +89,8 @@ public class WorkFieldService extends CrudService<WorkFieldDao, WorkField> {
 	private WorkFieldDao workFieldDao;
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 	public WorkField get(String id) {
 		WorkField workField = super.get(id);
 		if(workField!=null){
@@ -95,7 +98,7 @@ public class WorkFieldService extends CrudService<WorkFieldDao, WorkField> {
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("75");
-			workField.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workField.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		}
 		return workField;
 	}

+ 6 - 3
src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullManageService.java

@@ -16,6 +16,7 @@ import com.jeeplus.modules.sys.dao.RoleDao;
 import com.jeeplus.modules.sys.entity.Area;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
@@ -73,6 +74,8 @@ public class WorkFullManageService extends CrudService<WorkFullManageDao, WorkFu
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkFullExecuteDao workFullExecuteDao;
 	@Autowired
 	private WorkContractAnnexDao workContractAnnexDao;
@@ -114,7 +117,7 @@ public class WorkFullManageService extends CrudService<WorkFullManageDao, WorkFu
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag(VarStr.attachmentFlag[2]);
-		workFullManage.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		workFullManage.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		//公司信息
 		workFullManage.setHostCompany(officeService.get(workFullManage.getHostCompany()));
 		workFullManage.setFollowCompany(officeService.get(workFullManage.getFollowCompany()));
@@ -297,7 +300,7 @@ public class WorkFullManageService extends CrudService<WorkFullManageDao, WorkFu
 	 */
 	@Transactional(readOnly = false)
 	public List<WorkClientAttachment> findList(WorkClientAttachment workClientAttachment){
-		return workClientAttachmentDao.findList(workClientAttachment);
+		return workattachmentService.getAttachmentList(workClientAttachment);
 	}
 	/**
 	 * 删除附件
@@ -333,7 +336,7 @@ public class WorkFullManageService extends CrudService<WorkFullManageDao, WorkFu
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(worke.getId());
 			workClientAttachment.setAttachmentFlag("2");
-			List<WorkClientAttachment> workList = workClientAttachmentDao.findList(workClientAttachment);
+			List<WorkClientAttachment> workList = workattachmentService.getAttachmentList(workClientAttachment);
 			li.addAll(workList);
 		}
 		return li;

+ 4 - 1
src/main/java/com/jeeplus/modules/workfullmanage/service/WorkFullRecordService.java

@@ -14,6 +14,7 @@ import com.jeeplus.modules.act.utils.ActUtils;
 import com.jeeplus.modules.act.utils.ProcessDefCache;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -70,6 +71,8 @@ public class WorkFullRecordService extends CrudService<WorkFullRecordDao, WorkFu
 	private WorkFullManageDao workFullManageDao;
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	public WorkFullRecord get(String id) {
 		return  workFullRecordDao.findUniqueByProperty("work_full_manage_id",id);
@@ -84,7 +87,7 @@ public class WorkFullRecordService extends CrudService<WorkFullRecordDao, WorkFu
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		//workClientAttachment.setAttachmentFlag("66");
-		workFullRecord.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		workFullRecord.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 
 		return workFullRecord;
 	}

+ 4 - 1
src/main/java/com/jeeplus/modules/workincomingmessage/service/WorkIncomingMessageService.java

@@ -18,6 +18,7 @@ import com.jeeplus.modules.sys.dao.UserDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.UserService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -62,6 +63,8 @@ public class WorkIncomingMessageService extends CrudService<WorkIncomingMessageD
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private UserDao userDao;
     @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
@@ -91,7 +94,7 @@ public class WorkIncomingMessageService extends CrudService<WorkIncomingMessageD
         if(workIncomingMessage!=null&& StringUtils.isNotBlank(workIncomingMessage.getId())){
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(workIncomingMessage.getId());
-            List<WorkClientAttachment> attachments = workClientAttachmentDao.findList(attchment);
+            List<WorkClientAttachment> attachments = workattachmentService.getAttachmentList(attchment);
             workIncomingMessage.setWorkAttachments(attachments);
         }
         this.queryHandlers(workIncomingMessage);

+ 1 - 0
src/main/java/com/jeeplus/modules/worklog/service/WorkLogService.java

@@ -5,6 +5,7 @@ package com.jeeplus.modules.worklog.service;
 
 import com.jeeplus.common.persistence.Page;
 import com.jeeplus.common.service.CrudService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.worklog.dao.WorkLogDao;
 import com.jeeplus.modules.worklog.entity.WorkLog;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;

+ 4 - 1
src/main/java/com/jeeplus/modules/workout/service/WorkOutService.java

@@ -16,6 +16,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -88,6 +89,8 @@ public class WorkOutService extends CrudService<WorkOutDao, WorkOut> {
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkOutDao workOutDao;
 
 	public WorkOut get(String id) {
@@ -97,7 +100,7 @@ public class WorkOutService extends CrudService<WorkOutDao, WorkOut> {
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("73");
-			workOut.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workOut.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		}
 		return workOut;
 	}

+ 4 - 1
src/main/java/com/jeeplus/modules/workovertime/service/WorkOvertimeService.java

@@ -16,6 +16,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -87,6 +88,8 @@ public class WorkOvertimeService extends CrudService<WorkOvertimeDao, WorkOverti
 	private WorkOvertimeDao workOvertimeDao;
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	public WorkOvertime get(String id) {
 		WorkOvertime workOvertime = super.get(id);
@@ -95,7 +98,7 @@ public class WorkOvertimeService extends CrudService<WorkOvertimeDao, WorkOverti
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("72");
-			workOvertime.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workOvertime.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		}
 		return workOvertime;
 	}

+ 1 - 1
src/main/java/com/jeeplus/modules/workperformance/service/WorkPerformanceService.java

@@ -41,7 +41,7 @@ public class WorkPerformanceService extends CrudService<WorkPerformanceDao, Work
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("113");
-		workPerformance.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		workPerformance.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return workPerformance;
 	}
 	

+ 4 - 1
src/main/java/com/jeeplus/modules/workprojectcompletion/service/WorkProjectCompletionService.java

@@ -12,6 +12,7 @@ import com.jeeplus.modules.act.utils.ProcessDefCache;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.entity.WorkActivityProcess;
@@ -55,6 +56,8 @@ public class WorkProjectCompletionService extends CrudService<WorkProjectComplet
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private RuntimeService runtimeService;
 
     @Autowired
@@ -107,7 +110,7 @@ public class WorkProjectCompletionService extends CrudService<WorkProjectComplet
      */
     @Transactional(readOnly = false)
     public List<WorkClientAttachment> findList(WorkClientAttachment workClientAttachment){
-        return workClientAttachmentDao.findList(workClientAttachment);
+        return workattachmentService.getAttachmentList(workClientAttachment);
     }
     /*
     * 提交项目竣工流程

+ 4 - 1
src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementService.java

@@ -21,6 +21,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -98,6 +99,8 @@ public class WorkReimbursementService extends CrudService<WorkReimbursementDao,
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private WorkLoanService workLoanService;
 
     @Autowired
@@ -154,7 +157,7 @@ public class WorkReimbursementService extends CrudService<WorkReimbursementDao,
             WorkClientAttachment workClientAttachment = new WorkClientAttachment();
             workClientAttachment.setAttachmentId(id);
             workClientAttachment.setAttachmentFlag(VarStr.attachmentFlag[1]);
-            workReimbursement.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+            workReimbursement.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
             if (workReimbursement!=null && StringUtils.isNotBlank(workReimbursement.getSubmitterId())){
                 workReimbursement.setSubmitterName(UserUtils.get(workReimbursement.getSubmitterId()).getName());
             }

+ 4 - 1
src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementTypeService.java

@@ -7,6 +7,7 @@ import com.jeeplus.common.service.TreeService;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.projectAccessory.entity.ProjectAccessoryTree;
 import com.jeeplus.modules.sys.entity.Office;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -27,6 +28,8 @@ import java.util.*;
 public class WorkReimbursementTypeService extends TreeService<WorkReimbursementTypeDao, WorkReimbursementTypeInfo> {
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
+    @Autowired
+    private WorkattachmentService workattachmentService;
 
     public WorkReimbursementTypeInfo get(String id) {
         return super.get(id);
@@ -192,7 +195,7 @@ public class WorkReimbursementTypeService extends TreeService<WorkReimbursementT
         WorkClientAttachment attchment = new WorkClientAttachment();
         attchment.setAttachmentId(attachmentId);
         attchment.setProjectId(projectId);
-        List<WorkClientAttachment> attachments = workClientAttachmentDao.getList(attchment);
+        List<WorkClientAttachment> attachments = workattachmentService.getList(attchment);
         return attachments;
     }
 

+ 5 - 2
src/main/java/com/jeeplus/modules/workrelationship/service/WorkRelationshipService.java

@@ -17,6 +17,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -71,6 +72,8 @@ public class WorkRelationshipService extends CrudService<WorkRelationshipDao, Wo
 
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
+	@Autowired
+	private WorkattachmentService workattachmentService;
 
 	@Autowired
 	private ActTaskService actTaskService;
@@ -101,7 +104,7 @@ public class WorkRelationshipService extends CrudService<WorkRelationshipDao, Wo
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("108");
-			workRelationship.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workRelationship.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 
 			if(workRelationship!=null && workRelationship.getWorkStaffBasicInfo()!=null &&
 					StringUtils.isNotBlank(workRelationship.getWorkStaffBasicInfo().getId())){
@@ -128,7 +131,7 @@ public class WorkRelationshipService extends CrudService<WorkRelationshipDao, Wo
 					WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 					workClientAttachment.setAttachmentId(w.getId());
 					workClientAttachment.setAttachmentFlag("108");
-					w.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+					w.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 				}
 			}
 		}

+ 4 - 1
src/main/java/com/jeeplus/modules/worksendmessage/service/WorkSendMessageService.java

@@ -15,6 +15,7 @@ import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.UserDao;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
@@ -56,6 +57,8 @@ public class WorkSendMessageService extends CrudService<WorkSendMessageDao, Work
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private UserDao userDao;
     @Autowired
     private WorkProjectNotifyService workProjectNotifyService;
@@ -89,7 +92,7 @@ public class WorkSendMessageService extends CrudService<WorkSendMessageDao, Work
         if(workSendMessage!=null&& StringUtils.isNotBlank(workSendMessage.getId())){
             WorkClientAttachment attchment = new WorkClientAttachment();
             attchment.setAttachmentId(workSendMessage.getId());
-            workSendMessage.setWorkAttachments(workClientAttachmentDao.findList(attchment));
+            workSendMessage.setWorkAttachments(workattachmentService.getAttachmentList(attchment));
             workSendMessage.setOfficeList(this.queryOfficeLists(workSendMessage));
             workSendMessage.setUserList(this.queryUserLists(workSendMessage));
         }

+ 4 - 5
src/main/java/com/jeeplus/modules/workstaff/service/WorkStaffBasicInfoService.java

@@ -26,10 +26,7 @@ import com.jeeplus.modules.sys.entity.Area;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
-import com.jeeplus.modules.sys.service.OfficeService;
-import com.jeeplus.modules.sys.service.RoleService;
-import com.jeeplus.modules.sys.service.SystemService;
-import com.jeeplus.modules.sys.service.UserService;
+import com.jeeplus.modules.sys.service.*;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.sysuseroffice.entity.Useroffice;
@@ -104,6 +101,8 @@ public class WorkStaffBasicInfoService extends CrudService<WorkStaffBasicInfoDao
     @Autowired
     private WorkClientAttachmentDao workClientAttachmentDao;
     @Autowired
+    private WorkattachmentService workattachmentService;
+    @Autowired
     private UserofficeService userofficeService;
     @Autowired
     private SystemService systemService;
@@ -546,7 +545,7 @@ public class WorkStaffBasicInfoService extends CrudService<WorkStaffBasicInfoDao
                     WorkClientAttachment workClientAttachment = new WorkClientAttachment();
                     workClientAttachment.setAttachmentId(workRelationship.getId());
                     workClientAttachment.setAttachmentFlag("108");
-                    workRelationship.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+                    workRelationship.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
                 }
             }
         }

+ 4 - 1
src/main/java/com/jeeplus/modules/workstock/service/WorkStockService.java

@@ -17,6 +17,7 @@ import com.jeeplus.modules.act.utils.ActUtils;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -69,6 +70,8 @@ public class WorkStockService extends CrudService<WorkStockDao, WorkStock> {
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private IdentityService identityService;
 	@Autowired
 	private WorkActivityMenuService workActivityMenuService;
@@ -108,7 +111,7 @@ public class WorkStockService extends CrudService<WorkStockDao, WorkStock> {
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("106");
-		workStock.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		workStock.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		if(workStock!=null){
 			WorkCatalogueItemStock workCatalogueItemStock = new WorkCatalogueItemStock();
 			WorkItemStock workItemStock = new WorkItemStock();

+ 5 - 2
src/main/java/com/jeeplus/modules/workstockcontract/service/WorkStockContractService.java

@@ -17,6 +17,7 @@ import com.jeeplus.modules.act.utils.ActUtils;
 import com.jeeplus.modules.isignature.service.ISignatureDocumentService;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -60,6 +61,8 @@ public class WorkStockContractService extends CrudService<WorkStockContractDao,
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private IdentityService identityService;
 	@Autowired
 	private WorkActivityMenuService workActivityMenuService;
@@ -89,12 +92,12 @@ public class WorkStockContractService extends CrudService<WorkStockContractDao,
 			WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 			workClientAttachment.setAttachmentId(id);
 			workClientAttachment.setAttachmentFlag("103");
-			workStockContract.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+			workStockContract.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 			//归档附件
 			WorkClientAttachment workClientAttachment2 = new WorkClientAttachment();
 			workClientAttachment2.setAttachmentId(id);
 			workClientAttachment2.setAttachmentFlag("104");
-			workStockContract.setWorkRecordAttachments(workClientAttachmentDao.findList(workClientAttachment2));
+			workStockContract.setWorkRecordAttachments(workattachmentService.getAttachmentList(workClientAttachment2));
 			//商品列表
 			if(StringUtils.isNotBlank(id)){
 				WorkItemStock workItemStock = new WorkItemStock();

+ 4 - 1
src/main/java/com/jeeplus/modules/worksupplier/service/WorkSupplierService.java

@@ -8,6 +8,7 @@ import java.util.List;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.modules.sys.dao.OfficeDao;
 import com.jeeplus.modules.sys.entity.Office;
+import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workclientinfo.dao.WorkClientAttachmentDao;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientAttachment;
@@ -31,6 +32,8 @@ public class WorkSupplierService extends CrudService<WorkSupplierDao, WorkSuppli
 	@Autowired
 	private WorkClientAttachmentDao workClientAttachmentDao;
 	@Autowired
+	private WorkattachmentService workattachmentService;
+	@Autowired
 	private WorkSupplierDao workSupplierDao;
 	@Autowired
 	private OfficeDao officeDao;
@@ -41,7 +44,7 @@ public class WorkSupplierService extends CrudService<WorkSupplierDao, WorkSuppli
 		WorkClientAttachment workClientAttachment = new WorkClientAttachment();
 		workClientAttachment.setAttachmentId(id);
 		workClientAttachment.setAttachmentFlag("101");
-		workSupplier.setWorkAttachments(workClientAttachmentDao.findList(workClientAttachment));
+		workSupplier.setWorkAttachments(workattachmentService.getAttachmentList(workClientAttachment));
 		return workSupplier;
 	}
 	

+ 25 - 0
src/main/java/com/jeeplus/modules/workvisa/service/WorkVisaService.java

@@ -21,6 +21,7 @@ import com.jeeplus.modules.sys.entity.Workattachment;
 import com.jeeplus.modules.sys.service.OfficeService;
 import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
+import com.jeeplus.modules.utils.ViewFileUtil;
 import com.jeeplus.modules.workactivity.entity.Activity;
 import com.jeeplus.modules.workactivity.entity.WorkActivityProcess;
 import com.jeeplus.modules.workactivity.service.ActivityService;
@@ -525,10 +526,34 @@ public class WorkVisaService extends CrudService<WorkVisaDao, WorkVisa> {
 			String attachmentId = workVisa.getId();
 			if(StringUtils.isNotBlank(attachmentId)){
 				workattachmentList = workVisaDao.getListOfAttachment(attachmentId);
+				//附件数据处理
+				attachmentManage(workattachmentList);
 			}
 		}
 		return workattachmentList ;
 	}
+
+
+	/**
+	 * 数据处理
+	 * @param list
+	 */
+	public static void attachmentManage(List<Workattachment> list){
+		ViewFileUtil viewFileUtil = new ViewFileUtil();
+		// 判断文件存储方式(0:本地服务器存储。1:云端存储)
+		if("0".equals(viewFileUtil.getUploadMode())){
+			//获取本地服务器ip和端口号
+			String serverIPAndPort = viewFileUtil.getServerIPAndPort();
+			//创建展示附件访问方法路径
+			String methodAccessPath = "/a/viewFile/viewFile/getUploadFile?uploadFilePath=";
+			for (Workattachment info: list) {
+				String newUrl = serverIPAndPort + methodAccessPath + info.getUrl();
+				//变更新的文件查看地址
+				info.setUrl(newUrl);
+			}
+		}
+	}
+
 	//上传
 	@Transactional(readOnly = false)
 	public void uploadattachment(MultipartFile file,WorkVisa workVisa) {

+ 13 - 9
src/main/resources/jeeplus.properties

@@ -253,22 +253,26 @@ serverDomain=http://192.168.5.74:8090/a
 #\u8BA2\u9910\u56DE\u8C03
 backUrl = http://yf.xgccpm.cn/weXin/theOrder/orderFrom
 
-#公告windows上传路径
+#\u516C\u544Awindows\u4E0A\u4F20\u8DEF\u5F84
 windowsPath = d:/simple/
 
-#公告linux上传路径
+#\u516C\u544Alinux\u4E0A\u4F20\u8DEF\u5F84
 linuxPath = /simple/
 
-#文件上传服务器信息
-#主机
+#\u6587\u4EF6\u4E0A\u4F20\u670D\u52A1\u5668\u4FE1\u606F
+#\u4E3B\u673A
 remoteServer.host = 192.168.2.4
-#端口
+#\u7AEF\u53E3
 remoteServer.port = 22
-#用户名
+#\u7528\u6237\u540D
 remoteServer.username =root
-#密码
+#\u5BC6\u7801
 remoteServer.password =asd1234567@
-#linux目录
+#linux\u76EE\u5F55
 remoteServer.directory =/simple
-#windows目录
+#windows\u76EE\u5F55
 remoteServer.winDirectory =d:/simple
+
+
+#\u6587\u4EF6\u5B58\u50A8\u65B9\u5F0F\uFF080\uFF1A\u672C\u5730\u670D\u52A1\u5668\u5B58\u50A8\u30021\uFF1A\u4E91\u7AEF\u5B58\u50A8\uFF09
+remoteServer.uploadMode =0

+ 1 - 0
src/main/resources/spring-context-shiro.xml

@@ -20,6 +20,7 @@
                 ${adminPath}/weChatCallBack/** = anon
                 ${adminPath}/ruralProject/ruralProjectRecords/getDownloadProjectView = anon
                 ${adminPath}/weXin/theOrder/** = anon
+                ${adminPath}/viewFile/viewFile/** = anon
                 ${adminPath}/webpage/weixin/orderMeal.jsp = anon
                 ${adminPath}/webpage/weixin/error.jsp = anon
                 ${adminPath}/sys/user/infoCareStatus = anon

+ 9 - 0
src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectRecordsAdminModify.jsp

@@ -741,6 +741,15 @@
                         <input id="createDate" name="createDate" htmlEscape="false"  value="<fmt:formatDate value="${projectRecords.createDate}" pattern="yyyy-MM-dd"/>" readonly="readonly"  class="form-control required layui-input"/>
                     </div>
                 </div>
+                <div class="layui-item layui-col-sm6 lw7">
+                    <label class="layui-form-label"><span class="require-item">*</span>项目类别:</label>
+                    <div class="layui-input-block">
+                        <form:select path="attachmentProjectSort" class="form-control required editable-select layui-input" id="attachmentProjectSort" value="${attachmentProjectSort}">
+                            <form:option value=""/>
+                            <form:options items="${fns:getMainDictList('attachment_project_sort')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
+                        </form:select>
+                    </div>
+                </div>
                 <%--<div class="layui-item layui-col-sm6 lw7">
                     <label class="layui-form-label">工程结构:</label>
                     <div class="layui-input-block">

+ 9 - 0
src/main/webapp/webpage/modules/ruralprojectrecords/ruralProjectRecordsAdminModify.jsp

@@ -741,6 +741,15 @@
                         <input id="createDate" name="createDate" htmlEscape="false"  value="<fmt:formatDate value="${projectRecords.createDate}" pattern="yyyy-MM-dd"/>" readonly="readonly"  class="form-control required layui-input"/>
                     </div>
                 </div>
+                <div class="layui-item layui-col-sm6 lw7">
+                    <label class="layui-form-label"><span class="require-item">*</span>项目类别:</label>
+                    <div class="layui-input-block">
+                        <form:select path="attachmentProjectSort" class="form-control required editable-select layui-input" id="attachmentProjectSort" value="${attachmentProjectSort}">
+                            <form:option value=""/>
+                            <form:options items="${fns:getMainDictList('attachment_project_sort')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
+                        </form:select>
+                    </div>
+                </div>
                 <%--<div class="layui-item layui-col-sm6 lw7">
                     <label class="layui-form-label">工程结构:</label>
                     <div class="layui-input-block">