OA待阅推送增加200批次、修改求和语句错误

This commit is contained in:
zhal 2023-09-04 09:40:32 +08:00
parent b1b26797d2
commit bf468e50a4
3 changed files with 15 additions and 48 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
) {
@ -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() + "'");
@ -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;
}
}