Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz4j Spring R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7后台标准模板
iBiz4j Spring R7
提交
4630e5ab
提交
4630e5ab
编写于
5月 11, 2020
作者:
sq3536
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
rule规则
上级
6344f417
变更
3
展开全部
显示空白字符变更
内嵌
并排
正在显示
3 个修改的文件
包含
562 行增加
和
23 行删除
+562
-23
%DE%%ITEM%Rule.drl.ftl
...PRJ%-core/src/main/resources/rules/%DE%%ITEM%Rule.drl.ftl
+19
-12
%DE%%ITEM%RuleFlow.bpmn.ftl
...core/src/main/resources/rules/%DE%%ITEM%RuleFlow.bpmn.ftl
+5
-11
RuleUtils.java.ftl
...rc/main/java/%SYS_PKGPATH%/util/helper/RuleUtils.java.ftl
+538
-0
未找到文件。
SLN/%PUBPRJ%-core/src/main/resources/rules/%DE%%ITEM%Rule.drl.ftl
浏览文件 @
4630e5ab
...
@@ -19,6 +19,7 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -19,6 +19,7 @@ import com.alibaba.fastjson.JSONObject;
global
${
pub
.
getPKGCodeName
()}.
core
.${
ParamPSDataEntity
.
getPSSystemModule
().
codeName
?
lower_case
}.
domain
.${
ParamPSDataEntity
.
codeName
}
${
logicName
+
logicParam
.
codeName
?
lower_case
};
global
${
pub
.
getPKGCodeName
()}.
core
.${
ParamPSDataEntity
.
getPSSystemModule
().
codeName
?
lower_case
}.
domain
.${
ParamPSDataEntity
.
codeName
}
${
logicName
+
logicParam
.
codeName
?
lower_case
};
<#
else
>
<#
else
>
global
java
.
util
.
Map
${
logicName
+
logicParam
.
codeName
?
lower_case
};
global
java
.
util
.
Map
${
logicName
+
logicParam
.
codeName
?
lower_case
};
global
${
pub
.
getPKGCodeName
()}.
util
.
security
.
AuthenticationUser
curuser
;
</#
if
>
</#
if
>
</#
list
>
</#
list
>
</#
if
>
</#
if
>
...
@@ -50,26 +51,32 @@ ruleflow-group "${logicName+deLogicNode.getCodeName()?lower_case}"
...
@@ -50,26 +51,32 @@ ruleflow-group "${logicName+deLogicNode.getCodeName()?lower_case}"
<#
list
deLogicNode
.
getPSDELogicNodeParams
()
as
nodeParam
>
<#
list
deLogicNode
.
getPSDELogicNodeParams
()
as
nodeParam
>
<#
assign
targetLogicParam
=
nodeParam
.
getDstPSDELogicParam
()>
<#
assign
targetLogicParam
=
nodeParam
.
getDstPSDELogicParam
()>
<#
assign
targetLogicFieldName
=
nodeParam
.
getDstFieldName
()>
<#
assign
targetLogicFieldName
=
nodeParam
.
getDstFieldName
()>
<#
if
targetLogicParam
.
getParamPSDataEntity
().
getPSDEField
(
targetLogicFieldName
)??>
<#
if
targetLogicParam
.
getParamPSDataEntity
().
getPSDEField
(
targetLogicFieldName
,
true
)??>
<#
assign
target
DEField
=((
targetLogicParam
.
getParamPSDataEntity
().
getPSDEField
(
targetLogicFieldName
))
!'
')>
<#
assign
target
LogicFieldName
=
srfcaseformat
(
targetLogicParam
.
getParamPSDataEntity
().
getPSDEField
(
targetLogicFieldName
,
true
).
getCodeName
(),
'l_u2lC
'
)>
</#
if
>
</#
if
>
<#
if
nodeParam
.
getSrcValueType
()==
'SRCVALUE'
><#
comment
>
直接值
</#
comment
>
<#
if
nodeParam
.
getSrcValueType
()==
'SRCVALUE'
><#
comment
>
直接值
</#
comment
>
<#
if
targetDEField
??&&
srfjavatype
(
targetDEField
.
stdDataType
)==
'Integer'
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,${
nodeParam
.
getSrcValue
()});
<#
else
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
"${nodeParam.getSrcValue()}"
);
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
"${nodeParam.getSrcValue()}"
);
</#
if
>
<#
elseif
nodeParam
.
getSrcValueType
()==
'SRCDLPARAM'
><#
comment
>
源逻辑参数
</#
comment
>
<#
elseif
nodeParam
.
getSrcValueType
()==
'SRCDLPARAM'
><#
comment
>
源逻辑参数
</#
comment
>
<#
assign
srcPSDELogicParam
=
nodeParam
.
getSrcPSDELogicParam
()>
<#
assign
srcPSDELogicParam
=
nodeParam
.
getSrcPSDELogicParam
()>
<#
assign
srcFieldName
=
nodeParam
.
getSrcFieldName
()>
<#
assign
srcFieldName
=
nodeParam
.
getSrcFieldName
()>
<#--<#
assign
srcDEField
=((
srcPSDELogicParam
.
getParamPSDataEntity
().
getPSDEField
(
srcFieldName
))
!'') >-->
<#
if
srcPSDELogicParam
.
getParamPSDataEntity
().
getPSDEField
(
srcFieldName
,
true
)??>
<#--<#
if
srcDEField
!='' && targetDEField!=''>-->
<#
assign
srcFieldName
=
srfcaseformat
(
srcPSDELogicParam
.
getParamPSDataEntity
().
getPSDEField
(
srcFieldName
,
true
).
getCodeName
(),
'l_u2lC'
)>
</#
if
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,${
logicName
+
srcPSDELogicParam
.
getCodeName
()?
lower_case
}.
get
(
"${srcFieldName?lower_case}"
));<#
comment
>
源逻辑参数选择了实体
</#
comment
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,${
logicName
+
srcPSDELogicParam
.
getCodeName
()?
lower_case
}.
get
(
"${srcFieldName?lower_case}"
));<#
comment
>
源逻辑参数选择了实体
</#
comment
>
<#--<#
else
>-->
<#--//
暂不支持逻辑参数无实体模式
属性
[${
srcFieldName
?
upper_case
}]-->
<#--</#
if
>-->
<#
else
>
<#
else
>
//
暂未支持其余准备参数设置
<#
if
nodeParam
.
getSrcValueType
()==
"CURTIME"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,(
new
java
.
sql
.
Timestamp
(
new
java
.
util
.
Date
().
getTime
()))));
<#
elseif
nodeParam
.
getSrcValueType
()==
"OPERATOR"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
curuser
.
getUserid
());
<#
elseif
nodeParam
.
getSrcValueType
()==
"OPERATORNAME"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
curuser
.
getPersonname
());
<#
elseif
nodeParam
.
getSrcValueType
()==
"CONTEXT"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,${
logicName
+
"default"
}.
get
(
"${srcFieldName?lower_case}"
));<#
comment
>
源逻辑参数选择了实体
</#
comment
>
<#
elseif
nodeParam
.
getSrcValueType
()==
"SESSION"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
curuser
.
getSessionParams
().
get
(
"${srcFieldName?lower_case}"
));
<#
elseif
nodeParam
.
getSrcValueType
()==
"NULLVALUE"
>
${
logicName
+
targetLogicParam
.
getCodeName
()?
lower_case
}.
set
(
"${targetLogicFieldName?lower_case}"
,
null
);
</#
if
>
</#
if
>
</#
if
>
</#
list
>
</#
list
>
<#
elseif
deLogicNode
.
getLogicNodeType
()==
'DEACTION'
><#
comment
>
调用实体行为
</#
comment
>
<#
elseif
deLogicNode
.
getLogicNodeType
()==
'DEACTION'
><#
comment
>
调用实体行为
</#
comment
>
...
...
SLN/%PUBPRJ%-core/src/main/resources/rules/%DE%%ITEM%RuleFlow.bpmn.ftl
浏览文件 @
4630e5ab
...
@@ -7,7 +7,7 @@ TARGET=PSDELOGIC
...
@@ -7,7 +7,7 @@ TARGET=PSDELOGIC
<extensionElements>
<extensionElements>
<tns:import name="java.util.Map" />
<tns:import name="java.util.Map" />
<tns:import name="org.springframework.util.StringUtils"/>
<tns:import name="org.springframework.util.StringUtils"/>
<tns:import name="${pub.getPKGCodeName()}.util.helper.
CompareHelper
"/>
<tns:import name="${pub.getPKGCodeName()}.util.helper.
RuleUtils
"/>
<#assign logicName=(de.codeName+item.codeName)?lower_case>
<#assign logicName=(de.codeName+item.codeName)?lower_case>
<#comment>插入逻辑参数</#comment>
<#comment>插入逻辑参数</#comment>
<#if item.getPSDELogicParams?? && item.getPSDELogicParams()??>
<#if item.getPSDELogicParams?? && item.getPSDELogicParams()??>
...
@@ -59,7 +59,6 @@ TARGET=PSDELOGIC
...
@@ -59,7 +59,6 @@ TARGET=PSDELOGIC
</#if>
</#if>
<#assign LogicLinkCond=LogicLink.getPSDELogicLinkGroupCond()>
<#assign LogicLinkCond=LogicLink.getPSDELogicLinkGroupCond()>
<#assign strGroupCond=getGroupCond(LogicLinkCond)>
<#assign strGroupCond=getGroupCond(LogicLinkCond)>
<#assign strGroupCond=strGroupCond?replace("ISNOTNULL","!=NULL")?replace("ISNULL","==NULL")?replace("AND","&&")?replace("OR","||")?replace("GT&&EQ",">=")?replace("LT&&EQ","<=")?replace("NOTEQ","!=")?replace("EQ","==")?replace("GT",">")?replace("LT","<") >
eval${strGroupCond}
eval${strGroupCond}
]]>
]]>
</conditionExpression>
</conditionExpression>
...
@@ -93,7 +92,7 @@ TARGET=PSDELOGIC
...
@@ -93,7 +92,7 @@ TARGET=PSDELOGIC
<#function getGroupCond LogicLinkCond>
<#function getGroupCond LogicLinkCond>
<#assign strRuleCond="(">
<#assign strRuleCond="(">
<#if LogicLinkCond.getPSDELogicLinkConds?? && LogicLinkCond.getPSDELogicLinkConds()??><#comment>判断是否有组条件</#comment>
<#if LogicLinkCond.getPSDELogicLinkConds?? && LogicLinkCond.getPSDELogicLinkConds()??><#comment>判断是否有组条件</#comment>
<#assign conn=LogicLinkCond.getGroupOP()>
<#assign conn=LogicLinkCond.getGroupOP()
?replace("AND","&&")?replace("OR","||")
>
<#list LogicLinkCond.getPSDELogicLinkConds() as childLogicLinkCond><#comment>组条件,递归</#comment>
<#list LogicLinkCond.getPSDELogicLinkConds() as childLogicLinkCond><#comment>组条件,递归</#comment>
<#if childLogicLinkCond.getPSDELogicLinkConds?? && childLogicLinkCond.getPSDELogicLinkConds()??>
<#if childLogicLinkCond.getPSDELogicLinkConds?? && childLogicLinkCond.getPSDELogicLinkConds()??>
<#assign strRuleCond=strRuleCond+getGroupCond(childLogicLinkCond)>//getGroupCond
<#assign strRuleCond=strRuleCond+getGroupCond(childLogicLinkCond)>//getGroupCond
...
@@ -115,18 +114,13 @@ TARGET=PSDELOGIC
...
@@ -115,18 +114,13 @@ TARGET=PSDELOGIC
<#assign condBody="">
<#assign condBody="">
<#assign targetParam=LogicLinkCond.getDstLogicParam()><#comment>目标参数</#comment>
<#assign targetParam=LogicLinkCond.getDstLogicParam()><#comment>目标参数</#comment>
<#assign targetFieldName=LogicLinkCond.getDstFieldName()><#comment>目标属性名称</#comment>
<#assign targetFieldName=LogicLinkCond.getDstFieldName()><#comment>目标属性名称</#comment>
<#assign targetDEField=((targetParam.getParamPSDataEntity().getPSDEField(targetFieldName))!'')><#comment>目标属性</#comment>
<#assign targetDEField=((targetParam.getParamPSDataEntity().getPSDEField(targetFieldName
,true
))!'')><#comment>目标属性</#comment>
<#assign targetDBValueOP=LogicLinkCond.getPSDBValueOPId()><#comment>表达式</#comment>
<#assign targetDBValueOP=LogicLinkCond.getPSDBValueOPId()><#comment>表达式</#comment>
<#assign targetValue=LogicLinkCond.getValue()><#comment>值项</#comment>
<#assign targetValue=LogicLinkCond.getValue()><#comment>值项</#comment>
<#if targetDEField!=''>
<#if targetDEField!=''>
<#if targetDBValueOP=="ISNULL">
targetFieldName=srfcaseformat(targetDEField.codeName,'l_u2lC') ;
<#assign condBody="StringUtils.isEmpty($"+logicName+targetParam.getCodeName()?lower_case+".get"+targetDEField.codeName?cap_first+"()"+")">
<#elseif targetDBValueOP=="ISNOTNULL">
<#assign condBody="!StringUtils.isEmpty($"+logicName+targetParam.getCodeName()?lower_case+".get"+targetDEField.codeName?cap_first+"()"+")">
<#else>
<#assign condBody="CompareHelper.compare($"+logicName+targetParam.getCodeName()?lower_case+".get"+targetDEField.codeName?cap_first+"(),"+"\""+targetValue+"\","+"\""+targetDBValueOP+"\")">
</#if>
</#if>
</#if>
<#assign condBody="RuleUtils.test($"+logicName+targetParam.getCodeName()?lower_case+".get(\""+targetFieldName+"\"),\""+targetDBValueOP+"\","+"\""+targetValue+"\")">
<#assign fieldCond=fieldCond+condBody >
<#assign fieldCond=fieldCond+condBody >
<#assign fieldCond=fieldCond+")" >
<#assign fieldCond=fieldCond+")" >
<#return fieldCond/>
<#return fieldCond/>
...
...
SLN/%PUBPRJ%-util/src/main/java/%SYS_PKGPATH%/util/helper/RuleUtils.java.ftl
0 → 100644
浏览文件 @
4630e5ab
此差异已折叠。
点击以展开。
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录