acr-assist-simulator-module
Version:
This project was generated with [Angular CLI](https://github.com/angular/angular-cli) version 1.7.4.
90 lines (89 loc) • 12.4 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes} checked by tsc
*/
import { Injectable } from '@angular/core';
import { DiagramService } from './diagram.service';
import { DataElementCreationBaseService } from './data-element-creation-base-service';
import { IntegerDataElement } from '../../../core/elements/models/integer-data-element.model';
import { ConditionsCreationService } from './conditions-creation.service';
import { ComputedValueCreationService } from './computed-value-creation.service';
import { NotRelevantDataElements } from '../../../core/models/notrelevantdataelements.model';
import { ConditionalProperty } from '../../../core/elements/models/conditionalproperty.model';
export class IntegerDataElementCreationService extends DataElementCreationBaseService {
/**
* @param {?} diagramService
* @param {?} conditionsCreationService
* @param {?} computedValueCreationService
*/
constructor(diagramService, conditionsCreationService, computedValueCreationService) {
super(diagramService);
this.conditionsCreationService = conditionsCreationService;
this.computedValueCreationService = computedValueCreationService;
this.elementType = 'IntegerDataElement';
}
/**
* @param {?} data
* @return {?}
*/
createElement(data) {
const /** @type {?} */ dataElement = new IntegerDataElement();
super.populateBasicData(data, dataElement);
dataElement.minimum = data.Minimum;
dataElement.maximum = data.Maximum;
dataElement.maximumOverrider = data.Maximum;
dataElement.minimumOverrider = data.Minimum;
const /** @type {?} */ ConditionalProperties = data.ConditionalProperties;
if (ConditionalProperties !== undefined) {
const /** @type {?} */ notRelevantDataElements = new NotRelevantDataElements();
const /** @type {?} */ dataElementRefs = data.ConditionalProperties;
// .NotRelevantDataElements.DataElementRef;
if (data.ConditionalProperties !== undefined) {
dataElement.conditionalProperties = new Array();
if (data.ConditionalProperties.ConditionalProperty instanceof Array) {
for (const /** @type {?} */ conditionalProperty of data.ConditionalProperties.ConditionalProperty) {
dataElement.conditionalProperties.push(this.GetConditionalProperties(conditionalProperty));
}
}
else {
dataElement.conditionalProperties.push(this.GetConditionalProperties(data.ConditionalProperties.ConditionalProperty));
}
}
}
return dataElement;
}
/**
* @param {?} conditionalProperty
* @return {?}
*/
GetConditionalProperties(conditionalProperty) {
const /** @type {?} */ _conditionalProperty = new ConditionalProperty();
_conditionalProperty.condition = this.conditionsCreationService.returnCondition(conditionalProperty);
// var test = this.computedValueCreationService.createComputedValue(conditionalProperty);
if (this.conditionsCreationService.isComposite(conditionalProperty)) {
_conditionalProperty.compositeCondition = this.conditionsCreationService.returnCompositeCondition(conditionalProperty);
}
_conditionalProperty.isRelevant = conditionalProperty.IsRelevant;
_conditionalProperty.isRequired = conditionalProperty.IsRequired;
_conditionalProperty.DisplaySequence = conditionalProperty.DisplaySequence;
_conditionalProperty.Minimum = conditionalProperty.Minimum;
_conditionalProperty.Maximum = conditionalProperty.Maximum;
return _conditionalProperty;
}
}
IntegerDataElementCreationService.decorators = [
{ type: Injectable },
];
/** @nocollapse */
IntegerDataElementCreationService.ctorParameters = () => [
{ type: DiagramService },
{ type: ConditionsCreationService },
{ type: ComputedValueCreationService }
];
function IntegerDataElementCreationService_tsickle_Closure_declarations() {
/** @type {?} */
IntegerDataElementCreationService.prototype.conditionsCreationService;
/** @type {?} */
IntegerDataElementCreationService.prototype.computedValueCreationService;
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZWdlci1kYXRhLWVsZW1lbnQtY3JlYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2Fjci1hc3Npc3Qtc2ltdWxhdG9yLW1vZHVsZS8iLCJzb3VyY2VzIjpbInNyYy9hcHAvbW9kdWxlcy9hY3ItYXNzaXN0LXNpbXVsYXRvci9zaGFyZWQvc2VydmljZXMvaW50ZWdlci1kYXRhLWVsZW1lbnQtY3JlYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFdEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDOUYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDMUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDakYsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDN0YsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFJOUYsTUFBTSx3Q0FBeUMsU0FBUSw4QkFBOEI7Ozs7OztJQUVuRixZQUFZLGNBQThCLEVBQ2hDLDJCQUNBO1FBQ1IsS0FBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBRmQsOEJBQXlCLEdBQXpCLHlCQUF5QjtRQUN6QixpQ0FBNEIsR0FBNUIsNEJBQTRCO1FBRXBDLElBQUksQ0FBQyxXQUFXLEdBQUcsb0JBQW9CLENBQUM7S0FDekM7Ozs7O0lBRUQsYUFBYSxDQUFDLElBQVM7UUFDckIsdUJBQU0sV0FBVyxHQUFHLElBQUksa0JBQWtCLEVBQUUsQ0FBQztRQUM3QyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzNDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztRQUNuQyxXQUFXLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDbkMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDNUMsV0FBVyxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7UUFFNUMsdUJBQU0scUJBQXFCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELEVBQUUsQ0FBQyxDQUFDLHFCQUFxQixLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDeEMsdUJBQU0sdUJBQXVCLEdBQUcsSUFBSSx1QkFBdUIsRUFBRSxDQUFDO1lBQzlELHVCQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUM7O1lBR25ELEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDO2dCQUM3QyxXQUFXLENBQUMscUJBQXFCLEdBQUcsSUFBSSxLQUFLLEVBQXVCLENBQUM7Z0JBQ3JFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDO29CQUNwRSxHQUFHLENBQUMsQ0FBQyx1QkFBTSxtQkFBbUIsSUFBSSxJQUFJLENBQUMscUJBQXFCLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO3dCQUNqRixXQUFXLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7cUJBQzVGO2lCQUNGO2dCQUFDLElBQUksQ0FBQyxDQUFDO29CQUNOLFdBQVcsQ0FBQyxxQkFBcUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUM7aUJBQ3ZIO2FBQ0Y7U0FDRjtRQUVELE1BQU0sQ0FBQyxXQUFXLENBQUM7S0FDcEI7Ozs7O0lBRU8sd0JBQXdCLENBQUMsbUJBQW1CO1FBQ2xELHVCQUFNLG9CQUFvQixHQUFHLElBQUksbUJBQW1CLEVBQUUsQ0FBQztRQUN2RCxvQkFBb0IsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLHlCQUF5QixDQUFDLGVBQWUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDOztRQUVyRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMseUJBQXlCLENBQUMsV0FBVyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3BFLG9CQUFvQixDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyx3QkFBd0IsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1NBQ3hIO1FBRUQsb0JBQW9CLENBQUMsVUFBVSxHQUFHLG1CQUFtQixDQUFDLFVBQVUsQ0FBQztRQUNqRSxvQkFBb0IsQ0FBQyxVQUFVLEdBQUcsbUJBQW1CLENBQUMsVUFBVSxDQUFDO1FBQ2pFLG9CQUFvQixDQUFDLGVBQWUsR0FBRyxtQkFBbUIsQ0FBQyxlQUFlLENBQUM7UUFDM0Usb0JBQW9CLENBQUMsT0FBTyxHQUFHLG1CQUFtQixDQUFDLE9BQU8sQ0FBQztRQUMzRCxvQkFBb0IsQ0FBQyxPQUFPLEdBQUcsbUJBQW1CLENBQUMsT0FBTyxDQUFDO1FBQzNELE1BQU0sQ0FBQyxvQkFBb0IsQ0FBQzs7OztZQXBEL0IsVUFBVTs7OztZQVZGLGNBQWM7WUFJZCx5QkFBeUI7WUFDekIsNEJBQTRCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBEaWFncmFtU2VydmljZSB9IGZyb20gJy4vZGlhZ3JhbS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgRGF0YUVsZW1lbnRDcmVhdGlvbkJhc2VTZXJ2aWNlIH0gZnJvbSAnLi9kYXRhLWVsZW1lbnQtY3JlYXRpb24tYmFzZS1zZXJ2aWNlJztcclxuaW1wb3J0IHsgQmFzZURhdGFFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lbGVtZW50cy9tb2RlbHMvYmFzZS1kYXRhLWVsZW1lbnQubW9kZWwnO1xyXG5pbXBvcnQgeyBJbnRlZ2VyRGF0YUVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2VsZW1lbnRzL21vZGVscy9pbnRlZ2VyLWRhdGEtZWxlbWVudC5tb2RlbCc7XHJcbmltcG9ydCB7IENvbmRpdGlvbnNDcmVhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbmRpdGlvbnMtY3JlYXRpb24uc2VydmljZSc7XHJcbmltcG9ydCB7IENvbXB1dGVkVmFsdWVDcmVhdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvbXB1dGVkLXZhbHVlLWNyZWF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBOb3RSZWxldmFudERhdGFFbGVtZW50cyB9IGZyb20gJy4uLy4uLy4uL2NvcmUvbW9kZWxzL25vdHJlbGV2YW50ZGF0YWVsZW1lbnRzLm1vZGVsJztcclxuaW1wb3J0IHsgQ29uZGl0aW9uYWxQcm9wZXJ0eSB9IGZyb20gJy4uLy4uLy4uL2NvcmUvZWxlbWVudHMvbW9kZWxzL2NvbmRpdGlvbmFscHJvcGVydHkubW9kZWwnO1xyXG5cclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIEludGVnZXJEYXRhRWxlbWVudENyZWF0aW9uU2VydmljZSBleHRlbmRzIERhdGFFbGVtZW50Q3JlYXRpb25CYXNlU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKGRpYWdyYW1TZXJ2aWNlOiBEaWFncmFtU2VydmljZSxcclxuICAgIHByaXZhdGUgY29uZGl0aW9uc0NyZWF0aW9uU2VydmljZTogQ29uZGl0aW9uc0NyZWF0aW9uU2VydmljZSxcclxuICAgIHByaXZhdGUgY29tcHV0ZWRWYWx1ZUNyZWF0aW9uU2VydmljZTogQ29tcHV0ZWRWYWx1ZUNyZWF0aW9uU2VydmljZSkge1xyXG4gICAgc3VwZXIoZGlhZ3JhbVNlcnZpY2UpO1xyXG4gICAgdGhpcy5lbGVtZW50VHlwZSA9ICdJbnRlZ2VyRGF0YUVsZW1lbnQnO1xyXG4gIH1cclxuXHJcbiAgY3JlYXRlRWxlbWVudChkYXRhOiBhbnkpOiBCYXNlRGF0YUVsZW1lbnQge1xyXG4gICAgY29uc3QgZGF0YUVsZW1lbnQgPSBuZXcgSW50ZWdlckRhdGFFbGVtZW50KCk7XHJcbiAgICBzdXBlci5wb3B1bGF0ZUJhc2ljRGF0YShkYXRhLCBkYXRhRWxlbWVudCk7XHJcbiAgICBkYXRhRWxlbWVudC5taW5pbXVtID0gZGF0YS5NaW5pbXVtO1xyXG4gICAgZGF0YUVsZW1lbnQubWF4aW11bSA9IGRhdGEuTWF4aW11bTtcclxuICAgIGRhdGFFbGVtZW50Lm1heGltdW1PdmVycmlkZXIgPSBkYXRhLk1heGltdW07XHJcbiAgICBkYXRhRWxlbWVudC5taW5pbXVtT3ZlcnJpZGVyID0gZGF0YS5NaW5pbXVtO1xyXG5cclxuICAgIGNvbnN0IENvbmRpdGlvbmFsUHJvcGVydGllcyA9IGRhdGEuQ29uZGl0aW9uYWxQcm9wZXJ0aWVzO1xyXG4gICAgaWYgKENvbmRpdGlvbmFsUHJvcGVydGllcyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGNvbnN0IG5vdFJlbGV2YW50RGF0YUVsZW1lbnRzID0gbmV3IE5vdFJlbGV2YW50RGF0YUVsZW1lbnRzKCk7XHJcbiAgICAgIGNvbnN0IGRhdGFFbGVtZW50UmVmcyA9IGRhdGEuQ29uZGl0aW9uYWxQcm9wZXJ0aWVzO1xyXG4gICAgICAvLyAuTm90UmVsZXZhbnREYXRhRWxlbWVudHMuRGF0YUVsZW1lbnRSZWY7XHJcblxyXG4gICAgICBpZiAoZGF0YS5Db25kaXRpb25hbFByb3BlcnRpZXMgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIGRhdGFFbGVtZW50LmNvbmRpdGlvbmFsUHJvcGVydGllcyA9IG5ldyBBcnJheTxDb25kaXRpb25hbFByb3BlcnR5PigpO1xyXG4gICAgICAgIGlmIChkYXRhLkNvbmRpdGlvbmFsUHJvcGVydGllcy5Db25kaXRpb25hbFByb3BlcnR5IGluc3RhbmNlb2YgQXJyYXkpIHtcclxuICAgICAgICAgIGZvciAoY29uc3QgY29uZGl0aW9uYWxQcm9wZXJ0eSBvZiBkYXRhLkNvbmRpdGlvbmFsUHJvcGVydGllcy5Db25kaXRpb25hbFByb3BlcnR5KSB7XHJcbiAgICAgICAgICAgIGRhdGFFbGVtZW50LmNvbmRpdGlvbmFsUHJvcGVydGllcy5wdXNoKHRoaXMuR2V0Q29uZGl0aW9uYWxQcm9wZXJ0aWVzKGNvbmRpdGlvbmFsUHJvcGVydHkpKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgZGF0YUVsZW1lbnQuY29uZGl0aW9uYWxQcm9wZXJ0aWVzLnB1c2godGhpcy5HZXRDb25kaXRpb25hbFByb3BlcnRpZXMoZGF0YS5Db25kaXRpb25hbFByb3BlcnRpZXMuQ29uZGl0aW9uYWxQcm9wZXJ0eSkpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHJldHVybiBkYXRhRWxlbWVudDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgR2V0Q29uZGl0aW9uYWxQcm9wZXJ0aWVzKGNvbmRpdGlvbmFsUHJvcGVydHkpOiBDb25kaXRpb25hbFByb3BlcnR5IHtcclxuICAgIGNvbnN0IF9jb25kaXRpb25hbFByb3BlcnR5ID0gbmV3IENvbmRpdGlvbmFsUHJvcGVydHkoKTtcclxuICAgIF9jb25kaXRpb25hbFByb3BlcnR5LmNvbmRpdGlvbiA9IHRoaXMuY29uZGl0aW9uc0NyZWF0aW9uU2VydmljZS5yZXR1cm5Db25kaXRpb24oY29uZGl0aW9uYWxQcm9wZXJ0eSk7XHJcbiAgICAvLyB2YXIgdGVzdCA9IHRoaXMuY29tcHV0ZWRWYWx1ZUNyZWF0aW9uU2VydmljZS5jcmVhdGVDb21wdXRlZFZhbHVlKGNvbmRpdGlvbmFsUHJvcGVydHkpO1xyXG4gICAgaWYgKHRoaXMuY29uZGl0aW9uc0NyZWF0aW9uU2VydmljZS5pc0NvbXBvc2l0ZShjb25kaXRpb25hbFByb3BlcnR5KSkge1xyXG4gICAgICBfY29uZGl0aW9uYWxQcm9wZXJ0eS5jb21wb3NpdGVDb25kaXRpb24gPSB0aGlzLmNvbmRpdGlvbnNDcmVhdGlvblNlcnZpY2UucmV0dXJuQ29tcG9zaXRlQ29uZGl0aW9uKGNvbmRpdGlvbmFsUHJvcGVydHkpO1xyXG4gICAgfVxyXG5cclxuICAgIF9jb25kaXRpb25hbFByb3BlcnR5LmlzUmVsZXZhbnQgPSBjb25kaXRpb25hbFByb3BlcnR5LklzUmVsZXZhbnQ7XHJcbiAgICBfY29uZGl0aW9uYWxQcm9wZXJ0eS5pc1JlcXVpcmVkID0gY29uZGl0aW9uYWxQcm9wZXJ0eS5Jc1JlcXVpcmVkO1xyXG4gICAgX2NvbmRpdGlvbmFsUHJvcGVydHkuRGlzcGxheVNlcXVlbmNlID0gY29uZGl0aW9uYWxQcm9wZXJ0eS5EaXNwbGF5U2VxdWVuY2U7XHJcbiAgICBfY29uZGl0aW9uYWxQcm9wZXJ0eS5NaW5pbXVtID0gY29uZGl0aW9uYWxQcm9wZXJ0eS5NaW5pbXVtO1xyXG4gICAgX2NvbmRpdGlvbmFsUHJvcGVydHkuTWF4aW11bSA9IGNvbmRpdGlvbmFsUHJvcGVydHkuTWF4aW11bTtcclxuICAgIHJldHVybiBfY29uZGl0aW9uYWxQcm9wZXJ0eTtcclxuICB9XHJcbn1cclxuIl19