diff --git a/WebContent/Tenwa/Core/FlowManager/BaseFunction/BaseFlowFunction.jspf b/WebContent/Tenwa/Core/FlowManager/BaseFunction/BaseFlowFunction.jspf index 92dcb115c..2ed4e5897 100644 --- a/WebContent/Tenwa/Core/FlowManager/BaseFunction/BaseFlowFunction.jspf +++ b/WebContent/Tenwa/Core/FlowManager/BaseFunction/BaseFlowFunction.jspf @@ -72,7 +72,7 @@ FlowFunction.doSubmit=function(sObjectType,sObjectNo,sTaskNo,sFlowName,sFlowNo,s var result= AsControl.RunJavaMethodTrans("com.tenwa.flow.treeview.action.CheckAndSaveTreeView","run","TaskNo="+sTaskNo); if(result!="success"){alert(result);return false;} //检查是否签署意见 - var isOpitionRequire=AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","getIsOpitionsRequire","flowNo="+sFlowNo+",phaseNo="+sPhaseNo) + var isOpitionRequire=AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","getIsOpitionsRequire","flowNo="+sFlowNo+",phaseNo="+sPhaseNo) if(isOpitionRequire=="Y"){ var sReturn = AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","isSignOpinion","TaskNo="+sTaskNo);//返回值: yes-有意见; no-无意见; error-查询出错 if(sReturn!="yes") { @@ -81,44 +81,53 @@ FlowFunction.doSubmit=function(sObjectType,sObjectNo,sTaskNo,sFlowName,sFlowNo,s } return; }} - autoRiskScan(sFlowName,"TaskNo="+sTaskNo+"&ObjectType="+sObjectType+"&ObjectNo="+sObjectNo+"&FlowNo="+sFlowNo+"&PhaseNo="+sPhaseNo+"&isAutoCommit=false",sPhaseNo,function(riskMessage){ - if(riskMessage != true){ - return; - } - if(assignSubmitType=="1"){ - var isResult=AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","doFinishAssignTask","TaskNo="+sTaskNo+",userID=<%=CurUser.getUserID()%>"); - if(isResult=="SUCCESS"){ - var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; - this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); - alert("流程提交成功"); - FlowFunction.successCallBackReload(); - }else{ - alert("流程提交失败"); - } - }else{ - //处理退回直接提交的任务 - var res = AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","checkBackType","TaskNo="+sTaskNo+",userID=<%=CurUser.getUserID()%>"); - if(res == "success") { - var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; - this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); - alert("提交成功"); - FlowFunction.successCallBackReload(); - return; - } - - AsDialog.PopView("/Common/WorkFlow/FlowSubmitDialog.jsp","TaskNo="+sTaskNo,"dialogWidth=850px;dialogHeight=550px;resizable=no;scrollbars=no;status:yes;maximize:no;help:no;",function(sPhaseInfo){ - if(typeof(sPhaseInfo)=="undefined" || sPhaseInfo=="" || sPhaseInfo==null || sPhaseInfo=="null" || sPhaseInfo=="_CANCEL_") { - return; - }else if(sPhaseInfo == "Success" || sPhaseInfo == "success"){ - var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; - this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); - alert("提交成功!"); - FlowFunction.successCallBackReload(); - }else{ - alert(sPhaseInfo); - } - },"提交下一步");} - },sFlowName+":预警检查"); + //判断经销商留言是否填写 + if (sPhaseNo != "0010" && sPhaseNo != "0020") { + var isopenmassge = AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction", "getjxsmessage", "TaskNo=" + sTaskNo); + if (isopenmassge == "Y") { + return this.getDealerMessage(sObjectNo, sPhaseNo, sTaskNo); + } + } + + autoRiskScan(sFlowName,"TaskNo="+sTaskNo+"&ObjectType="+sObjectType+"&ObjectNo="+sObjectNo+"&FlowNo="+sFlowNo+"&PhaseNo="+sPhaseNo+"&isAutoCommit=false",sPhaseNo,function(riskMessage){ + if(riskMessage != true){ + return; + } + if(assignSubmitType=="1"){ + var isResult=AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","doFinishAssignTask","TaskNo="+sTaskNo+",userID=<%=CurUser.getUserID()%>"); + if(isResult=="SUCCESS"){ + var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; + this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); + alert("流程提交成功"); + FlowFunction.successCallBackReload(); + }else{ + alert("流程提交失败"); + } + }else{ + //处理退回直接提交的任务 + var res = AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction","checkBackType","TaskNo="+sTaskNo+",userID=<%=CurUser.getUserID()%>"); + if(res == "success") { + var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; + this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); + alert("提交成功"); + FlowFunction.successCallBackReload(); + return; + } + + AsDialog.PopView("/Common/WorkFlow/FlowSubmitDialog.jsp","TaskNo="+sTaskNo,"dialogWidth=850px;dialogHeight=550px;resizable=no;scrollbars=no;status:yes;maximize:no;help:no;",function(sPhaseInfo){ + if(typeof(sPhaseInfo)=="undefined" || sPhaseInfo=="" || sPhaseInfo==null || sPhaseInfo=="null" || sPhaseInfo=="_CANCEL_") { + return; + }else if(sPhaseInfo == "Success" || sPhaseInfo == "success"){ + var sFlowLogContent="<%=CurUser.getUserName()%>在"+"@时提交流程"; + this.insertFlowLog(sObjectNo, sTaskNo, sFlowLogContent); + alert("提交成功!"); + FlowFunction.successCallBackReload(); + }else{ + alert(sPhaseInfo); + } + },"提交下一步");} + },sFlowName+":预警检查"); + }; /*~[Describe=退回申请;InputParam=无;OutPutParam=无;]~*/ FlowFunction.successCallBackReload=function(){ @@ -139,6 +148,15 @@ FlowFunction.backStep=function(sObjectType,sObjectNo,sFlowNo,sPhaseNo,sTaskNo,sF } return; }} + + //判断经销商留言是否填写 + if (sPhaseNo != "0010" && sPhaseNo != "0020") { + var isopenmassge = AsControl.RunJavaMethodTrans("com.amarsoft.app.flow.FlowAction", "getjxsmessage", "TaskNo=" + sTaskNo); + if (isopenmassge == "Y") { + return this.getDealerMessage(sObjectNo, sPhaseNo, sTaskNo); + } + } + if(sFlowName=="业务申请流程"){ autoRiskScan(sFlowName,"TaskNo="+sTaskNo+"&ObjectType="+sObjectType+"&ObjectNo="+sObjectNo+"&FlowNo="+sFlowNo+"&PhaseNo="+sPhaseNo+"&isAutoCommit=false",sPhaseNo,function(riskMessage){ if(riskMessage != true){ @@ -243,6 +261,16 @@ FlowFunction.signOpinion=function(sObjectType,sObjectNo,sFlowNo,sPhaseNo,isLoadS } }); }; + +/** + * 经销商留言 + */ +FlowFunction.getDealerMessage=function(sObjectNo,sPhaseNo,sTaskNo){ + var param = "flowunid="+sObjectNo+"&phaseNo="+sPhaseNo+"&taskno="+sTaskNo+"&userid=<%=CurPage.getUserId()%>&orgid=<%=CurPage.getUser().getOrgID()%>"; + var sUrl = "/Tenwa/Customer/Lessee/Comm/Communication/Communication_info.jsp"; + AsDialog.PopView(sUrl,param,"resizable=yes;dialogWidth=1000px;dialogHeight=400px;center:yes;status:no;statusbar:no",function(){},"经销商留言"); +} + /*~[Describe=查看意见;InputParam=无;OutPutParam=无;]~*/ FlowFunction.viewOpinions=function (sObjectType,sObjectNo,sFlowNo,sPhaseNo){ AsDialog.PopView("/Common/WorkFlow/ViewFlowOpinions.jsp","FlowNo="+sFlowNo+"&PhaseNo="+sPhaseNo+"&ObjectType="+sObjectType+"&ObjectNo="+sObjectNo,"","","流程审批意见"); diff --git a/src/com/amarsoft/app/flow/FlowAction.java b/src/com/amarsoft/app/flow/FlowAction.java index 1f2420090..e91c38109 100644 --- a/src/com/amarsoft/app/flow/FlowAction.java +++ b/src/com/amarsoft/app/flow/FlowAction.java @@ -36,10 +36,7 @@ import com.tenwa.officetempalte.util.FileOperatorUtil; import com.tenwa.reckon.util.DateUtil; import com.tenwa.reckon.util.UUIDUtil; import jbo.app.APP_BUSINESS_TEMPLATE; -import jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT; -import jbo.com.tenwa.entity.comm.flow.FLOW_READER; -import jbo.com.tenwa.entity.comm.flow.FLOW_STEP_NODE; -import jbo.com.tenwa.entity.comm.flow.FLOW_WORK_FLAG; +import jbo.com.tenwa.entity.comm.flow.*; import jbo.sys.*; import org.apache.commons.lang.StringUtils; @@ -1591,6 +1588,24 @@ public class FlowAction { return isRequireOpition; } + public String getjxsmessage(JBOTransaction tx) throws Exception { + BizObject bo = null; + BizObjectManager bm = null; + BizObjectQuery bq = null; + bm = JBOFactory.getFactory().getManager(COMMUNICATION.CLASS_NAME); + bq = bm.createQuery("taskno=:taskno") + .setParameter("taskno", this.getTaskNo()); + bo = bq.getSingleResult(false); + String remake = ""; + if (bo == null) { + remake = "Y"; + }else { + remake = "N"; + } + return remake; + } + + public String getIsStepLastUser(JBOTransaction tx) throws Exception { if(this.nextNodeType.indexOf("JOIN")>=0){ TenwaFlowTask ft = new TenwaFlowTask(taskNo, tx);//使用jboTrans