Skip to content
项目
群组
代码片段
帮助
正在加载...
帮助
提交反馈
为 GitLab 提交贡献
登录
切换导航
iBiz-Vue-R7
项目
项目
详情
动态
版本
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
议题
22
议题
22
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
计划
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
统计图
创建新议题
作业
提交
议题看板
打开侧边栏
iBiz-R7前端标准模板
iBiz-Vue-R7
提交
e47df51b
提交
e47df51b
编写于
11月 07, 2022
作者:
Mosher
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update:更新
上级
3d35f3df
变更
1
隐藏空白字符变更
内嵌
并排
正在显示
1 个修改的文件
包含
62 行增加
和
24 行删除
+62
-24
ui-logic-node.txt
APP/src/uiservice/@MACRO/ui-logic-node.txt
+62
-24
未找到文件。
APP/src/uiservice/@MACRO/ui-logic-node.txt
浏览文件 @
e47df51b
...
...
@@ -43,7 +43,26 @@
<#-- START: 绑定参数节点 -->
<#macro bindParamNode logicNode>
// TODO 等待补充
<#if logicNode.getDstPSDEUILogicParam?? && logicNode.getDstPSDEUILogicParam()?? && logicNode.getSrcPSDEUILogicParam?? && logicNode.getSrcPSDEUILogicParam()??>
try {
// 源数据
const srcParam = actionContext.getParam('${logicNode.getSrcPSDEUILogicParam().codeName}');
// 目标数据
const dstParam = actionContext.getParam('${logicNode.getDstPSDEUILogicParam().codeName}');
// 源属性
const srcFieldName: string = '<#if logicNode.getSrcFieldName?? && logicNode.getSrcFieldName()??>${logicNode.getSrcFieldName()?lower_case}</#if>';
if (srcFieldName) {
dstParam.bind(srcParam.get(srcFieldName));
} else {
dstParam.bind(srcParam.getReal());
}
actionContext.bindLastReturnParam(null);
} catch (error: any) {
throw new Error('逻辑参数<#if logicNode.getDstPSDEUILogicParam?? && logicNode.getDstPSDEUILogicParam()??>${logicNode.getDstPSDEUILogicParam().name}</#if> <#noparse>${error && error.message ? error.message : '发生未知错误!'}</#noparse>');
}
<#else>
throw new Error('操作参数或者源参数缺失!');
</#if>
console.log('已完成执行 ${logicNode.name} 节点');
</#macro>
<#-- END: 绑定参数节点 -->
...
...
@@ -99,7 +118,26 @@
<#-- START: 视图部件调用节点 -->
<#macro viewCtrlInvokeNode logicNode>
// TODO 等待补充
const invokeCtrl = '<#if logicNode.getInvokeCtrl?? && logicNode.getInvokeCtrl()??>${logicNode.getInvokeCtrl().codeName}</#if>';
const invokeMethod = '<#if logicNode.getInvokeMethod?? && logicNode.getInvokeMethod()>${logicNode.getInvokeMethod()}</#if>';
const invokeParam = '<#if logicNode.getInvokeParam?? && logicNode.getInvokeParam()??>${logicNode.getInvokeParam().codeName}</#if>';
if (!invokeCtrl || !invokeMethod) {
throw new Error(`界面对象或者调用方法缺失`);
}
const invokeUICtrl = actionContext.getParam(invokeCtrl).getReal();
if (invokeUICtrl[invokeMethod] && invokeUICtrl[invokeMethod] instanceof Function) {
try {
const result = await invokeUICtrl[invokeMethod]();
if (invokeParam) {
actionContext.getParam(invokeParam).bind(result);
}
actionContext.bindLastReturnParam(result);
} catch (error:any) {
<#noparse>throw new Error(`${invokeCtrl}界面对象调用${invokeMethod}方法发生异常`);</#noparse>
}
} else {
<#noparse>throw new Error(`${invokeCtrl}界面对象不存在${invokeMethod}方法`);</#noparse>
}
console.log('已完成执行 ${logicNode.name} 节点');
</#macro>
<#-- END: 视图部件调用节点 -->
...
...
@@ -150,7 +188,7 @@
<#-- 执行节点 -->
<#macro executenode logicNode>
/**
*
处理参数
*
${logicNode.name}
*
* @param {UIActionContext} actionContext 界面逻辑上下文
*/
...
...
@@ -158,64 +196,64 @@
// <#if item?? && item.name??>${item.name}</#if>
<#if logicNode.getLogicNodeType() == 'BEGIN'>
<#-- 开始节点 -->
<@beginNode logicNode/>
<@beginNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'PREPAREJSPARAM'>
<#-- 准备参数节点 -->
<@prepareParamNode logicNode/>
<@prepareParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'RESETPARAM'>
<#-- 重置参数节点 -->
<@resetParamNode logicNode/>
<@resetParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'COPYPARAM'>
<#-- 拷贝参数节点 -->
<@copyParamNode logicNode/>
<@copyParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'BINDPARAM'>
<#-- 绑定参数节点 -->
<@bindParamNode logicNode/>
<@bindParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'RENEWPARAM'>
<#-- 重新建立参数节点 -->
<@renewParamNode logicNode/>
<@renewParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'DEUIACTION'>
<#-- 调用实体界面行为节点 -->
<@deUIActionNode logicNode/>
<@deUIActionNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'DEACTION'>
<#-- 行为处理节点 -->
<@deActionNode logicNode/>
<@deActionNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'DELOGIC'>
<#-- 实体处理逻辑节点 -->
<@deLogicNode logicNode/>
<@deLogicNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'DEDATASET'>
<#-- 实体数据集节点 -->
<@deDataSetNode logicNode/>
<@deDataSetNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'APPENDPARAM'>
<#-- 附加到数组参数节点 -->
<@appendParamNode logicNode/>
<@appendParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'SORTPARAM'>
<#-- 排序数组参数节点 -->
<@sortParamNode logicNode/>
<@sortParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'VIEWCTRLINVOKE'>
<#-- 视图部件调用节点 -->
<@viewCtrlInvokeNode logicNode/>
<@viewCtrlInvokeNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'VIEWCTRLFIREEVENT'>
<#-- 视图部件事件触发节点 -->
<@viewCtrlFireEventNode logicNode/>
<@viewCtrlFireEventNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'DEBUGPARAM'>
<#-- 调试逻辑参数节点 -->
<@debugParamNode logicNode/>
<@debugParamNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'MSGBOX'>
<#-- 消息弹窗节点 -->
<@msgBoxNode logicNode/>
<@msgBoxNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'RAWJSCODE'>
<#-- 前端代码节点 -->
<@rawJSCoreNode logicNode/>
<@rawJSCoreNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'THROWEXCEPTION'>
<#-- 异常处理节点 -->
<@throwExceptionNode logicNode/>
<@throwExceptionNode logicNode/>
<#elseif logicNode.getLogicNodeType() == 'END'>
<#-- 结束节点 -->
<@endNode logicNode/>
<@endNode logicNode/>
<#else>
console.log('${logicNode.getLogicNodeType()}暂未支持');
console.log('${logicNode.getLogicNodeType()}暂未支持');
</#if>
<@computeNextNode logicNode/>
<@computeNextNode logicNode/>
}
</#macro>
\ No newline at end of file
编辑
预览
Markdown
格式
0%
请重试
or
添加新附件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
先完成此消息的编辑!
取消
想要评论请
注册
或
登录