@ -5,11 +5,14 @@ import com.alibaba.fastjson.JSONObject;
import com.constant.Constants ;
import com.constant.Constants ;
import com.customization.dito.sendtodo.HttpRequestUtil ;
import com.customization.dito.sendtodo.HttpRequestUtil ;
import com.customization.dito.sendtodo.SendPortalErrorUtil ;
import com.customization.dito.sendtodo.SendPortalErrorUtil ;
import com.engine.core.context.Context ;
import com.engine.workflowDesign.cmd.autoForecast.GetSimpleModeDataCmd ;
import com.time.util.DateUtil ;
import com.time.util.DateUtil ;
import org.apache.commons.lang3.StringUtils ;
import org.apache.commons.lang3.StringUtils ;
import weaver.conn.RecordSet ;
import weaver.conn.RecordSet ;
import weaver.general.BaseBean ;
import weaver.general.BaseBean ;
import weaver.general.Util ;
import weaver.general.Util ;
import weaver.hrm.User ;
import weaver.interfaces.dito.comInfo.PropBean ;
import weaver.interfaces.dito.comInfo.PropBean ;
import java.net.URLEncoder ;
import java.net.URLEncoder ;
import java.util.HashMap ;
import java.util.HashMap ;
@ -466,13 +469,13 @@ public class SendPortalMonitorUtil {
SendPortalErrorUtil sendPortalErrorUtil = new SendPortalErrorUtil ( ) ;
SendPortalErrorUtil sendPortalErrorUtil = new SendPortalErrorUtil ( ) ;
HttpRequestUtil httpRequestUtil = new HttpRequestUtil ( ) ;
HttpRequestUtil httpRequestUtil = new HttpRequestUtil ( ) ;
String mobileJumpUrl = PropBean . getUfPropValue ( "mobileJumpUrl" ) ;
String mobileJumpUrl = PropBean . getUfPropValue ( "mobileJumpUrl" ) ;
JSONObject requestObject = new JSONObject ( ) ;
RecordSet rs = new RecordSet ( ) ;
RecordSet rs = new RecordSet ( ) ;
BaseBean bb = new BaseBean ( ) ;
BaseBean bb = new BaseBean ( ) ;
bb . writeLog ( "SendPortalMonitorUtil--monitorArchivedByToRead4Rquestid" ) ;
bb . writeLog ( "SendPortalMonitorUtil--monitorArchivedByToRead4Rquestid" ) ;
String terminal = "1" ;
String terminal = "1" ;
String taskType = "1" ;
String taskType = "1" ;
String actionType = " 2 " ;
String actionType = " 0 " ;
String objectAction = "0" ;
String objectAction = "0" ;
String objectType = "0" ;
String objectType = "0" ;
try {
try {
@ -520,23 +523,18 @@ public class SendPortalMonitorUtil {
if ( "3" . equals ( currentnodetype ) ) {
if ( "3" . equals ( currentnodetype ) ) {
JSONArray taskObjectList = new JSONArray ( ) ;
JSONArray taskObjectList = new JSONArray ( ) ;
sql = " select t2.userid,h1.loginid,h1.lastname,h1.email,t2.isremark,t1.requestid,t2.nodeid,d1.nodename,c1." + cus_staff + " as staffid " +
" from workflow_requestbase t1\n" +
sql = " select t2.id as userid,c1." + cus_staff + " as staffid,h1.loginid \n" +
" inner join workflow_currentoperator t2 on t1.requestid = t2.requestid\n" +
" from ( select distinct id from workflow_forecastOperator t1 where t1.requestid = " + requestid + " and t1.nodeid =" + currentNodeId + " and t1.operateType in(-3,-4) ) t2 " +
" left join cus_fielddata c1 on c1.id = t2.userid and c1.scopeid= " + scopeid + " and c1.scope = '" + scope + "' " +
" left join cus_fielddata c1 on c1.id = t2.id and c1.scopeid=" + scopeid + " and c1.scope = '" + scope + "' \n" +
" left join (select id, lastname,loginid,email from hrmresource where STATUS = 1 union all select id,lastname,loginid,'' as email from hrmresourcemanager ) h1 on h1.id = t2.userid\n" +
" left join (select id,lastname,loginid,email from hrmresource where status = 1 union all select id,lastname,loginid,'' as email from hrmresourcemanager ) h1 on h1.id = t2.id \n" ;
" left join workflow_nodebase d1 on d1.id = t2.nodeid " +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
" and t2.isremark =2 and t2.preisremark in (8,9) \n" +
" and t2.islasttimes = 1 \n" +
" and (t2.isprocessing = '' or t2.isprocessing is null)\n" +
" and t2.requestid = " + requestid ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid-sql:" + sql ) ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid-sql:" + sql ) ;
rs . executeQuery ( sql ) ;
rs . executeQuery ( sql ) ;
while ( rs . next ( ) ) {
while ( rs . next ( ) ) {
String creator = rs . getString ( "loginid" ) ;
String creator = rs . getString ( "loginid" ) ;
String staffid = rs . getString ( "staffid" ) ;
String staffid = rs . getString ( "staffid" ) ;
String userid = rs . getString ( "userid" ) ;
String userid = rs . getString ( "userid" ) ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid:" + requestid + " creator:" + creator ) ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid:" + requestid + " creator:" + creator ) ;
if ( "sysadmin" . equals ( creator ) ) {
if ( "sysadmin" . equals ( creator ) ) {
creator = "Admin" ;
creator = "Admin" ;
@ -555,9 +553,9 @@ public class SendPortalMonitorUtil {
String userid = dataObject . getString ( "userid" ) ;
String userid = dataObject . getString ( "userid" ) ;
String creator = dataObject . getString ( "creator" ) ;
String creator = dataObject . getString ( "creator" ) ;
JSONObject requestObject = new JSONObject ( ) ;
requestObject . put ( "center" , center ) ;
requestObject . put ( "center" , center ) ;
requestObject . put ( "title" , requestname ) ;
requestObject . put ( "title" , requestname ) ;
requestObject . put ( "taskCode" , "weaver" + requestid ) ;
requestObject . put ( "taskCode" , requestid + "_cs_" + userid ) ;
requestObject . put ( "taskCode" , requestid + "_cs_" + userid ) ;
requestObject . put ( "nodeId" , currentNodeId ) ;
requestObject . put ( "nodeId" , currentNodeId ) ;
requestObject . put ( "taskType" , taskType ) ;
requestObject . put ( "taskType" , taskType ) ;
@ -584,7 +582,7 @@ public class SendPortalMonitorUtil {
JSONArray taskArray = new JSONArray ( ) ;
JSONArray taskArray = new JSONArray ( ) ;
taskArray . add ( taskObject ) ;
taskArray . add ( taskObject ) ;
requestObject . put ( "taskObjectList" , task ObjectList ) ;
requestObject . put ( "taskObjectList" , task Array ) ;
String auth = username + ":" + passwd ;
String auth = username + ":" + passwd ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid---requestObject:" + requestObject . toJSONString ( ) ) ;
bb . writeLog ( "monitorArchivedByToRead4Rquestid---requestObject:" + requestObject . toJSONString ( ) ) ;
String msgdata = httpRequestUtil . doPostByAuth ( portal_todourl , requestObject . toJSONString ( ) , auth ) ;
String msgdata = httpRequestUtil . doPostByAuth ( portal_todourl , requestObject . toJSONString ( ) , auth ) ;
@ -789,7 +787,51 @@ public class SendPortalMonitorUtil {
}
}
/ * * *
*
* @param requestids
* @param user
* /
public void doSimpleModeDataByMonitor ( String requestids , User user ) {
if ( StringUtils . isNotBlank ( requestids ) ) {
String [ ] lcids = requestids . split ( "," ) ;
for ( int i = 0 ; i < lcids . length ; i + + ) {
String requestid = lcids [ i ] ;
doSimpleModeDataByMonitor2Requestid ( requestid , user ) ;
}
}
}
/ * * *
*
* @param requestid
* @param user
* /
public void doSimpleModeDataByMonitor2Requestid ( String requestid , User user ) {
RecordSet rs = new RecordSet ( ) ;
BaseBean bb = new BaseBean ( ) ;
try {
String workflowid = "" ;
if ( StringUtils . isNotBlank ( requestid ) ) {
String sql = " select workflowid from workflow_requestbase where requestid = " + requestid ;
rs . executeQuery ( sql ) ;
if ( rs . next ( ) ) {
workflowid = Util . null2String ( rs . getString ( "workflowid" ) ) ;
}
if ( StringUtils . isNotBlank ( workflowid ) ) {
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( "requestid" , requestid ) ;
params . put ( "workflowid" , workflowid ) ;
params . put ( "resetForecast" , "1" ) ;
new GetSimpleModeDataCmd ( params , user ) . execute ( Context . getCommandComtext ( ) ) ;
}
}
} catch ( Exception e ) {
e . printStackTrace ( ) ;
bb . writeLog ( "e:" + e . getMessage ( ) ) ;
}
}
/ * * *
/ * * *
* intervention 流 程 干 预
* intervention 流 程 干 预
@ -817,7 +859,7 @@ public class SendPortalMonitorUtil {
bb . writeLog ( "SendPortalMonitorUtil--monitorIntervention" ) ;
bb . writeLog ( "SendPortalMonitorUtil--monitorIntervention" ) ;
String terminal = "1" ;
String terminal = "1" ;
String taskType = "0" ;
String taskType = "0" ;
String actionType = "2" ;
try {
try {
String cus_staff = PropBean . getUfPropValue ( "cus_staff" ) ;
String cus_staff = PropBean . getUfPropValue ( "cus_staff" ) ;
String scopeid = "-1" ;
String scopeid = "-1" ;
@ -835,46 +877,33 @@ public class SendPortalMonitorUtil {
}
}
bb . writeLog ( "monitorIntervention-urlDing" , urlDing ) ;
bb . writeLog ( "monitorIntervention-urlDing" , urlDing ) ;
int count = 0 ;
String requestname = "" ;
String countSql = " select t2.userid \n" +
String workflowname = "" ;
" from workflow_requestbase t1\n" +
String currentNodeId = "" ;
" inner join workflow_currentoperator t2 on t1.requestid = t2.requestid\n" +
String currentNodeName = "" ;
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
String currentNodeType = "" ;
" and ((t2.isremark = '0' and (t2.takisremark is null or t2.takisremark = 0)) or t2.isremark in ('1','5','8','9','7','11')) \n" +
" and t2.islasttimes = 1\n" +
" and (t2.isprocessing = '' or t2.isprocessing is null)\n" +
" and t2.requestid = " + requestid ;
bb . writeLog ( "monitorIntervention--countSql:" + countSql ) ;
rs . executeQuery ( countSql ) ;
while ( rs . next ( ) ) {
count + + ;
}
bb . writeLog ( "monitorIntervention--count:" + count ) ;
if ( count > 0 ) {
String requestname = "" ;
String sql = " select t1.requestname,t1.currentnodeid,d1.nodename,t3.workflowname,t1.currentnodetype \n" +
String workflowname = "" ;
" from workflow_requestbase t1\n" +
String currentNodeId = "" ;
" inner join workflow_base t3 on t1.workflowid = t3.id\n" +
String currentNodeName = "" ;
" left join workflow_nodebase d1 on d1.id = t1.currentnodeid " +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
String sql = " select t1.requestname,t1.currentnodeid as nodeid,d1.nodename,t3.workflowname\n" +
" and t1.requestid = " + requestid ;
" 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 " +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
" and t1.requestid = " + requestid ;
bb . writeLog ( "monitorIntervention--sql2:" + sql ) ;
bb . writeLog ( "monitorIntervention--sql2:" + sql ) ;
rs . executeQuery ( sql ) ;
rs . executeQuery ( sql ) ;
if ( rs . next ( ) ) {
if ( rs . next ( ) ) {
requestname = Util . null2String ( rs . getString ( "requestname" ) ) ;
requestname = Util . null2String ( rs . getString ( "requestname" ) ) ;
workflowname = Util . null2String ( rs . getString ( "workflowname" ) ) ;
workflowname = Util . null2String ( rs . getString ( "workflowname" ) ) ;
currentNodeId = Util . null2String ( rs . getString ( "nodeid" ) ) ;
currentNodeId = Util . null2String ( rs . getString ( "currentnodeid" ) ) ;
currentNodeName = Util . null2String ( rs . getString ( "nodeName" ) ) ;
currentNodeName = Util . null2String ( rs . getString ( "nodeName" ) ) ;
}
currentNodeType = Util . null2String ( rs . getString ( "currentNodeType" ) ) ;
}
if ( "3" . equals ( currentNodeType ) ) {
String actionType = "3" ;
requestObject . put ( "center" , center ) ;
requestObject . put ( "center" , center ) ;
requestObject . put ( "title" , requestname ) ;
requestObject . put ( "title" , requestname ) ;
requestObject . put ( "taskCode" , "weaver" + requestid ) ;
requestObject . put ( "taskCode" , "weaver" + requestid ) ;
@ -891,42 +920,12 @@ public class SendPortalMonitorUtil {
requestObject . put ( "nodeName" , currentNodeName ) ;
requestObject . put ( "nodeName" , currentNodeName ) ;
requestObject . put ( "ticketType" , workflowname ) ;
requestObject . put ( "ticketType" , workflowname ) ;
JSONArray taskObjectList = new JSONArray ( ) ;
sql = " select t2.userid,h1.loginid,h1.lastname,h1.email,t2.isremark,t1.requestid,t2.nodeid,d1.nodename,c1." + cus_staff + " as staffid " +
" from workflow_requestbase t1\n" +
" inner join workflow_currentoperator t2 on t1.requestid = t2.requestid\n" +
" left join cus_fielddata c1 on c1.id = t2.userid and c1.scopeid= " + scopeid + " and c1.scope = '" + scope + "' " +
" left join (select id, lastname,loginid,email from hrmresource where STATUS = 1 union all select id,lastname,loginid,'' as email from hrmresourcemanager ) h1 on h1.id = t2.userid\n" +
" left join workflow_nodebase d1 on d1.id = t2.nodeid " +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
" and ((t2.isremark = '0' and (t2.takisremark is null or t2.takisremark = 0)) or t2.isremark in ('1','5','8','9','7','11')) \n" +
" and t2.islasttimes = 1 \n" +
" and (t2.isprocessing = '' or t2.isprocessing is null)\n" +
" and t2.requestid = " + requestid ;
rs . executeQuery ( sql ) ;
while ( rs . next ( ) ) {
String creator = rs . getString ( "loginid" ) ;
bb . writeLog ( "monitorIntervention:" + requestid + " creator:" + creator ) ;
if ( "sysadmin" . equals ( creator ) ) {
creator = "Admin" ;
}
JSONObject taskObject = new JSONObject ( ) ;
taskObject . put ( "objectAction" , "0" ) ;
taskObject . put ( "objectType" , "0" ) ;
taskObject . put ( "objectCode" , creator ) ;
taskObject . put ( "objectId" , rs . getString ( "staffid" ) ) ;
taskObject . put ( "operatorCode" , creator ) ;
taskObjectList . add ( taskObject ) ;
}
requestObject . put ( "taskObjectList" , taskObjectList ) ;
String auth = username + ":" + passwd ;
String auth = username + ":" + passwd ;
bb . writeLog ( "monitorIntervention---requestObject:" + requestObject . toJSONString ( ) ) ;
bb . writeLog ( "monitorIntervention---requestObject:" + requestObject . toJSONString ( ) ) ;
String msgdata = httpRequestUtil . doPostByAuth ( portal_todourl , requestObject . toJSONString ( ) , auth ) ;
String msgdata = httpRequestUtil . doPostByAuth ( portal_todourl , requestObject . toJSONString ( ) , auth ) ;
if ( ! "" . equals ( msgdata ) ) {
if ( ! "" . equals ( msgdata ) ) {
JSONObject msgObject = JSONObject . parseObject ( msgdata ) ;
JSONObject msgObject = JSONObject . parseObject ( msgdata ) ;
//{"resultCode":"1","resultMsg":"No Result"}
if ( msgObject . containsKey ( "resultCode" ) ) {
if ( msgObject . containsKey ( "resultCode" ) ) {
String resultCode = msgObject . getString ( "resultCode" ) ;
String resultCode = msgObject . getString ( "resultCode" ) ;
if ( "0" . equals ( resultCode ) ) {
if ( "0" . equals ( resultCode ) ) {
@ -937,9 +936,96 @@ public class SendPortalMonitorUtil {
}
}
}
}
}
}
} else {
String actionType = "2" ;
int count = 0 ;
String countSql = " select t2.userid \n" +
" from workflow_requestbase t1\n" +
" inner join workflow_currentoperator t2 on t1.requestid = t2.requestid\n" +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
" and ((t2.isremark = '0' and (t2.takisremark is null or t2.takisremark = 0)) or t2.isremark in ('1','5','8','9','7','11')) \n" +
" and t2.islasttimes = 1\n" +
" and (t2.isprocessing = '' or t2.isprocessing is null)\n" +
" and t2.requestid = " + requestid ;
bb . writeLog ( "monitorIntervention--countSql:" + countSql ) ;
rs . executeQuery ( countSql ) ;
while ( rs . next ( ) ) {
count + + ;
}
bb . writeLog ( "monitorIntervention--count:" + count ) ;
if ( count > 0 ) {
requestObject . put ( "center" , center ) ;
requestObject . put ( "title" , requestname ) ;
requestObject . put ( "taskCode" , "weaver" + requestid ) ;
requestObject . put ( "nodeId" , currentNodeId ) ;
requestObject . put ( "taskType" , taskType ) ;
requestObject . put ( "actionType" , actionType ) ;
requestObject . put ( "createDate" , processTime ) ;
requestObject . put ( "messageTitle" , getShortMessageTitle ( requestname ) ) ;
requestObject . put ( "messageContent" , requestname ) ;
requestObject . put ( "terminal" , terminal ) ;
requestObject . put ( "urlPc" , urlPc ) ;
requestObject . put ( "urlApp" , urlApp ) ;
requestObject . put ( "urlDing" , urlDing ) ;
requestObject . put ( "nodeName" , currentNodeName ) ;
requestObject . put ( "ticketType" , workflowname ) ;
JSONArray taskObjectList = new JSONArray ( ) ;
sql = " select t2.userid,h1.loginid,h1.lastname,h1.email,t2.isremark,t1.requestid,t2.nodeid,d1.nodename,c1." + cus_staff + " as staffid " +
" from workflow_requestbase t1\n" +
" inner join workflow_currentoperator t2 on t1.requestid = t2.requestid\n" +
" left join cus_fielddata c1 on c1.id = t2.userid and c1.scopeid= " + scopeid + " and c1.scope = '" + scope + "' " +
" left join (select id, lastname,loginid,email from hrmresource where STATUS = 1 union all select id,lastname,loginid,'' as email from hrmresourcemanager ) h1 on h1.id = t2.userid\n" +
" left join workflow_nodebase d1 on d1.id = t2.nodeid " +
" where (t1.deleted <> 1 or t1.deleted is null or t1.deleted = '')\n" +
" and ((t2.isremark = '0' and (t2.takisremark is null or t2.takisremark = 0)) or t2.isremark in ('1','5','8','9','7','11')) \n" +
" and t2.islasttimes = 1 \n" +
" and (t2.isprocessing = '' or t2.isprocessing is null)\n" +
" and t2.requestid = " + requestid ;
rs . executeQuery ( sql ) ;
while ( rs . next ( ) ) {
String creator = rs . getString ( "loginid" ) ;
String staffid = rs . getString ( "staffid" ) ;
bb . writeLog ( "monitorIntervention:" + requestid + " creator:" + creator ) ;
if ( "sysadmin" . equals ( creator ) ) {
creator = "Admin" ;
}
JSONObject taskObject = new JSONObject ( ) ;
taskObject . put ( "objectAction" , "0" ) ;
taskObject . put ( "objectType" , "0" ) ;
taskObject . put ( "objectCode" , creator ) ;
taskObject . put ( "objectId" , staffid ) ;
taskObject . put ( "operatorCode" , creator ) ;
taskObjectList . add ( taskObject ) ;
}
requestObject . put ( "taskObjectList" , taskObjectList ) ;
String auth = username + ":" + passwd ;
bb . writeLog ( "monitorIntervention---requestObject:" + requestObject . toJSONString ( ) ) ;
String msgdata = httpRequestUtil . doPostByAuth ( portal_todourl , requestObject . toJSONString ( ) , auth ) ;
if ( ! "" . equals ( msgdata ) ) {
JSONObject msgObject = JSONObject . parseObject ( msgdata ) ;
//{"resultCode":"1","resultMsg":"No Result"}
if ( msgObject . containsKey ( "resultCode" ) ) {
String resultCode = msgObject . getString ( "resultCode" ) ;
if ( "0" . equals ( resultCode ) ) {
sendPortalErrorUtil . doRecordPortalErrorInfo4Phase2 ( requestid , currentNodeId , currentNodeName , currentUserId , requestObject . toJSONString ( ) , resultCode , "" , zhjkbs ) ;
} else {
String resultmsg = msgObject . getString ( "resultMsg" ) ;
sendPortalErrorUtil . doRecordPortalErrorInfo4Phase2 ( requestid , currentNodeId , currentNodeName , currentUserId , requestObject . toJSONString ( ) , resultCode , resultmsg , zhjkbs ) ;
}
}
}
}
}
}
} catch ( Exception e ) {
} catch ( Exception e ) {
e . printStackTrace ( ) ;
e . printStackTrace ( ) ;
bb . writeLog ( "monitorIntervention-e:" + e ) ;
}
}
}
}