Prechádzať zdrojové kódy

上传文件保存本地

user5 4 rokov pred
rodič
commit
acfb2fb819

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

@@ -53,6 +53,7 @@ public class ProjectReportRecord extends ActEntity<ProjectReportRecord> {
 	private Date accomplishDate;  //归档完成时间
 	private String condition;    //判定条件
 	private String flag;    //判定条件
+	private String holdFlag;    //暂存判定条件
 
 	private List<ProjectTemplateInfo> fileAttachmentList;   //报告文件
 	private List<ProjectTemplateInfo> fileGistdataList;   //依据性文件
@@ -377,4 +378,12 @@ public class ProjectReportRecord extends ActEntity<ProjectReportRecord> {
 	public void setFileOtherList(List<ProjectTemplateInfo> fileOtherList) {
 		this.fileOtherList = fileOtherList;
 	}
+
+	public String getHoldFlag() {
+		return holdFlag;
+	}
+
+	public void setHoldFlag(String holdFlag) {
+		this.holdFlag = holdFlag;
+	}
 }

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

@@ -110,7 +110,7 @@ public class RuralProjectRecordsDownMessageService extends CrudService<RuralProj
             this.save(projectReportRecord);
         }
         //判断如果是暂存,则跳过流程操作
-        if("1".equals(projectReportRecord.getFlag())){
+        if("1".equals(projectReportRecord.getHoldFlag())){
             return "true";
         }
         //获取项目信息

+ 15 - 13
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectRecordsDownMessageController.java

@@ -239,7 +239,7 @@ public class RuralProjectRecordsDownMessageController extends BaseController {
                 }
             }
             //添加暂存判定
-            projectReportRecord.setFlag("1");
+            projectReportRecord.setHoldFlag("1");
             //将状态改为暂存状态
             projectReportRecord.setStatus("1");
             String processInstanceId ="";
@@ -248,7 +248,7 @@ public class RuralProjectRecordsDownMessageController extends BaseController {
             }
             Map<String, Object> variables = new HashMap<>();
             if(!projectReportRecord.getIsNewRecord()){//编辑表单保存
-                ProjectReportRecord t = projectReportRecordService.get(projectReportRecord.getId());//从数据库取出记录的值
+                ProjectReportRecord t = projectRecordsService.get(projectReportRecord.getId());//从数据库取出记录的值
                 MyBeanUtils.copyBeanNotNull2Bean(projectReportRecord,t);//将编辑表单中的非NULL值覆盖数据库记录中的值
                 if (StringUtils.isNotBlank(projectReportRecord.getView()) && projectReportRecord.getView().equals("modify")){
                     projectReportRecord.setStatus("1");
@@ -297,17 +297,19 @@ public class RuralProjectRecordsDownMessageController extends BaseController {
         if (StringUtils.isNotBlank(projectReportRecord.getView()) && projectReportRecord.getView().equals("view")){
             return "modules/ruralprojectrecords/down/projectReportRecordDownView";
         }
-        ProcessInstance processInstance = actTaskService.getProcIns(projectReportRecord.getProcessInstanceId());
-        if (processInstance!=null) {
-            Task taskInfok = actTaskService.getCurrentTaskInfo(processInstance);
-            Act act = new Act();
-            act.setTaskId(taskInfok.getId());
-            act.setTaskName(taskInfok.getName());
-            act.setProcDefId(taskInfok.getProcessDefinitionId());
-            act.setTaskDefKey(taskInfok.getTaskDefinitionKey());
-            act.setProcInsId(taskInfok.getProcessInstanceId());
-            act.setTask(taskInfok);
-            projectReportRecord.setAct(act);
+        if(StringUtils.isNotBlank(projectReportRecord.getProcessInstanceId())){
+            ProcessInstance processInstance = actTaskService.getProcIns(projectReportRecord.getProcessInstanceId());
+            if (processInstance!=null) {
+                Task taskInfok = actTaskService.getCurrentTaskInfo(processInstance);
+                Act act = new Act();
+                act.setTaskId(taskInfok.getId());
+                act.setTaskName(taskInfok.getName());
+                act.setProcDefId(taskInfok.getProcessDefinitionId());
+                act.setTaskDefKey(taskInfok.getTaskDefinitionKey());
+                act.setProcInsId(taskInfok.getProcessInstanceId());
+                act.setTask(taskInfok);
+                projectReportRecord.setAct(act);
+            }
         }
         return "modules/ruralprojectrecords/down/projectReportRecordDownModify";
     }

+ 47 - 0
src/main/java/com/jeeplus/modules/utils/SftpClientUtil.java

@@ -6,7 +6,10 @@ import java.util.Properties;
 
 import com.jcraft.jsch.*;
 import com.jeeplus.common.config.Global;
+import com.jeeplus.common.utils.StringUtils;
 import org.apache.log4j.Logger;
+import org.springframework.mock.web.MockMultipartFile;
+import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
 
@@ -44,6 +47,30 @@ public class SftpClientUtil {
         long start = System.currentTimeMillis();
         remoteFolder = directory + remoteFolder;
         InputStream fileStream = new FileInputStream(file); // 提升作用域
+
+        if(StringUtils.isNotBlank(host) && ("127.0.0.1".equals(host) || "localhost".equals(host))){
+            String path = null;
+            if(System.getProperty("os.name").toLowerCase().contains("win")){
+                path = Global.getConfig("remoteServer.winDirectory");
+            }else{
+                path = Global.getConfig("remoteServer.directory");
+            }
+            //检查该路径对应的目录是否存在. 如果不存在则创建目录
+            File dir=new File(path);
+            if (!dir.exists()) {
+                dir.mkdirs();
+            }
+            String filePath = path +"/" + file.getName();
+            //File转MultipartFile文件
+            MultipartFile multipartFile = transformFile(file);
+            //保存文件
+            File dest = new File(filePath);
+            if (!(dest.exists())) {
+                multipartFile.transferTo(dest);
+            }
+            return filePath;
+        }
+
         ChannelSftp sftp = connect();
         try{
             //判断上传文件路径是否存在
@@ -232,5 +259,25 @@ public class SftpClientUtil {
         }
         return null;
     }
+
+
+    /**
+     * File转MultipartFile
+     * @param file
+     * @return
+     */
+    public static MultipartFile transformFile(File file){
+        InputStream inputStream = null;
+        MultipartFile multipartFile = null;
+        try {
+            inputStream = new FileInputStream(file);
+            multipartFile = new MockMultipartFile(file.getName(), inputStream);
+        } catch (FileNotFoundException e) {
+            e.printStackTrace();
+        } catch (IOException e) {
+            e.printStackTrace();
+        }
+        return multipartFile;
+    }
 }
 

+ 3 - 1
src/main/resources/jeeplus.properties

@@ -268,5 +268,7 @@ remoteServer.port = 22
 remoteServer.username =root
 #ÃÜÂë
 remoteServer.password =asd1234567@
-#Ŀ¼
+#linuxĿ¼
 remoteServer.directory =/simple
+#windowsĿ¼
+remoteServer.winDirectory =d:/simple

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

@@ -512,11 +512,11 @@
 						if(d.projectReportStatus == 5){
 							if(d.downRecordAdd != undefined && d.downRecordAdd =="1")
 							{
-								xml+="<a href=\"#\" onclick=\"openDialogre('新增线下归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecord?reportId=" + d.id +"&flag=2','95%', '95%','','送审,暂存,关闭')\" class=\"op-btn layui-bg-green\" ><i class=\"fa fa-plus\"></i> 线下归档</a>";
+								xml+="<a href=\"#\" onclick=\"openDialogre('新增线下归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecord?reportId=" + d.id +"&flag=2','95%', '95%','','送审,关闭')\" class=\"op-btn layui-bg-green\" ><i class=\"fa fa-plus\"></i> 线下归档</a>";
 							}
 							if(d.downRecordedit1 != undefined && d.downRecordedit1 =="1")
 							{
-								xml+="<a href=\"#\" onclick=\"openDialogre('修改归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecordModify?id=" + d.prrdId +"&flag=2','95%', '95%','','送审,暂存,关闭')\" class=\"op-btn op-btn-edit\" ><i class=\"fa fa-edit\"></i> 线下重新归档</a>";
+								xml+="<a href=\"#\" onclick=\"openDialogre('修改归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecordModify?id=" + d.prrdId +"&flag=2','95%', '95%','','送审,关闭')\" class=\"op-btn op-btn-edit\" ><i class=\"fa fa-edit\"></i> 线下重新归档</a>";
 							}
 							if(d.downRecordedit2 != undefined && d.downRecordedit2 =="1")
 							{

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

@@ -512,11 +512,11 @@
 						if(d.projectReportStatus == 5){
 							if(d.downRecordAdd != undefined && d.downRecordAdd =="1")
 							{
-								xml+="<a href=\"#\" onclick=\"openDialogre('新增线下归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecord?reportId=" + d.id +"&flag=1','95%', '95%','','送审,暂存,关闭')\" class=\"op-btn layui-bg-green\" ><i class=\"fa fa-plus\"></i> 线下归档</a>";
+								xml+="<a href=\"#\" onclick=\"openDialogre('新增线下归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecord?reportId=" + d.id +"&flag=1','95%', '95%','','送审,关闭')\" class=\"op-btn layui-bg-green\" ><i class=\"fa fa-plus\"></i> 线下归档</a>";
 							}
 							if(d.downRecordedit1 != undefined && d.downRecordedit1 =="1")
 							{
-								xml+="<a href=\"#\" onclick=\"openDialogre('修改归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecordModify?id=" + d.prrdId +"&flag=1','95%', '95%','','送审,暂存,关闭')\" class=\"op-btn op-btn-edit\" ><i class=\"fa fa-edit\"></i> 线下重新归档</a>";
+								xml+="<a href=\"#\" onclick=\"openDialogre('修改归档信息', '${ctx}/ruralProject/ruralProjectDownMessage/formRecordModify?id=" + d.prrdId +"&flag=1','95%', '95%','','送审,关闭')\" class=\"op-btn op-btn-edit\" ><i class=\"fa fa-edit\"></i> 线下重新归档</a>";
 							}
 							if(d.downRecordedit2 != undefined && d.downRecordedit2 =="1")
 							{