89 lines
3.3 KiB
Plaintext
89 lines
3.3 KiB
Plaintext
<%@ page contentType="text/html; charset=UTF-8" %>
|
|
<%@ page import="weaver.conn.RecordSet" %>
|
|
<%@ page import="weaver.general.Util" %>
|
|
<%@ page import="com.alibaba.fastjson.JSONObject" %>
|
|
<jsp:useBean id="rs" class="weaver.conn.RecordSet" scope="page" />
|
|
<jsp:useBean id="rs1" class="weaver.conn.RecordSet" scope="page" />
|
|
<%
|
|
JSONObject jsonObject = new JSONObject();
|
|
boolean flag = false;
|
|
String mainid = Util.null2String(request.getParameter("mainid"));
|
|
String workflowid = "43";
|
|
String url = "/spa/workflow/index_form.jsp#/main/workflow/req?iscreate=1&workflowid="+workflowid;
|
|
rs.executeQuery("select * from uf_xygrztz where id=?",mainid);
|
|
while(rs.next()) {
|
|
rs1.executeQuery(" select a.* from workflow_billfield a,workflow_bill b where b.tablename='uf_xygrztz' and a.billid=b.id and viewtype='0' ");
|
|
while (rs1.next()) {
|
|
String fieldname = Util.null2String(rs1.getString("fieldname"));
|
|
String fieldvalue = Util.null2String(rs.getString(fieldname));
|
|
if(fieldvalue != null && !"".equals(fieldvalue)){
|
|
String fieldid = getFieldId(fieldname);
|
|
url += "&" + fieldid + "=" + fieldvalue;
|
|
if ("sfzhm".equals(fieldname)) {
|
|
flag = checkHasWorkflow(fieldvalue);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
jsonObject.put("flag",flag);
|
|
jsonObject.put("url",url);
|
|
out.print(JSONObject.toJSONString(jsonObject));
|
|
|
|
%>
|
|
|
|
<%!
|
|
public static String getFieldId(String fieldname){
|
|
RecordSet rs = new RecordSet();
|
|
String fieldid = "field";
|
|
String billid = "-89";
|
|
rs.executeQuery("select * from workflow_billfield where billid=? and viewtype=0 and fieldname=?",billid,fieldname);
|
|
if(rs.next()){
|
|
String id = Util.null2String(rs.getString("id"));
|
|
fieldid += id;
|
|
}
|
|
return fieldid;
|
|
}
|
|
|
|
public static boolean checkHasWorkflow(String sfzh){
|
|
boolean flag = false;
|
|
RecordSet rs = new RecordSet();
|
|
RecordSet rst = new RecordSet();
|
|
RecordSet rs1 = new RecordSet();
|
|
String billid = "-89";
|
|
rs.executeQuery("select * from workflow_bill where id=?",billid);
|
|
rs.next();
|
|
String tablename = Util.null2String(rs.getString("tablename"));
|
|
rs1.executeQuery("select * from "+ tablename +" where sfzhm=?",sfzh);
|
|
while(rs1.next()){
|
|
String requestid = Util.null2String(rs1.getString("requestid"));
|
|
rst.executeQuery("select currentnodetype from workflow_requestbase where requestid=?",requestid);
|
|
rst.next();
|
|
String currentnodetype = Util.null2String(rst.getString("currentnodetype"));
|
|
//非创建节点
|
|
if(!"0".equals(currentnodetype)){
|
|
flag = true;
|
|
break;
|
|
}else{
|
|
boolean bool = checkHasWorkflowLog(requestid);
|
|
if(bool){
|
|
flag = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
}
|
|
return flag;
|
|
}
|
|
|
|
public static boolean checkHasWorkflowLog(String requestid){
|
|
boolean flag = false;
|
|
RecordSet rs = new RecordSet();
|
|
rs.executeQuery("select * from workflow_requestlog where logtype='3' and requestid=?",requestid);
|
|
if(rs.next()){
|
|
flag = true;
|
|
}
|
|
return flag;
|
|
}
|
|
%>
|
|
|