From 5b031de3c8e4cd51ed83cddfbf2ff985d70bea40 Mon Sep 17 00:00:00 2001
From: dangsn <dangsn@chicecm.com>
Date: 星期五, 21 六月 2024 16:19:20 +0800
Subject: [PATCH] 1、调整流程启动模板和流程节点获取功能 2、调整文件上传和下载功能

---
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java    |   15 +
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/VciFileUploadController.java       |   10 
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/dao/impl/WebProcessDaoImpl.java               |  540 ++++++++++++++++++++++++++----------------------
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java    |   39 +++
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebProcessDefineController.java    |   17 +
 Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessDefineServiceImpl.java |   31 ++
 6 files changed, 397 insertions(+), 255 deletions(-)

diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/VciFileUploadController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/VciFileUploadController.java
index bec3877..712ad4a 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/VciFileUploadController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/VciFileUploadController.java
@@ -136,6 +136,16 @@
     }
 
     /**
+     * 鍒犻櫎鏂囦欢
+     * @param oids 鏂囦欢鐨勪富閿�
+     * @return 鎵ц缁撴灉
+     */
+    @PostMapping("/deleteFilesPost")
+    public BaseResult deleteFilesPost(String oids){
+        return deleteFiles(oids);
+    }
+
+    /**
      * 璇诲彇涓婁紶鏂囦欢鐨勫唴瀹�
      * @param file 鏂囦欢鐨勫璞�
      * @return 鍐呭
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebProcessDefineController.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebProcessDefineController.java
index ef3ad70..769146a 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebProcessDefineController.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/controller/WebProcessDefineController.java
@@ -5,6 +5,7 @@
 import com.vci.starter.web.annotation.controller.VciUnCheckRight;
 import com.vci.starter.web.annotation.log.VciBusinessLog;
 import com.vci.starter.web.annotation.permission.VciReferPermission;
+import com.vci.starter.web.exception.VciBaseException;
 import com.vci.starter.web.pagemodel.*;
 import com.vci.starter.web.util.ControllerUtil;
 import com.vci.web.pageModel.*;
@@ -212,7 +213,13 @@
 		 }
 		 return result;
 	}
-	
+
+	/**
+	 * 鑾峰彇鏌愪釜鍒嗙被涓嬬殑userid鍙互浣跨敤鐨勬祦绋嬫ā鏉�
+	 * @param type 娴佺▼鍒嗙被
+	 * @param filterTemplate 鎸囧畾妯℃澘
+	 * @return 鍙敤鐨勬祦绋嬫ā鐗�
+	 */
 	@ResponseBody
 	@RequestMapping("/getTemplateByType")
 	@VciBusinessLog(operateName="鑾峰彇娴佺▼妯℃澘",notStore=true)
@@ -234,7 +241,13 @@
 			return BaseResult.fail("娌℃湁鍙敤鐨勭増鏈�");
 		}
 	}
-	
+
+	/**
+	 * 鑾峰彇娴佺▼涓畾涔夌殑鎵�鏈変换鍔¤妭鐐�
+	 * @param processOid 娴佺▼妯$増鐨勪富閿�
+	 * @param maxSecret 鏁版嵁涓殑鏈�澶у瘑绾у��
+	 * @return 璇ユ祦绋嬫ā鐗堜腑鎵�鏈夌殑浠诲姟鑺傜偣,鍏朵腑鍖呭惈鎵�鏈夊彲浠ラ�夋嫨鐨勭敤鎴�
+	 */
 	@ResponseBody
 	@RequestMapping("/getAllProcessNode")
 	@VciBusinessLog(operateName="鑾峰彇娴佺▼鐨勮妭鐐�",notStore=true)
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/dao/impl/WebProcessDaoImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/dao/impl/WebProcessDaoImpl.java
index 747dc9e..13cf5eb 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/dao/impl/WebProcessDaoImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/dao/impl/WebProcessDaoImpl.java
@@ -5,7 +5,6 @@
 import com.vci.corba.common.data.UserEntityInfo;
 import com.vci.corba.omd.data.BusinessObject;
 import com.vci.corba.omd.data.LinkObject;
-import com.vci.corba.workflow.WorkflowService;
 import com.vci.corba.workflow.WorkflowServicePrx;
 import com.vci.corba.workflow.data.*;
 import com.vci.frameworkcore.compatibility.SmUserQueryServiceI;
@@ -19,25 +18,29 @@
 import com.vci.starter.web.util.BeanUtil;
 import com.vci.starter.web.util.VciBaseUtil;
 import com.vci.starter.web.util.VciDateUtil;
+import com.vci.web.constant.WFVariablesKeyConstant;
 import com.vci.web.dao.WebProcessDaoI;
 import com.vci.web.model.ProcessInstance;
 import com.vci.web.model.ProcessTask;
 import com.vci.web.model.WFProcessClassifyDO;
 import com.vci.web.model.WFProcessTemplateDO;
 import com.vci.web.pageModel.*;
-import com.vci.web.service.WebBoServiceI;
 import com.vci.web.service.OsLifeCycleServiceI;
+import com.vci.web.service.WebBoServiceI;
 import com.vci.web.service.WebLoServiceI;
 import com.vci.web.util.PlatformClientUtil;
 import com.vci.web.util.WebUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Repository;
 import org.springframework.util.CollectionUtils;
 
 import java.util.*;
+import java.util.stream.Collectors;
+
 import static com.vci.frameworkcore.constant.FrameWorkBusLangCodeConstant.DATA_OID_NOT_EXIST;
 
 /**
@@ -105,16 +108,16 @@
 	 * @throws VciBaseException
 	 */
 	private void getCategory() throws VciBaseException {
-//		try {
-//			ProcessCategoryInfo[] pcia = getWorkService().getProcessCategories("root");
-//			if(pcia!=null&&pcia.length>0){
-//				for(ProcessCategoryInfo pci : pcia){
-//					categoryMap.put(pci.name.toLowerCase(), pci.id);
-//				}
-//			}
-//		} catch (VCIError e) {
-//			WebUtil.getVciBaseException(e);
-//		}//骞冲彴娌℃湁鏍规嵁鍒嗙被鍚嶇О鑾峰彇娴佺▼鍒嗙被鐨勬帴鍙�
+		try {
+			ProcessCategoryInfo[] pcia = getWorkService().getProcessCategories("root");
+			if(pcia!=null&&pcia.length>0){
+				for(ProcessCategoryInfo pci : pcia){
+					categoryMap.put(pci.name.toLowerCase(), pci.id);
+				}
+			}
+		} catch (PLException e) {
+			WebUtil.getVciBaseException(e);
+		}
 	}
 	
 	/**
@@ -131,6 +134,7 @@
 		WebUtil.alertNotNull(type,"妯℃澘鍒嗙被");
 		ProcessDefinitionInfo[] allFlowInType = null;
 		if(StringUtils.isBlank(filterTemplate)) {
+			//鏃犳寚瀹氭ā鏉挎儏鍐典笅锛岃幏鍙栨ā鏉垮垎绫讳笅鐨勬墍鏈夋ā鏉�
 			type = type.toLowerCase();
 			if (categoryMap.isEmpty() || !categoryMap.containsKey(type)) {
 				getCategory();
@@ -141,49 +145,58 @@
 			} else {
 				throw new VciBaseException(msgCodePrefix + "typeNotExist", new String[]{type});
 			}
-//			try {
-//				allFlowInType = getWorkService().getProcessDefinitions(typeOid);
-//			} catch (VCIError e) {
-//				throw WebUtil.getVciBaseException(e);
-//			}
-		}else{
+			try {
+				allFlowInType = getWorkService().getProcessDefinitions(typeOid);
+			} catch (PLException e) {
+				throw WebUtil.getVciBaseException(e);
+			}
+        }else{
 			List<ProcessDefinitionInfo> infoList = new ArrayList<>();
-			VciBaseUtil.str2List(filterTemplate).stream().forEach(name->{
-//				try {
-//					String nameUnRev = name;
-//					String revision = "";
-//					if(name.contains("-")){
-//						nameUnRev = name.substring(0,name.lastIndexOf("-"));
-//						revision = name.substring(name.lastIndexOf("-")+1);
-//					}
-//					ProcessDefinitionInfo[] definition = getWorkService().getProcessDefinitionByProcessDefinitionName(nameUnRev, "");
-//					if(definition!=null){
-//						if(StringUtils.isBlank(revision)) {
-//							Collections.addAll(infoList, definition);
-//						}else{
-//							//杩囨护鐗堟湰
-//							String finalRevision = revision;
-//							infoList.addAll(Arrays.stream(definition).filter(s -> finalRevision.equalsIgnoreCase(String.valueOf(s.version))).collect(Collectors.toList()));
-//						}
-//					}
-//				} catch (VCIError e) {
-//					throw WebUtil.getVciBaseException(e);
-//				}
-			});
+			List<String> templateList = VciBaseUtil.str2List(filterTemplate);
+			if(!CollectionUtils.isEmpty(templateList)){
+				templateList.forEach(name->{
+					try {
+						String nameUnRev = name;
+						String revision = "";
+						if(name.contains("-")){
+							nameUnRev = name.substring(0,name.lastIndexOf("-"));
+							revision = name.substring(name.lastIndexOf("-")+1);
+						}
+						ProcessDefinitionInfo[] definition = getWorkService().getProcessDefinitionByProcessDefinitionName(nameUnRev, "");
+						if(definition!=null){
+							if(StringUtils.isBlank(revision)) {
+								Collections.addAll(infoList, definition);
+							}else{
+								//杩囨护鐗堟湰
+								String finalRevision = revision;
+								infoList.addAll(Arrays.stream(definition).filter(s -> finalRevision.equalsIgnoreCase(String.valueOf(s.version))).collect(Collectors.toList()));
+							}
+						}
+					} catch (PLException e) {
+						throw WebUtil.getVciBaseException(e);
+					}
+				});
+			}
 			allFlowInType = infoList.toArray(new ProcessDefinitionInfo[0]);
 		}
 	    return swapProcessTemplate(allFlowInType, type, showAll);
 	}
-	
+
+	/**
+	 * 鏍规嵁閮ㄧ讲涓婚敭锛岃幏鍙栨祦绋嬫ā鏉垮璞�
+	 * @param deployId 閮ㄧ讲涓婚敭
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public ProcessTemplateVO getTemplateByDeployId(String deployId) throws VciBaseException {
 		WebUtil.alertNotNull(deployId,"娴佺▼閮ㄧ讲涓婚敭");
 		ProcessDefinitionInfo pdi = null;
-//		try {
-//			pdi = getWorkService().getProcessDefinitionByDeployId(deployId.trim());
-//		} catch (VCIError e) {
-//			throw new VciBaseException(msgCodePrefix + "deployIdNotExist", new String[]{deployId});
-//		}
+		try {
+			pdi = getWorkService().getProcessDefinitionByDeployId(deployId.trim());
+		} catch (PLException e) {
+			throw new VciBaseException(msgCodePrefix + "deployIdNotExist", new String[]{deployId});
+		}
 		List<ProcessTemplateVO> proTemplates = swapProcessTemplate(new ProcessDefinitionInfo[]{pdi},"",false);
 		if(proTemplates == null || proTemplates.size() == 0){
 			throw new VciBaseException(msgCodePrefix + "deployIdNotExist", new String[]{deployId});
@@ -205,7 +218,7 @@
 					pt.setName(pd.name);
 					pt.setStatus(pd.status);
 					pt.setTaskType(type);
-//					pt.setVersion(pd.version);
+					pt.setVersion((int) pd.version);
 					allTemplate.add(pt);
 				}
 			}
@@ -233,19 +246,27 @@
 	    }
 		return allNode;
 	}
+
+	/**
+	 * 鑾峰彇娴佺▼涓殑绗竴涓妭鐐圭殑鍚嶇О
+	 * @param deployId 閮ㄧ讲涓婚敭
+	 * @return
+	 * @throws VciBaseException
+	 */
     @Override
 	public String getFirstNodeName(String deployId) throws VciBaseException {
     	WebUtil.alertNotNull(deployId,"閮ㄧ讲涓婚敭");
-//    	try {
-//			ProcessTaskInfo firstProcessTask = getWorkService().getFirstProcessTask(deployId);
-//			if(firstProcessTask!=null){
-//				return firstProcessTask.taskName;
-//			}
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+    	try {
+			ProcessTaskInfo firstProcessTask = getWorkService().getFirstProcessTask(deployId);
+			if(firstProcessTask!=null){
+				return firstProcessTask.taskName;
+			}
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
     	return null;
 	}
+
 	/**
 	 * 鑾峰彇娴佺▼鐨勬墍鏈夎妭鐐瑰悕绉�
 	 * @param processOid
@@ -271,11 +292,11 @@
 	@Override
 	public String[] getAllProcessNodeNameByDeploy(String deploymentId) throws VciBaseException{
 		String[] allTaskNames = null;
-//	    try {
-//			allTaskNames = getWorkService().getAllTaskNames(deploymentId);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+	    try {
+			allTaskNames = getWorkService().getAllTaskNames(deploymentId);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	    return allTaskNames;
 	}
 
@@ -285,54 +306,65 @@
 	 */
 	@Override
 	public String getJbpmDeploymentId(String processOid) throws VciBaseException{
-//		WebUtil.alertNotNull(processOid,"娴佺▼妯℃澘涓婚敭");
-//		return getWorkService().getDeploymentID(processOid);
-		return null;
+		WebUtil.alertNotNull(processOid,"娴佺▼妯℃澘涓婚敭");
+		return getWorkService().getDeploymentID(processOid);
 	}
-	
+
+	/**
+	 * 鑾峰彇娴佺▼妯℃澘瀵瑰簲鐨勫紩鎿庨噷鐨勯儴缃蹭富閿�
+	 * @param executionId
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public String getJbpmDeploymentIdByExecutionId(String executionId) throws VciBaseException{
 		WebUtil.alertNotNull(executionId,"娴佺▼鎵ц涓婚敭");
-//		try {
-//			return getWorkService().getDeploymentIdByExecutionId(executionId);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
+		try {
+			return getWorkService().getDeploymentIdByExecutionId(executionId);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
-	
+
+	/**
+	 * 鑾峰彇妯℃澘涓妭鐐硅缃殑璐熻矗浜�
+	 * @param deploymentId 寮曟搸涓殑閮ㄧ讲涓婚敭
+	 * @param taskName 浠诲姟鑺傜偣鍚嶇О
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public ProcessNodeVO getNodePresideUsersByDeploy(String deploymentId, String taskName) throws VciBaseException{
 		WebUtil.alertNotNull(taskName,"娴佺▼浠诲姟鍚嶇О",deploymentId,"娴佺▼寮曟搸涓殑閮ㄧ讲涓婚敭");
 		ProcessNodeVO pn = new ProcessNodeVO();
-//		pn.setName(taskName);
-//		try {
-//			String[] nodePresideUsers = getWorkService().getCurCandidates(deploymentId, taskName, "", "");
-//			if(nodePresideUsers!=null&& nodePresideUsers.length>0){
-//				for(String preUsers : nodePresideUsers){
-//					//骞冲彴瀛樺偍鐨勬柟寮忔槸鐢ㄦ埛;瑙掕壊;閮ㄩ棬;鑷畾涔�....
-//					if(StringUtils.isNotEmpty(preUsers)){
-//						String[] preUsersSplit = preUsers.split("\\;");
-//						if(preUsersSplit!=null && preUsersSplit.length>0){
-//							if(StringUtils.isNotEmpty(preUsersSplit[0])){
-//								pn.setUsers(preUsersSplit[0]);
-//							}
-//							if(preUsersSplit.length>1 && StringUtils.isNotEmpty(preUsersSplit[1])){
-//								pn.setRoles(preUsersSplit[1]);
-//							}
-//							if(preUsersSplit.length>2 && StringUtils.isNotEmpty(preUsersSplit[2])){
-//								pn.setDepts(preUsersSplit[2]);
-//							}
-//							if(preUsersSplit.length>3 && StringUtils.isNotEmpty(preUsersSplit[3])){
-//								pn.setCustomClass(preUsersSplit[3]);
-//							}
-//						}
-//					}
-//				}
-//			}
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+		pn.setName(taskName);
+		try {
+			String[] nodePresideUsers = getWorkService().getCurCandidates(deploymentId, taskName, "", "");
+			if(nodePresideUsers!=null&& nodePresideUsers.length>0){
+				for(String preUsers : nodePresideUsers){
+					//骞冲彴瀛樺偍鐨勬柟寮忔槸鐢ㄦ埛;瑙掕壊;閮ㄩ棬;鑷畾涔�....
+					if(StringUtils.isNotEmpty(preUsers)){
+						String[] preUsersSplit = preUsers.split("\\;");
+						if(preUsersSplit!=null && preUsersSplit.length>0){
+							if(StringUtils.isNotEmpty(preUsersSplit[0])){
+								pn.setUsers(preUsersSplit[0]);
+							}
+							if(preUsersSplit.length>1 && StringUtils.isNotEmpty(preUsersSplit[1])){
+								pn.setRoles(preUsersSplit[1]);
+							}
+							if(preUsersSplit.length>2 && StringUtils.isNotEmpty(preUsersSplit[2])){
+								pn.setDepts(preUsersSplit[2]);
+							}
+							if(preUsersSplit.length>3 && StringUtils.isNotEmpty(preUsersSplit[3])){
+								pn.setCustomClass(preUsersSplit[3]);
+							}
+						}
+					}
+				}
+			}
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 		return pn;
 	}
 	
@@ -353,29 +385,36 @@
 	    }
 	    return getNodePresideUsersByDeploy(deploymentId,taskName);
 	}
-	
+
+	/**
+	 * 鑾峰彇浠诲姟鐨勫鐞嗕汉
+	 * @param executionid 鎵ц涓婚敭
+	 * @param taskName 浠诲姟鍚嶇О
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public List<ProcessUserVO> getNodePresideUsersByTask(String executionid, String taskName)
 			throws VciBaseException{
 		WebUtil.alertNotNull(executionid,"娴佺▼鎵ц浠诲姟",taskName,"浠诲姟鍚嶇О");
-//		if("缁撴潫".equalsIgnoreCase(taskName)){
-//			return null;
-//		}
+		if("缁撴潫".equalsIgnoreCase(taskName)){
+			return null;
+		}
 		//涓嶈兘浣跨敤workitem鍘绘煡璇紝鍥犱负鍙兘浠诲姟杩樻病鍒�
-//		String users = getWorkService().getNextTaskAssigner(executionid, taskName);
+		String users = getWorkService().getNextTaskAssigner(executionid, taskName);
 		List<ProcessUserVO> allProUser = new ArrayList<ProcessUserVO>();
-//		if(StringUtils.isNotEmpty(users)){
-//			String userIds = users.replace("user:", "");//鐜板湪鍙敮鎸佽缃敤鎴�
-//			List<SmUserVO> allUser = userQueryService.listUserByUserIds(WebUtil.str2List(userIds));
-//			if(allUser!=null && allUser.size()>0){
-//				for(SmUserVO user : allUser){
-//					ProcessUserVO pu = new ProcessUserVO();
-//					BeanUtils.copyProperties(user, pu);
-//					pu.setType("user");
-//					allProUser.add(pu);
-//				}
-//			}
-//		}
+		if(StringUtils.isNotEmpty(users)){
+			String userIds = users.replace("user:", "");//鐜板湪鍙敮鎸佽缃敤鎴�
+			List<SmUserVO> allUser = userQueryService.listUserByUserIds(WebUtil.str2List(userIds));
+			if(allUser!=null && allUser.size()>0){
+				for(SmUserVO user : allUser){
+					ProcessUserVO pu = new ProcessUserVO();
+					BeanUtils.copyProperties(user, pu);
+					pu.setType("user");
+					allProUser.add(pu);
+				}
+			}
+		}
 		return allProUser;
 	}
 
@@ -554,25 +593,30 @@
 		BeanUtil.convert(process,processInstanceVO);
 		return processInstanceVO;
 	}
-	
+
+	/**
+	 * 鑾峰彇娴佺▼涓殑鍙橀噺锛屽钩鍙板彧鏀寔瀛楃涓�.....
+	 * @param executionId
+	 * @param key
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public String getVariablesInProcess(String executionId,String key) throws VciBaseException{
 		WebUtil.alertNotNull(executionId,"娴佺▼鎵ц涓婚敭",key,"鍙傛暟Key");
 		UserEntityInfo ueo = new UserEntityInfo();
 		SessionInfo si = WebUtil.getCurrentUserSessionInfo();
-//		ueo..ip = si.getIp();
 		ueo.modules = "娴佺▼";
 		ueo.userName = si.getUserId();
-//		while(StringUtils.countMatches(executionId,".")>1){
-//			//璇存槑鏄瓙浠诲姟锛岀敤鐖朵换鍔¤幏鍙栦竴涓嬪彉閲�
-//			executionId = executionId.substring(0,executionId.lastIndexOf("."));
-//		}
-//		try {
-//			return getWorkService().getProcessVariable(executionId, key, ueo);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
+		while(StringUtils.countMatches(executionId,".")>1){
+			//璇存槑鏄瓙浠诲姟锛岀敤鐖朵换鍔¤幏鍙栦竴涓嬪彉閲�
+			executionId = executionId.substring(0,executionId.lastIndexOf("."));
+		}
+		try {
+			return getWorkService().getProcessVariable(executionId, key, ueo);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
 
 	/**
@@ -675,41 +719,41 @@
 	public List<ProcessHistoryVO> getHistory(String executionId) throws VciBaseException{
 		WebUtil.alertNotNull(executionId,"娴佺▼鎵ц涓婚敭");
 		List<ProcessHistoryVO> hisList = new ArrayList<ProcessHistoryVO>();
-//		FlowApproveHistoryInfo[] historyActivitys = null;
-//		try {
-//			historyActivitys = getWorkService().getHistoryActivityByProInsIdbyPLM(executionId);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-//		//闇�瑕佸幓闄ゆ湭澶勭悊鐨勯噸澶嶉」
-//		for (int i = 0; i < historyActivitys.length; i++) {
-//			FlowApproveHistoryInfo historyActivity = historyActivitys[i];
-//			ProcessHistoryVO his = new ProcessHistoryVO();
-//			his.setTaskName(historyActivity.taskName);
-//			his.setOpinin(historyActivity.opinion);//杩欎釜鏄鐞嗘柟寮忥紝灏辨槸鍚屾剰杩樻槸涓嶅悓鎰�
-//			his.setCreateTime(historyActivity.createTime);
-//			his.setEndTime(historyActivity.endTime);
-//			his.setNode(historyActivity.note);
-//			his.setAssignee(historyActivity.assignee);
-//			his.setExecutionId(historyActivity.executionId);
-//			String userIdString = historyActivity.assignee;
-//			if(StringUtils.contains(userIdString,":")) {
-//				userIdString = userIdString.substring(userIdString.indexOf(":") + 1);
-//			}
-//			String userShowInfoString = "";
-//			SmUserVO user = userQueryService.getUserByUserId(userIdString);
-//			if(user != null){
-//				userShowInfoString = user.getName() + "(" + user.getId() + ")";
-//			}else{
-//				userShowInfoString = historyActivity.assignee;
-//			}
-//			his.setAssigneeName(userShowInfoString);
-//			if(StringUtils.isNotBlank(historyActivity.endTime)) {
-//				hisList.add(his);
-//			}
-//			//濡傛灉endTime涓虹┖琛ㄧず鏄緟鍔炵殑锛屼絾鏄湇鍔$鐨勬帴鍙d腑鏈変釜闂鏄紝浼氭妸浼氱鎴栬�呭瓙娴佺▼涓凡缁忓鐞嗙殑鍜屾湭澶勭悊鐨勬贩鍚堝湪涓�璧�
-//			//鐩存帴浠庡緟鍔炰换鍔¢噷鍘绘煡璇�
-//		}
+		FlowApproveHistoryInfo[] historyActivitys = null;
+		try {
+			historyActivitys = getWorkService().getHistoryActivityByProInsIdbyPLM(executionId);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
+		//闇�瑕佸幓闄ゆ湭澶勭悊鐨勯噸澶嶉」
+		for (int i = 0; i < historyActivitys.length; i++) {
+			FlowApproveHistoryInfo historyActivity = historyActivitys[i];
+			ProcessHistoryVO his = new ProcessHistoryVO();
+			his.setTaskName(historyActivity.taskName);
+			his.setOpinin(historyActivity.opinion);//杩欎釜鏄鐞嗘柟寮忥紝灏辨槸鍚屾剰杩樻槸涓嶅悓鎰�
+			his.setCreateTime(VciDateUtil.date2Str(VciDateUtil.long2Date(historyActivity.createTime), VciDateUtil.DateTimeFormat));
+			his.setEndTime(VciDateUtil.date2Str(VciDateUtil.long2Date(historyActivity.endTime), VciDateUtil.DateTimeFormat));
+			his.setNode(historyActivity.note);
+			his.setAssignee(historyActivity.assignee);
+			his.setExecutionId(historyActivity.executionId);
+			String userIdString = historyActivity.assignee;
+			if(StringUtils.contains(userIdString,":")) {
+				userIdString = userIdString.substring(userIdString.indexOf(":") + 1);
+			}
+			String userShowInfoString = "";
+			SmUserVO user = userQueryService.getUserByUserId(userIdString);
+			if(user != null){
+				userShowInfoString = user.getName() + "(" + user.getId() + ")";
+			}else{
+				userShowInfoString = historyActivity.assignee;
+			}
+			his.setAssigneeName(userShowInfoString);
+			if(StringUtils.isNotBlank(his.getEndTime())) {
+				hisList.add(his);
+			}
+			//濡傛灉endTime涓虹┖琛ㄧず鏄緟鍔炵殑锛屼絾鏄湇鍔$鐨勬帴鍙d腑鏈変釜闂鏄紝浼氭妸浼氱鎴栬�呭瓙娴佺▼涓凡缁忓鐞嗙殑鍜屾湭澶勭悊鐨勬贩鍚堝湪涓�璧�
+			//鐩存帴浠庡緟鍔炰换鍔¢噷鍘绘煡璇�
+		}
 
 		Map<String,String> conditionMap = new HashMap<String, String>();
 		conditionMap.put("businesstype", "5");//鏈」鐩病鏈夊疄闄呯殑鎰忎箟
@@ -763,52 +807,65 @@
 	public byte[] getProcessPicture(String executionId, String taskName)
 			throws VciBaseException{
 		WebUtil.alertNotNull(executionId,"娴佺▼鎵ц涓婚敭",taskName,"娴佺▼浠诲姟鍚嶇О");
-//		try {
-//			byte[] processChart =  getWorkService().getExecutionImageByExecutionId(executionId, taskName);
-//			return processChart;
-//		} catch (Throwable e) {
-//			String msg = "鏈夊彲鑳借繖涓换鍔″叧鑱旂殑娴佺▼宸茬粡缁撴潫鎴栬�呰缁堟锛屼笉鑳藉啀鏌ョ湅鍏舵祦绋嬪浘浜�";
-//			logger.error(msg,e);
-//			throw new VciBaseException(msg);
-//		}
-		return null;
+		try {
+			byte[] processChart =  getWorkService().getExecutionImageByExecutionId(executionId, taskName);
+			return processChart;
+		} catch (Throwable e) {
+			String msg = "鏈夊彲鑳借繖涓换鍔″叧鑱旂殑娴佺▼宸茬粡缁撴潫鎴栬�呰缁堟锛屼笉鑳藉啀鏌ョ湅鍏舵祦绋嬪浘浜�";
+			logger.error(msg,e);
+			throw new VciBaseException(msg);
+		}
 	}
 
 	@Override
 	public byte[] getProcessTemplatePicture(String executionId)
 			throws VciBaseException{
-//		WebUtil.alertNotNull(executionId,"娴佺▼瀹炰緥涓婚敭");
-//		try {
-//			byte[] processChart =  getWorkService().getFlowImageByDeployID(executionId);
-//			return processChart;
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
-	}
-	
-	@Override
-	public String[] getAllOutComes(String taskOid) throws VciBaseException{
-//		try {
-//			return getWorkService().getAllOutComes(taskOid);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
-	}
-	
-	@Override
-	public String getNextTaskName(String executionid, String taskName, String outCome) throws VciBaseException{
-//		WebUtil.alertNotNull(executionid,"娴佺▼鎵ц涓婚敭",taskName,"浠诲姟鍚嶇О");
-//		String deployId = getJbpmDeploymentIdByExecutionId(executionid);
-//		try {
-//			return getWorkService().getNextTaskNameByJbpmId(deployId, taskName, outCome);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
+		WebUtil.alertNotNull(executionId,"娴佺▼瀹炰緥涓婚敭");
+		try {
+			byte[] processChart =  getWorkService().getFlowImageByDeployID(executionId);
+			return processChart;
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
 
+	/**
+	 * 鑾峰彇浠诲姟鐨勮矾鐢�
+	 * @param taskOid jbpm涓殑浠诲姟涓婚敭
+	 * @return
+	 * @throws VciBaseException
+	 */
+	@Override
+	public String[] getAllOutComes(String taskOid) throws VciBaseException{
+		try {
+			return getWorkService().getAllOutComes(taskOid);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
+	}
+
+	/**
+	 * 鑾峰彇涓嬩竴姝ョ殑浠诲姟
+	 * @param executionid 娴佺▼鎵ц涓婚敭
+	 * @param taskName 褰撳墠浠诲姟鐨勫悕绉�
+	 * @param outCome 璺敱鍚嶇О
+	 * @return 鍥犱负鏈夊垎鏀殑鎯呭喌锛屾墍浠ヤ笅涓�姝ヤ换鍔′細鏈夊涓�
+	 */
+	@Override
+	public String getNextTaskName(String executionid, String taskName, String outCome) throws VciBaseException{
+		WebUtil.alertNotNull(executionid,"娴佺▼鎵ц涓婚敭",taskName,"浠诲姟鍚嶇О");
+		String deployId = getJbpmDeploymentIdByExecutionId(executionid);
+		try {
+			return getWorkService().getNextTaskNameByJbpmId(deployId, taskName, outCome);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
+	}
+
+	/**
+	 * 鑾峰彇骞冲彴鐨勬祦绋嬫湇鍔�
+	 * @return
+	 */
 	@Override
 	public WorkflowServicePrx getWorkService() throws VciBaseException{
 		if(workService == null){
@@ -848,18 +905,18 @@
 			taskAss.userName = "";
 		}
 		taskAss.TasksName = userId;
-//		taskAss.startTime = VciDateUtil.date2Str(startDate, VciDateUtil.DateFormat);
+		taskAss.startTime = VciDateUtil.getTime(startDate);
 		if(endDate == null){
 			endDate = VciDateUtil.getDateAddDay(startDate, 30);//榛樿鏈�澶氫唬鐞嗕竴涓湀
 		}
-//		taskAss.endTime = VciDateUtil.date2Str(endDate, VciDateUtil.DateFormat);
-//		taskAss.isTrue = isNowEnable?1:0;
+		taskAss.endTime = VciDateUtil.getTime(endDate);
+		taskAss.isTrue = isNowEnable?true:false;
 		taskAss.fromUser =WebUtil.getCurrentUserSessionInfo().getUserId();
-//		try {
-//			getWorkService().saveOrUpdateTasksAssigned(taskAss, WebUtil.getUserEntityInfo("娴佺▼"));
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+		try {
+			getWorkService().saveOrUpdateTasksAssigned(taskAss, WebUtil.getUserEntityInfo("娴佺▼"));
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
 	
 	
@@ -868,32 +925,22 @@
 	public void endProxy()
 			throws VciBaseException {
 		//骞冲彴涓嶆敮鎸佸仠鐢ㄥ惎鐢ㄤ唬鐞嗕俊鎭�..鍙互鏌ヨ鍑烘潵鍐嶉噸鏂版坊鍔犮��
-//		try {
-//			UserEntityInfo  uei = WebUtil.getUserEntityInfo( "娴佺▼");
-//			getWorkService().deleteTasksAssignedByUserName(new String[]{uei.userName}, uei);
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+		try {
+			UserEntityInfo  uei = WebUtil.getUserEntityInfo( "娴佺▼");
+			getWorkService().deleteTasksAssignedByUserName(new String[]{uei.userName}, uei);
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
 	
 	@Override
 	public TasksAssignedInfo getProxy() throws VciBaseException{
 		TasksAssignedInfo assign = null;
-//		try {
-//			TasksAssignedInfo taskAss = getWorkService().getTasksAssignedByUserName("", WebUtil.getUserEntityInfo( "娴佺▼"));
-//			if(taskAss!=null && StringUtils.isNotEmpty(taskAss.id)){
-//				assign = new TasksAssigned();
-//				assign.setId(taskAss.id);
-//				assign.setTasksName(taskAss.TasksName);
-//				assign.setStartTime(taskAss.startTime);
-//				assign.setEndTime(taskAss.endTime);
-//				assign.setFromUser(taskAss.fromUser);
-//				assign.setIsTrue(taskAss.isTrue);
-//				assign.setUserName(taskAss.userName);
-//			}
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
+		try {
+			assign = getWorkService().getTasksAssignedByUserName("", WebUtil.getUserEntityInfo( "娴佺▼"));
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 		return assign;
 	}
 
@@ -905,24 +952,24 @@
 	 */
 	@Override
 	public void endProcess(String executionId) throws VciBaseException {
-//		try {
+		try {
 			DataGrid dataGrid  = getDataByProcess(executionId,null);
 			//鍏堣幏鍙栦竴涓�
 			UserEntityInfo userEntityInfo = WebUtil.getUserEntityInfo("娴佺▼");
 			String resetStatus = null;
-//			try{
-//				resetStatus = getWorkService().getProcessVariable(executionId, WFVariablesKeyConstant.RESET_STATUS, userEntityInfo);
-//			}catch (Throwable e){
-//				logger.error("鑾峰彇娴佺▼鐨勫彉閲忓嚭閿�",e);
-//			}
-//			getWorkService().endProcessInstanceByplatform(executionId,userEntityInfo);
+			try{
+				resetStatus = getWorkService().getProcessVariable(executionId, WFVariablesKeyConstant.RESET_STATUS, userEntityInfo);
+			}catch (Throwable e){
+				logger.error("鑾峰彇娴佺▼鐨勫彉閲忓嚭閿�",e);
+			}
+			getWorkService().endProcessInstanceByplatform(executionId,userEntityInfo);
 			//骞冲彴娌℃湁鑷姩灏嗕笟鍔℃暟鎹仮澶嶅埌涔嬪墠鐨勭姸鎬�
 			if(StringUtils.isNotBlank(resetStatus)){
 				resetLcStatusForBusinessData(dataGrid.getData(),resetStatus);
 			}
-//		} catch (VCIError vciError) {
-//			throw WebUtil.getVciBaseException(vciError);
-//		}
+		} catch (PLException vciError) {
+			throw WebUtil.getVciBaseException(vciError);
+		}
 	}
 
 	private void  resetLcStatusForBusinessData(List<Map> bussinesDataList,String resetStatus) throws VciBaseException{
@@ -1006,12 +1053,11 @@
 	@Override
 	public byte[] getProcessXmlContent(String jbpmDeploymentId) throws VciBaseException {
 		WebUtil.alertNotNull("娴佺▼鎵ц涓婚敭淇℃伅",jbpmDeploymentId);
-//		try {
-//			return getWorkService().getProcessResource(jbpmDeploymentId,".xml");
-//		} catch (VCIError e) {
-//			throw WebUtil.getVciBaseException(e);
-//		}
-		return null;
+		try {
+			return getWorkService().getProcessResource(jbpmDeploymentId,".xml");
+		} catch (PLException e) {
+			throw WebUtil.getVciBaseException(e);
+		}
 	}
 
 	/**
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java
index f283e24..59e6613 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileObjectServiceImpl.java
@@ -1,5 +1,7 @@
 package com.vci.web.service.impl;
 
+import com.vci.corba.common.PLException;
+import com.vci.corba.volume.VolumeServicePrx;
 import com.vci.file.dto.VciFileObjectDTO;
 import com.vci.file.lcstatuspck.FileLCStatus;
 import com.vci.file.pagemodel.VciFileObjectVO;
@@ -15,7 +17,11 @@
 import com.vci.starter.web.wrapper.VciQueryWrapperForDO;
 import com.vci.web.dao.VciFileObjectDaoI;
 import com.vci.web.model.VciFileObjectDO;
+import com.vci.web.model.VciFileVolumeDO;
 import com.vci.web.service.VciFileObjectServiceI;
+import com.vci.web.service.VciFileVolumeServiceI;
+import com.vci.web.util.PlatformClientUtil;
+import com.vci.web.util.WebUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -60,8 +66,20 @@
     /**
     * 鐗堟湰鍜屾暟鎹璞″伐鍏风被
     */
-    @Autowired
+    @Resource
     private RevisionModelUtil revisionModelUtil;
+
+    /**
+     * 鏂囦欢鐨勫嵎鏈嶅姟
+     */
+    @Resource
+    private VciFileVolumeServiceI vciFileVolumeServiceI;
+
+    /**
+     * 骞冲彴鐨勫鎴风
+     */
+    @Resource
+    private PlatformClientUtil platformClientUtil;
 
     /**
      * 鏌ヨ鎵�鏈夌殑鏂囦欢瀵硅薄
@@ -496,10 +514,27 @@
     public BaseResult deleteFiles(Collection<String> fileOids) throws VciBaseException {
         Collection<VciFileObjectVO> fileObjectVOS = listVciFileObjectByOids(fileOids);
         if(!CollectionUtils.isEmpty(fileObjectVOS)){
-            //鎴戜滑鏆傛椂涓嶅垹闄ゆ枃浠讹紝闃叉鍒犻櫎閿欎簡
             VciBaseUtil.switchCollectionForOracleIn(fileObjectVOS).stream().forEach(fileObjectVOList->{
                 vciFileObjectMapper.batchDeleteByOids(fileObjectVOList.stream().map(VciFileObjectVO::getOid).collect(Collectors.toList()));
             });
+
+            //鍒犻櫎浠撳簱涓殑鏂囦欢
+            //鑾峰彇鏂囦欢浠撲綅缃�
+            VciFileVolumeDO vciFileVolumeDO = vciFileVolumeServiceI.getUploadVolume();
+            String volumeName = vciFileVolumeDO.getName();
+            VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
+            if(volumnCorbaService == null){
+                throw new VciBaseException("娌℃湁鑾峰彇鍒板嵎鏈嶅姟");
+            }
+            Set<String> filePathSet = fileObjectVOS.stream().map(VciFileObjectVO::getFilePath).collect(Collectors.toSet());
+            String[] filePathArr = new String[filePathSet.size()];
+            filePathSet.toArray(filePathArr);
+            try {
+                volumnCorbaService.deleteAllFiles(filePathArr);
+            } catch (PLException e) {
+                logger.error("鍗锋湇鍔″垹闄や粨搴撲腑鐨勬枃浠跺け璐ワ細", e);
+                logger.error("鍗锋湇鍔″垹闄ゅけ璐ョ殑鏂囦欢锛�"+ WebUtil.getJSONStringWithDateFormat(filePathSet));
+            }
         }
         return BaseResult.success();
     }
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java
index 84b6487..78d98be 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/VciFileUploadServiceImpl.java
@@ -1,5 +1,6 @@
 package com.vci.web.service.impl;
 
+import com.vci.corba.common.PLException;
 import com.vci.corba.volume.VolumeServicePrx;
 import com.vci.file.constant.VciFileDefaultValueConstant;
 import com.vci.file.constant.VciFileLangCodeConstant;
@@ -265,7 +266,7 @@
                 long currentTime = volumnCorbaService.getCurrrentTimeMillions();
                 in = multipartFile.getInputStream();
                 long fileSize = multipartFile.getSize();
-                int blockSize = (int)webProperties.getBlockLength()*1024;
+                int blockSize = webProperties.getBlockLength()*1024;
                 byte[] buffer = new byte[blockSize];
                 long temp =0L;
                 for(temp = 0L; temp < fileSize - (long)blockSize; temp += (long)blockSize) {
@@ -306,6 +307,18 @@
             sourceFileObject.setFileSize(vciFileObjectDO.getFileSize());
             vciFileObjectMapper.updateByPrimaryKey(sourceFileObject);
             //娌″姙娉曞垹闄や箣鍓嶇殑鏂囦欢锛�
+
+            String volumeName = vciFileVolumeDO.getName();
+            VolumeServicePrx volumnCorbaService = platformClientUtil.getVolumeService(volumeName);
+            if(volumnCorbaService == null){
+                throw new VciBaseException("娌℃湁鑾峰彇鍒板嵎鏈嶅姟");
+            }
+            try {
+                volumnCorbaService.deleteFile(sourceFileObject.getFilePath());
+            } catch (PLException e) {
+                e.printStackTrace();
+                System.out.println("鍒犻櫎浠撳簱涓殑鏂囦欢澶辫触锛�"+e.getMessage());
+            }
         }else {
             vciFileObjectMapper.insert(vciFileObjectDO);
         }
diff --git a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessDefineServiceImpl.java b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessDefineServiceImpl.java
index f0721d5..18a6d75 100644
--- a/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessDefineServiceImpl.java
+++ b/Source/plt-web/plt-web-parent/plt-web/src/main/java/com/vci/web/service/impl/WebProcessDefineServiceImpl.java
@@ -238,7 +238,6 @@
 				List<ProcessUserVO> pul = copyUsersToProcessNode(users,maxSecret);
 				if(isHasCurrentUser){//褰撳墠鐢ㄦ埛鏀惧湪鍓嶉潰
 					ProcessUserVO pu = new ProcessUserVO();
-					//SessionInfo si = WebUtil.getSessionInfo(request);
 					SessionInfo si = WebUtil.getCurrentUserSessionInfo();
 					pu.setOid(si.getUserOid());
 					pu.setId(si.getUserId());
@@ -305,12 +304,24 @@
 		ProcessNodeVO pn = processDao.getNodePresideUsers(processTemplateOid, nodeName);
 		return getProcessUsersByNode(pn,-1);
 	}
-	
+
+	/**
+	 * 鑾峰彇閮ㄧ讲id
+	 * @param executionId 鎵ц涓婚敭
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public String getDeployIdByExecutionId(String executionId) throws VciBaseException {
 		return processDao.getJbpmDeploymentIdByExecutionId(executionId);
 	}
-	
+
+	/**
+	 * 鑾峰彇浠诲姟涓缃殑褰撳墠澶勭悊浜�
+	 * @param taskOid 浠诲姟涓婚敭
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public List<ProcessUserVO> getProcessUserByTask(String taskOid) throws VciBaseException{
 		List<ProcessTaskVO> task = processDao.getTaskByOid(taskOid);
@@ -321,6 +332,13 @@
 		}
 	}
 
+	/**
+	 * 鑾峰彇鎴戠殑寰呭姙浜嬮」--骞冲彴涓嶆敮鎸佹煡璇㈡暟鎹�绘潯鏁帮紝涓嶆竻妤氬湪杩欑鎯呭喌涓嬶紝start鍜宲agesize鏄敤鏉ュ仛浠�涔堢敤鐨�
+	 * @param conditionMap 鏉′欢鏌ヨ
+	 * @param ph 鍒嗛〉鍜屾帓搴�
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public DataGrid getMyUndoProcessTask(
 			Map<String, String> conditionMap, PageHelper ph) throws VciBaseException {
@@ -330,6 +348,13 @@
 		return processDao.getUndoTask(conditionMap,ph,WebUtil.getCurrentUserId());
 	}
 
+	/**
+	 * 鑾峰彇鎴戝鐞嗕簡鐨勪换鍔�
+	 * @param conditionMap 鏌ヨ鏉′欢
+	 * @param ph 鍒嗛〉淇℃伅
+	 * @return
+	 * @throws VciBaseException
+	 */
 	@Override
 	public DataGrid getMyDoneProcessTask(Map<String, String> conditionMap,
 			PageHelper ph) throws VciBaseException {

--
Gitblit v1.9.3