/**
 * 执行 {{logicNode.name}} 节点
 *
 * @protected
 * @memberof {{pascalCase uiLogic.codeName}}UILogicBase
 */
protected async execute_{{logicNode.codeName}}_node() {
{{#if logicNode.dstPSAppDEUIAction}}
    try {
        {{#if logicNode.dstPSDEUILogicParam}}
        const data = this.getParam("{{logicNode.dstPSDEUILogicParam.codeName}}").getReal();
        {{else}}
        const data = this.defaultParam.getReal();
        {{/if}}
        const { $event, actionContext } = this.additionalParam;
        const uiService = await App.getUIService("{{logicNode.dstPSAppDataEntity.codeName}}", this.context);
        if (uiService && uiService.{{logicNode.dstPSAppDEUIAction.codeName}} && uiService.{{logicNode.dstPSAppDEUIAction.codeName}} instanceof Function) {
            const result = await uiService.{{logicNode.dstPSAppDEUIAction.codeName}}(this.context, this.viewParams, Array.isArray(data) ? data : [data], $event, actionContext);
            if (result.ok) {
                this.bindLastReturnParam(result.data);
            }
        }
        {{> @macro/logic-node/next-node.hbs}}
    } catch (error: any) {
        throw new Error(`执行 {{logicNode.name}} 节点 ${error && error.message ? error.message : '发生未知错误！'}`);
    }
{{else}}
    throw new Error('未配置界面行为');
{{/if}}
}
