diff --git a/com.actionsoft.apps.coe.pal/lib/com.actionsoft.apps.coe.pal.jar b/com.actionsoft.apps.coe.pal/lib/com.actionsoft.apps.coe.pal.jar
index 2b5192a5..04294de3 100644
Binary files a/com.actionsoft.apps.coe.pal/lib/com.actionsoft.apps.coe.pal.jar and b/com.actionsoft.apps.coe.pal/lib/com.actionsoft.apps.coe.pal.jar differ
diff --git a/com.actionsoft.apps.coe.pal/manifest.xml b/com.actionsoft.apps.coe.pal/manifest.xml
index aa01e66d..d3da2645 100755
--- a/com.actionsoft.apps.coe.pal/manifest.xml
+++ b/com.actionsoft.apps.coe.pal/manifest.xml
@@ -2,7 +2,7 @@
CoE PAL流程资产库
- 6.5
+ 6.5
5
北京炎黄盈动科技发展有限责任公司
@@ -81,10 +81,11 @@ AWS PAL(Process Asset Library)流程资产库是AWS CoE平台的重要产品组
true
false
- close
- [{"name":"分类1","url":"","children":[{"name":"百度链接","url":"http://www.baidu.com"},{"name":"腾讯链接","url":"https://www.tencent.com/zh-cn/"}]},{"name":"分类2","url":"","children":[{"name":"搜狐网链接","url":"https://www.sohu.com/"},{"name":"人民网链接","url":"http://www.people.com.cn/"}]},{"name":"凤凰网链接","url":"https://www.ifeng.com/"}]
+ close
+ [{"name":"分类1","url":"","children":[{"name":"百度链接","url":"http://www.baidu.com"},{"name":"腾讯链接","url":"https://www.tencent.com/zh-cn/"}]},{"name":"分类2","url":"","children":[{"name":"搜狐网链接","url":"https://www.sohu.com/"},{"name":"人民网链接","url":"http://www.people.com.cn/"}]},{"name":"凤凰网链接","url":"https://www.ifeng.com/"}]
+ {"control.risk":{"risk":{"desc":"描述企业内部流程涉及的各级风险点"},"control":{"desc":"描述企业内部流程涉及的各级风险的控制措施"}},"itsystem.normal":{"cloudServer":{"desc":"描述企业接入的云服务设施"},"database":{"desc":"描述企业提供的数据库服务类型,如某Oracle数据库"},"appSystem":{"desc":"描述企业提供的应用系统,如某供应链管理系统、业务流程管理平台"},"device":{"desc":"描述企业提供的各种IT设备"}},"control.kpi":{"kpi":{"desc":"描述企业内部绩效计划、绩效辅导与实施、绩效考核、绩效反馈与改进"}},"process.evc":{"valueChain6":{"desc":"一个基本增值活动或辅助增值活动"},"valueChain5":{"desc":"一个基本增值活动或辅助增值活动"},"valueChain4":{"desc":"一个基本增值活动或辅助增值活动"},"valueChain3":{"desc":"一个基本增值活动或辅助增值活动"},"valueChain2":{"desc":"一个基本增值活动或辅助增值活动"},"valueChain1":{"desc":"一个基本增值活动或辅助增值活动"}},"control.policy":{"item":{"desc":"描述企业内部各级管理制度的具体条款"},"regulation":{"desc":"描述企业内部流程涉及的各级管理制度"}},"data.form":{"form":{"desc":"输入或输出的数据是一个完整的数据结构(或单据)"},"forms":{"desc":"输入或输出的数据由多个数据结构(或单据)组成"}},"process.flowchart":{"internalStorage":{"desc":"存储在存储器中的数据"},"predefinedProcess":{"desc":"在另外地方已得到详细说明的一个操作或一组操作"},"data":{"desc":"表示数据"},"document":{"desc":"表示属于该过程的书面信息"},"paperTape":{"desc":"旧式电脑使用的穿孔纸带输入"},"storedData":{"desc":"表示一般的数据存储"},"preparation":{"desc":"表示修改一条指令或一组指令以影响随后的活动"},"horizontalPool":{"desc":"包含多个泳道,对元素进行区分"},"verticalLane":{"desc":"对泳池里的流程元素的进行组织和分类"},"parallelMode":{"desc":"表示同步进行两个或两个以上并行方式的操作"},"terminator":{"desc":"表示过程的开始或结束"},"offPageReference":{"desc":"表示一组流程,可以用跨页引用进行标识"},"horizontalLane":{"desc":"对泳池里的流程元素的进行组织和分类"},"annotation":{"desc":"标识注解的内容"},"manualInput":{"desc":"人工输入的数据"},"onPageReference":{"desc":"表示流程图的待续,圈内有一子字母或数字"},"process":{"desc":"表示过程中的一个单独步骤"},"manualOperation":{"desc":"由人工完成的操作"},"loopLimit":{"desc":"去上角的上限值和去下角的下限值分别表示循环的开始和结束"},"decision":{"desc":"表示过程中的一项判定或一个分岔点"},"display":{"desc":"在机器上显示"},"verticalPool":{"desc":"包含多个泳道,对元素进行区分"},"sequentialData":{"desc":"老式磁带存储的数据"},"directData":{"desc":"表示流程图中存储在硬盘上的数据源"},"card":{"desc":"旧式电脑使用的打孔卡"}},"process.epc":{"or":{"desc":"表示一件事情可能产生的几个结果中,至少有一个会发生"},"method_service_node":{"desc":"描述流程中的手工活动"},"verticalPool":{"desc":"包含多个泳道,对元素进行区分"},"procedure":{"desc":"本流程的某个环节后引用的其它流程"},"method_approval_node":{"desc":"描述流程中的人机交互活动"},"horizontalPool":{"desc":"包含多个泳道,对元素进行区分"},"verticalLane":{"desc":"对泳池里的流程元素的进行组织和分类"},"method_approval_node3":{"desc":"描述流程中的人机交互活动"},"and":{"desc":"表示一件事情可能产生的几个结果或后续活动,全部发生;或表示一件事情的发生需要几个条件同时满足"},"method_service_node4":{"desc":"描述流程中的手工活动"},"xor":{"desc":"表示一件事情可能产生的几个结果中,有且只有一个会发生"},"event":{"desc":"描述流程运行的状态"},"horizontalLane":{"desc":"对泳池里的流程元素的进行组织和分类"}},"org.role":{"role":{"desc":"一般用于表示执行某一流程步骤的流程角色"}},"process.bpmn2":{"signalIntermediateThrowingEvent":{"desc":"向外广播信号后,流程继续向后执行"},"callActivityCallingProcess":{"desc":"调用定义的全局过程"},"textAnnotation":{"desc":"给元素附加信息,便于理解"},"timerStartEvent":{"desc":"到达设置的日期/时间后,触发流程执行"},"horizontalPool":{"desc":"包含多个泳道,对元素进行区分"},"signalEndEvent":{"desc":"向外广播信号,结束所在分支的执行"},"verticalLane":{"desc":"对泳池里的流程元素的进行组织和分类"},"errorBoundaryInterrputingEvent":{"desc":"捕获活动内部抛出的错误信息,中断正常流程,触发错误处理流程"},"endEvent":{"desc":"结束所在分支的执行"},"serviceTask":{"desc":"使用Web服务或自动化应用的任务"},"exclusiveGateway":{"desc":""},"startEvent":{"desc":"触发流程的执行"},"receiveTask":{"desc":"等待并接受外部参与者发送的消息,消息接受完毕则任务执行完毕"},"signalStartEvent":{"desc":"接收信息,并触发流程的执行"},"messageIntermediateCatchEvent":{"desc":"捕获到特定消息后,该事件被触发,流程继续向后执行"},"messageIntermediateThrowingEvent":{"desc":"向其他参与方发送消息后,流程继续向后执行"},"signalIntermediateCatchEvent":{"desc":"捕获到其他参与方广播的信号后,该事件被触发,流程继续向后执行"},"errorEndEvent":{"desc":"错误结束事件"},"horizontalLane":{"desc":"对泳池里的流程元素的进行组织和分类"},"group":{"desc":"对元素进行分类,不影响流程的执行"},"scriptTask":{"desc":"定义一段执行脚本,由流程引擎执行,脚本执行完毕则任务执行完毕"},"businessRuleTask":{"desc":"调用业务规则引擎进行数据的计算并获得计算结果"},"manualTask":{"desc":"没有任何流程引擎和应用程序协助的纯手工任务"},"signalBoundaryInterrputingEvent":{"desc":"捕获特定信号,中断正常流程,触发异常处理流程"},"verticalPool":{"desc":"包含多个泳道,对元素进行区分"},"compensationBoundaryInterrputingEvent":{"desc":"捕获活动内部抛出的补偿信息,中断正常流程,触发执行补偿活动"},"userTask":{"desc":"在应用程序的协助下,由人工完成的任务"},"terminateEndEvent":{"desc":"结束所有分支的执行"},"messageStartEvent":{"desc":"接收消息,并触发流程的执行"},"messageEndEvent":{"desc":"向其他参与方发送消息,结束所在分支的执行"},"sendTask":{"desc":"向外部参与者发送消息,消息发送完毕则任务执行完毕"},"messageBoundaryInterrputingEvent":{"desc":"捕获特定消息,中断正常流程,触发异常处理流程"},"transaction":{"desc":"遵循特定事务规约的一系列活动"},"timerIntermediateCatchEvent":{"desc":"到达某个特定时间/日期后,触发该事件,流程继续向后执行"}},"org.normal":{"role":{"desc":"一般用于表示执行某一流程步骤的流程角色"},"organization":{"desc":"描述企业内部固定的组织单位"},"position":{"desc":"描述企业内部各部门的实际岗位"},"employee":{"desc":"表示企业的具体员工"}}}
- {"default":{"code":"","color":"#FFB718"},"process.businessLevel":{"code":"","color":"#FFB718"},"process.businessArea":{"code":"","color":"#FFB718"},"process.processGroup":{"code":"","color":"#FFB718"},"control.kpi":{"code":"","color":"#ff9421"},"control.policy":{"code":"","color":"#009b52"},"control.risk":{"code":"","color":"#dc4f39"},"data.form":{"code":"","color":"#009b52"},"itsystem.normal":{"code":"","color":"#4E7FF9"},"org.normal":{"code":"","color":"#ff9421"},"process.bpmn2":{"code":"","color":"#4E7FF9"},"process.evc":{"code":"","color":"#4E7FF9"}}
+ {"default":{"code":"","color":"#FFB718"},"process.businessLevel":{"code":"","color":"#FFB718"},"process.businessArea":{"code":"","color":"#FFB718"},"process.processGroup":{"code":"","color":"#FFB718"},"control.kpi":{"code":"","color":"#ff9421"},"control.policy":{"code":"","color":"#009b52"},"control.risk":{"code":"","color":"#dc4f39"},"data.form":{"code":"","color":"#009b52"},"itsystem.normal":{"code":"","color":"#4E7FF9"},"org.normal":{"code":"","color":"#ff9421"},"process.bpmn2":{"code":"","color":"#4E7FF9"},"process.evc":{"code":"","color":"#4E7FF9"}}
diff --git a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/CoEPALController.java b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/CoEPALController.java
index 2f79fc32..19a8faca 100755
--- a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/CoEPALController.java
+++ b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/CoEPALController.java
@@ -57,7 +57,7 @@ public class CoEPALController {
@Mapping("com.actionsoft.apps.coe.pal_main_page")
public String COEPALMAIN(UserContext me, String wsuuid) {
Map macroLibraries = new HashMap();
- CoeWorkSpaceModel model = (CoeWorkSpaceModel) CoeWorkSpaceDaoFactory.createCoeWorkSpace().getInstance(wsuuid);
+ CoeWorkSpaceModel model = CoeWorkSpaceDaoFactory.createCoeWorkSpace().getInstance(wsuuid);
macroLibraries.put("sid", me.getSessionId());
macroLibraries.put("wsuuid", wsuuid);
// 资产库去掉了版本号,已不做多版本
@@ -203,6 +203,16 @@ public class CoEPALController {
return web.getManageMethodData();
}
+ /**
+ * 保存形状定义描述
+ * @return
+ */
+ @Mapping("com.actionsoft.apps.coe.pal_pl_manage_method_object_desc_save")
+ public String coePalPlManageMethodObjectDescSave(UserContext me, String shapeName, String desc, String methodId) {
+ PalManageWeb web = new PalManageWeb(me);
+ return web.saveMethodObjectDesc(shapeName, desc, methodId);
+ }
+
/**
* 建模方法->查询特定建模方法的形状定义数据
* @param me
@@ -1331,7 +1341,7 @@ public class CoEPALController {
@Deprecated
@Mapping("com.actionsoft.apps.coe.pal_processlevel_query_check")
public String coePALPROCESSLEVELQUERYCHECK(UserContext me, String uuid) {
- PALRepositoryModel coeProcessLevelModel = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
+ PALRepositoryModel coeProcessLevelModel = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
return coeProcessLevelModel != null ? uuid : "";
}
diff --git a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/manage/method/PalManageWeb.java b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/manage/method/PalManageWeb.java
index 3f8a60d3..7d5e8bab 100755
--- a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/manage/method/PalManageWeb.java
+++ b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/manage/method/PalManageWeb.java
@@ -418,24 +418,26 @@ public class PalManageWeb extends ActionWeb {
tempSchema = replaceTextEPC(tempSchema);
List list = getSchemaToJson(tempSchema);
String type = I18nRes.findValue(CoEConstant.APP_ID, methodId.split("\\.")[0]);
+ // 建模对象描述
+ JSONObject methodObjectDesc = SDK.getAppAPI().getPropertyJSONObjectValue(CoEConstant.APP_ID, "METHOD_OBJECT_DESC", new JSONObject());
JSONArray data = new JSONArray();
for (int i = 0; i < list.size(); i++) {
String s = list.get(i);
String name = "";
String title = "";
if (s.contains("name:\"")) {
- s = s.substring(s.indexOf("name:\""), s.length());
+ s = s.substring(s.indexOf("name:\""));
name = s.substring(s.indexOf("name:\"") + 6, s.indexOf("\","));
} else {
- s = s.substring(s.indexOf("name:"), s.length());
+ s = s.substring(s.indexOf("name:"));
name = s.substring(s.indexOf("name:") + 5, s.indexOf("\","));
}
if (s.contains("title:\"")) {
- s = s.substring(s.indexOf("title:\""), s.length());
+ s = s.substring(s.indexOf("title:\""));
title = s.substring(s.indexOf("title:\"") + 7, s.indexOf("\","));
} else {
- s = s.substring(s.indexOf("title:"), s.length());
+ s = s.substring(s.indexOf("title:"));
title = s.substring(s.indexOf("title:") + 6, s.indexOf(","));
}
if ("Participant".equals(title) || "VerticalSeparatorBar".equals(title) || "verticalSeparatorBar".equals(name) || "horizontalSeparatorBar".equals(name)) {
@@ -452,6 +454,12 @@ public class PalManageWeb extends ActionWeb {
obj.put("modelId", methodId);
obj.put("type", type);
obj.put("showShapeConfig", !name.equals("horizontalSeparator") && !name.equals("verticalSeparator"));
+ // 描述信息查询
+ String desc = "";
+ if (methodObjectDesc.containsKey(methodId) && methodObjectDesc.getJSONObject(methodId).containsKey(name) && methodObjectDesc.getJSONObject(methodId).getJSONObject(name).containsKey("desc")) {
+ desc = methodObjectDesc.getJSONObject(methodId).getJSONObject(name).getString("desc");
+ }
+ obj.put("desc", desc);
data.add(obj);
}
ro.put("data", data);
@@ -1410,4 +1418,25 @@ public class PalManageWeb extends ActionWeb {
return HtmlPageTemplate.merge(CoEConstant.APP_ID, template, map);
}
+ /**
+ * 保存形状定义描述
+ * @param shapeName 形状name
+ * @param desc 形状定义描述
+ * @param methodId 建模方法
+ * @return
+ */
+ public String saveMethodObjectDesc(String shapeName, String desc, String methodId) {
+ ResponseObject ro = ResponseObject.newOkResponse();
+ desc = desc == null ? "" : desc.trim();
+ JSONObject methodObjectDesc = SDK.getAppAPI().getPropertyJSONObjectValue(CoEConstant.APP_ID, "METHOD_OBJECT_DESC", new JSONObject());
+ if (!methodObjectDesc.containsKey(methodId)) {
+ methodObjectDesc.put(methodId, new JSONObject());
+ }
+ if (!methodObjectDesc.getJSONObject(methodId).containsKey(shapeName)) {
+ methodObjectDesc.getJSONObject(methodId).put(shapeName, new JSONObject());
+ }
+ methodObjectDesc.getJSONObject(methodId).getJSONObject(shapeName).put("desc", desc);
+ SDK.getAppAPI().setProperty(CoEConstant.APP_ID, "METHOD_OBJECT_DESC", methodObjectDesc.toString());
+ return ro.toString();
+ }
}
diff --git a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/designer/web/CoeDesignerWeb.java b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/designer/web/CoeDesignerWeb.java
index 8b9936d0..f42b2983 100755
--- a/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/designer/web/CoeDesignerWeb.java
+++ b/com.actionsoft.apps.coe.pal/src/com/actionsoft/apps/coe/pal/pal/repository/designer/web/CoeDesignerWeb.java
@@ -5,6 +5,7 @@ import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
+import java.nio.charset.StandardCharsets;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
@@ -183,11 +184,11 @@ public class CoeDesignerWeb extends ActionWeb {
try {
int size = myArray.size();
for (i = 0; i < size; i++) {
- uid = myArray.get(i).toString();
+ uid = myArray.get(i);
if (uid.trim().equals(""))
continue;
uid = SDK.getORGAPI().getUserId(uid);
- UserModel model = (UserModel) UserCache.getModel(uid);
+ UserModel model = UserCache.getModel(uid);
String name = uid;
if (model != null) {
name = model.getUserName();
@@ -461,7 +462,7 @@ public class CoeDesignerWeb extends ActionWeb {
if (!plModel.isPublish() && !isView && !plModel.isStop() && !plModel.isApproval()) {
CoeListenCacheManager manager = CoeListenCacheManager.getInstance();
Map listenClients = manager.getCollaborationUsers(rUUID);
- StringBuilder userPhoto = new StringBuilder("");
+ StringBuilder userPhoto = new StringBuilder();
int userNum = 1;
if (listenClients != null) {
for (ListenClient listenClient : listenClients.values()) {
@@ -502,11 +503,7 @@ public class CoeDesignerWeb extends ActionWeb {
UtilFile utilFile = new UtilFile(p + "/" + plModel.getId() + ".png");
if (utilFile.exists()) {
byte[] base64Bytes = Base64.encode(utilFile.readBytes());
- try {
- diagram = "data:image/png;base64," + new String(base64Bytes, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
+ diagram = "data:image/png;base64," + new String(base64Bytes, StandardCharsets.UTF_8);
}
}
}
@@ -604,6 +601,8 @@ public class CoeDesignerWeb extends ActionWeb {
}
// 帮助工具栏扩展
getHelptoolExtUrl(macroLibraries);
+ // 图形描述
+ getMethodObjectDesc(macroLibraries);
// 操作行为日志记录
if (SDK.getAppAPI().getPropertyBooleanValue(CoEConstant.APP_ID, "IS_RECORD_OP_LOG", false)) {
CoEOpLogAPI.auditOkOp(_uc, CoEOpLogConst.MODULE_CATEGORY_REPOSITORY, CoEOpLogConst.OP_ACCESS, CoEOpLogConst.INFO_REPOSITORY_ACCESS);
@@ -624,6 +623,27 @@ public class CoeDesignerWeb extends ActionWeb {
}
}
+ /**
+ * 获取形状描述定义
+ * @param macroLibraries
+ */
+ private void getMethodObjectDesc(Map macroLibraries) {
+ JSONObject result = new JSONObject();
+ JSONObject methodObjectDesc = SDK.getAppAPI().getPropertyJSONObjectValue(CoEConstant.APP_ID, "METHOD_OBJECT_DESC", new JSONObject());
+ for (String methodId : methodObjectDesc.keySet()) {
+ for (String shapeName : methodObjectDesc.getJSONObject(methodId).keySet()) {
+ JSONObject shapeObj = methodObjectDesc.getJSONObject(methodId).getJSONObject(shapeName);
+ if (shapeObj.containsKey("desc")) {
+ String desc = shapeObj.getString("desc");
+ if (desc != null && !"".equals(desc.trim())) {
+ result.put(methodId + '-' + shapeName, desc);
+ }
+ }
+ }
+ }
+ macroLibraries.put("methodObjectDesc", result);
+ }
+
/**
* 帮助工具栏扩展
* @param macroLibraries
@@ -733,11 +753,7 @@ public class CoeDesignerWeb extends ActionWeb {
e.printStackTrace();
}
byte[] base64Bytes = Base64.encode(utilFile.readBytes());
- try {
- diagram = "data:image/png;base64," + new String(base64Bytes, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
+ diagram = "data:image/png;base64," + new String(base64Bytes, StandardCharsets.UTF_8);
}
}
}
@@ -913,7 +929,7 @@ public class CoeDesignerWeb extends ActionWeb {
macroLibraries.put("checkouttime", UtilDate.getAliasDatetime(DesignerFileUtil.getCheckOutTime(appId, processDefId)));
macroLibraries.put("checkoutip", DesignerFileUtil.getCheckOutIP(appId, processDefId));
macroLibraries.put("user", getContext().getUID());
- UserModel model = (UserModel) UserCache.getModel(getContext().getUID());
+ UserModel model = UserCache.getModel(getContext().getUID());
macroLibraries.put("currentUserName", model.getUserName());
}
@@ -1441,7 +1457,7 @@ public class CoeDesignerWeb extends ActionWeb {
public JSONArray getHistoryDataJson(String uuid) {
JSONArray historyJson = new JSONArray();
- PALRepositoryModel plModel = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
+ PALRepositoryModel plModel = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
if (!"".equals(plModel.getFilePath())) {
CoeFile jsonUtil = new CoeFile();
historyJson = jsonUtil.getHistoryJsonData(plModel.getFilePath());
@@ -1462,7 +1478,7 @@ public class CoeDesignerWeb extends ActionWeb {
JSONObject json = new JSONObject();
JSONArray versions = getHistoryDataJson(uuid);
JSONObject users = new JSONObject();
- UserModel model = (UserModel) UserCache.getModel(getContext().getUID());
+ UserModel model = UserCache.getModel(getContext().getUID());
users.put(getContext().getUID(), model.getUserName());
json.put("users", users);
json.put("versions", versions);
@@ -1561,7 +1577,7 @@ public class CoeDesignerWeb extends ActionWeb {
* @deprecated
*/
private Map updateCPShapes(String olduuid, String uuId, String define) {
- PALRepositoryModel levelModel = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuId);
+ PALRepositoryModel levelModel = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuId);
String filePath = levelModel.getFilePath();
filePath = filePath + File.separator + levelModel.getId();
UtilFile utilFile = new UtilFile(filePath);
@@ -1582,11 +1598,7 @@ public class CoeDesignerWeb extends ActionWeb {
}
}
if (list.size() > 0 && updateShapes(list, uuId)) {
- try {
- utilFile.write(messageJson.getBytes("utf-8"));
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
+ utilFile.write(messageJson.getBytes(StandardCharsets.UTF_8));
}
DesignerRelationShapeCacheManager cache = DesignerRelationShapeCacheManager.getInstance();
Map> shapeMap = cache.getEventMap();
@@ -1691,7 +1703,7 @@ public class CoeDesignerWeb extends ActionWeb {
if (uuid.indexOf("obj_") == 0) {
photo = "data:image/png;base64," + BPMNIO.getBPMNImage( ProcessDefCache.getInstance().getModel(uuid).getAppId(), uuid);
} else {
- PALRepositoryModel cplm = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
+ PALRepositoryModel cplm = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
if (cplm != null) {
PALRepositoryQueryAPIManager.getInstance().checkImage(cplm.getId(), true, false);// 生成图片
String path = cplm.getFilePath();
@@ -1699,11 +1711,7 @@ public class CoeDesignerWeb extends ActionWeb {
UtilFile utilFile = new UtilFile(path + "/" + cplm.getId() + ".png");
if (utilFile.exists()) {
byte[] base64Bytes = Base64.encode(utilFile.readBytes());
- try {
- photo = "data:image/png;base64," + new String(base64Bytes, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
+ photo = "data:image/png;base64," + new String(base64Bytes, StandardCharsets.UTF_8);
}
}
}
@@ -1846,7 +1854,7 @@ public class CoeDesignerWeb extends ActionWeb {
FileOutputStream fos = null;
try {
fos = new FileOutputStream(exportFile);
- fos.write(buffer.toString().getBytes("UTF-8"));
+ fos.write(buffer.toString().getBytes(StandardCharsets.UTF_8));
fos.flush();
fos.close();
} catch (IOException e) {
@@ -1913,7 +1921,7 @@ public class CoeDesignerWeb extends ActionWeb {
FileOutputStream fos = null;
try {
fos = new FileOutputStream(exportFile);
- fos.write(JSON.toJSONString(object).getBytes("UTF-8"));
+ fos.write(JSON.toJSONString(object).getBytes(StandardCharsets.UTF_8));
fos.flush();
fos.close();
} catch (IOException e) {
@@ -1935,7 +1943,7 @@ public class CoeDesignerWeb extends ActionWeb {
e.printStackTrace();
}
} else {
- PALRepositoryModel cplm = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
+ PALRepositoryModel cplm = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
if (cplm == null) throw new AWSException("流程未找到 " + uuid);
PALRepositoryQueryAPIManager.getInstance().checkImage(cplm.getId(), true, true);// 生成图片
String path = cplm.getFilePath();
@@ -2052,7 +2060,7 @@ public class CoeDesignerWeb extends ActionWeb {
if (!pdfDir.exists()) {
pdfDir.mkdirs();
}
- String date = new SimpleDateFormat("yyyyMMdd").format(new Date()).toString();
+ String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
/*File [] pdfFiles = pdfDir.listFiles(new MyFilenameFilter(date));
int maxNo = 0;
if (pdfFiles != null && pdfFiles.length > 0) {
@@ -2214,7 +2222,7 @@ public class CoeDesignerWeb extends ActionWeb {
if (isAdmin) {
shapes.append(methodModel.getSchema()).append("\r\n");
} else {
- shapes.append(schema.substring(0, schema.indexOf("Schema.addShape"))).append("\r\n");
+ shapes.append(schema, 0, schema.indexOf("Schema.addShape")).append("\r\n");
}
if (methodModel.getCustomSchema() != null) {
shapes.append(methodModel.getCustomSchema()).append("\r\n");
@@ -2457,7 +2465,7 @@ public class CoeDesignerWeb extends ActionWeb {
newSchemas[i] = "";
}
}
- oldSchema = new StringBuilder("");
+ oldSchema = new StringBuilder();
for (int i = 0; i < newSchemas.length; i++) {
if (!"".equals(newSchemas[i])) {
oldSchema.append("Schema.addShape").append(newSchemas[i]).append("\n\r");
@@ -2465,17 +2473,11 @@ public class CoeDesignerWeb extends ActionWeb {
}
}
- try {
- // 写入新模板
- schema = schema.replaceAll("\\\\t\\\\n", "\t\n").replaceAll("\\\\", "");
- schema = "Schema.addShape(" + schema + ");\n\r";
- oldSchema.append(schema);
- file.write(oldSchema.toString().getBytes("UTF-8"));
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- ro = ResponseObject.newErrResponse();
- return ro.toString();
- }
+ // 写入新模板
+ schema = schema.replaceAll("\\\\t\\\\n", "\t\n").replaceAll("\\\\", "");
+ schema = "Schema.addShape(" + schema + ");\n\r";
+ oldSchema.append(schema);
+ file.write(oldSchema.toString().getBytes(StandardCharsets.UTF_8));
// 更新缓存
PALMethodModel palMethodModel = PALMethodCache.getPALMethodModelMap().get(methodId);
@@ -2525,19 +2527,15 @@ public class CoeDesignerWeb extends ActionWeb {
newSchemas[i] = "";
}
}
- StringBuilder oldSchema = new StringBuilder("");
+ StringBuilder oldSchema = new StringBuilder();
for (int i = 0; i < newSchemas.length; i++) {
if (!"".equals(newSchemas[i])) {
oldSchema.append("Schema.addShape").append(newSchemas[i]).append("\n\r");
}
}
- try {
- // 重新写入文件
- file.write(oldSchema.toString().getBytes("UTF-8"));
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
+ // 重新写入文件
+ file.write(oldSchema.toString().getBytes(StandardCharsets.UTF_8));
// 重新加载缓存
PALMethodModel palMethodModel = PALMethodCache.getPALMethodModelMap().get(methodId);
@@ -3065,7 +3063,7 @@ public class CoeDesignerWeb extends ActionWeb {
Set ids = new HashSet<>();
sb.append(plModel.getName());
ids.add(plModel.getId());
- getFilePath(sb, ids, (PALRepositoryModel)plModel);
+ getFilePath(sb, ids, plModel);
macroLibraries.put("toolbarName", sb.toString());
List shapeIds = new ArrayList<>();// 当前流程所有节点
@@ -3309,7 +3307,7 @@ public class CoeDesignerWeb extends ActionWeb {
return null;
}
if (uuid != null && !"".equals(uuid)) {
- PALRepositoryModel m = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
+ PALRepositoryModel m = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(uuid);
PALMethodModel palMethodModel = PALMethodCache.getPALMethodModelById(m.getMethodId());
if (palMethodModel == null) {
return null;
@@ -3646,7 +3644,7 @@ public class CoeDesignerWeb extends ActionWeb {
*/
public String deletePalDesignerVersion(String wsId, String teamId, String id) {
ResponseObject ro;
- PALRepositoryModel plModel = (PALRepositoryModel) CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(id);
+ PALRepositoryModel plModel = CoeProcessLevelDaoFacotory.createCoeProcessLevel().getInstance(id);
List list = new ArrayList();
list.add(plModel);
CoeProcessRecycleWeb recycleWeb = new CoeProcessRecycleWeb(_uc);
@@ -3678,7 +3676,7 @@ public class CoeDesignerWeb extends ActionWeb {
public String changePalDesignerVersionUse(String wsId, String teamId, String id) {
int answer = 0;
PALRepository repository = CoeProcessLevelDaoFacotory.createCoeProcessLevel();
- PALRepositoryModel lastPlModel = (PALRepositoryModel) repository.getInstance(id);
+ PALRepositoryModel lastPlModel = repository.getInstance(id);
answer = repository.updateStateOfVersionUuid(lastPlModel.getVersionId());// 更新所有的为0
answer = repository.updateUseStateOfVersionUuid(lastPlModel.getId());// 更新当前版本为使用状态
CoeProcessLevelNoCache.getInstance().reloadInBackground(lastPlModel.getWsId());
diff --git a/com.actionsoft.apps.coe.pal/template/page/main.htm b/com.actionsoft.apps.coe.pal/template/page/main.htm
index 0775bf7d..6f60bd2d 100644
--- a/com.actionsoft.apps.coe.pal/template/page/main.htm
+++ b/com.actionsoft.apps.coe.pal/template/page/main.htm
@@ -1,16 +1,16 @@
-CoE PAL流程资产库
\ No newline at end of file
+ var jdHref = "./jd";