import { IPSModelObject } from '../ipsmodel-object'; import { IPSAppDEUIAction } from '../app/dataentity/ipsapp-deuiaction'; import { IPSAppDEUILogic } from '../app/dataentity/ipsapp-deuilogic'; import { IPSAppDataEntity } from '../app/dataentity/ipsapp-data-entity'; import { IPSAppUILogic } from '../app/logic/ipsapp-uilogic'; import { IPSAppViewEngine } from '../app/view/ipsapp-view-engine'; import { IPSAppViewLogic } from '../app/view/ipsapp-view-logic'; /** * * 子接口类型识别属性[] * @export * @interface IPSControlLogic */ export interface IPSControlLogic extends IPSModelObject { /** * 注入属性名称 * @type {string} */ attrName: string; /** * 事件参数 * @type {string} */ eventArg: string; /** * 事件参数2 * @type {string} */ eventArg2: string; /** * 事件名称 * @type {string} */ eventNames: string; /** * 子项名称 * @type {string} */ itemName: string; /** * 逻辑标记 * @type {string} */ logicTag: string; /** * 触发逻辑类型 * @description 值模式 [部件逻辑目标类型] {APPDEUILOGIC:应用实体界面逻辑、 APPDEUIACTION:应用实体界面行为、 APPUILOGIC:应用预置界面逻辑、 APPVIEWLOGIC:视图逻辑、 APPVIEWENGINE:视图引擎、 PFPLUGIN:前端扩展插件、 SCRIPT:脚本代码、 DEUILOGIC:实体界面逻辑(兼容)、 DEUIACTION:实体界面行为(兼容)、 SYSVIEWLOGIC:系统预置界面逻辑(兼容) } * @type {( string | 'APPDEUILOGIC' | 'APPDEUIACTION' | 'APPUILOGIC' | 'APPVIEWLOGIC' | 'APPVIEWENGINE' | 'PFPLUGIN' | 'SCRIPT' | 'DEUILOGIC' | 'DEUIACTION' | 'SYSVIEWLOGIC')} */ logicType: string | 'APPDEUILOGIC' | 'APPDEUIACTION' | 'APPUILOGIC' | 'APPVIEWLOGIC' | 'APPVIEWENGINE' | 'PFPLUGIN' | 'SCRIPT' | 'DEUILOGIC' | 'DEUIACTION' | 'SYSVIEWLOGIC'; /** * 逻辑名称 * @type {string} */ name: string; /** * 触发应用实体界面行为 * * @type {IPSAppDEUIAction} */ getPSAppDEUIAction(): IPSAppDEUIAction | null; /** * 触发应用实体界面行为 * * @type {IPSAppDEUIAction} */ get psAppDEUIAction(): IPSAppDEUIAction | null; /** * 触发应用实体界面行为(必须存在) * * @type {IPSAppDEUIAction} */ getPSAppDEUIActionMust(): IPSAppDEUIAction; /** * 触发应用实体界面逻辑 * * @type {IPSAppDEUILogic} */ getPSAppDEUILogic(): IPSAppDEUILogic | null; /** * 触发应用实体界面逻辑 * * @type {IPSAppDEUILogic} */ get psAppDEUILogic(): IPSAppDEUILogic | null; /** * 触发应用实体界面逻辑(必须存在) * * @type {IPSAppDEUILogic} */ getPSAppDEUILogicMust(): IPSAppDEUILogic; /** * 触发逻辑所在应用实体 * * @type {IPSAppDataEntity} */ getPSAppDataEntity(): IPSAppDataEntity | null; /** * 触发逻辑所在应用实体 * * @type {IPSAppDataEntity} */ get psAppDataEntity(): IPSAppDataEntity | null; /** * 触发逻辑所在应用实体(必须存在) * * @type {IPSAppDataEntity} */ getPSAppDataEntityMust(): IPSAppDataEntity; /** * 触发应用预置界面逻辑 * * @type {IPSAppUILogic} */ getPSAppUILogic(): IPSAppUILogic | null; /** * 触发应用预置界面逻辑 * * @type {IPSAppUILogic} */ get psAppUILogic(): IPSAppUILogic | null; /** * 触发应用预置界面逻辑(必须存在) * * @type {IPSAppUILogic} */ getPSAppUILogicMust(): IPSAppUILogic; /** * 触发视图引擎 * * @type {IPSAppViewEngine} */ getPSAppViewEngine(): IPSAppViewEngine | null; /** * 触发视图引擎 * * @type {IPSAppViewEngine} */ get psAppViewEngine(): IPSAppViewEngine | null; /** * 触发视图引擎(必须存在) * * @type {IPSAppViewEngine} */ getPSAppViewEngineMust(): IPSAppViewEngine; /** * 触发视图逻辑 * * @type {IPSAppViewLogic} */ getPSAppViewLogic(): IPSAppViewLogic | null; /** * 触发视图逻辑 * * @type {IPSAppViewLogic} */ get psAppViewLogic(): IPSAppViewLogic | null; /** * 触发视图逻辑(必须存在) * * @type {IPSAppViewLogic} */ getPSAppViewLogicMust(): IPSAppViewLogic; /** * 脚本代码 * @type {string} */ scriptCode: string; /** * 定时间隔(ms) * @type {number} * @default 0 */ timer: number; /** * 触发器类型 * @description 值模式 [部件逻辑类型] {TIMER:定时器触发、 CTRLEVENT:部件事件触发、 ITEMVISIBLE:项显示逻辑、 ITEMENABLE:项启用逻辑、 ITEMBLANK:项空输入逻辑、 ATTRIBUTE:注入属性、 CUSTOM:只挂接(外部调用)、 VUE_DIRECTIVE:VUE指令 } * @type {( string | 'TIMER' | 'CTRLEVENT' | 'ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK' | 'ATTRIBUTE' | 'CUSTOM' | 'VUE_DIRECTIVE')} * @default CTRLEVENT */ triggerType: string | 'TIMER' | 'CTRLEVENT' | 'ITEMVISIBLE' | 'ITEMENABLE' | 'ITEMBLANK' | 'ATTRIBUTE' | 'CUSTOM' | 'VUE_DIRECTIVE'; }