You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
173 lines
8.4 KiB
Java
173 lines
8.4 KiB
Java
package com.customization.dito.card;
|
|
|
|
import com.customization.wfTodoCard.service.CheckSendCardService;
|
|
import com.engine.core.cfg.annotation.CommandDynamicProxy;
|
|
import com.engine.core.interceptor.AbstractCommandProxy;
|
|
import com.engine.core.interceptor.Command;
|
|
import com.engine.workflow.cmd.requestForm.RequestSubmitCmd;
|
|
import com.engine.workflow.entity.requestForm.RequestOperationResultBean;
|
|
import org.apache.commons.lang3.StringEscapeUtils;
|
|
import org.apache.commons.lang3.StringUtils;
|
|
import org.jsoup.Jsoup;
|
|
import org.jsoup.nodes.Document;
|
|
import org.jsoup.nodes.Element;
|
|
import org.jsoup.select.Elements;
|
|
import weaver.conn.RecordSet;
|
|
import weaver.general.BaseBean;
|
|
import weaver.general.Util;
|
|
import weaver.hrm.User;
|
|
import weaver.interfaces.dito.card.SendRequestToCardUtil;
|
|
import weaver.workflow.request.RequestSignRelevanceWithMe;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import java.util.Iterator;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
/***
|
|
*
|
|
*/
|
|
@CommandDynamicProxy(target = RequestSubmitCmd.class, desc="流程提交后给门户卡片发送卡片信息")
|
|
public class SendRequest2CardCmd extends AbstractCommandProxy<Map<String,Object>> {
|
|
|
|
@Override
|
|
public Map<String, Object> execute(Command<Map<String, Object>> targetCommand) {
|
|
|
|
RequestSubmitCmd requestSubmitCmd = (RequestSubmitCmd)targetCommand;
|
|
|
|
BaseBean bb = new BaseBean();
|
|
HttpServletRequest request = requestSubmitCmd.getRequest();
|
|
String requestid = Util.null2String(request.getParameter("requestid")).trim();
|
|
String workflowid = Util.null2String(request.getParameter("workflowid")).trim();
|
|
String src = Util.null2String(request.getParameter("src")).trim();
|
|
String nodeid = Util.null2String(request.getParameter("nodeid"));
|
|
String workflowname = Util.null2String(request.getParameter("workflowname"));
|
|
String remark = Util.null2String(request.getParameter("remark"));
|
|
|
|
/***
|
|
* 空值:流程正常提交
|
|
* 1:被代理人提交流程
|
|
* 2:代理人提交流程
|
|
*/
|
|
String agentType = Util.null2String(request.getParameter("agentType"));
|
|
String f_weaver_belongto_userid = Util.null2String(request.getParameter("f_weaver_belongto_userid"));
|
|
String f_weaver_belongto_usertype = Util.null2String(request.getParameter("f_weaver_belongto_usertype"));
|
|
String creater = Util.null2String(request.getParameter("creater"));
|
|
String intervenorid = Util.null2String(request.getParameter("Intervenorid"));
|
|
String agentorByAgentId = Util.null2String(request.getParameter("agentorByAgentId"));
|
|
String isSelectValue = Util.null2String(request.getParameter("isSelectValue"));
|
|
|
|
User user = requestSubmitCmd.getUser();
|
|
String userid = user.getUID()+"";
|
|
bb.writeLog("SendRequest2CardCmd-requestid:"+requestid);
|
|
bb.writeLog("SendRequest2CardCmd-workflowid:"+workflowid);
|
|
bb.writeLog("SendRequest2CardCmd-src:"+src);
|
|
bb.writeLog("SendRequest2CardCmd-nodeid:"+nodeid);
|
|
bb.writeLog("SendRequest2CardCmd-workflowname:"+workflowname);
|
|
bb.writeLog("SendRequest2CardCmd-user:"+user.getLoginid());
|
|
bb.writeLog("SendRequest2CardCmd-f_weaver_belongto_userid:"+f_weaver_belongto_userid);
|
|
bb.writeLog("SendRequest2CardCmd-f_weaver_belongto_usertype:"+f_weaver_belongto_usertype);
|
|
bb.writeLog("SendRequest2CardCmd-creater:"+creater);
|
|
bb.writeLog("SendRequest2CardCmd-agentType:"+agentType);
|
|
bb.writeLog("SendRequest2CardCmd-intervenorid:"+intervenorid);
|
|
bb.writeLog("SendRequest2CardCmd-agentorByAgentId:"+agentorByAgentId);
|
|
bb.writeLog("SendRequest2CardCmd-remark:"+remark);
|
|
bb.writeLog("SendRequest2CardCmd-isSelectValue:"+isSelectValue);
|
|
|
|
//执行标准的业务处理
|
|
Map<String, Object> result = nextExecute(targetCommand);
|
|
bb.writeLog("SendRequest2CardCmd-submit-end:"+requestid+" time:"+System.currentTimeMillis());
|
|
|
|
sendDate(result,requestid,agentType,src,nodeid,userid,f_weaver_belongto_userid,user,workflowid,remark,isSelectValue);
|
|
|
|
return result;
|
|
}
|
|
|
|
/***
|
|
*
|
|
* @param result
|
|
* @param requestid
|
|
* @param agentType
|
|
* @param src
|
|
* @param nodeid
|
|
* @param userid
|
|
* @param f_weaver_belongto_userid
|
|
* @param user
|
|
*/
|
|
public void sendDate(Map<String, Object> result,String requestid,String agentType,String src,String nodeid,String userid,String f_weaver_belongto_userid,User user,String workflowId,String remark,String isSelectValue){
|
|
|
|
BaseBean bb = new BaseBean();
|
|
RecordSet rs = new RecordSet();
|
|
try{
|
|
if(result.containsKey("data")){
|
|
//对返回值做加工处理
|
|
RequestOperationResultBean resultBean = (RequestOperationResultBean) result.get("data");
|
|
String executeResult = resultBean.getType().name();
|
|
bb.writeLog("SendRequest2CardCmd-executeResult:"+executeResult);
|
|
|
|
String new_requestid2 = Util.null2String(resultBean.getResultInfo().get("requestid"));
|
|
bb.writeLog("SendRequest2CardCmd-new_requestid2:"+new_requestid2);
|
|
|
|
if("SUCCESS".equals(executeResult)){
|
|
String new_requestid = Util.null2String(resultBean.getResultInfo().get("requestid"));
|
|
bb.writeLog("SendRequest2CardCmd-new_requestid:"+new_requestid);
|
|
|
|
// if ("1".equals(isSelectValue) && null != remark && !"".equals(remark)) {
|
|
// Document doc = Jsoup.parse(remark);
|
|
// // 选择所有的 <p> 标签
|
|
// Elements pTags = doc.select("p");
|
|
//
|
|
// String title = "";
|
|
// Iterator<Element> pIt = pTags.iterator();
|
|
// while(pIt.hasNext()) {
|
|
// Element element = pIt.next();
|
|
// title += element.text();
|
|
// }
|
|
//
|
|
// new BaseBean().writeLog("sendDate-title:" + title);
|
|
// if(StringUtils.isNotBlank(title)){
|
|
// title = StringEscapeUtils.unescapeHtml4(title);
|
|
// }
|
|
// new BaseBean().writeLog("sendDate-title2:" + title);
|
|
//
|
|
// RequestSignRelevanceWithMe reqsignwm = new RequestSignRelevanceWithMe();
|
|
// List<String> atResourceids = reqsignwm.parseRemark(remark);
|
|
// for (String atResourceid : atResourceids) {
|
|
// new BaseBean().writeLog("RequestSubmitCmd-atResourceid:" + atResourceid);
|
|
// new CheckSendCardService().sendShareCard(""+user.getUID(), atResourceid, String.valueOf(requestid),"",title,"You have been tagged in a comment.");
|
|
// }
|
|
// }
|
|
|
|
|
|
String isMessageRemind = "";
|
|
String sql1 = "select id,workflowname, isMessageRemind,icon from workflow_base where id='" + workflowId + "'";
|
|
bb.writeLog("SendRequest2CardCmd-sql1:"+sql1);
|
|
rs.executeQuery(sql1);
|
|
if(rs.next()){
|
|
isMessageRemind = rs.getString("isMessageRemind");
|
|
}
|
|
bb.writeLog("SendRequest2CardCmd-isMessageRemind:"+isMessageRemind);
|
|
|
|
if("1".equals(isMessageRemind)){
|
|
if ("1".equals(isSelectValue) && null != remark && !"".equals(remark)) {
|
|
SendRequestToCardUtil sendRequestToCardUtil = new SendRequestToCardUtil();
|
|
if(Util.getIntValue(requestid) == -1 && "submit".equals(src)){
|
|
sendRequestToCardUtil.sendRequestAtToCard(new_requestid,user,nodeid,workflowId,remark);
|
|
}else if(Util.getIntValue(requestid)> 0 && "submit".equals(src)){
|
|
sendRequestToCardUtil.sendRequestAtToCard(requestid,user,nodeid,workflowId,remark);
|
|
}else if(Util.getIntValue(requestid)> 0 && "reject".equals(src)){
|
|
sendRequestToCardUtil.sendRequestAtToCard(requestid,user,nodeid,workflowId,remark);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}catch (Exception e){
|
|
bb.writeLog("e:"+e);
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
|