當前位置: 首頁>>代碼示例>>TypeScript>>正文


TypeScript service.PcrudService.search方法代碼示例

本文整理匯總了TypeScript中@eg/core/pcrud.service.PcrudService.search方法的典型用法代碼示例。如果您正苦於以下問題:TypeScript service.PcrudService.search方法的具體用法?TypeScript service.PcrudService.search怎麽用?TypeScript service.PcrudService.search使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在@eg/core/pcrud.service.PcrudService的用法示例。


在下文中一共展示了service.PcrudService.search方法的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。

示例1: Number

        .subscribe(summary => {
            summary.metabibId = Number(metabib.id());
            summary.metabibRecords =
                metabib.source_maps().map(m => Number(m.source()));

            let promise;

            if (relatedBibIds.length > 0) {

                // Grab data for MR bib summary augmentation
                promise = this.pcrud.search('mraf', {id: relatedBibIds})
                    .pipe(tap(attr => summary.record.mattrs().push(attr)))
                    .toPromise();
            } else {

                // Metarecord has only one constituent bib.
                promise = Promise.resolve();
            }

            promise.then(() => {

                // Re-compile with augmented data
                summary.compileRecordAttrs();

                // Fetch holdings data for the metarecord
                this.getHoldingsSummary(metabib.id(), orgId, orgDepth, true)
                .then(holdingsSummary => {
                    summary.holdingsSummary = holdingsSummary;
                    observer.next(summary);
                    observer.complete();
                });
            });
        });
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:33,代碼來源:bib-record.service.ts

示例2: getBibSummary

    // Note when multiple IDs are provided, responses are emitted in order
    // of receipt, not necessarily in the requested ID order.
    getBibSummary(bibIds: number | number[],
        orgId?: number, orgDepth?: number): Observable<BibRecordSummary> {

        const ids = [].concat(bibIds);

        if (ids.length === 0) {
            return from([]);
        }

        return this.pcrud.search('bre', {id: ids},
            {   flesh: 1,
                flesh_fields: {bre: ['flat_display_entries', 'mattrs']},
                select: {bre : this.fetchableBreFields()}
            },
            {anonymous: true} // skip unneccesary auth
        ).pipe(mergeMap(bib => {
            const summary = new BibRecordSummary(bib, orgId, orgDepth);
            summary.net = this.net; // inject
            summary.ingest();
            return this.getHoldingsSummary(bib.id(), orgId, orgDepth)
            .then(holdingsSummary => {
                summary.holdingsSummary = holdingsSummary;
                return summary;
            });
        }));
    }
開發者ID:jamesrf,項目名稱:Evergreen,代碼行數:28,代碼來源:bib-record.service.ts

示例3: mergeParts

    mergeParts() {
        console.log('Merging parts into lead part ', this.leadPart);

        if (!this.leadPart) { return; }

        this.leadPart = Number(this.leadPart);

        // 1. Migrate copy maps to the lead part.
        const partIds = this.parts
            .filter(p => Number(p.id()) !== this.leadPart)
               .map(p => Number(p.id()));

        const maps = [];
        this.pcrud.search('acpm', {part: partIds})
        .subscribe(
            map => {
                map.part(this.leadPart);
                map.ischanged(true);
                maps.push(map);
            },
            err => {},
            ()  => {
                // 2. Delete the now-empty subordinate parts.  Note the
                // delete must come after the part map changes are committed.
                if (maps.length > 0) {
                    this.pcrud.autoApply(maps)
                        .toPromise().then(() => this.deleteParts());
                } else {
                    this.deleteParts();
                }
            }
        );
    }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:33,代碼來源:part-merge-dialog.component.ts

示例4: fleshBibUsers

    // Flesh the creator and editor fields.
    // Handling this separately lets us pull from the cache and
    // avoids the requirement that the main bib query use a staff
    // (VIEW_USER) auth token.
    fleshBibUsers(records: IdlObject[]): Promise<void> {

        const search = [];

        records.forEach(rec => {
            ['creator', 'editor'].forEach(field => {
                const id = rec[field]();
                if (Number.isInteger(id)) {
                    if (this.userCache[id]) {
                        rec[field](this.userCache[id]);
                    } else if (!search.includes(id)) {
                        search.push(id);
                    }
                }
            });
        });

        if (search.length === 0) {
            return Promise.resolve();
        }

        return this.pcrud.search('au', {id: search})
        .pipe(map(user => {
            this.userCache[user.id()] = user;
            records.forEach(rec => {
                if (user.id() === rec.creator()) {
                    rec.creator(user);
                }
                if (user.id() === rec.editor()) {
                    rec.editor(user);
                }
            });
        })).toPromise();
    }
開發者ID:jamesrf,項目名稱:Evergreen,代碼行數:38,代碼來源:bib-record.service.ts

示例5:

 this.gridSource.getRows = (pager: Pager) => {
     const orgs = this.org.ancestors(this.contextOrg, true);
     return this.pcrud.search('vms', {owner: orgs}, {
         order_by: {vms: ['name']},
         limit: pager.limit,
         offset: pager.offset
     });
 };
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:8,代碼來源:match-set-list.component.ts

示例6: refreshTree

    refreshTree(): Promise<any> {
        if (!this.matchSet_) { return Promise.resolve(); }

        return this.pcrud.search('vmsp',
            {match_set: this.matchSet_.id()}, {},
            {atomic: true, authoritative: true}
        ).toPromise().then(points => this.ingestMatchPoints(points));
    }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:8,代碼來源:match-set-expression.component.ts

示例7: supportedLocales

    // Returns i18n_l objects matching the locales supported
    // in the current environment.
    supportedLocales(): Observable<IdlObject> {
        const locales = this.supportedLocaleCodes();

        if (locales.length === 0) {
            return of();
        }

        return this.pcrud.search('i18n_l', {code: locales});
    }
開發者ID:jamesrf,項目名稱:Evergreen,代碼行數:11,代碼來源:locale.service.ts

示例8: getItemImportDefs

    getItemImportDefs(): Promise<IdlObject[]> {
        if (this.importItemAttrDefs) {
            return Promise.resolve(this.importItemAttrDefs);
        }

        const owners = this.org.ancestors(this.auth.user().ws_ou(), true);
        return this.pcrud.search('viiad', {owner: owners}, {}, {atomic: true})
        .toPromise().then(defs => {
            this.importItemAttrDefs = defs;
            return defs;
        });
    }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:12,代碼來源:vandelay.service.ts

示例9:

        this.org.settings('sms.enable').then(sets => {
            this.smsEnabled = sets['sms.enable'];
            if (!this.smsEnabled) { return; }

            this.pcrud.search('csc', {active: 't'}, {order_by: {csc: 'name'}})
            .subscribe(carrier => {
                this.smsCarriers.push({
                    id: carrier.id(),
                    label: carrier.name()
                });
            });
        });
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:12,代碼來源:manage.component.ts

示例10: getMergeProfiles

    getMergeProfiles(): Promise<IdlObject[]> {
        if (this.mergeProfiles) {
            return Promise.resolve(this.mergeProfiles);
        }

        const owners = this.org.ancestors(this.auth.user().ws_ou(), true);
        return this.pcrud.search('vmp',
            {owner: owners}, {order_by: {vmp: ['name']}}, {atomic: true})
        .toPromise().then(profiles => {
            this.mergeProfiles = profiles;
            return profiles;
        });
    }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:13,代碼來源:vandelay.service.ts


注:本文中的@eg/core/pcrud.service.PcrudService.search方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。