import { IPSModelSortable } from '../../ipsmodel-sortable'; import { IPSDataEntityObject } from '../ipsdata-entity-object'; import { IPSDEActionInput } from './ipsdeaction-input'; import { IPSDEActionLogic } from './ipsdeaction-logic'; import { IPSDEActionParam } from './ipsdeaction-param'; import { IPSDEActionReturn } from './ipsdeaction-return'; import { IPSDEActionVR } from './ipsdeaction-vr'; import { IPSDEOPPriv } from '../priv/ipsdeoppriv'; import { IPSSysPFPlugin } from '../../res/ipssys-pfplugin'; import { IPSSysSFPlugin } from '../../res/ipssys-sfplugin'; import { IPSSubSysServiceAPIDEMethod } from '../../service/ipssub-sys-service-apidemethod'; import { IPSSysTestCase } from '../../testing/ipssys-test-case'; /** * * 子接口类型识别属性[actionType] * @export * @interface IPSDEAction */ export interface IPSDEAction extends IPSDataEntityObject, IPSModelSortable { /** * 行为持有者 * @description 值模式 [逻辑所有者] {1:后台、 2:前台、 3:后台及前台 } * @type {( number | 1 | 2 | 3)} * @default 3 */ actionHolder: number | 1 | 2 | 3; /** * 行为模式 * @description 值模式 [实体行为模式] {CREATE:创建数据、 READ:读取数据、 UPDATE:更新数据、 DELETE:删除数据、 CUSTOM:自定义操作、 GETDRAFT:获取草稿、 UNKNOWN:未知操作、 MOVEORDER:移动位置、 CHECKKEY:检查主键、 USER:用户自定义、 USER2:用户自定义2、 USER3:用户自定义3、 USER4:用户自定义4 } * @type {( string | 'CREATE' | 'READ' | 'UPDATE' | 'DELETE' | 'CUSTOM' | 'GETDRAFT' | 'UNKNOWN' | 'MOVEORDER' | 'CHECKKEY' | 'USER' | 'USER2' | 'USER3' | 'USER4')} */ actionMode: string | 'CREATE' | 'READ' | 'UPDATE' | 'DELETE' | 'CUSTOM' | 'GETDRAFT' | 'UNKNOWN' | 'MOVEORDER' | 'CHECKKEY' | 'USER' | 'USER2' | 'USER3' | 'USER4'; /** * 行为标记 * @type {string} */ actionTag: string; /** * 行为标记2 * @type {string} */ actionTag2: string; /** * 行为标记3 * @type {string} */ actionTag3: string; /** * 行为标记4 * @type {string} */ actionTag4: string; /** * 行为类型 * @description 值模式 [实体行为类型] {USERCUSTOM:用户自定义、 DELOGIC:实体处理逻辑、 BUILTIN:内置方法、 SELECTBYKEY:通过键值获取、 USERCREATE:用户扩展建立、 USERUPDATE:用户扩展更新、 USERSYSUPDATE:用户扩展系统更新、 SCRIPT:脚本代码、 REMOTE:远程接口行为 } * @type {( string | 'USERCUSTOM' | 'DELOGIC' | 'BUILTIN' | 'SELECTBYKEY' | 'USERCREATE' | 'USERUPDATE' | 'USERSYSUPDATE' | 'SCRIPT' | 'REMOTE')} */ actionType: string | 'USERCUSTOM' | 'DELOGIC' | 'BUILTIN' | 'SELECTBYKEY' | 'USERCREATE' | 'USERUPDATE' | 'USERSYSUPDATE' | 'SCRIPT' | 'REMOTE'; /** * 执行后附加逻辑集合 * * @type {IPSDEActionLogic[]} */ getAfterPSDEActionLogics(): IPSDEActionLogic[] | null; /** * 执行后附加逻辑集合 * * @type {IPSDEActionLogic[]} */ get afterPSDEActionLogics(): IPSDEActionLogic[] | null; findAfterPSDEActionLogic(objKey: any): IPSDEActionLogic | null; /** * 批操作模式 * @description 值模式 [实体行为批操作模式] {0:不支持、 1:支持、 2:仅支持批操作、 5:支持(事务)、 6:仅支持批操作(事务) } * @type {( number | 0 | 1 | 2 | 5 | 6)} * @default 0 */ batchActionMode: number | 0 | 1 | 2 | 5 | 6; /** * 执行前附加逻辑集合 * * @type {IPSDEActionLogic[]} */ getBeforePSDEActionLogics(): IPSDEActionLogic[] | null; /** * 执行前附加逻辑集合 * * @type {IPSDEActionLogic[]} */ get beforePSDEActionLogics(): IPSDEActionLogic[] | null; findBeforePSDEActionLogic(objKey: any): IPSDEActionLogic | null; /** * 检查附加逻辑集合 * * @type {IPSDEActionLogic[]} */ getCheckPSDEActionLogics(): IPSDEActionLogic[] | null; /** * 检查附加逻辑集合 * * @type {IPSDEActionLogic[]} */ get checkPSDEActionLogics(): IPSDEActionLogic[] | null; findCheckPSDEActionLogic(objKey: any): IPSDEActionLogic | null; /** * 代码标识 * @type {string} */ codeName: string; /** * 子系统扩展 * @description 值模式 [实体扩展模式] {0:无扩展、 2:子系统功能扩展 } * @type {( number | 0 | 2)} * @default 0 */ extendMode: number | 0 | 2; /** * 逻辑名称 * @type {string} */ logicName: string; /** * 行为次序 * @type {number} * @default 99999 */ orderValue: number; /** * 性能优化预警时长(ms) * @type {number} * @default -1 */ pOTime: number; /** * 调用输入对象 * * @type {IPSDEActionInput} */ getPSDEActionInput(): IPSDEActionInput | null; /** * 调用输入对象 * * @type {IPSDEActionInput} */ get psDEActionInput(): IPSDEActionInput | null; /** * 调用输入对象(必须存在) * * @type {IPSDEActionInput} */ getPSDEActionInputMust(): IPSDEActionInput; /** * 行为参数集合 * * @type {IPSDEActionParam[]} */ getPSDEActionParams(): IPSDEActionParam[] | null; /** * 行为参数集合 * * @type {IPSDEActionParam[]} */ get psDEActionParams(): IPSDEActionParam[] | null; findPSDEActionParam(objKey: any): IPSDEActionParam | null; /** * 调用返回对象 * * @type {IPSDEActionReturn} */ getPSDEActionReturn(): IPSDEActionReturn | null; /** * 调用返回对象 * * @type {IPSDEActionReturn} */ get psDEActionReturn(): IPSDEActionReturn | null; /** * 调用返回对象(必须存在) * * @type {IPSDEActionReturn} */ getPSDEActionReturnMust(): IPSDEActionReturn; /** * 行为附加值规则集合 * * @type {IPSDEActionVR[]} */ getPSDEActionVRs(): IPSDEActionVR[] | null; /** * 行为附加值规则集合 * * @type {IPSDEActionVR[]} */ get psDEActionVRs(): IPSDEActionVR[] | null; findPSDEActionVR(objKey: any): IPSDEActionVR | null; /** * 服务访问操作标识 * * @type {IPSDEOPPriv} */ getPSDEOPPriv(): IPSDEOPPriv | null; /** * 服务访问操作标识 * * @type {IPSDEOPPriv} */ get psDEOPPriv(): IPSDEOPPriv | null; /** * 服务访问操作标识(必须存在) * * @type {IPSDEOPPriv} */ getPSDEOPPrivMust(): IPSDEOPPriv; /** * 外部服务接口方法 * * @type {IPSSubSysServiceAPIDEMethod} */ getPSSubSysServiceAPIDEMethod(): IPSSubSysServiceAPIDEMethod | null; /** * 外部服务接口方法 * * @type {IPSSubSysServiceAPIDEMethod} */ get psSubSysServiceAPIDEMethod(): IPSSubSysServiceAPIDEMethod | null; /** * 外部服务接口方法(必须存在) * * @type {IPSSubSysServiceAPIDEMethod} */ getPSSubSysServiceAPIDEMethodMust(): IPSSubSysServiceAPIDEMethod; /** * 前端扩展插件 * * @type {IPSSysPFPlugin} */ getPSSysPFPlugin(): IPSSysPFPlugin | null; /** * 前端扩展插件 * * @type {IPSSysPFPlugin} */ get psSysPFPlugin(): IPSSysPFPlugin | null; /** * 前端扩展插件(必须存在) * * @type {IPSSysPFPlugin} */ getPSSysPFPluginMust(): IPSSysPFPlugin; /** * 后台扩展插件 * * @type {IPSSysSFPlugin} */ getPSSysSFPlugin(): IPSSysSFPlugin | null; /** * 后台扩展插件 * * @type {IPSSysSFPlugin} */ get psSysSFPlugin(): IPSSysSFPlugin | null; /** * 后台扩展插件(必须存在) * * @type {IPSSysSFPlugin} */ getPSSysSFPluginMust(): IPSSysSFPlugin; /** * 测试用例集合 * * @type {IPSSysTestCase[]} */ getPSSysTestCases(): IPSSysTestCase[] | null; /** * 测试用例集合 * * @type {IPSSysTestCase[]} */ get psSysTestCases(): IPSSysTestCase[] | null; findPSSysTestCase(objKey: any): IPSSysTestCase | null; /** * 行为参数模式 * @description 值模式 [实体行为参数模式] {1:默认参数(设置指定参数项值)、 2:指定参数、 3:其它对象 } * @type {( number | 1 | 2 | 3)} * @default 1 */ paramMode: number | 1 | 2 | 3; /** * 准备附加逻辑集合 * * @type {IPSDEActionLogic[]} */ getPreparePSDEActionLogics(): IPSDEActionLogic[] | null; /** * 准备附加逻辑集合 * * @type {IPSDEActionLogic[]} */ get preparePSDEActionLogics(): IPSDEActionLogic[] | null; findPreparePSDEActionLogic(objKey: any): IPSDEActionLogic | null; /** * 临时数据模式 * @description 值模式 [平台部件处理器临时数据模式] {0:无临时数据模式、 1:主数据模式、 2:从数据模式 } * @type {( number | 0 | 1 | 2)} * @default 0 */ tempDataMode: number | 0 | 1 | 2; /** * 测试行为模式 * @description 值模式 [实体行为测试行为模式] {0:无测试行为、 1:有测试行为、 3:公开测试行为 } * @type {( number | 0 | 1 | 3)} * @default 0 */ testActionMode: number | 0 | 1 | 3; /** * 调用超时 * @type {number} * @default -1 */ timeOut: number; /** * 事务模式 * @description 值模式 [实体行为事务模式] {DEFAULT:默认、 REQUIRED:需要事务(没有新建)、 MANDATORY:需要事务(没有异常)、 NESTED:嵌套事务(没有新建)、 REQUIRES_NEW:挂起当前事务(没有新建)、 NOT_SUPPORTED:无事务(存在则挂起)、 SUPPORTS:支持事务(没有无事务)、 NONE:无事务、 GLOBAL:分布式事务、 USER:自定义、 USER2:自定义2 } * @type {( string | 'DEFAULT' | 'REQUIRED' | 'MANDATORY' | 'NESTED' | 'REQUIRES_NEW' | 'NOT_SUPPORTED' | 'SUPPORTS' | 'NONE' | 'GLOBAL' | 'USER' | 'USER2')} * @default DEFAULT */ transactionMode: string | 'DEFAULT' | 'REQUIRED' | 'MANDATORY' | 'NESTED' | 'REQUIRES_NEW' | 'NOT_SUPPORTED' | 'SUPPORTS' | 'NONE' | 'GLOBAL' | 'USER' | 'USER2'; /** * 批操作行为 * @type {boolean} * @default false */ batchAction: boolean; /** * 预置行为 * @type {boolean} * @default false */ builtinAction: boolean; /** * 自定义行为参数 * @type {boolean} * @default false */ customParam: boolean; /** * 启用访问审计 * @type {boolean} * @default false */ enableAudit: boolean; /** * 支持后台执行 * @type {boolean} * @default true */ enableBackend: boolean; /** * 支持前台执行 * @type {boolean} * @default true */ enableFront: boolean; /** * 支持临时数据 * @type {boolean} * @default false */ enableTempData: boolean; /** * 准备操作之前数据 * @type {boolean} * @default false */ prepareLast: boolean; /** * 启用 * @type {boolean} * @default true */ valid: boolean; }