<%@ page contentType="text/html; charset=UTF-8" %> <%@ page import="weaver.conn.RecordSet" %> <%@ page import="weaver.general.Util" %> <%@ page import="com.alibaba.fastjson.JSONObject" %> <% 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; } %>