UNPKG

armisa-models

Version:
82 lines (81 loc) 3.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SimpleRouteFormFactory = void 0; const ElementsOfFormFactory_1 = require("../Page/ElementsOfFormFactory"); class SimpleRouteFormFactory { set accept(value) { this._accept = value; } get accept() { return this._accept; } get any() { return this; } constructor(mainStateManager, axiosData) { this.mainStateManager = mainStateManager; this.axiosData = axiosData; this.getTextBoxFactory = (fieldName) => { const selfFactoryName = 'selfFactory' + fieldName; return this.any[selfFactoryName]; }; this.forceUpdate = () => { }; this.cach = {}; this._accept = (afterSuccess) => { const elementErrorCount = this.elementsOfForm.validate(); if (elementErrorCount) { this.elementsOfForm.showThereAreSomeErrorYouCanNot(elementErrorCount); return; } this.saveData(afterSuccess); }; this.saveData = (afterSuccess) => { if (!(this.axiosData && this.apiSync)) { return; } this.elementsOfForm.showWaitingFormSpinner(); this.apiSync.post(this.axiosData.acceptPath, this.elementsOfForm.searchParameter, this.mainStateManager.tokenInfo.headerOfAxios) .then(async (response) => { if (response.data.isSuccess) { if (response.data.getProp('isSuccess')) { const id = response.data.data.getProp('id'); await this.elementsOfForm.saveAttachedFiles(id); this.elementsOfForm.closeWaitingFormSpinner(); if (afterSuccess) { this.elementsOfForm.showSuccessFullMessageBox(undefined, undefined, undefined, () => afterSuccess(response.data.getProp('data'))); } else { this.elementsOfForm.showSuccessFullMessageBox(undefined, undefined, undefined); } this.forceUpdate(); } else { this.elementsOfForm.closeWaitingFormSpinner(); this.elementsOfForm.showInvalidArgumentMessageBox(response.data.getProp('messageRoot')); } } else { this.elementsOfForm.closeWaitingFormSpinner(); this.elementsOfForm.showInvalidArgumentMessageBox(response.data.getProp('messageRoot')); } }) .catch(e => { this.elementsOfForm.closeWaitingFormSpinner(); this.elementsOfForm.showErrorMessageBox(e); }); }; this.cancel = () => { }; this.delete = () => { }; this.new = () => { }; this.close = () => { if (this.elementsOfForm.subPageItem) { this.elementsOfForm.subPageItem.close(); } }; this.elementsOfForm = new ElementsOfFormFactory_1.ElementsOfFormFactory(this); if (this.axiosData) { this.apiSync = this.axiosData.axios(this.axiosData.controllerPath); } } } exports.SimpleRouteFormFactory = SimpleRouteFormFactory;