UNPKG

cql-execution

Version:

An execution framework for the Clinical Quality Language (CQL)

431 lines (311 loc) 10.1 kB
// Generated by CoffeeScript 1.9.3 (function() { var Address, Attachment, BackboneElement, CORE, CodeableConcept, Coding, ContactPoint, DT, DetailsComponent, DomainResource, Element, ElementDefinition, Extension, HumanName, Identifier, Narrative, NotesComponent, Parameters, PaymentReconciliation, Period, Quantity, Range, Ratio, Reference, Resource, SampledData, Timing, extend = function(child, parent) { for (var key in parent) { if (hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }, hasProp = {}.hasOwnProperty; DT = require('../cql-datatypes'); CORE = require('./core'); Element = CORE.Element; Resource = CORE.Resource; Timing = CORE.Timing; Period = CORE.Period; Parameters = CORE.Parameters; Coding = CORE.Coding; Resource = CORE.Resource; Range = CORE.Range; Quantity = CORE.Quantity; Attachment = CORE.Attachment; BackboneElement = CORE.BackboneElement; DomainResource = CORE.DomainResource; ContactPoint = CORE.ContactPoint; ElementDefinition = CORE.ElementDefinition; Extension = CORE.Extension; HumanName = CORE.HumanName; Address = CORE.Address; Ratio = CORE.Ratio; SampledData = CORE.SampledData; Reference = CORE.Reference; CodeableConcept = CORE.CodeableConcept; Identifier = CORE.Identifier; Narrative = CORE.Narrative; Element = CORE.Element; /** Embedded class @class DetailsComponent @exports DetailsComponent as DetailsComponent */ DetailsComponent = (function(superClass) { extend(DetailsComponent, superClass); function DetailsComponent(json) { this.json = json; DetailsComponent.__super__.constructor.call(this, this.json); } /** Code to indicate the nature of the payment, adjustment, funds advance, etc. @returns {Coding} */ DetailsComponent.prototype.type = function() { if (this.json['type']) { return new Coding(this.json['type']); } }; /** The claim or financial resource. @returns {Reference} */ DetailsComponent.prototype.request = function() { if (this.json['request']) { return new Reference(this.json['request']); } }; /** The claim response resource. @returns {Reference} */ DetailsComponent.prototype.responce = function() { if (this.json['responce']) { return new Reference(this.json['responce']); } }; /** The Organization which submitted the invoice or financial transaction. @returns {Reference} */ DetailsComponent.prototype.submitter = function() { if (this.json['submitter']) { return new Reference(this.json['submitter']); } }; /** The organization which is receiving the payment. @returns {Reference} */ DetailsComponent.prototype.payee = function() { if (this.json['payee']) { return new Reference(this.json['payee']); } }; /** The date of the invoice or financial resource. @returns {Array} an array of {@link Date} objects */ DetailsComponent.prototype.date = function() { if (this.json['date']) { return DT.DateTime.parse(this.json['date']); } }; /** Amount paid for this detail. @returns {Money} */ DetailsComponent.prototype.amount = function() { if (this.json['amount']) { return new Money(this.json['amount']); } }; return DetailsComponent; })(BackboneElement); /** Embedded class @class NotesComponent @exports NotesComponent as NotesComponent */ NotesComponent = (function(superClass) { extend(NotesComponent, superClass); function NotesComponent(json) { this.json = json; NotesComponent.__super__.constructor.call(this, this.json); } /** The note purpose: Print/Display. @returns {Coding} */ NotesComponent.prototype.type = function() { if (this.json['type']) { return new Coding(this.json['type']); } }; /** The note text. @returns {Array} an array of {@link String} objects */ NotesComponent.prototype.text = function() { return this.json['text']; }; return NotesComponent; })(BackboneElement); /** This resource provides payment details supporting a bulk payment, or the errors in, processing a ReconciliationRequest resource. @class PaymentReconciliation @exports PaymentReconciliation as PaymentReconciliation */ PaymentReconciliation = (function(superClass) { extend(PaymentReconciliation, superClass); function PaymentReconciliation(json) { this.json = json; PaymentReconciliation.__super__.constructor.call(this, this.json); } /** The Response Business Identifier. @returns {Array} an array of {@link Identifier} objects */ PaymentReconciliation.prototype.identifier = function() { var i, item, len, ref, results; if (this.json['identifier']) { ref = this.json['identifier']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new Identifier(item)); } return results; } }; /** Original request resource referrence. @returns {Reference} */ PaymentReconciliation.prototype.request = function() { if (this.json['request']) { return new Reference(this.json['request']); } }; /** Transaction status: error, complete. @returns {Array} an array of {@link String} objects */ PaymentReconciliation.prototype.outcome = function() { return this.json['outcome']; }; /** A description of the status of the adjudication. @returns {Array} an array of {@link String} objects */ PaymentReconciliation.prototype.disposition = function() { return this.json['disposition']; }; /** The version of the style of resource contents. This should be mapped to the allowable profiles for this and supporting resources. @returns {Coding} */ PaymentReconciliation.prototype.ruleset = function() { if (this.json['ruleset']) { return new Coding(this.json['ruleset']); } }; /** The style (standard) and version of the original material which was converted into this resource. @returns {Coding} */ PaymentReconciliation.prototype.originalRuleset = function() { if (this.json['originalRuleset']) { return new Coding(this.json['originalRuleset']); } }; /** The date when the enclosed suite of services were performed or completed. @returns {Array} an array of {@link Date} objects */ PaymentReconciliation.prototype.date = function() { if (this.json['date']) { return DT.DateTime.parse(this.json['date']); } }; /** The Insurer who produced this adjudicated response. @returns {Reference} */ PaymentReconciliation.prototype.organization = function() { if (this.json['organization']) { return new Reference(this.json['organization']); } }; /** The practitioner who is responsible for the services rendered to the patient. @returns {Reference} */ PaymentReconciliation.prototype.requestProvider = function() { if (this.json['requestProvider']) { return new Reference(this.json['requestProvider']); } }; /** The organization which is responsible for the services rendered to the patient. @returns {Reference} */ PaymentReconciliation.prototype.requestOrganization = function() { if (this.json['requestOrganization']) { return new Reference(this.json['requestOrganization']); } }; /** List of individual settlement amounts and the corresponding transaction. @returns {Array} an array of {@link DetailsComponent} objects */ PaymentReconciliation.prototype.detail = function() { var i, item, len, ref, results; if (this.json['detail']) { ref = this.json['detail']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new DetailsComponent(item)); } return results; } }; /** The form to be used for printing the content. @returns {Coding} */ PaymentReconciliation.prototype.form = function() { if (this.json['form']) { return new Coding(this.json['form']); } }; /** Total payment amount. @returns {Money} */ PaymentReconciliation.prototype.total = function() { if (this.json['total']) { return new Money(this.json['total']); } }; /** List of errors detected in the request. @returns {Array} an array of {@link Coding} objects */ PaymentReconciliation.prototype.error = function() { var i, item, len, ref, results; if (this.json['error']) { ref = this.json['error']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new Coding(item)); } return results; } }; /** Suite of notes. @returns {Array} an array of {@link NotesComponent} objects */ PaymentReconciliation.prototype.note = function() { var i, item, len, ref, results; if (this.json['note']) { ref = this.json['note']; results = []; for (i = 0, len = ref.length; i < len; i++) { item = ref[i]; results.push(new NotesComponent(item)); } return results; } }; return PaymentReconciliation; })(DomainResource); module.exports.PaymentReconciliation = PaymentReconciliation; }).call(this); //# sourceMappingURL=paymentreconciliation.js.map