diff --git a/src/main/java/aiyh/utils/action/CusBaseAction.java b/src/main/java/aiyh/utils/action/CusBaseAction.java
index 4fb3b80..9b114a6 100644
--- a/src/main/java/aiyh/utils/action/CusBaseAction.java
+++ b/src/main/java/aiyh/utils/action/CusBaseAction.java
@@ -30,7 +30,7 @@ public abstract class CusBaseAction implements Action {
/**
* 全局requestInfo对象
*/
- protected RequestInfo requestInfo;
+ protected RequestInfo globalRequestInfo;
/**
*
初始化流程默认的处理方法
@@ -49,7 +49,7 @@ public abstract class CusBaseAction implements Action {
@Override
public final String execute(RequestInfo requestInfo) {
- this.requestInfo = requestInfo;
+ this.globalRequestInfo = requestInfo;
RequestManager requestManager = requestInfo.getRequestManager();
String billTable = requestManager.getBillTableName();
String requestId = requestInfo.getRequestid();
@@ -111,8 +111,6 @@ public abstract class CusBaseAction implements Action {
return true;
}
- ;
-
/**
* 流程其他流转类型处理方法注册
@@ -199,9 +197,26 @@ public abstract class CusBaseAction implements Action {
*
* @return 流程主表数据
*/
+ @Deprecated
protected Map getMainTableValue() {
+// 获取主表数据
+ Property[] propertyArr = globalRequestInfo.getMainTableInfo().getProperty();
+ return getStringMap(propertyArr);
+ }
+
+ /**
+ * 获取流程主表数据
+ *
+ * @return 流程主表数据
+ */
+ protected Map getMainTableValue(RequestInfo requestInfo) {
// 获取主表数据
Property[] propertyArr = requestInfo.getMainTableInfo().getProperty();
+ return getStringMap(propertyArr);
+ }
+
+ @NotNull
+ private Map getStringMap(Property[] propertyArr) {
if (null == propertyArr) {
return Collections.emptyMap();
}
@@ -220,8 +235,25 @@ public abstract class CusBaseAction implements Action {
*
* @return 以明细表需要为键,以明细表数据为值的键值对明细数据信息
*/
+ @Deprecated
protected Map>> getDetailTableValue() {
+ DetailTable[] detailTableArr = globalRequestInfo.getDetailTableInfo().getDetailTable();
+ return getListMap(detailTableArr);
+ }
+
+ /**
+ * 获取所有明细数据
+ *
+ * @return 以明细表需要为键,以明细表数据为值的键值对明细数据信息
+ */
+ protected Map>> getDetailTableValue(RequestInfo requestInfo) {
DetailTable[] detailTableArr = requestInfo.getDetailTableInfo().getDetailTable();
+ return getListMap(detailTableArr);
+ }
+
+
+ @NotNull
+ private Map>> getListMap(DetailTable[] detailTableArr) {
Map>> detailDataList = new HashMap<>((int) Math.ceil(detailTableArr.length * 1.4));
for (DetailTable detailTable : detailTableArr) {
List