import { IPSDataEntityObject } from '../ipsdata-entity-object'; import { IPSDELogicBase } from './ipsdelogic-base'; import { IPSDELogicNode } from './ipsdelogic-node'; import { IPSDELogicParam } from './ipsdelogic-param'; import { IPSSysSFPlugin } from '../../res/ipssys-sfplugin'; /** * * 子接口类型识别属性[logicSubType] * @export * @interface IPSDELogic */ export interface IPSDELogic extends IPSDataEntityObject, IPSDELogicBase { /** * 调试模式 * @description 值模式 [实体逻辑调试模式] {0:不启用、 1:信息输出 } * @type {( number | 0 | 1)} * @default 0 */ debugMode: number | 0 | 1; /** * 默认参数名称 * @type {string} */ defaultParamName: string; /** * 逻辑子类 * @description 值模式 [逻辑子类] {NONE:无、 DEFIELD:属性逻辑、 USER:用户自定义、 USER2:用户自定义2、 USER3:用户自定义3、 USER4:用户自定义4 } * @type {( string | 'NONE' | 'DEFIELD' | 'USER' | 'USER2' | 'USER3' | 'USER4')} * @default NONE */ logicSubType: string | 'NONE' | 'DEFIELD' | 'USER' | 'USER2' | 'USER3' | 'USER4'; /** * 逻辑处理集合 * * @type {IPSDELogicNode[]} */ getPSDELogicNodes(): IPSDELogicNode[] | null; /** * 逻辑处理集合 * * @type {IPSDELogicNode[]} */ get psDELogicNodes(): IPSDELogicNode[] | null; findPSDELogicNode(objKey: any): IPSDELogicNode | null; /** * 逻辑参数集合 * * @type {IPSDELogicParam[]} */ getPSDELogicParams(): IPSDELogicParam[] | null; /** * 逻辑参数集合 * * @type {IPSDELogicParam[]} */ get psDELogicParams(): IPSDELogicParam[] | null; findPSDELogicParam(objKey: any): IPSDELogicParam | null; /** * 后台扩展插件 * * @type {IPSSysSFPlugin} */ getPSSysSFPlugin(): IPSSysSFPlugin | null; /** * 后台扩展插件 * * @type {IPSSysSFPlugin} */ get psSysSFPlugin(): IPSSysSFPlugin | null; /** * 后台扩展插件(必须存在) * * @type {IPSSysSFPlugin} */ getPSSysSFPluginMust(): IPSSysSFPlugin; /** * 脚本代码 * @type {string} */ scriptCode: string; /** * 开始处理节点 * * @type {IPSDELogicNode} */ getStartPSDELogicNode(): IPSDELogicNode | null; /** * 开始处理节点 * * @type {IPSDELogicNode} */ get startPSDELogicNode(): IPSDELogicNode | null; /** * 开始处理节点(必须存在) * * @type {IPSDELogicNode} */ getStartPSDELogicNodeMust(): IPSDELogicNode; /** * 自定义脚本代码 * @type {boolean} * @default false */ customCode: boolean; /** * 支持后台执行 * @type {boolean} */ enableBackend: boolean; /** * 支持前台执行 * @type {boolean} */ enableFront: boolean; }