e5core-angular-ui
Version:
e5 Anywhere Angular UI
97 lines • 8.71 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import { Injectable } from '@angular/core';
import { E5ConfigurationService } from 'e5core-angular-services';
import { HttpClient } from '@angular/common/http';
import { BehaviorSubject } from 'rxjs';
import { WorkAttachmentsFrameModel } from '../models/work-attachments.model';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common/http";
import * as i2 from "e5core-angular-services";
export class AttachmentsOdataService {
/**
* @param {?} http
* @param {?} config
*/
constructor(http, config) {
this.http = http;
this.config = config;
}
// apiServer: {
// baseUrl: 'http://vlane5dev2016:84',
// scope: 'test'
// }
// e.g. http://localhost:12661/site/odata/Ui/Attachments/8b50f520-cac0-11e8-a32f-00155d2a720c?$count=true&$top=2&$skip=2
//
// {
// "$id": "1",
// "metaData": null,
// "id": 1117,
// "attachmentId": "630",
// "workId": "84ef573a-d293-11e8-967f-005056ba65e4",
// "documentName": "20181030133835358_test.pdf",
// "parentId": 0,
// "attachmentTypeId": 0
// },
/**
* @param {?} workId
* @param {?} page
* @param {?} pagesize
* @param {?=} options
* @return {?}
*/
getWorkAttachments(workId, page, pagesize, options) {
/** @type {?} */
let subject$ = new BehaviorSubject(new WorkAttachmentsFrameModel());
/** @type {?} */
let baseUrl = this.config.settings.apiServer.baseUrl;
/** @type {?} */
let scope = this.config.settings.apiServer.scope;
/** @type {?} */
let offset = page * pagesize;
/** @type {?} */
let url = `${baseUrl}/${scope}/odata/Ui/Attachments/${workId.toString()}?$count=true&$top=${pagesize || 10}&$skip=${offset || 0}`;
// Append orderby
if (options && options.orderby && options.orderby !== "")
url += `&$orderby=${encodeURIComponent(options.orderby)}`;
this.http.get(url).subscribe(result => {
/** @type {?} */
let whf = new WorkAttachmentsFrameModel();
whf.count = result["@odata.count"];
whf.page = page;
whf.pagesize = pagesize;
whf.data = result.value;
subject$.next(whf);
}, error => {
console.error(error);
subject$.error(error);
});
return (subject$);
}
}
AttachmentsOdataService.decorators = [
{ type: Injectable, args: [{
providedIn: 'root'
},] }
];
/** @nocollapse */
AttachmentsOdataService.ctorParameters = () => [
{ type: HttpClient },
{ type: E5ConfigurationService }
];
/** @nocollapse */ AttachmentsOdataService.ngInjectableDef = i0.defineInjectable({ factory: function AttachmentsOdataService_Factory() { return new AttachmentsOdataService(i0.inject(i1.HttpClient), i0.inject(i2.E5ConfigurationService)); }, token: AttachmentsOdataService, providedIn: "root" });
if (false) {
/**
* @type {?}
* @private
*/
AttachmentsOdataService.prototype.http;
/**
* @type {?}
* @private
*/
AttachmentsOdataService.prototype.config;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0YWNobWVudHMtb2RhdGEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2U1Y29yZS1hbmd1bGFyLXVpLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2F0dGFjaG1lbnRzLW9kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFakUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBYyxlQUFlLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLHlCQUF5QixFQUEyQixNQUFNLGtDQUFrQyxDQUFDOzs7O0FBTXRHLE1BQU0sT0FBTyx1QkFBdUI7Ozs7O0lBRWxDLFlBQW9CLElBQWdCLEVBQVUsTUFBNkI7UUFBdkQsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLFdBQU0sR0FBTixNQUFNLENBQXVCO0lBQUksQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0lBa0J6RSxrQkFBa0IsQ0FBQyxNQUFhLEVBQUUsSUFBVyxFQUFFLFFBQWUsRUFBRSxPQUF1Qjs7WUFDeEYsUUFBUSxHQUFHLElBQUksZUFBZSxDQUE0QixJQUFJLHlCQUF5QixFQUFFLENBQUM7O1lBQzFGLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsT0FBTzs7WUFDaEQsS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxLQUFLOztZQUM1QyxNQUFNLEdBQUcsSUFBSSxHQUFHLFFBQVE7O1lBQ3hCLEdBQUcsR0FBRyxHQUFHLE9BQU8sSUFBSSxLQUFLLHlCQUF5QixNQUFNLENBQUMsUUFBUSxFQUFFLHFCQUFxQixRQUFRLElBQUUsRUFBRSxVQUFVLE1BQU0sSUFBRSxDQUFDLEVBQUU7UUFFN0gsaUJBQWlCO1FBQ2pCLElBQUcsT0FBTyxJQUFJLE9BQU8sQ0FBQyxPQUFPLElBQUksT0FBTyxDQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ3JELEdBQUcsSUFBSSxhQUFhLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFFO1FBRTdELElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUEwQixHQUFHLENBQUMsQ0FBQyxTQUFTLENBQ25ELE1BQU0sQ0FBQyxFQUFFOztnQkFDSCxHQUFHLEdBQUcsSUFBSSx5QkFBeUIsRUFBRTtZQUN6QyxHQUFHLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBRTtZQUNwQyxHQUFHLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBRTtZQUNqQixHQUFHLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBRTtZQUN6QixHQUFHLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUU7WUFDekIsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBRTtRQUN0QixDQUFDLEVBQ0QsS0FBSyxDQUFDLEVBQUU7WUFDTixPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JCLFFBQVEsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUU7UUFDekIsQ0FBQyxDQUNGLENBQUE7UUFDRCxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7O1lBakRGLFVBQVUsU0FBQztnQkFDVixVQUFVLEVBQUUsTUFBTTthQUNuQjs7OztZQVBRLFVBQVU7WUFGVixzQkFBc0I7Ozs7Ozs7O0lBWWpCLHVDQUF3Qjs7Ozs7SUFBRSx5Q0FBcUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFNUNvbmZpZ3VyYXRpb25TZXJ2aWNlIH0gZnJvbSAnZTVjb3JlLWFuZ3VsYXItc2VydmljZXMnO1xuaW1wb3J0IHsgR3VpZCB9IGZyb20gJ2d1aWQtdHlwZXNjcmlwdCc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBXb3JrQXR0YWNobWVudHNGcmFtZU1vZGVsLCBXb3JrQXR0YWNobWVudHNEdG9Nb2RlbCB9IGZyb20gJy4uL21vZGVscy93b3JrLWF0dGFjaG1lbnRzLm1vZGVsJztcbmltcG9ydCB7IE9kYXRhT3B0aW9ucyB9IGZyb20gJy4vb2RhdGEtb3B0aW9ucyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEF0dGFjaG1lbnRzT2RhdGFTZXJ2aWNlIHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgY29uZmlnOkU1Q29uZmlndXJhdGlvblNlcnZpY2UpIHsgfVxuXG4gIC8vIGFwaVNlcnZlcjoge1xuICAvLyAgIGJhc2VVcmw6ICdodHRwOi8vdmxhbmU1ZGV2MjAxNjo4NCcsXG4gIC8vICAgc2NvcGU6ICd0ZXN0J1xuICAvLyB9XG4gIC8vIGUuZy4gaHR0cDovL2xvY2FsaG9zdDoxMjY2MS9zaXRlL29kYXRhL1VpL0F0dGFjaG1lbnRzLzhiNTBmNTIwLWNhYzAtMTFlOC1hMzJmLTAwMTU1ZDJhNzIwYz8kY291bnQ9dHJ1ZSYkdG9wPTImJHNraXA9MlxuICAvL1xuICAvLyB7XG4gIC8vICAgXCIkaWRcIjogXCIxXCIsXG4gIC8vICAgXCJtZXRhRGF0YVwiOiBudWxsLFxuICAvLyAgIFwiaWRcIjogMTExNyxcbiAgLy8gICBcImF0dGFjaG1lbnRJZFwiOiBcIjYzMFwiLFxuICAvLyAgIFwid29ya0lkXCI6IFwiODRlZjU3M2EtZDI5My0xMWU4LTk2N2YtMDA1MDU2YmE2NWU0XCIsXG4gIC8vICAgXCJkb2N1bWVudE5hbWVcIjogXCIyMDE4MTAzMDEzMzgzNTM1OF90ZXN0LnBkZlwiLFxuICAvLyAgIFwicGFyZW50SWRcIjogMCxcbiAgLy8gICBcImF0dGFjaG1lbnRUeXBlSWRcIjogMFxuICAvLyB9LFxuICBwdWJsaWMgZ2V0V29ya0F0dGFjaG1lbnRzKHdvcmtJZDpzdHJpbmcsIHBhZ2U6bnVtYmVyLCBwYWdlc2l6ZTpudW1iZXIsIG9wdGlvbnM/IDogT2RhdGFPcHRpb25zICk6QmVoYXZpb3JTdWJqZWN0PFdvcmtBdHRhY2htZW50c0ZyYW1lTW9kZWw+IHtcbiAgICBsZXQgc3ViamVjdCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFdvcmtBdHRhY2htZW50c0ZyYW1lTW9kZWw+KG5ldyBXb3JrQXR0YWNobWVudHNGcmFtZU1vZGVsKCkpIDtcbiAgICBsZXQgYmFzZVVybCA9IHRoaXMuY29uZmlnLnNldHRpbmdzLmFwaVNlcnZlci5iYXNlVXJsIDtcbiAgICBsZXQgc2NvcGUgPSB0aGlzLmNvbmZpZy5zZXR0aW5ncy5hcGlTZXJ2ZXIuc2NvcGUgO1xuICAgIGxldCBvZmZzZXQgPSBwYWdlICogcGFnZXNpemUgO1xuICAgIGxldCB1cmwgPSBgJHtiYXNlVXJsfS8ke3Njb3BlfS9vZGF0YS9VaS9BdHRhY2htZW50cy8ke3dvcmtJZC50b1N0cmluZygpfT8kY291bnQ9dHJ1ZSYkdG9wPSR7cGFnZXNpemV8fDEwfSYkc2tpcD0ke29mZnNldHx8MH1gIDtcblxuICAgIC8vIEFwcGVuZCBvcmRlcmJ5XG4gICAgaWYob3B0aW9ucyAmJiBvcHRpb25zLm9yZGVyYnkgJiYgb3B0aW9ucy5vcmRlcmJ5ICE9PSBcIlwiKVxuICAgICAgdXJsICs9IGAmJG9yZGVyYnk9JHtlbmNvZGVVUklDb21wb25lbnQob3B0aW9ucy5vcmRlcmJ5KX1gIDtcblxuICAgIHRoaXMuaHR0cC5nZXQ8V29ya0F0dGFjaG1lbnRzRHRvTW9kZWw+KHVybCkuc3Vic2NyaWJlKFxuICAgICAgcmVzdWx0ID0+IHtcbiAgICAgICAgbGV0IHdoZiA9IG5ldyBXb3JrQXR0YWNobWVudHNGcmFtZU1vZGVsKCkgO1xuICAgICAgICB3aGYuY291bnQgPSByZXN1bHRbXCJAb2RhdGEuY291bnRcIl0gO1xuICAgICAgICB3aGYucGFnZSA9IHBhZ2UgO1xuICAgICAgICB3aGYucGFnZXNpemUgPSBwYWdlc2l6ZSA7XG4gICAgICAgIHdoZi5kYXRhID0gcmVzdWx0LnZhbHVlIDtcbiAgICAgICAgc3ViamVjdCQubmV4dCh3aGYpIDtcbiAgICAgIH0sXG4gICAgICBlcnJvciA9PiB7XG4gICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICBzdWJqZWN0JC5lcnJvcihlcnJvcikgO1xuICAgICAgfVxuICAgIClcbiAgICByZXR1cm4gKHN1YmplY3QkKTtcbiAgfVxufVxuIl19