流程发布附件排序
This commit is contained in:
parent
2c0e28288d
commit
008d75bf43
@ -4,7 +4,15 @@ import java.io.File;
|
|||||||
import java.sql.Timestamp;
|
import java.sql.Timestamp;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.text.SimpleDateFormat;
|
import java.text.SimpleDateFormat;
|
||||||
import java.util.*;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.Comparator;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
import java.util.concurrent.ExecutorService;
|
import java.util.concurrent.ExecutorService;
|
||||||
import java.util.concurrent.LinkedBlockingDeque;
|
import java.util.concurrent.LinkedBlockingDeque;
|
||||||
import java.util.concurrent.ThreadFactory;
|
import java.util.concurrent.ThreadFactory;
|
||||||
@ -12,7 +20,6 @@ import java.util.concurrent.ThreadPoolExecutor;
|
|||||||
import java.util.concurrent.TimeUnit;
|
import java.util.concurrent.TimeUnit;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import com.alipay.remoting.config.switches.Switch;
|
|
||||||
import org.apache.commons.lang.StringUtils;
|
import org.apache.commons.lang.StringUtils;
|
||||||
|
|
||||||
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
|
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
|
||||||
@ -81,6 +88,7 @@ import com.actionsoft.bpms.util.UtilDate;
|
|||||||
import com.actionsoft.bpms.util.UtilFile;
|
import com.actionsoft.bpms.util.UtilFile;
|
||||||
import com.actionsoft.bpms.util.UtilString;
|
import com.actionsoft.bpms.util.UtilString;
|
||||||
import com.actionsoft.exception.AWSException;
|
import com.actionsoft.exception.AWSException;
|
||||||
|
import com.actionsoft.exception.AWSQuotaException;
|
||||||
import com.actionsoft.i18n.I18nRes;
|
import com.actionsoft.i18n.I18nRes;
|
||||||
import com.actionsoft.sdk.local.SDK;
|
import com.actionsoft.sdk.local.SDK;
|
||||||
import com.actionsoft.sdk.local.api.AppAPI;
|
import com.actionsoft.sdk.local.api.AppAPI;
|
||||||
@ -93,8 +101,6 @@ import com.google.common.collect.Lists;
|
|||||||
import com.google.common.collect.Maps;
|
import com.google.common.collect.Maps;
|
||||||
import com.google.common.util.concurrent.ThreadFactoryBuilder;
|
import com.google.common.util.concurrent.ThreadFactoryBuilder;
|
||||||
|
|
||||||
import io.etcd.jetcd.shaded.com.google.gson.Gson;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 流程发布App
|
* 流程发布App
|
||||||
*/
|
*/
|
||||||
@ -1691,6 +1697,15 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
}
|
}
|
||||||
return JSON.toJSONString(list);
|
return JSON.toJSONString(list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean isNumeric(String str) {
|
||||||
|
for (int i = str.length(); --i >= 0;) {
|
||||||
|
int chr = str.charAt(i);
|
||||||
|
if (chr < 48 || chr > 57)
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取字表数据
|
* 获取字表数据
|
||||||
@ -1739,12 +1754,40 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
JSONArray js = new JSONArray();
|
JSONArray js = new JSONArray();
|
||||||
UpFileDao upFileDao = new UpFileDao();
|
UpFileDao upFileDao = new UpFileDao();
|
||||||
StringBuilder sqlWhere = new StringBuilder();
|
StringBuilder sqlWhere = new StringBuilder();
|
||||||
|
ArrayList<String> isNumberAscArray = new ArrayList<String>();
|
||||||
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");
|
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");
|
||||||
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
||||||
if (fileList != null && fileList.size() > 0)
|
if (fileList != null && fileList.size() > 0)
|
||||||
for (UpfileModel upfileModel : fileList)
|
for (UpfileModel upfileModel : fileList)
|
||||||
if ("f".equals(upfileModel.getType())) {
|
if ("f".equals(upfileModel.getType())) {
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
jb.put("upfileId", upfileId);
|
jb.put("upfileId", upfileId);
|
||||||
@ -1760,6 +1803,16 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
jb.put("openUrl",openUrl);
|
jb.put("openUrl",openUrl);
|
||||||
js.add(jb.toJSONString());
|
js.add(jb.toJSONString());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boolean contains = isNumberAscArray.contains("false");
|
||||||
|
if(!contains) {
|
||||||
|
try {
|
||||||
|
//js.sort(Comparator.comparing(obj -> ((JSONObject) obj).getInteger("file_number")));
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new AWSQuotaException("附件格式请以:《附件1:XXXXXX》格式命名");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
newObj.put("upfileId", js);
|
newObj.put("upfileId", js);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
@ -1816,6 +1869,7 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
JSONArray js = new JSONArray();
|
JSONArray js = new JSONArray();
|
||||||
UpFileDao upFileDao = new UpFileDao();
|
UpFileDao upFileDao = new UpFileDao();
|
||||||
StringBuilder sqlWhere = new StringBuilder();
|
StringBuilder sqlWhere = new StringBuilder();
|
||||||
|
ArrayList<String> isNumberAscArray = new ArrayList<String>();
|
||||||
sqlWhere.append(" and PALREPOSITORYID ='").append(changeId).append("'").append(" ORDER BY FILENAME ASC");;
|
sqlWhere.append(" and PALREPOSITORYID ='").append(changeId).append("'").append(" ORDER BY FILENAME ASC");;
|
||||||
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
||||||
if (fileList != null && fileList.size() > 0)
|
if (fileList != null && fileList.size() > 0)
|
||||||
@ -1931,6 +1985,7 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
JSONArray js = new JSONArray();
|
JSONArray js = new JSONArray();
|
||||||
UpFileDao upFileDao = new UpFileDao();
|
UpFileDao upFileDao = new UpFileDao();
|
||||||
StringBuilder sqlWhere = new StringBuilder();
|
StringBuilder sqlWhere = new StringBuilder();
|
||||||
|
ArrayList<String> isNumberAscArray = new ArrayList<String>();
|
||||||
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");;
|
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");;
|
||||||
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
||||||
if (fileList != null && fileList.size() > 0)
|
if (fileList != null && fileList.size() > 0)
|
||||||
@ -1938,6 +1993,33 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
if ("f".equals(upfileModel.getType())) {
|
if ("f".equals(upfileModel.getType())) {
|
||||||
|
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
jb.put("upfileId", upfileId);
|
jb.put("upfileId", upfileId);
|
||||||
@ -1953,8 +2035,15 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
jb.put("openUrl",openUrl);
|
jb.put("openUrl",openUrl);
|
||||||
js.add(jb.toJSONString());
|
js.add(jb.toJSONString());
|
||||||
}
|
}
|
||||||
|
boolean contains = isNumberAscArray.contains("false");
|
||||||
|
if(!contains) {
|
||||||
|
try {
|
||||||
|
js.sort(Comparator.comparing(obj -> ((JSONObject) obj).getInteger("file_number")));
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new AWSQuotaException("附件格式请以:《附件1:XXXXXX》格式命名");
|
||||||
|
}
|
||||||
|
}
|
||||||
newObj.put("upfileId", js);
|
newObj.put("upfileId", js);
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
newObj.put("fileVersion", "1.0");
|
newObj.put("fileVersion", "1.0");
|
||||||
newObj.put("methodId", "1");
|
newObj.put("methodId", "1");
|
||||||
@ -2962,6 +3051,7 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
JSONArray js = new JSONArray();
|
JSONArray js = new JSONArray();
|
||||||
UpFileDao upFileDao = new UpFileDao();
|
UpFileDao upFileDao = new UpFileDao();
|
||||||
StringBuilder sqlWhere = new StringBuilder();
|
StringBuilder sqlWhere = new StringBuilder();
|
||||||
|
ArrayList<String> isNumberAscArray = new ArrayList<String>();
|
||||||
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");
|
sqlWhere.append(" and PALREPOSITORYID ='").append(publishId).append("'").append(" ORDER BY FILENAME ASC");
|
||||||
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
||||||
if (fileList != null && fileList.size() > 0)
|
if (fileList != null && fileList.size() > 0)
|
||||||
@ -2969,6 +3059,32 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
if (methodId.contains("data")) {
|
if (methodId.contains("data")) {
|
||||||
if ("s".equals(upfileModel.getType())) {
|
if ("s".equals(upfileModel.getType())) {
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String shape_uuid = upfileModel.getShape_uuid();
|
String shape_uuid = upfileModel.getShape_uuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
@ -2988,6 +3104,32 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
} else {
|
} else {
|
||||||
if ("f".equals(upfileModel.getType())) {
|
if ("f".equals(upfileModel.getType())) {
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
jb.put("upfileId", upfileId);
|
jb.put("upfileId", upfileId);
|
||||||
@ -3004,6 +3146,14 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
js.add(jb.toJSONString());
|
js.add(jb.toJSONString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
boolean contains = isNumberAscArray.contains("false");
|
||||||
|
if(!contains) {
|
||||||
|
try {
|
||||||
|
js.sort(Comparator.comparing(objs -> (JSON.parseObject(objs.toString())).getInteger("file_number")));
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new AWSQuotaException("附件格式请以:《附件1:XXXXXX》格式命名");
|
||||||
|
}
|
||||||
|
}
|
||||||
obj.put("upfileId", js);
|
obj.put("upfileId", js);
|
||||||
} else {
|
} else {
|
||||||
obj.put("fileVersion", "1.0");
|
obj.put("fileVersion", "1.0");
|
||||||
@ -3067,6 +3217,7 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
JSONArray js = new JSONArray();
|
JSONArray js = new JSONArray();
|
||||||
UpFileDao upFileDao = new UpFileDao();
|
UpFileDao upFileDao = new UpFileDao();
|
||||||
StringBuilder sqlWhere = new StringBuilder();
|
StringBuilder sqlWhere = new StringBuilder();
|
||||||
|
ArrayList<String> isNumberAscArray = new ArrayList<String>();
|
||||||
sqlWhere.append(" and PALREPOSITORYID ='").append(changeId).append("'").append(" ORDER BY FILENAME ASC");
|
sqlWhere.append(" and PALREPOSITORYID ='").append(changeId).append("'").append(" ORDER BY FILENAME ASC");
|
||||||
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
List<UpfileModel> fileList = upFileDao.search(sqlWhere.toString());
|
||||||
if (fileList != null && fileList.size() > 0)
|
if (fileList != null && fileList.size() > 0)
|
||||||
@ -3074,6 +3225,31 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
if (methodId.contains("data")) {
|
if (methodId.contains("data")) {
|
||||||
if ("s".equals(upfileModel.getType())) {
|
if ("s".equals(upfileModel.getType())) {
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
jb.put("upfileId", upfileId);
|
jb.put("upfileId", upfileId);
|
||||||
@ -3095,6 +3271,31 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
|
|
||||||
if ("f".equals(upfileModel.getType())) {
|
if ("f".equals(upfileModel.getType())) {
|
||||||
JSONObject jb = new JSONObject();
|
JSONObject jb = new JSONObject();
|
||||||
|
//按照附件编号排序
|
||||||
|
String fileNamel= upfileModel.getFileName();
|
||||||
|
if(UtilString.isNotEmpty(fileNamel)&&fileNamel.contains("附件")&&fileNamel.length()>2&&(fileNamel.contains(":")||fileNamel.contains(":"))) {
|
||||||
|
if(fileNamel.indexOf("附件")==0) {
|
||||||
|
int indexOf2 = 3;
|
||||||
|
if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}else if(fileNamel.contains(":")) {
|
||||||
|
indexOf2 = fileNamel.indexOf(":");
|
||||||
|
}
|
||||||
|
String numberStr = fileNamel.substring(2,indexOf2);
|
||||||
|
if(isNumeric(numberStr)&&!"".equals(numberStr)) {
|
||||||
|
isNumberAscArray.add("true");
|
||||||
|
int fileNumber = Integer.parseInt(numberStr);
|
||||||
|
jb.put("file_number", fileNumber);
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
|
|
||||||
|
}else {
|
||||||
|
isNumberAscArray.add("false");
|
||||||
|
}
|
||||||
String upfileId = upfileModel.getUuid();
|
String upfileId = upfileModel.getUuid();
|
||||||
String upFileName = upfileModel.getFileName();
|
String upFileName = upfileModel.getFileName();
|
||||||
jb.put("upfileId", upfileId);
|
jb.put("upfileId", upfileId);
|
||||||
@ -3114,6 +3315,15 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
boolean contains = isNumberAscArray.contains("false");
|
||||||
|
if(!contains) {
|
||||||
|
try {
|
||||||
|
js.sort(Comparator.comparing(objs -> (JSON.parseObject(objs.toString())).getInteger("file_number")));
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new AWSQuotaException("附件格式请以:《附件1:XXXXXX》格式命名");
|
||||||
|
}
|
||||||
|
}
|
||||||
obj.put("upfileId", js);
|
obj.put("upfileId", js);
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -3135,6 +3345,7 @@ public class ProcessPublishWeb extends ActionWeb {
|
|||||||
obj.put("targetMethodId", "1");
|
obj.put("targetMethodId", "1");
|
||||||
obj.put("targetCategory", "1");
|
obj.put("targetCategory", "1");
|
||||||
}
|
}
|
||||||
|
|
||||||
changeArr.add(obj);
|
changeArr.add(obj);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -245,94 +245,6 @@ public class ProcessEndAfterEvent extends ExecuteListener implements ExecuteList
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* 推送待阅文件到OA
|
|
||||||
*/
|
|
||||||
if ("true".equals(isSendOA)) {
|
|
||||||
ProcessInstance instanceById = processExecutionContext.getProcessInstance();
|
|
||||||
if (bo_act_coe_publish1 != null && instanceById != null) {
|
|
||||||
System.err.println(instanceById.getTitle() + "推送OA待阅执行开始====>");
|
|
||||||
long startTime = System.currentTimeMillis();
|
|
||||||
ArrayList<String> sendList = new ArrayList<String>();
|
|
||||||
// 发送全集团
|
|
||||||
if ("1".equals(bo_act_coe_publish1.getString("SEND_SCOP"))) {
|
|
||||||
// 系统人员
|
|
||||||
ArrayList<String> userList1 = new ArrayList<String>();
|
|
||||||
try {
|
|
||||||
userList1 = getUser(jsonObject, "5bc3a2dc-3bd2-4376-bcc3-5612e28e55fe", "0",
|
|
||||||
instanceById.getId());
|
|
||||||
} catch (Exception e) {
|
|
||||||
// TODO: handle exception
|
|
||||||
}
|
|
||||||
//System.err.println("系统人员=====>" + userList1);
|
|
||||||
// 项目开发人员
|
|
||||||
ArrayList<String> userList2 = new ArrayList<String>();
|
|
||||||
try {
|
|
||||||
userList2 = getUser(jsonObject, "e79281b1-2f81-4895-b30e-9f96e9ad0e2c", "0",
|
|
||||||
instanceById.getId());
|
|
||||||
} catch (Exception e) {
|
|
||||||
// TODO: handle exception
|
|
||||||
}
|
|
||||||
//System.err.println("项目开发人员=====>" + userList2);
|
|
||||||
// 离退人员
|
|
||||||
ArrayList<String> userList3 = new ArrayList<String>();
|
|
||||||
try {
|
|
||||||
userList3 = getUser(jsonObject, "65048aee-157f-49f2-a2dc-5903dd26f519", "0",
|
|
||||||
instanceById.getId());
|
|
||||||
} catch (Exception e) {
|
|
||||||
// TODO: handle exception
|
|
||||||
}
|
|
||||||
//System.err.println("离退人员=====>" + userList3);
|
|
||||||
List<RowMap> maps = DBSql.getMaps("SELECT * FROM ORGUSER WHERE CLOSED = '0'");
|
|
||||||
for (RowMap rowMap : maps) {
|
|
||||||
String userId = rowMap.getString("USERID");
|
|
||||||
// RowMap map = DBSql.getMap("SELECT ID FROM BO_ACT_DATAID WHERE PROCESSID = '"
|
|
||||||
// + instanceById.getId() + "' AND USER_ID = '" + userId + "'");
|
|
||||||
if (!"10033643".equals(userId) && !userList1.contains(userId)
|
|
||||||
&& !userList2.contains(userId) && !userList3.contains(userId)) {
|
|
||||||
sendList.add(userId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// 发送组织岗位职级
|
|
||||||
sendList = getSendList(instanceById, bo_act_coe_publish1, jsonObject);
|
|
||||||
|
|
||||||
}
|
|
||||||
long countTime = System.currentTimeMillis();
|
|
||||||
System.err.println(instanceById.getTitle() + "待发送人员数量====>" + sendList.size() + " 计算用时===>"
|
|
||||||
+ (countTime - startTime) + "毫秒");
|
|
||||||
for (String user : sendList) {
|
|
||||||
try {
|
|
||||||
SendOARead(jsonObject, instanceById, user, "批量推送");
|
|
||||||
} catch (Exception e) { // TODO: handle exception
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 二次推送
|
|
||||||
List<RowMap> List = DBSql.getMaps("SELECT NAME FROM BO_EU_READ_COUNT WHERE PROCESSID = '"
|
|
||||||
+ instanceById.getId() + "' AND RESULT = '待处理'");
|
|
||||||
if (List.size() != 0) {
|
|
||||||
System.err.println(instanceById.getTitle() + "批量推送失败后执行二次推送=======>" + List.size());
|
|
||||||
for (RowMap rowMap : List) {
|
|
||||||
try {
|
|
||||||
ArrayList<String> userList3 = new ArrayList<String>();
|
|
||||||
String userIds = rowMap.getString("NAME");
|
|
||||||
System.err.println(instanceById.getTitle() + "二次推送账号=======>" + userIds);
|
|
||||||
SendOARead(jsonObject, instanceById, userIds, "单个账号推送");
|
|
||||||
} catch (Exception e) { // TODO: handle exception
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
long endTimes = System.currentTimeMillis();
|
|
||||||
// 存入日志
|
|
||||||
createReadLog(processExecutionContext, jsonObject, sendList, startTime, endTimes);
|
|
||||||
System.err.println(instanceById.getTitle() + "推送OA待阅执行完毕====>" + "用时:"
|
|
||||||
+ (endTimes - startTime) / 1000 / 60 + "分钟");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
/**
|
/**
|
||||||
* 推送到EHSQ
|
* 推送到EHSQ
|
||||||
*/
|
*/
|
||||||
@ -384,6 +296,95 @@ public class ProcessEndAfterEvent extends ExecuteListener implements ExecuteList
|
|||||||
AttrSynAslp(processExecutionContext, wsId, filed);
|
AttrSynAslp(processExecutionContext, wsId, filed);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 推送待阅文件到OA
|
||||||
|
*/
|
||||||
|
if ("true".equals(isSendOA)) {
|
||||||
|
ProcessInstance instanceById = processExecutionContext.getProcessInstance();
|
||||||
|
if (bo_act_coe_publish1 != null && instanceById != null) {
|
||||||
|
System.err.println(instanceById.getTitle() + "推送OA待阅执行开始====>");
|
||||||
|
long startTime = System.currentTimeMillis();
|
||||||
|
ArrayList<String> sendList = new ArrayList<String>();
|
||||||
|
// 发送全集团
|
||||||
|
if ("1".equals(bo_act_coe_publish1.getString("SEND_SCOP"))) {
|
||||||
|
// 系统人员
|
||||||
|
ArrayList<String> userList1 = new ArrayList<String>();
|
||||||
|
try {
|
||||||
|
userList1 = getUser(jsonObject, "5bc3a2dc-3bd2-4376-bcc3-5612e28e55fe", "0",
|
||||||
|
instanceById.getId());
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO: handle exception
|
||||||
|
}
|
||||||
|
//System.err.println("系统人员=====>" + userList1);
|
||||||
|
// 项目开发人员
|
||||||
|
ArrayList<String> userList2 = new ArrayList<String>();
|
||||||
|
try {
|
||||||
|
userList2 = getUser(jsonObject, "e79281b1-2f81-4895-b30e-9f96e9ad0e2c", "0",
|
||||||
|
instanceById.getId());
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO: handle exception
|
||||||
|
}
|
||||||
|
//System.err.println("项目开发人员=====>" + userList2);
|
||||||
|
// 离退人员
|
||||||
|
ArrayList<String> userList3 = new ArrayList<String>();
|
||||||
|
try {
|
||||||
|
userList3 = getUser(jsonObject, "65048aee-157f-49f2-a2dc-5903dd26f519", "0",
|
||||||
|
instanceById.getId());
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO: handle exception
|
||||||
|
}
|
||||||
|
//System.err.println("离退人员=====>" + userList3);
|
||||||
|
List<RowMap> mapsl = DBSql.getMaps("SELECT * FROM ORGUSER WHERE CLOSED = '0'");
|
||||||
|
for (RowMap rowMap : mapsl) {
|
||||||
|
String userId = rowMap.getString("USERID");
|
||||||
|
// RowMap map = DBSql.getMap("SELECT ID FROM BO_ACT_DATAID WHERE PROCESSID = '"
|
||||||
|
// + instanceById.getId() + "' AND USER_ID = '" + userId + "'");
|
||||||
|
if (!"10033643".equals(userId) && !userList1.contains(userId)
|
||||||
|
&& !userList2.contains(userId) && !userList3.contains(userId)) {
|
||||||
|
sendList.add(userId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// 发送组织岗位职级
|
||||||
|
sendList = getSendList(instanceById, bo_act_coe_publish1, jsonObject);
|
||||||
|
|
||||||
|
}
|
||||||
|
long countTime = System.currentTimeMillis();
|
||||||
|
System.err.println(instanceById.getTitle() + "待发送人员数量====>" + sendList.size() + " 计算用时===>"
|
||||||
|
+ (countTime - startTime) + "毫秒");
|
||||||
|
for (String user : sendList) {
|
||||||
|
try {
|
||||||
|
SendOARead(jsonObject, instanceById, user, "批量推送");
|
||||||
|
} catch (Exception e) { // TODO: handle exception
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 二次推送
|
||||||
|
List<RowMap> List = DBSql.getMaps("SELECT NAME FROM BO_EU_READ_COUNT WHERE PROCESSID = '"
|
||||||
|
+ instanceById.getId() + "' AND RESULT = '待处理'");
|
||||||
|
if (List.size() != 0) {
|
||||||
|
System.err.println(instanceById.getTitle() + "批量推送失败后执行二次推送=======>" + List.size());
|
||||||
|
for (RowMap rowMap : List) {
|
||||||
|
try {
|
||||||
|
ArrayList<String> userList3 = new ArrayList<String>();
|
||||||
|
String userIds = rowMap.getString("NAME");
|
||||||
|
System.err.println(instanceById.getTitle() + "二次推送账号=======>" + userIds);
|
||||||
|
SendOARead(jsonObject, instanceById, userIds, "单个账号推送");
|
||||||
|
} catch (Exception e) { // TODO: handle exception
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
long endTimes = System.currentTimeMillis();
|
||||||
|
// 存入日志
|
||||||
|
createReadLog(processExecutionContext, jsonObject, sendList, startTime, endTimes);
|
||||||
|
System.err.println(instanceById.getTitle() + "推送OA待阅执行完毕====>" + "用时:"
|
||||||
|
+ (endTimes - startTime) / 1000 / 60 + "分钟");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -1333,9 +1334,8 @@ public class ProcessEndAfterEvent extends ExecuteListener implements ExecuteList
|
|||||||
String level = "";
|
String level = "";
|
||||||
if (map != null) {
|
if (map != null) {
|
||||||
String pver = map.getString("PLVER");
|
String pver = map.getString("PLVER");
|
||||||
if(UtilString.isNotEmpty(pver)) {
|
if (UtilString.isNotEmpty(pver)) {
|
||||||
if (pver.contains(".00")) {
|
if (pver.contains(".00")) {
|
||||||
System.out.println("PLver>>>>>>>>>>" + pver);
|
|
||||||
String levels = pver;
|
String levels = pver;
|
||||||
String[] plvers = levels.split("\\.");
|
String[] plvers = levels.split("\\.");
|
||||||
plvers[1] = plvers[1].replaceAll("0", "");
|
plvers[1] = plvers[1].replaceAll("0", "");
|
||||||
@ -1366,10 +1366,15 @@ public class ProcessEndAfterEvent extends ExecuteListener implements ExecuteList
|
|||||||
ResponseObject ro_create = appAPI_create.callASLP(
|
ResponseObject ro_create = appAPI_create.callASLP(
|
||||||
appAPI_create.getAppContext(processExecutionContext.getProcessInstance().getAppId()),
|
appAPI_create.getAppContext(processExecutionContext.getProcessInstance().getAppId()),
|
||||||
aslps_create, params_create);
|
aslps_create, params_create);
|
||||||
//System.out.println("ro_create================" + ro_create);
|
// System.out.println("ro_create================" + ro_create);
|
||||||
String cardId = ((LinkedHashMap) ro_create.getData()).get("cardId").toString();
|
String cardId = ((LinkedHashMap) ro_create.getData()).get("cardId").toString();
|
||||||
JSONArray jsonArray1 = new JSONArray();
|
JSONArray jsonArray1 = new JSONArray();
|
||||||
if (bo_act_coe_publish.getString("SEND_SCOP").equals("0")) {
|
if (bo_act_coe_publish.getString("SEND_SCOP").equals("1")) {
|
||||||
|
JSONObject jsonObjecta = new JSONObject();
|
||||||
|
jsonObjecta.put("assignmentType", "company");
|
||||||
|
jsonObjecta.put("assignmentId", "8911e732-b42a-4556-853f-ad32761bcbee");
|
||||||
|
jsonArray1.add(jsonObjecta);
|
||||||
|
} else {
|
||||||
String departId = bo_act_coe_publish.getString("SEND_SCOPE_ORG");
|
String departId = bo_act_coe_publish.getString("SEND_SCOPE_ORG");
|
||||||
if (StringUtils.isNotEmpty(departId)
|
if (StringUtils.isNotEmpty(departId)
|
||||||
&& StringUtils.isEmpty(bo_act_coe_publish.getString("SEND_SCOPE_LEVEL"))
|
&& StringUtils.isEmpty(bo_act_coe_publish.getString("SEND_SCOPE_LEVEL"))
|
||||||
@ -1398,19 +1403,6 @@ public class ProcessEndAfterEvent extends ExecuteListener implements ExecuteList
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
|
||||||
List<DepartmentModel> departmentsByCompanyId = SDK.getORGAPI().getDepartmentsByCompanyId(1,
|
|
||||||
"8911e732-b42a-4556-853f-ad32761bcbee");
|
|
||||||
for (DepartmentModel departmentModel : departmentsByCompanyId) {
|
|
||||||
String depId = departmentModel.getId();
|
|
||||||
// 查询未注销的部门并且去掉系统部门
|
|
||||||
if (!departmentModel.isClosed()&& !"e79281b1-2f81-4895-b30e-9f96e9ad0e2c".equals(depId)&& !"65048aee-157f-49f2-a2dc-5903dd26f519".equals(depId)) {
|
|
||||||
JSONObject jsonObjecta = new JSONObject();
|
|
||||||
jsonObjecta.put("assignmentType","department");
|
|
||||||
jsonObjecta.put("assignmentId",depId);
|
|
||||||
jsonArray1.add(jsonObjecta);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
AddKnwlAC(processExecutionContext, jsonArray1, processExecutionContext.getUserContext().getSessionId(),
|
AddKnwlAC(processExecutionContext, jsonArray1, processExecutionContext.getUserContext().getSessionId(),
|
||||||
cardId);
|
cardId);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user