cdac.medinfo.sdk.hl7282.hl7model.messages.financialmanagement

## Class BAR_P10

- java.lang.Object
- - cdac.medinfo.sdk.hl7282.baselibs.messages.Message
  - - cdac.medinfo.sdk.hl7282.hl7model.messages.financialmanagement.BAR_P10

-     public final class BAR_P10
      extends Message

  BAR_P10- Transmit Ambulatory Payment Classification (APC) Groups (Event P10). This event is used to communicate Ambulatory Payment Classification (APC) grouping.

  Represents a BAR_P10 message structure (see chapter 6.4.7). This structure contains the following elements:

  0: MSH (Message Header segment)
  1: SFT (Software Segment) MULTIPLE_OPTIONAL
  2: UAC (User Authentication Credential segment) SINGLE_OPTIONAL
  3: EVN (Event Type segment) SINGLE_COMPULSARY
  4: PID (Patient Identification segment) SINGLE_COMPULSARY
  5: PV1 (Patient Visit segment) SINGLE_COMPULSARY
  6: DG1 (Diagnosis segment) MULTIPLE_OPTIONAL
  7: GP1 (Grouping/Reimbursement - Visit segment) SINGLE_COMPULSARY
  8: PROCEDURE (a Group of segments in BAR_P10 message) MULTIPLE_OPTIONAL
  This class provides mechanism to validate message against HL7 v 2.8.2 standard. The class provides accessors & mutators for the elements mentioned above. These elements can be easily populated & populated values can be easily retrieved. The class has validate method which validates Message against HL7 v 2.8.2 standard.

  Following is the step to create message
  Before that, respective Message Source and Message Recipient to be set on Message Factory.

  BAR_P10 objP10 = (BAR_P10)MessageFactory.createInstance().createSendSupportedMessage("BAR", "P10");

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addDiagnosisSegment(DG1 objDG1)` Adds Diagnosis Segment(DG1) to this message.
    `void` | `addDiagnosisSegments(ISingleCollection<DG1> objDG1SegmentCollection)` Adds collection of Diagnosis(DG1) to this message.
    `void` | `addProcedureGroup(IGroup objGroup)` Adds Procedure Group to this message.
    `void` | `addProcedureGroups(ISingleCollection<IGroup> objSingleCollection)` Adds collection of Procedure Group to this message.
    `void` | `addSoftwareSegment(ISingleCollection<SFT> objSFTSegmentCollection)` Adds collection of Software Segment(SFT) to this message.
    `void` | `addSoftwareSegment(SFT objSFT)` Adds Software Segment(SFT) to this message.
    `ISingleCollection<DG1>` | `getDiagnosisSegments()` Retrieves Collection of Diagnosis(DG1) present in this message.
    `EVN` | `getEventTypeSegment()` Retrieves Event Type(EVN) segment present in this message
    `GP1` | `getGroupingReimbursementVisitSegment()` Retrieves Grouping/Reimbursement - Visit segment present in this message.
    `PID` | `getPatientIdentificationSegment()` Retrieves Patient Identification(PID) segment present in this message.
    `PV1` | `getPatientVisitSegmentSegment()` Retrieves Patient Visit(PV1) segment present in this message.
    `ISingleCollection<IGroup>` | `getProcedureGroups()` Retrieves Collection of Procedure Group present in this message.
    `ISingleCollection<SFT>` | `getSoftwareSegments()` Retrieves Collection of Software Segments(SFT) present in this message.
    `UAC` | `getUserAuthenticationCredentialSegment()` Retrieves User Authentication Credential(UAC) segment present in this message
    `void` | `setEventTypeSegment(EVN objEVN)` Sets value of Event Type segment for this message,overwrites if already present.
    `void` | `setGroupingReimbursementVisitSegment(GP1 objGP1)` Sets value of Grouping/Reimbursement - Visit segment for this message,overwrites if already present.
    `void` | `setPatientIdentificationSegment(PID objPID)` Sets value of PID segment for this message,overwrites if already present.
    `void` | `setPatientVisitSegment(PV1 objPV1)` Sets value of PV1 segment for this message,overwrites if already present.
    `void` | `setUserAuthenticationCredentialSegment(UAC objUAC)` Sets value of User Authentication Credential(UAC) segment for this message, overwrites if already present.

    - ### Methods inherited from class cdac.medinfo.sdk.hl7282.baselibs.messages.Message

      `contains, dumpMessage, dumpMessage, getACKMode, getGroup, getGroupMap, getHeader, getMessageCode, getMessageControlID, getMessageStructure, getQueryUserParameters, getSegment, getSegmentSet, getSubscriptionType, getTriggerEvent, isQuery, isResponse, populate, removeGroup, removeSegment, removeSegment, removeSegmentAttribute, removeSegmentAttribute, removeSegmentAttribute, removeSegments, setHeader, setSubscriptionType, updateSegmentAttribute, updateSegmentAttribute, validate, writeToXML, writeToXML`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### addSoftwareSegment

          public void addSoftwareSegment(SFT objSFT)

      Adds Software Segment(SFT) to this message.
      Parameters:
        `objSFT` - Specified Software Segment(SFT) to be added in this message

    - #### addSoftwareSegment

          public void addSoftwareSegment(ISingleCollection<SFT> objSFTSegmentCollection)

      Adds collection of Software Segment(SFT) to this message.
      Parameters:
        `objSFTSegmentCollection` - Collection of Software Segments

    - #### getSoftwareSegments

          public ISingleCollection<SFT> getSoftwareSegments()

      Retrieves Collection of Software Segments(SFT) present in this message.
      Returns:
        ISingleCollection - Collection of Software Segments(SFT)

    - #### getUserAuthenticationCredentialSegment

          public UAC getUserAuthenticationCredentialSegment()

      Retrieves User Authentication Credential(UAC) segment present in this message
      Returns:
        UAC - the User Authentication Credential Segment present in this message or null if unavailable.

    - #### setUserAuthenticationCredentialSegment

          public void setUserAuthenticationCredentialSegment(UAC objUAC)

      Sets value of User Authentication Credential(UAC) segment for this message, overwrites if already present.
      Parameters:
        `objUAC` - Specified UAC Segment

    - #### getEventTypeSegment

          public EVN getEventTypeSegment()

      Retrieves Event Type(EVN) segment present in this message
      Returns:
        EVN - the EVN Segment present in this message or null if unavailable.

    - #### setEventTypeSegment

          public void setEventTypeSegment(EVN objEVN)

      Sets value of Event Type segment for this message,overwrites if already present.
      Parameters:
        `objEVN` - Specified EVN Segment

    - #### getPatientIdentificationSegment

          public PID getPatientIdentificationSegment()

      Retrieves Patient Identification(PID) segment present in this message.
      Returns:
        PID - the Patient Identification Segment present in this message or null if unavailable.

    - #### setPatientIdentificationSegment

          public void setPatientIdentificationSegment(PID objPID)

      Sets value of PID segment for this message,overwrites if already present.
      Parameters:
        `objPID` - Specified PID Segment

    - #### getPatientVisitSegmentSegment

          public PV1 getPatientVisitSegmentSegment()

      Retrieves Patient Visit(PV1) segment present in this message.
      Returns:
        PV1 - Patient Visit Segment present in this message or null if unavailable.

    - #### setPatientVisitSegment

          public void setPatientVisitSegment(PV1 objPV1)

      Sets value of PV1 segment for this message,overwrites if already present.
      Parameters:
        `objPV1` - Specified PV1 Segment

    - #### addDiagnosisSegment

          public void addDiagnosisSegment(DG1 objDG1)

      Adds Diagnosis Segment(DG1) to this message.
      Parameters:
        `objDG1` - Specified Diagnosis(DG1) segment

    - #### addDiagnosisSegments

          public void addDiagnosisSegments(ISingleCollection<DG1> objDG1SegmentCollection)

      Adds collection of Diagnosis(DG1) to this message.
      Parameters:
        `objDG1SegmentCollection` - Collection of Diagnosis(DG1)

    - #### getDiagnosisSegments

          public ISingleCollection<DG1> getDiagnosisSegments()

      Retrieves Collection of Diagnosis(DG1) present in this message.
      Returns:
        ISingleCollection - Collection of Diagnosis(DG1)

    - #### getGroupingReimbursementVisitSegment

          public GP1 getGroupingReimbursementVisitSegment()

      Retrieves Grouping/Reimbursement - Visit segment present in this message.
      Returns:
        GP1 - Grouping/Reimbursement - Visit Segment present in this message or null if unavailable.

    - #### setGroupingReimbursementVisitSegment

          public void setGroupingReimbursementVisitSegment(GP1 objGP1)

      Sets value of Grouping/Reimbursement - Visit segment for this message,overwrites if already present.
      Parameters:
        `objGP1` - Specified GP1 Segment

    - #### addProcedureGroup

          public void addProcedureGroup(IGroup objGroup)

      Adds Procedure Group to this message.
      Parameters:
        `objGroup` - Specified Procedure Group

    - #### addProcedureGroups

          public void addProcedureGroups(ISingleCollection<IGroup> objSingleCollection)

      Adds collection of Procedure Group to this message.
      Parameters:
        `objSegments` - Collection of Software Groups

    - #### getProcedureGroups

          public ISingleCollection<IGroup> getProcedureGroups()

      Retrieves Collection of Procedure Group present in this message.
      Returns:
        ISingleCollection - Collection of Procedure Groups