%@ page contentType="text/html; charset=GBK"%><%@page
import="com.amarsoft.are.util.json.*,com.amarsoft.are.jbo.*,
com.amarsoft.biz.workflow.util.*,java.util.*,java.io.*,com.amarsoft.are.jbo.ql.Parser,
com.amarsoft.are.*,com.amarsoft.are.lang.*,com.amarsoft.awe.Configure,
com.amarsoft.are.util.conf.*,com.tenwa.flow.util.FlowViewGraph"%>
<%
JBOTransaction tx = JBOFactory.createJBOTransaction();
try{
String flowNo = request.getParameter("flowNo");
String graphJsonData = request.getParameter("graphJsonData");
if(graphJsonData==null)graphJsonData="";
String result = "";
if(!graphJsonData.equals("")){
FlowViewGraph fvg = new FlowViewGraph();
result = fvg.checkFlowGraph(graphJsonData);
}
if(result.equals("")){
BizObjectManager fcManager = JBOFactory.getBizObjectManager("jbo.sys.FLOW_CATALOG");
BizObjectManager fmManager = JBOFactory.getBizObjectManager("jbo.sys.FLOW_MODEL");
tx.join(fcManager);
tx.join(fmManager);
List fms = fmManager.createQuery("flowno=:flowno ").setParameter("flowno",flowNo).getResultList(false);
BizObjectQuery bq = fcManager.createQuery("UPDATE O SET flowstate=:flowstate, graphjsondata=:graphjsondata WHERE flowno=:flowno ");
bq.setParameter("flowno", flowNo);
bq.setParameter("graphjsondata",graphJsonData);
if(fms.size()>0){
bq.setParameter("flowstate", "unsynchronized");
}else{
bq.setParameter("flowstate", "unpublish");
}
bq.executeUpdate();
tx.commit();
out.print("±£´æ³É¹¦£¡");
}else{
out.print(result);
}
}catch(Exception e){
tx.rollback();
throw e;
}
%>