import { IPSAppDEACMode } from '../app/dataentity/ipsapp-deacmode'; import { IPSAppDEDataSet } from '../app/dataentity/ipsapp-dedata-set'; import { IPSAppDataEntity } from '../app/dataentity/ipsapp-data-entity'; import { IPSEditorItem } from './ipseditor-item'; import { IPSNavigateContext } from './ipsnavigate-context'; import { IPSNavigateParam } from './ipsnavigate-param'; import { IPSNavigateParamContainer } from './ipsnavigate-param-container'; import { PSModelObjectImpl } from '../psmodel-object-impl'; export class PSEditorItemImpl extends PSModelObjectImpl implements IPSEditorItem, IPSNavigateParamContainer { get codeName(): string { return this.M.codeName; } get dynaModelFilePath(): string { return this.M.dynaModelFilePath; } get mOSFilePath(): string { return this.M.mOSFilePath; } get memo(): string { return this.M.memo; } get name(): string { return this.M.name; } protected psappdeacmode: IPSAppDEACMode | null = null; getPSAppDEACMode(): IPSAppDEACMode | null { if (this.psappdeacmode != null) return this.psappdeacmode; const value = this.M.getPSAppDEACMode; if (value == null) { return null; } const ipsappdataentity = this.getPSAppDataEntity(); if (ipsappdataentity != null) { this.psappdeacmode = ipsappdataentity.findPSAppDEACMode(value); } return this.psappdeacmode; } get psAppDEACMode(): IPSAppDEACMode | null { return this.getPSAppDEACMode(); } getPSAppDEACModeMust(): IPSAppDEACMode { const value = this.getPSAppDEACMode(); if (value == null) { throw new Error('未指定应用实体自填模式对象'); } return value; } protected psappdedataset: IPSAppDEDataSet | null = null; getPSAppDEDataSet(): IPSAppDEDataSet | null { if (this.psappdedataset != null) return this.psappdedataset; const value = this.M.getPSAppDEDataSet; if (value == null) { return null; } const ipsappdataentity = this.getPSAppDataEntity(); if (ipsappdataentity != null) { this.psappdedataset = ipsappdataentity.findPSAppDEDataSet(value); } return this.psappdedataset; } get psAppDEDataSet(): IPSAppDEDataSet | null { return this.getPSAppDEDataSet(); } getPSAppDEDataSetMust(): IPSAppDEDataSet { const value = this.getPSAppDEDataSet(); if (value == null) { throw new Error('未指定应用实体结果集对象'); } return value; } protected psappdataentity: IPSAppDataEntity | null = null; getPSAppDataEntity(): IPSAppDataEntity | null { if (this.psappdataentity != null) return this.psappdataentity; const value = this.M.getPSAppDataEntity; if (value == null) { return null; } this.psappdataentity = this.getPSModel4('app.dataentity.IPSAppDataEntity', value, 'getPSAppDataEntity') as IPSAppDataEntity; return this.psappdataentity; } get psAppDataEntity(): IPSAppDataEntity | null { return this.getPSAppDataEntity(); } getPSAppDataEntityMust(): IPSAppDataEntity { const value = this.getPSAppDataEntity(); if (value == null) { throw new Error('未指定应用实体对象'); } return value; } protected psnavigatecontexts: IPSNavigateContext[] | null = null; getPSNavigateContexts(): IPSNavigateContext[] | null { if (this.psnavigatecontexts == null) { this.psnavigatecontexts = this.fillChildListModel(this.M.getPSNavigateContexts, 'control.IPSNavigateContext') as IPSNavigateContext[]; } return this.psnavigatecontexts; } get psNavigateContexts(): IPSNavigateContext[] | null { return this.getPSNavigateContexts(); } findPSNavigateContext(objKey: any): IPSNavigateContext | null { return this.getPSModel5('control.IPSNavigateContext', this.getPSNavigateContexts(), objKey) as IPSNavigateContext; } protected psnavigateparams: IPSNavigateParam[] | null = null; getPSNavigateParams(): IPSNavigateParam[] | null { if (this.psnavigateparams == null) { this.psnavigateparams = this.fillChildListModel(this.M.getPSNavigateParams, 'control.IPSNavigateParam') as IPSNavigateParam[]; } return this.psnavigateparams; } get psNavigateParams(): IPSNavigateParam[] | null { return this.getPSNavigateParams(); } findPSNavigateParam(objKey: any): IPSNavigateParam | null { return this.getPSModel5('control.IPSNavigateParam', this.getPSNavigateParams(), objKey) as IPSNavigateParam; } get rTMOSFilePath(): string { return this.M.rTMOSFilePath; } get userCat(): string { return this.M.userCat; } get userTag(): string { return this.M.userTag; } get userTag2(): string { return this.M.userTag2; } get userTag3(): string { return this.M.userTag3; } get userTag4(): string { return this.M.userTag4; } get cls(): string { return 'PSEditorItemImpl'; } instanceof(cls: string): boolean { if (cls == 'control.IPSEditorItem' || cls == 'control.IPSNavigateParamContainer') return true; return super.instanceof(cls); } }