Merge remote-tracking branch 'origin/apps_dev' into apps_dev

This commit is contained in:
Mr-wang 2023-09-04 17:00:54 +08:00
commit 0282498a56
3 changed files with 17 additions and 50 deletions

View File

@ -214,7 +214,7 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
ProcessInstance instanceById = processExecutionContext.getProcessInstance();
if (bo_act_coe_publish1 != null && instanceById != null) {
System.err.println(instanceById.getTitle() + "推送OA待阅执行开始====>");
long startTime = System.currentTimeMillis();
long sendUserstartTime = System.currentTimeMillis();
ArrayList<String> sendList = new ArrayList<String>();
// 发送全集团
if ("1".equals(bo_act_coe_publish1.getString("SEND_SCOP"))) {
@ -263,7 +263,7 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
long countTime = System.currentTimeMillis();
System.err.println(instanceById.getTitle() + "待发送人员数量====>" + sendList.size() + " 计算用时===>"
+ (countTime - startTime) + "毫秒");
+ (countTime - sendUserstartTime) + "毫秒");
/*
* for (String user : sendList) { try { SendOARead(jsonObject, instanceById,
* user, "批量推送"); } catch (Exception e) { // TODO: handle exception } }
@ -294,7 +294,10 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
SDK.getBOAPI().createDataBO("BO_EU__OA_MONITOR",bo,UserContext.fromUID(ta.getTarget()));
}
System.out.println("new_uid>>>>>>>>>>>>>>"+users.length);
int length = 100;
long startTime = System.currentTimeMillis();
int length = 200;
int ys = users.length%length;
/**
* 这个是以300人作为一个发送单位去放到list中并发送待阅数据
@ -307,9 +310,9 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
for (int i=0;i<size;i++){
String[] results;
results = Arrays.copyOfRange(users, flag, flag+100);
results = Arrays.copyOfRange(users, flag, flag+200);
list.add(results);
flag = flag+100;
flag = flag+200;
}
/**
@ -323,9 +326,9 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
List<String[]> list = new LinkedList();
for (int i=0;i<size;i++){
String[] results;
results = Arrays.copyOfRange(users, flag, flag+100);
results = Arrays.copyOfRange(users, flag, flag+200);
list.add(results);
flag = flag+100;
flag = flag+200;
}
String[] redata;
redata = Arrays.copyOfRange(users, flag, flag+ys);
@ -556,7 +559,7 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
// 创建线程来实现为每100人为一个的线程跑待阅
ProcessInstance instanceById = processExecutionContext.getProcessInstance();
CountDownLatch countDownLatch = new CountDownLatch(list.size());
ExecutorService service = Executors.newFixedThreadPool(5);
ExecutorService service = Executors.newFixedThreadPool(8);
int m = 0;
for (String[] resrt:list
) {
@ -1046,7 +1049,7 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
String readurl = SDK.getAppAPI().getProperty("com.awspaas.user.apps.yili.integration", "readurl");
UtilUrl uc=new UtilUrl();
String postSoap =uc.doPostSoap(readurl, xmlStr, "");
Document document = uc.parseText(postSoap);
Document document = DocumentHelper.parseText(postSoap);
Element rootElement = document.getRootElement();
Element result = rootElement.element("Body").element("serviceResponse").element("out");
String resultString = result.getData().toString();
@ -1101,8 +1104,8 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
BO oa_real_time=SDK.getBOAPI().query("BO_ACT_OA_REAL_TIME").addQuery("PROCESSID=",processInstance.getId()).detail();
String sqly = "SELECT COUNT(1) FROM BO_ACT_DATAID WHERE PROCESSID =? AND SENDTYPE = '1'";
int mapsy = DBSql.getInt(sqly,processInstId);
String sqly = "SELECT COUNT(1) FROM BO_ACT_DATAID WHERE PROCESSID=? AND SENDTYPE='1'";
int mapsy = DBSql.getInt(sqly, new Object[]{processInstance.getId()});
if(oa_real_time!=null){
int r1 = DBSql.update("UPDATE BO_ACT_OA_REAL_TIME SET SENDNUMSJ='" +mapsy + "'WHERE PROCESSID ='" + processInstance.getId() + "'");
@ -1206,7 +1209,7 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
String readurl = SDK.getAppAPI().getProperty("com.awspaas.user.apps.yili.integration", "readurl");
UtilUrl uc=new UtilUrl();
String postSoap = uc.doPostSoap(readurl, xmlStr, "");
Document document = uc.parseText(postSoap);
Document document = DocumentHelper.parseText(postSoap);
Element rootElement = document.getRootElement();
Element result = rootElement.element("Body").element("serviceResponse").element("out");
String resultString = result.getData().toString();
@ -1255,8 +1258,8 @@ public class ProcessEndAfterEvent_new extends ExecuteListener implements Execute
BO oa_real_time=SDK.getBOAPI().query("BO_ACT_OA_REAL_TIME").addQuery("PROCESSID=",processInstance.getId()).detail();
String sqly = "SELECT COUNT(1) FROM BO_ACT_DATAID WHERE PROCESSID =? AND SENDTYPE = '1'";
int mapsy = DBSql.getInt(sqly,processInstId);
String sqly = "SELECT COUNT(1) FROM BO_ACT_DATAID WHERE PROCESSID=? AND SENDTYPE='1'";
int mapsy = DBSql.getInt(sqly, new Object[]{processInstance.getId()});
if(oa_real_time!=null){
int r1 = DBSql.update("UPDATE BO_ACT_OA_REAL_TIME SET SENDNUMSJ='" +mapsy + "'WHERE PROCESSID ='" + processInstance.getId() + "'");

View File

@ -57,40 +57,4 @@ public class UtilUrl {
}
public Document parseText(String text) throws DocumentException {
Document result = null;
SAXReader reader = new SAXReader();
String encoding = getEncoding(text);
InputSource source = new InputSource(new StringReader(text));
source.setEncoding(encoding);
result = reader.read(source);
if (result.getXMLEncoding() == null) {
result.setXMLEncoding(encoding);
}
return result;
}
private String getEncoding(String text) {
String result = null;
String xml = text.trim();
if (xml.startsWith("<?xml")) {
int end = xml.indexOf("?>");
String sub = xml.substring(0, end);
StringTokenizer tokens = new StringTokenizer(sub, " =\"'");
while(tokens.hasMoreTokens()) {
String token = tokens.nextToken();
if ("encoding".equals(token)) {
if (tokens.hasMoreTokens()) {
result = tokens.nextToken();
}
break;
}
}
}
return result;
}
}