import { OnInit, OnChanges } from '@angular/core'; import { MessagerService } from '@farris/ui-messager'; import { NotifyService } from '@farris/ui-notify'; import { ExpressioneditorComponent } from '../expressioneditor/expressioneditor.component'; import { Schema } from '../common/Schema'; import { NewSchema } from '../common/NewSchema'; import { ExprEditMode, ExpressionEntity, FunctionEntity, InjectedType, SmartHelpInfo, VarEntity } from '../common/ExpressEntity'; import { ConditionRule, ConditionRuleView, ExpressionResult } from '../common/ComputeEntity'; import { ExprFuncGridComponent } from '../expr-func-grid/expr-func-grid.component'; export declare class ComputeRuleEditorComponent implements OnInit, OnChanges { private msgSer; private notifyService; Advanced: ExpressioneditorComponent; Function: ExprFuncGridComponent; type: ExprEditMode; text: string; injectName: string; injectSchemaName: string; injectNameInSchema: string; injectedType: InjectedType; ignoredOperators: any[]; allowSelectRoot: boolean; newSchema: NewSchema; newSchemaName: string; schema: Schema; schemaName: string; advancedSessions: VarEntity[]; advancedContexts: VarEntity[]; advancedFunctions: FunctionEntity[]; advancedSmartHelps: SmartHelpInfo[]; advencedSetting: any; expressionEntity: ExpressionEntity; isNewSchema: boolean; private oldId; private newId; private localeId; private local; private http; ColumnSize: number[]; LeftBracket: string[]; RightBracket: string[]; relaOpers: any[]; allOpers: any[]; strOpers: any[]; numOpers: any[]; notifies: {}; headers: any[]; headButtons: any[]; entities: any[]; propertyList: any; operators: any[]; conditions: ConditionRule[]; currentView: { index: number; condition: ConditionRuleView; }; conditionViews: ConditionRuleView[]; expressionText: string; isPanel: boolean; readOnly: boolean; ContextVariables: VarEntity[]; SessionVariables: VarEntity[]; ExtendFunctions: FunctionEntity[]; InjectName: string; InjectSchemaName: string; InjectNameInSchema: string; InjectedType: InjectedType; Schema: Schema; SchemaName: string; NewSchema: NewSchema; NewSchemaName: string; constructor(msgSer: MessagerService, notifyService: NotifyService); private conditionStr; private expressionStr; ngOnInit(): void; ngOnChanges(): void; /** * 切换表达式:预置数据等 */ private change; private initAdvancedExpress; private initComputeExpress; /** * 切换表达式类型(简易表达式<--->高级表达式) * @date 2021-01-11 * @author Vincent */ changeType(): void; /** * 获取保存后表达式结果 * @returns ExpressionResult * @date 2021-01-11 * @author Vincent */ getExpr(): ExpressionResult; private getExprOfAdvanced; private getExprOfConditional; private checkCondition; /** * 高级表达式语法校验 * @returns Promise 语法错误信息,无语法错误返回null */ checkAdvanced(): Promise; /** * 高级表达式语法校验 * @returns Promise 语法校验,返回是否可以关闭弹出框 */ getAdvancedCheckResult(): Promise; insert(index: number): void; remove(index: number): void; selected($event: any): void; isSelected($event: number): boolean; selectChange($event: any): void; selectRemove($event: any): void; afterSelectSysorg($event: any): void; private toView; private toData; toTop(): void; toUp(): void; toDown(): void; toBottom(): void; private isSelectRow; private initSchema; private initEntityType; private initNewSchema; private initNewEntityType; }