<%@ page import="weaver.hrm.User" %> <%@ page import="weaver.general.BaseBean" %> <%@ page import="com.customization.dito.sendtodo.SendPortalErrorUtil" %> <%@ page import="com.customization.dito.sendtodo.HttpRequestUtil" %> <%@ page import="weaver.conn.RecordSet" %> <%@ page import="weaver.interfaces.dito.comInfo.PropBean" %> <%@ page import="com.time.util.DateUtil" %> <%@ page import="weaver.general.Util" %> <%@ page import="org.apache.commons.lang.StringUtils" %> <%@ page import="java.net.URLEncoder" %> <%@ page import="java.io.UnsupportedEncodingException" %> <%@ page import="com.alibaba.fastjson.JSONObject" %> <%@ page import="weaver.hrm.HrmUserVarify" %> <%@ page import="java.util.Map" %> <%@ page import="java.util.List" %> <%@ page import="com.alibaba.fastjson.JSONArray" %> <%@ page import="java.util.HashMap" %> <%@ page language="java" contentType="text/html; charset=UTF-8" %> <% String bpm_app_workflowurl = PropBean.getUfPropValue("bpm_app_workflowurl"); String bpm_app_requesturl = PropBean.getUfPropValue("bpm_app_requesturl"); String username = PropBean.getUfPropValue("username"); String passwd = PropBean.getUfPropValue("passwd"); String bpm_workflowurl = PropBean.getUfPropValue("bpm_workflowurl"); String requestid = request.getParameter("requestId"); String nodeid = request.getParameter("nodeid"); String userId = request.getParameter("userId"); String portal_doneurl = PropBean.getUfPropValue("portal_doneurl"); if (userId.indexOf(",") >0){ for (String id : userId.split(",")){ sendPortalDoneData(requestid,nodeid,id,portal_doneurl,bpm_app_workflowurl,username,passwd,bpm_workflowurl,bpm_app_requesturl); } }else { sendPortalDoneData(requestid,nodeid,userId,portal_doneurl,bpm_app_workflowurl,username,passwd,bpm_workflowurl,bpm_app_requesturl); } %> <%! public void sendPortalDoneData(String requestid, String nodeid, String userId, String portal_doneurl, String bpm_app_workflowurl, String username, String passwd, String bpm_workflowurl, String bpm_app_requesturl) { BaseBean bb = new BaseBean(); bb.writeLog("sendPortalDoneData"); SendPortalErrorUtil sendPortalErrorUtil = new SendPortalErrorUtil(); HttpRequestUtil httpRequestUtil = new HttpRequestUtil(); RecordSet rs = new RecordSet(); String mobileJumpUrl = PropBean.getUfPropValue("mobileJumpUrl"); try { String processTime = DateUtil.getCurrentTime("yyyy-MM-dd HH:mm:ss"); String isRecall = "1"; String actionType = "0"; String userid = userId; String workcode = ""; String sql = "select loginid from hrmresource where id = '" + userid + "'"; rs.execute(sql); while (rs.next()) { workcode = Util.null2String(rs.getString("loginid")); } String center = PropBean.getUfPropValue("center"); String urlPc = "[newtab]" + bpm_workflowurl + "/workflow/request/ViewRequestForwardSPA.jsp?requestid=" + requestid; // String urlApp = "[newtab]" + bpm_app_workflowurl + "/interface/mobilelogin/loginsso.jsp?em_auth_usercode=" + workcode + "&forwardurl=" + app_requestUrl; String replace = bpm_app_workflowurl.replace("/bpm", ""); String urlDing = replace+bpm_app_requesturl+requestid; String urlApp = replace+bpm_app_requesturl+requestid; if(StringUtils.isNotEmpty(mobileJumpUrl)){ try { urlApp += "&returnUrl="+URLEncoder.encode(mobileJumpUrl,"UTF-8"); urlDing += "&returnUrl="+URLEncoder.encode(mobileJumpUrl,"UTF-8"); } catch (UnsupportedEncodingException unsupportedEncodingException) { unsupportedEncodingException.printStackTrace(); } } String requestname = ""; String workflowname = ""; String nodeName = "" ; String creater = ""; sql =" select t1.requestname,t1.currentnodeid as nodeid,d1.nodename,t3.workflowname,h2.lastname,h2.loginid"+ " from workflow_requestbase t1\n" + " inner join workflow_base t3 on t1.workflowid = t3.id\n" + " left join workflow_nodebase d1 on d1.id = t1.currentnodeid "+ " left join (select id,lastname,loginid from hrmresource where status = 1 union all select id,lastname,loginid from hrmresourcemanager ) h2 on h2.id = t1.creater \n" + " where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" + " and t1.requestid = "+requestid ; rs.execute(sql); if (rs.next()) { requestname = Util.null2String(rs.getString("requestname")); workflowname = Util.null2String(rs.getString("workflowname")); creater=Util.null2String(rs.getString("loginid")) ; } sql = " select nodename from workflow_nodebase wn where wn.id = "+nodeid ; rs.execute(sql); if (rs.next()) { nodeName = Util.null2String(rs.getString("nodename")); } JSONObject requestObject = new JSONObject(); requestObject.put("center", center); requestObject.put("taskCode", requestid); requestObject.put("nodeId", nodeid+userid); requestObject.put("ticketType", workflowname); requestObject.put("title", requestname); requestObject.put("creator", creater); requestObject.put("processStaff", workcode); requestObject.put("processTime", processTime); requestObject.put("isRecall", isRecall); requestObject.put("actionType", actionType); requestObject.put("urlPC", urlPc); requestObject.put("urlApp", urlApp); requestObject.put("urlDing",urlDing); String userids = userid+"" ; String auth = username + ":" + passwd; bb.writeLog("done requestObject:" + requestObject.toJSONString()); String msgdata = httpRequestUtil.doPostByAuth(portal_doneurl, requestObject.toJSONString(), auth); bb.writeLog("done msgdata:" + msgdata); if(StringUtils.isNotEmpty(msgdata)) { JSONObject msgObject = JSONObject.parseObject(msgdata); //{"resultCode":"1","resultMsg":"No Result"} if(msgObject.containsKey("resultCode")){ String resultCode = msgObject.getString("resultCode"); if(!"0".equals(resultCode)){ String resultmsg = msgObject.getString("resultMsg"); sendPortalErrorUtil.doRecordPortalErrorInfo(requestid,nodeid,nodeName,userids,requestObject.toJSONString(),resultCode,resultmsg); } } } } catch (Exception e) { bb.writeLog("done Exception"); bb.writeLog(e.getMessage()); } } %>