import { HttpClient } from "@angular/common/http"; import { ComponentFactoryResolver, Injector } from "@angular/core"; import { BsModalService } from "@farris/ui-modal"; import { Observable, Subject } from "rxjs"; import { CodeRuleApi } from "./code-rule.api"; import { BEContainElement, BillCodeConfig, CodeRuleActions, CodeRuleType, RuleSchema, SegmentElement } from "./code-rule.entity"; import { LocaleService } from "@farris/ui-locale"; export declare class CodeRuleService { private resolver; private modalService; private injector; private api; localeService: LocaleService; constructor(resolver: ComponentFactoryResolver, modalService: BsModalService, injector: Injector, api: CodeRuleApi); http: HttpClient; private currentField; private codeIndex; private BEInfor; private BEContent; billCodeConfig: any; private resetExpress; getCodeRuleDataByBillCodeID(BillCodeID: string): Observable; /** * 展示添加编码规则弹窗 * * {BEContainElement} fieldElement * {string} [modalConfig={ * title: '设置编号规则', * width: 850, * height: 500, * showMaxButton: false * }] * return {*} * memberof CodeRuleService */ showCodRuleModal(fieldElement: BEContainElement, modalConfig?: { title: any; width: number; height: number; showMaxButton: boolean; }): Subject<{ action: CodeRuleActions; params?: BillCodeConfig; }>; /** * 创建默认编码规则模板 * * {string} code * {string} name * {string} bo * {string} billCategory * {string} description * {string} [fieldCode=''] * return {*} {RuleSchema} * memberof CodeRuleService */ createDefaultRuleSchema(code: string, name: string, bo: string, billCategory: string, description: string, fieldCode?: string): RuleSchema; /** * 创建规则 * * {CodeRuleType} codeRuleType * {string} fieldCode * return {*} {SegmentElement} * memberof CodeRuleService */ createRule(codeRuleType: CodeRuleType, fieldCode: string): SegmentElement; deleCodeRule(code: string, beid: string, schemaid: string, isNewField: boolean): Observable; saveCodeRule(code: string, isnewfield: boolean, ruleSchema: RuleSchema, schemaid: string): Observable; /** * 获取实体 * @param BEID 实体ID */ getBeContent(BEID: string): Observable; /** * 创建虚拟编号规则 * @param code 选中字段标识 */ createVirtualBillcode(code: string): { BillCodeID: string; BillCodeName: string; CanBillCode: boolean; CodeGenerateOccasion: string; CodeGenerateType: string; }; }