diff --git a/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar b/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar
index 99122c62..c7f09cc8 100644
Binary files a/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar and b/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar differ
diff --git a/com.actionsoft.apps.coe.pal.processlist/manifest.xml b/com.actionsoft.apps.coe.pal.processlist/manifest.xml
index 85326718..aacc29bf 100644
--- a/com.actionsoft.apps.coe.pal.processlist/manifest.xml
+++ b/com.actionsoft.apps.coe.pal.processlist/manifest.xml
@@ -33,7 +33,9 @@
结构化描述流程模型
-
-
+
+
+
+
{"f391f672-100b-4d4b-89d1-ba1b4b3d0132":{"wsId":"f391f672-100b-4d4b-89d1-ba1b4b3d0132","createUser":"admin","customColumns":[{"columnType":"default","showOverflow":false,"prop":"no_serialNumber","dataType":"default","name":"序号","width":"78","minWidth":"78","id":"no_serialNumber","label":"序号"},{"columnType":"default","showOverflow":false,"prop":"no_default","dataType":"default","name":"编号","width":"100","minWidth":"100","id":"no_default","label":"编号"},{"columnType":"default","showOverflow":false,"prop":"name","dataType":"name","name":"流程名称","width":"250","minWidth":"250","id":"name","label":"流程名称"},{"columnType":"default","showOverflow":false,"prop":"type","dataType":"selectType","name":"类型","width":"150","minWidth":"150","id":"type","label":"类型","filters":[{"text":"文件夹","value":"default"},{"text":"过程链图","value":"process.epc"},{"text":"流程图","value":"process.flowchart"},{"text":"BPMN图","value":"process.bpmn2"},{"text":"价值链图","value":"process.evc"}]},{"columnType":"default","showOverflow":false,"prop":"status","dataType":"selectStatus","name":"状态","width":"150","minWidth":"150","id":"status","label":"状态","filters":[{"text":"已发布","value":"publish"},{"text":"已停用","value":"stop"},{"text":"设计中","value":"designer"}]},{"columnType":"extendAttr","showOverflow":false,"prop":"bpm_department","dataType":"default","name":"责任部门","width":"150","minWidth":"150","id":"bpm_department","label":"责任部门"},{"columnType":"extendAttr","showOverflow":false,"prop":"bpm_person","dataType":"default","name":"责任人","width":"150","minWidth":"150","id":"bpm_person","label":"责任人"}],"createDate":"2021-07-05 17:03:58"}}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
index f68022c6..cc810b9d 100644
--- a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
@@ -17,9 +17,9 @@ public class CoEProcessListController {
// 流程清单-入口
@Mapping("com.actionsoft.apps.coe.pal.processlist_home")
- public String processlistHome(UserContext me, String wsid) {
+ public String processlistHome(UserContext me, String wsId, String teamId) {
PALRepositoryListWeb proc = new PALRepositoryListWeb(me);
- return proc.mainPage(me, wsid);
+ return proc.mainPage(me, wsId, teamId);
}
/**
@@ -32,9 +32,9 @@ public class CoEProcessListController {
* @return
*/
@Mapping("com.actionsoft.apps.coe.pal.processlist_header_query")
- public String getProcessListHeader (UserContext me, String wsId, String searchInput, String levelValue, String tableFilter) {
+ public String getProcessListHeader (UserContext me, String wsId, String teamId, String searchInput, String levelValue, String tableFilter) {
PALRepositoryListWeb web = new PALRepositoryListWeb(me);
- return web.getProcessListHeader(wsId, searchInput, levelValue, tableFilter);
+ return web.getProcessListHeader(wsId, teamId, searchInput, levelValue, tableFilter);
}
/**
@@ -50,9 +50,9 @@ public class CoEProcessListController {
* @return
*/
@Mapping("com.actionsoft.apps.coe.pal.processlist_data_query")
- public String getProcessListTableData(UserContext me, String wsId, String searchInput, String levelValue, int currentPage, int pageStep, String tableHead, String tableFilter) {
+ public String getProcessListTableData(UserContext me, String wsId, String teamId, String searchInput, String levelValue, int currentPage, int pageStep, String tableHead, String tableFilter) {
PALRepositoryListWeb web = new PALRepositoryListWeb(me);
- return web.getProcessListTableData(wsId, searchInput, levelValue, currentPage, pageStep, tableHead, tableFilter);
+ return web.getProcessListTableData(wsId, teamId, searchInput, levelValue, currentPage, pageStep, tableHead, tableFilter);
}
/**
@@ -78,9 +78,9 @@ public class CoEProcessListController {
* @return
*/
@Mapping("com.actionsoft.apps.coe.pal.processlist_data_export")
- public String processListExportExcel(UserContext me, String wsId, String searchInput, String levelValue, String tableFilter) {
+ public String processListExportExcel(UserContext me, String wsId, String teamId, String searchInput, String levelValue, String tableFilter) {
PALRepositoryListWeb web = new PALRepositoryListWeb(me);
- return web.processListExportExcel(wsId, searchInput, levelValue, tableFilter);
+ return web.processListExportExcel(wsId, teamId, searchInput, levelValue, tableFilter);
}
}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/plugin/Plugins.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/plugin/Plugins.java
index cee52ca3..7a26993f 100644
--- a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/plugin/Plugins.java
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/plugin/Plugins.java
@@ -30,6 +30,12 @@ public class Plugins implements PluginListener {
params0.put("mainClass", PALRepositoryListWeb.class.getName());
params0.put("deletedClass", "");
list.add(new AppExtensionProfile("PAL流程资产库->流程清单", "aslp://com.actionsoft.apps.coe.pal/registerExtendsApp", params0));
+
+ // 注册应用扩展点
+ Map params1 = new HashMap();
+ params1.put("title", "流程清单");
+ params1.put("desc", "流程清单");
+ list.add(new AppExtensionProfile("PAL小组->流程清单", "aslp://com.actionsoft.apps.coe.pal.cooperation/registerApp", params1));
return list;
}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/web/PALRepositoryListWeb.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/web/PALRepositoryListWeb.java
index 51b2b7c7..d8c4bd8c 100644
--- a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/web/PALRepositoryListWeb.java
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/web/PALRepositoryListWeb.java
@@ -67,14 +67,9 @@ public class PALRepositoryListWeb extends ActionWeb {
_uc = uc;
}
- public String mainPage(UserContext context, String wsId) {
- _uc = context;
- return getVuePortal(context, wsId);
- }
-
public String mainPage(UserContext context, String wsId, String teamId) {
_uc = context;
- return getVuePortal(context, wsId);
+ return getVuePortal(context, wsId, teamId);
}
/**
@@ -83,7 +78,7 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param wsId
* @return
*/
- public String getVuePortal(UserContext context, String wsId) {
+ public String getVuePortal(UserContext context, String wsId, String teamId) {
Map macroLibraries = new HashMap();
macroLibraries.put("sessionId", context.getSessionId());
macroLibraries.put("wsId", wsId);
@@ -98,6 +93,7 @@ public class PALRepositoryListWeb extends ActionWeb {
}
}
macroLibraries.put("defaultSelectVal", defaultSelectVal);
+ macroLibraries.put("teamId", teamId);
macroLibraries.put("settingParam", JSON.toJSON(macroLibraries));
// 操作行为日志记录
if (SDK.getAppAPI().getPropertyBooleanValue(CoEConstant.APP_ID, "IS_RECORD_OP_LOG", false)) {
@@ -482,7 +478,7 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param tableFilter 表格表头筛选条件
* @return
*/
- public String getProcessListHeader(String wsId, String searchInput, String levelValue, String tableFilter) {
+ public String getProcessListHeader(String wsId, String teamId, String searchInput, String levelValue, String tableFilter) {
String category = "process";
ResponseObject ro = ResponseObject.newOkResponse();
// 获取默认的表格列
@@ -547,7 +543,7 @@ public class PALRepositoryListWeb extends ActionWeb {
ro.put("customTableUncheckedData", customTableUncheckedData);// 未选中表项
}
- List palList = getFilteredPalRepositoryList(wsId, category, searchInput, levelValue, tableFilter);
+ List palList = getFilteredPalRepositoryList(wsId, teamId, category, searchInput, levelValue, tableFilter);
ro.put("totalCount", palList.size());
return ro.toString();
}
@@ -558,7 +554,7 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param category
* @return
*/
- private List getFilteredPalRepositoryList(String wsId, String category, String searchInput, String levelValue, String tableFilter) {
+ private List getFilteredPalRepositoryList(String wsId, String teamId, String category, String searchInput, String levelValue, String tableFilter) {
// type,status
JSONObject tableFilterObj = JSONObject.parseObject(tableFilter);
// 类型
@@ -583,6 +579,13 @@ public class PALRepositoryListWeb extends ActionWeb {
levelSet.add(selectValueArr[i]);
}
}
+ // 小组权限筛选
+ Set permVerIds = new HashSet<>();
+ if (UtilString.isNotEmpty(teamId)) {
+ // 获取权限versionIds
+ permVerIds = CoeProcessLevelUtil.getPermRepositoryVersionIds(wsId, teamId, _uc.getUID(), null, null);
+
+ }
for (PALRepositoryModel model: palList) {
if (!model.isUse()) {// 非设计中状态,过滤
continue;
@@ -613,6 +616,11 @@ public class PALRepositoryListWeb extends ActionWeb {
continue;
}
}
+ if (UtilString.isNotEmpty(teamId)) {// 小组权限判断
+ if (!permVerIds.contains(model.getVersionId())) {
+ continue;
+ }
+ }
// 追加
tmpPalList.add(model);
}
@@ -760,11 +768,11 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param tableFilter
* @return
*/
- public String getProcessListTableData(String wsId, String searchInput, String levelValue, int currentPage, int pageStep, String tableHead, String tableFilter) {
+ public String getProcessListTableData(String wsId, String teamId, String searchInput, String levelValue, int currentPage, int pageStep, String tableHead, String tableFilter) {
String category = "process";
ResponseObject ro = ResponseObject.newOkResponse();
// 获取流程信息
- List palList = getFilteredPalRepositoryList(wsId, category, searchInput, levelValue, tableFilter);
+ List palList = getFilteredPalRepositoryList(wsId, teamId, category, searchInput, levelValue, tableFilter);
int startPoint = 0;
int endPoint = 0;
if (currentPage <= 0) {
@@ -911,7 +919,7 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param tableFilter
* @return
*/
- public String processListExportExcel(String wsId, String searchInput, String levelValue, String tableFilter) {
+ public String processListExportExcel(String wsId, String teamId, String searchInput, String levelValue, String tableFilter) {
JSONObject conditions = new JSONObject();
conditions.put("searchInput", searchInput);
conditions.put("levelValue", levelValue);
@@ -920,7 +928,7 @@ public class PALRepositoryListWeb extends ActionWeb {
HSSFSheet sheet = wb.createSheet(I18nRes.findValue(ProcessListConstant.PROCESSLIST, ("流程清单")));
// 模板标题
short rowIndex = 0;
- exportSheetData2(wb, sheet, rowIndex, (short) 0, wsId, conditions);
+ exportSheetData2(wb, sheet, rowIndex, (short) 0, wsId, teamId, conditions);
DCUtil.getInstance();
DCContext dcContext = DCUtil.createTempFileContext(AppsConst.SYS_APP_PLATFORM, "Form", "Sheet", "xls");
FileOutputStream out = null;
@@ -953,7 +961,7 @@ public class PALRepositoryListWeb extends ActionWeb {
* @param wsId
* @param conditions
*/
- private void exportSheetData2(HSSFWorkbook wb, HSSFSheet sheet, int rowIndex, short columnIndex, String wsId, JSONObject conditions) {
+ private void exportSheetData2(HSSFWorkbook wb, HSSFSheet sheet, int rowIndex, short columnIndex, String wsId, String teamId, JSONObject conditions) {
HSSFFont font = wb.createFont();
HSSFCellStyle styleHead = wb.createCellStyle();
styleHead.setFillForegroundColor(HSSFColor.BLUE_GREY.index);
@@ -983,7 +991,7 @@ public class PALRepositoryListWeb extends ActionWeb {
String searchInput = conditions.getString("searchInput");
String levelValue = conditions.getString("levelValue");
String tableFilter = conditions.getString("tableFilter");
- List palList = getFilteredPalRepositoryList(wsId, category, searchInput, levelValue, tableFilter);
+ List palList = getFilteredPalRepositoryList(wsId, teamId, category, searchInput, levelValue, tableFilter);
// 获取配置信息
JSONArray tableHeadConfigArr = getProcessListTableHeaderData(wsId, category);
// 获取展现到Excel的扩展字段
diff --git a/com.actionsoft.apps.coe.pal.processlist/template/page/main.htm b/com.actionsoft.apps.coe.pal.processlist/template/page/main.htm
index a6a72644..c6ee714c 100644
--- a/com.actionsoft.apps.coe.pal.processlist/template/page/main.htm
+++ b/com.actionsoft.apps.coe.pal.processlist/template/page/main.htm
@@ -1,6 +1,7 @@
com.actionsoft.apps.coe.pal.processlist
\ No newline at end of file
+ var wHref = "./w";