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


TypeScript pcrud.service.PcrudService類代碼示例

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


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

示例1: 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

示例2:

 this.deleteSelected = (rows: any[]) => {
     this.pcrud.remove(rows).subscribe(
         ok  => console.log('deleted ', ok),
         err => console.error(err),
         ()  => this.grid.reload()
     );
 };
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:7,代碼來源:match-set-quality.component.ts

示例3: 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

示例4: ngOnInit

 ngOnInit() {
     this.pcrud.retrieve('vms', this.matchSetId)
         .toPromise().then(ms => {
             ms.owner(this.org.get(ms.owner()));
             this.matchSet = ms;
         });
 }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:7,代碼來源:match-set.component.ts

示例5: from

    // 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

示例6: ngOnInit

 ngOnInit() {
     this.pcrud.retrieveAll('crad', {order_by: {crad: 'label'}})
     .subscribe(attr => {
         this.bibAttrDefs.push(attr);
         this.bibAttrDefEntries.push({id: attr.name(), label: attr.label()});
     });
 }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:7,代碼來源:match-set-new-point.component.ts

示例7: getUser

 getUser(id: number) {
     this.pcrud.retrieve('au', id, {flesh: 1, flesh_fields: {au: ['settings']}})
     .subscribe(user => {
         this.user = user;
         this.applyUserSettings();
     });
 }
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:7,代碼來源:hold.component.ts

示例8: 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

示例9:

 this.deleteSelected = (parts: IdlObject[]) => {
     parts.forEach(part => part.isdeleted(true));
     this.pcrud.autoApply(parts).subscribe(
         val => console.debug('deleted: ' + val),
         err => {},
         ()  => this.partsGrid.reload()
     );
 };
開發者ID:StephenGWills,項目名稱:Evergreen,代碼行數:8,代碼來源:parts.component.ts

示例10: 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


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