UNPKG

@pepperi/ngx-lib

Version:

Pepperi Angular Components and Services

88 lines (87 loc) 15.1 kB
import { Injectable } from '@angular/core'; import * as i0 from "@angular/core"; import * as i1 from "@pepperi/ngx-lib"; export class PepperiInternalPageService { constructor(httpService) { this.httpService = httpService; this.parentId = '0'; this.additionalApiName = ''; this.transactionUrl = 'Service1.svc/v1/OrderCenter/Transaction/'; } getBaseParentUrl() { const url = `${this.transactionUrl}${this.objectId}/ParentLine/${this.parentId}/`; return url; } getChildren(callbackFunc) { const body = JSON.stringify({ TransactionUID: this.objectId, SearchCode: this.searchCode, AdditionalApiName: this.additionalApiName, ParentTransactionLineID: this.parentId, ViewType: this.viewType }); // Set the additional api name with view type string. const moreParams = this.additionalApiName.length > 0 ? `${this.additionalApiName}/${this.viewType}` : `''/${this.viewType}`; const url = `${this.getBaseParentUrl()}Items/${moreParams}`; this.httpService.postWapiApiCall(url, body).subscribe((res) => { callbackFunc(res); }, (error) => { }, () => { }); } initDetails(objectId, parentId, searchCode, callbackFunc) { if (!objectId || !parentId) { return; } this.objectId = objectId; this.parentId = parentId; this.searchCode = searchCode; this.httpService.getWapiApiCall(`${this.getBaseParentUrl()}ViewTypes`).subscribe((res) => { callbackFunc(res); }, (error) => { }, () => { }); } changeChildrenViewType(viewType, callbackFunc) { this.viewType = viewType; this.getChildren(callbackFunc); } changeAdditionalApiName(additionalApiName, callbackFunc) { this.additionalApiName = additionalApiName; this.getChildren(callbackFunc); } childPlusClick(itemId, fieldApiName, callbackFunc) { const body = JSON.stringify({ TransactionUID: this.objectId, SearchCode: this.searchCode, ParentTransactionLineID: this.parentId, TransactionLineUID: itemId, FieldApiName: fieldApiName, ViewType: this.viewType }); this.httpService.postWapiApiCall(`${this.getBaseParentUrl()}IncrementValue`, body).subscribe((res) => { callbackFunc(res); }, (error) => { }, () => { }); } childMinusClick(itemId, fieldApiName, callbackFunc) { const body = JSON.stringify({ TransactionUID: this.objectId, SearchCode: this.searchCode, ParentTransactionLineID: this.parentId, TransactionLineUID: itemId, FieldApiName: fieldApiName, ViewType: this.viewType }); this.httpService.postWapiApiCall(`${this.getBaseParentUrl()}DecrementValue`, body).subscribe((res) => { callbackFunc(res); }, (error) => { }, () => { }); } childValueChanged(itemId, fieldApiName, value, callbackFunc) { const body = JSON.stringify({ TransactionUID: this.objectId, SearchCode: this.searchCode, ParentTransactionLineID: this.parentId, TransactionLineUID: itemId, FieldApiName: fieldApiName, FieldValue: value, ViewType: this.viewType }); this.httpService.postWapiApiCall(`${this.getBaseParentUrl()}SetFieldValue`, body).subscribe((res) => { callbackFunc(res); }, (error) => { }, () => { }); } } PepperiInternalPageService.ɵfac = function PepperiInternalPageService_Factory(t) { return new (t || PepperiInternalPageService)(i0.ɵɵinject(i1.HttpService)); }; PepperiInternalPageService.ɵprov = i0.ɵɵdefineInjectable({ token: PepperiInternalPageService, factory: PepperiInternalPageService.ɵfac }); /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(PepperiInternalPageService, [{ type: Injectable }], function () { return [{ type: i1.HttpService }]; }, null); })(); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJuYWwtcGFnZS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWxpYi9mb3JtL2ludGVybmFsLXBhZ2Uuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFJM0MsTUFBTSxPQUFPLDBCQUEwQjtJQVNuQyxZQUFvQixXQUF3QjtRQUF4QixnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUxwQyxhQUFRLEdBQUcsR0FBRyxDQUFDO1FBR2hCLHNCQUFpQixHQUFHLEVBQUUsQ0FBQztRQUcxQixJQUFJLENBQUMsY0FBYyxHQUFHLDBDQUEwQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxnQkFBZ0I7UUFDWixNQUFNLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsZUFBZSxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUM7UUFDbEYsT0FBTyxHQUFHLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVyxDQUFDLFlBQWlCO1FBQ3pCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDeEIsY0FBYyxFQUFFLElBQUksQ0FBQyxRQUFRO1lBQzdCLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVTtZQUMzQixpQkFBaUIsRUFBRSxJQUFJLENBQUMsaUJBQWlCO1lBQ3pDLHVCQUF1QixFQUFFLElBQUksQ0FBQyxRQUFRO1lBQ3RDLFFBQVEsRUFBRSxJQUFJLENBQUMsUUFBUTtTQUMxQixDQUFDLENBQUM7UUFFSCxxREFBcUQ7UUFDckQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQztZQUNsRCxHQUFHLElBQUksQ0FBQyxpQkFBaUIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUM5QyxNQUFNLElB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O1xyXG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJ0BwZXBwZXJpLWFkZG9ucy9uZ3gtbGliJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFBlcHBlcmlJbnRlcm5hbFBhZ2VTZXJ2aWNlIHtcclxuXHJcbiAgICBwcml2YXRlIHRyYW5zYWN0aW9uVXJsOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIG9iamVjdElkOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIHBhcmVudElkID0gJzAnO1xyXG4gICAgcHJpdmF0ZSBzZWFyY2hDb2RlOiBzdHJpbmc7XHJcbiAgICBwcml2YXRlIHZpZXdUeXBlOiBzdHJpbmc7XHJcbiAgICBwdWJsaWMgYWRkaXRpb25hbEFwaU5hbWUgPSAnJztcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHBTZXJ2aWNlOiBIdHRwU2VydmljZSkge1xyXG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb25VcmwgPSAnU2VydmljZTEuc3ZjL3YxL09yZGVyQ2VudGVyL1RyYW5zYWN0aW9uLyc7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0QmFzZVBhcmVudFVybCgpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IHVybCA9IGAke3RoaXMudHJhbnNhY3Rpb25Vcmx9JHt0aGlzLm9iamVjdElkfS9QYXJlbnRMaW5lLyR7dGhpcy5wYXJlbnRJZH0vYDtcclxuICAgICAgICByZXR1cm4gdXJsO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENoaWxkcmVuKGNhbGxiYWNrRnVuYzogYW55KTogdm9pZCB7XHJcbiAgICAgICAgY29uc3QgYm9keSA9IEpTT04uc3RyaW5naWZ5KHtcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25VSUQ6IHRoaXMub2JqZWN0SWQsXHJcbiAgICAgICAgICAgIFNlYXJjaENvZGU6IHRoaXMuc2VhcmNoQ29kZSxcclxuICAgICAgICAgICAgQWRkaXRpb25hbEFwaU5hbWU6IHRoaXMuYWRkaXRpb25hbEFwaU5hbWUsXHJcbiAgICAgICAgICAgIFBhcmVudFRyYW5zYWN0aW9uTGluZUlEOiB0aGlzLnBhcmVudElkLFxyXG4gICAgICAgICAgICBWaWV3VHlwZTogdGhpcy52aWV3VHlwZVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICAvLyBTZXQgdGhlIGFkZGl0aW9uYWwgYXBpIG5hbWUgd2l0aCB2aWV3IHR5cGUgc3RyaW5nLlxyXG4gICAgICAgIGNvbnN0IG1vcmVQYXJhbXMgPSB0aGlzLmFkZGl0aW9uYWxBcGlOYW1lLmxlbmd0aCA+IDAgP1xyXG4gICAgICAgICAgICBgJHt0aGlzLmFkZGl0aW9uYWxBcGlOYW1lfS8ke3RoaXMudmlld1R5cGV9YCA6XHJcbiAgICAgICAgICAgIGAnJy8ke3RoaXMudmlld1R5cGV9YDtcclxuXHJcbiAgICAgICAgY29uc3QgdXJsID0gYCR7dGhpcy5nZXRCYXNlUGFyZW50VXJsKCl9SXRlbXMvJHttb3JlUGFyYW1zfWA7XHJcblxyXG4gICAgICAgIHRoaXMuaHR0cFNlcnZpY2UucG9zdFdhcGlBcGlDYWxsKFxyXG4gICAgICAgICAgICB1cmwsXHJcbiAgICAgICAgICAgIGJvZHkpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIChyZXMpID0+IHsgY2FsbGJhY2tGdW5jKHJlcyk7IH0sXHJcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHsgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHsgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgaW5pdERldGFpbHMob2JqZWN0SWQ6IHN0cmluZywgcGFyZW50SWQ6IHN0cmluZywgc2VhcmNoQ29kZTogc3RyaW5nLCBjYWxsYmFja0Z1bmM6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGlmICghb2JqZWN0SWQgfHwgIXBhcmVudElkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMub2JqZWN0SWQgPSBvYmplY3RJZDtcclxuICAgICAgICB0aGlzLnBhcmVudElkID0gcGFyZW50SWQ7XHJcbiAgICAgICAgdGhpcy5zZWFyY2hDb2RlID0gc2VhcmNoQ29kZTtcclxuXHJcbiAgICAgICAgdGhpcy5odHRwU2VydmljZS5nZXRXYXBpQXBpQ2FsbChcclxuICAgICAgICAgICAgYCR7dGhpcy5nZXRCYXNlUGFyZW50VXJsKCl9Vmlld1R5cGVzYCkuc3Vic2NyaWJlKFxyXG4gICAgICAgICAgICAgICAgKHJlcykgPT4geyBjYWxsYmFja0Z1bmMocmVzKTsgfSxcclxuICAgICAgICAgICAgICAgIChlcnJvcikgPT4geyB9LFxyXG4gICAgICAgICAgICAgICAgKCkgPT4geyB9XHJcbiAgICAgICAgKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VDaGlsZHJlblZpZXdUeXBlKHZpZXdUeXBlOiBzdHJpbmcsIGNhbGxiYWNrRnVuYzogYW55KTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy52aWV3VHlwZSA9IHZpZXdUeXBlO1xyXG4gICAgICAgIHRoaXMuZ2V0Q2hpbGRyZW4oY2FsbGJhY2tGdW5jKTtcclxuICAgIH1cclxuXHJcbiAgICBjaGFuZ2VBZGRpdGlvbmFsQXBpTmFtZShhZGRpdGlvbmFsQXBpTmFtZTogc3RyaW5nLCBjYWxsYmFja0Z1bmM6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkaXRpb25hbEFwaU5hbWUgPSBhZGRpdGlvbmFsQXBpTmFtZTtcclxuICAgICAgICB0aGlzLmdldENoaWxkcmVuKGNhbGxiYWNrRnVuYyk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hpbGRQbHVzQ2xpY2soaXRlbUlkOiBzdHJpbmcsIGZpZWxkQXBpTmFtZTogc3RyaW5nLCBjYWxsYmFja0Z1bmM6IGFueSk6IHZvaWQge1xyXG4gICAgICAgIGNvbnN0IGJvZHkgPSBKU09OLnN0cmluZ2lmeSh7XHJcbiAgICAgICAgICAgIFRyYW5zYWN0aW9uVUlEOiB0aGlzLm9iamVjdElkLFxyXG4gICAgICAgICAgICBTZWFyY2hDb2RlOiB0aGlzLnNlYXJjaENvZGUsXHJcbiAgICAgICAgICAgIFBhcmVudFRyYW5zYWN0aW9uTGluZUlEOiB0aGlzLnBhcmVudElkLFxyXG4gICAgICAgICAgICBUcmFuc2FjdGlvbkxpbmVVSUQ6IGl0ZW1JZCxcclxuICAgICAgICAgICAgRmllbGRBcGlOYW1lOiBmaWVsZEFwaU5hbWUsXHJcbiAgICAgICAgICAgIFZpZXdUeXBlOiB0aGlzLnZpZXdUeXBlXHJcbiAgICAgICAgfSk7XHJcblxyXG4gICAgICAgIHRoaXMuaHR0cFNlcnZpY2UucG9zdFdhcGlBcGlDYWxsKFxyXG4gICAgICAgICAgICBgJHt0aGlzLmdldEJhc2VQYXJlbnRVcmwoKX1JbmNyZW1lbnRWYWx1ZWAsXHJcbiAgICAgICAgICAgIGJvZHkpLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIChyZXMpID0+IHsgY2FsbGJhY2tGdW5jKHJlcyk7IH0sXHJcbiAgICAgICAgICAgICAgICAoZXJyb3IpID0+IHsgfSxcclxuICAgICAgICAgICAgICAgICgpID0+IHsgfVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgY2hpbGRNaW51c0NsaWNrKGl0ZW1JZDogc3RyaW5nLCBmaWVsZEFwaU5hbWU6IHN0cmluZywgY2FsbGJhY2tGdW5jOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICBUcmFuc2FjdGlvblVJRDogdGhpcy5vYmplY3RJZCxcclxuICAgICAgICAgICAgU2VhcmNoQ29kZTogdGhpcy5zZWFyY2hDb2RlLFxyXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25MaW5lVUlEOiBpdGVtSWQsXHJcbiAgICAgICAgICAgIEZpZWxkQXBpTmFtZTogZmllbGRBcGlOYW1lLFxyXG4gICAgICAgICAgICBWaWV3VHlwZTogdGhpcy52aWV3VHlwZVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICB0aGlzLmh0dHBTZXJ2aWNlLnBvc3RXYXBpQXBpQ2FsbChcclxuICAgICAgICAgICAgYCR7dGhpcy5nZXRCYXNlUGFyZW50VXJsKCl9RGVjcmVtZW50VmFsdWVgLFxyXG4gICAgICAgICAgICBib2R5KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzKSA9PiB7IGNhbGxiYWNrRnVuYyhyZXMpOyB9LFxyXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7IH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7IH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIGNoaWxkVmFsdWVDaGFuZ2VkKGl0ZW1JZDogc3RyaW5nLCBmaWVsZEFwaU5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZywgY2FsbGJhY2tGdW5jOiBhbnkpOiB2b2lkIHtcclxuICAgICAgICBjb25zdCBib2R5ID0gSlNPTi5zdHJpbmdpZnkoe1xyXG4gICAgICAgICAgICBUcmFuc2FjdGlvblVJRDogdGhpcy5vYmplY3RJZCxcclxuICAgICAgICAgICAgU2VhcmNoQ29kZTogdGhpcy5zZWFyY2hDb2RlLFxyXG4gICAgICAgICAgICBQYXJlbnRUcmFuc2FjdGlvbkxpbmVJRDogdGhpcy5wYXJlbnRJZCxcclxuICAgICAgICAgICAgVHJhbnNhY3Rpb25MaW5lVUlEOiBpdGVtSWQsXHJcbiAgICAgICAgICAgIEZpZWxkQXBpTmFtZTogZmllbGRBcGlOYW1lLFxyXG4gICAgICAgICAgICBGaWVsZFZhbHVlOiB2YWx1ZSxcclxuICAgICAgICAgICAgVmlld1R5cGU6IHRoaXMudmlld1R5cGVcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgdGhpcy5odHRwU2VydmljZS5wb3N0V2FwaUFwaUNhbGwoXHJcbiAgICAgICAgICAgIGAke3RoaXMuZ2V0QmFzZVBhcmVudFVybCgpfVNldEZpZWxkVmFsdWVgLFxyXG4gICAgICAgICAgICBib2R5KS5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICAocmVzKSA9PiB7IGNhbGxiYWNrRnVuYyhyZXMpOyB9LFxyXG4gICAgICAgICAgICAgICAgKGVycm9yKSA9PiB7IH0sXHJcbiAgICAgICAgICAgICAgICAoKSA9PiB7IH1cclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxufVxyXG4iXX0=