Attribute VB_Name = "modHITP" Option Explicit ' PRIVATE MEMBERS Private o_CheckEligibility As CheckEligibility Private o_Eligibility As Eligibility Private o_SaveEligibility As SaveEligibility Private o_PHClaim As PHClaim Private o_CF2FinalDiagnosis As CF2FinalDiagnosis Private o_CF2FinalICD As CF2FinalICD Private o_CF2FinalRVS As CF2FinalRVS Private o_CF2Procedures As CF2Procedures Private o_CF2Doctors As CF2Doctors Private o_CF3ParticularsDRGMED As CF3ParticularsDRGMED Private o_CF3ParticularsXLSO As CF3ParticularsXLSO Private o_PHClaimReceiptHeader As PHClaimReceiptHeader Private o_ClaimSupportDocs As ClaimSupportDocs Private o_SubmitClaimV2 As SubmitClaimsV2 Private o_DocumentType() As New DocumentType Private o_UploadClaimSupportDocs As UploadClaimSupportDocs Private o_ClaimDetails As New ClaimDetails Private o_DoctorsAccreditation As New DoctorsAccreditation Private o_ICD As New ICD Private o_ClaimSupportDocResponse() As New ClaimSupportDocResponse Private o_ClaimsInquiry() As New ClaimsInquiry Private o_CaseRate() As New CaseRate Dim isSuccess As Boolean Public Const RequestTypeInsert = "I" Public Const RequestTypeUpdate = "U" Public Const RequestTypeDelete = "R" ' PUBLIC METHODS Public Sub SearchCaseRate(ByVal pICD As String, ByVal pRVS As String, ByVal pCaseRateName As String, ByVal pCaseRateDescription As String) On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub Dim param As New CaseRateParameter With param .MLUsername = HITPUserName .MLPassword = HITPPassword .ICD = pICD .RVS = pRVS .CaseRateName = pCaseRateName .CaseRateDescription = pCaseRateDescription End With o_CaseRate = MedilinkAPI.SearchCaseRate(param) Exit Sub ErrHandler: MsgBox "SearchCaseRate : " & Err.Description, vbExclamation, "" End Sub Public Function SearchClaimsInquiry(ByVal PFirstname As String, ByVal PLastname As String, ByVal trackNumber As String, ByVal memPIN As String, _ ByVal cSeriesLhio As String, ByVal vNo As String, ByVal receiptTNumber As String, ByVal dFrom As String, _ ByVal dTo As String, ByVal cStatus As String) As Boolean On Error GoTo ErrHandler InitializeMedilinkAPI SearchClaimsInquiry = False If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function Dim param As New ClaimsInquiryParameter With param .MLUsername = HITPUserName .MLPassword = HITPPassword .RequestType = "S" .PatientFirstName = PFirstname .PatientLastName = PLastname .TrackingNumber = trackNumber .memberPIN = memPIN .claimSeriesLhio = cSeriesLhio .voucherNo = vNo .ReceiptTicketNo = receiptTNumber .dateFrom = dFrom .dateTo = dTo .ClaimStatus = cStatus End With o_ClaimsInquiry = MedilinkAPI.SearchClaimsInquiry(param) SearchClaimsInquiry = True Exit Function ErrHandler: MsgBox "SearchClaimsInquiry : " & Err.Description, vbExclamation, "" End Function Public Sub GetClaimSupportDocs(ByVal claimNumber As String) On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub o_ClaimSupportDocResponse = MedilinkAPI.GetClaimSupportDocs(HITPUserName, HITPPassword, claimNumber) Exit Sub ErrHandler: MsgBox "GetClaimSupportDocs : " & Err.Description, vbExclamation, "" End Sub Public Function GetHMOType() As String() On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function GetHMOType = MedilinkAPI.GetHMOType(HITPUserName, HITPPassword) Exit Function ErrHandler: MsgBox "GetHMOType : " & Err.Description, vbExclamation, "" End Function Public Sub GetICDbyICDCode(ByVal ICDCode As String) On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub Set o_ICD = MedilinkAPI.GetICDbyICDCode(HITPUserName, HITPPassword, ICDCode) Exit Sub ErrHandler: MsgBox "GetICDbyICDCode : " & Err.Description, vbExclamation, "" End Sub Public Sub CheckDoctorsAccreditation(ByVal docAccreditationCode As String, ByVal AdmDate As String, ByVal DCRDate As String) On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub Dim param As New DoctorsAccreditationParameter With param .MLUsername = HITPUserName .MLPassword = HITPPassword .DoctorAccreCode = docAccreditationCode .AdmissionDate = AdmDate .DischargeDate = DCRDate End With Set o_DoctorsAccreditation = MedilinkAPI.CheckDoctorsAccreditation(param) Exit Sub ErrHandler: MsgBox "CheckDoctorsAccreditation : " & Err.Description, vbExclamation, "" End Sub Public Sub GetClaimDetails(ByVal ClaimNo As String) On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub Set o_ClaimDetails = MedilinkAPI.GetClaimDetails(HITPUserName, HITPPassword, ClaimNo) Exit Sub ErrHandler: MsgBox "GetClaimDetails : " & Err.Description, vbExclamation, "" End Sub Public Function SaveIsClaimReady(ByVal ClaimNo As String) As String() On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function SaveIsClaimReady = MedilinkAPI.SaveIsClaimReady(HITPUserName, HITPPassword, ClaimNo) Exit Function ErrHandler: MsgBox "SaveIsClaimReady : " & Err.Description, vbExclamation, "" End Function Public Function ReadFileToBytes(ByVal filePath As String) As Byte() On Error GoTo ErrHandler ReadFileToBytes = MedSysUtility.ReadFileToByte(filePath) Exit Function ErrHandler: MsgBox "ReadFileToBytes : " & Err.Description, vbExclamation, "" End Function Public Sub GetDocumentType() On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Sub If CheckPHICServer = False Then Exit Sub ' Get Response Value o_DocumentType = MedilinkAPI.GetPHDocumentType(HITPUserName, HITPPassword) Exit Sub ErrHandler: MsgBox "GetDocumentType : " & Err.Description, vbExclamation, "" End Sub Public Function SubmiClaimV2() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_SubmitClaimV2.UserName = HITPUserName o_SubmitClaimV2.password = HITPPassword ' Get Response Value SubmiClaimV2 = MedilinkAPI.SubmitClaimV2(o_SubmitClaimV2) Exit Function ErrHandler: MsgBox "SubmiClaimV2 : " & Err.Description, vbExclamation, "" End Function Public Function GetTransmittalNumber() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function ' Get Response Value GetTransmittalNumber = MedilinkAPI.GetTransmittalNo(HITPUserName, HITPPassword, "T") Exit Function ErrHandler: MsgBox "GetTransmittalNumber : " & Err.Description, vbExclamation, "" End Function Public Function SaveClaimSupportDocs() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_ClaimSupportDocs.MLUsername = HITPUserName o_ClaimSupportDocs.MLPassword = HITPPassword ' Get Response Value SaveClaimSupportDocs = MedilinkAPI.SaveClaimSupportDocs(o_ClaimSupportDocs) Exit Function ErrHandler: MsgBox "SaveClaimSupportDocs : " & Err.Description, vbExclamation, "" End Function Public Function UploadSupportDocs() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_UploadClaimSupportDocs.MLUsername = HITPUserName o_UploadClaimSupportDocs.MLPassword = HITPPassword ' Get Response Value UploadSupportDocs = MedilinkAPI.UploadClaimSupportDocs(o_UploadClaimSupportDocs) Exit Function ErrHandler: MsgBox "UploadClaimSupportDocs : " & Err.Description, vbExclamation, "" End Function Public Function SavePHClaimReceiptHeader() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_PHClaimReceiptHeader.MLUsername = HITPUserName o_PHClaimReceiptHeader.MLPassword = HITPPassword ' Get Response Value SavePHClaimReceiptHeader = MedilinkAPI.SavePHClaimReceiptHeader(o_PHClaimReceiptHeader) Exit Function ErrHandler: MsgBox "SavePHClaimReceiptHeader : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF3ParticularsXLSO() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF3ParticularsXLSO.MLUsername = HITPUserName o_CF3ParticularsXLSO.MLPassword = HITPPassword ' Get Response Value SaveCF3ParticularsXLSO = MedilinkAPI.SaveCF3ParticularsXLSO(o_CF3ParticularsXLSO) Exit Function ErrHandler: MsgBox "SaveCF3ParticularsXLSO : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF3ParticularsDRGMED() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF3ParticularsDRGMED.MLUsername = HITPUserName o_CF3ParticularsDRGMED.MLPassword = HITPPassword ' Get Response Value SaveCF3ParticularsDRGMED = MedilinkAPI.SaveCF3ParticularsDRGMED(o_CF3ParticularsDRGMED) Exit Function ErrHandler: MsgBox "SaveCF3ParticularsDRGMED : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF2Doctors() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF2Doctors.MLUsername = HITPUserName o_CF2Doctors.MLPassword = HITPPassword ' Get Response Value SaveCF2Doctors = MedilinkAPI.SaveCF2Doctors(o_CF2Doctors) Exit Function ErrHandler: MsgBox "SaveCF2Doctors : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF2Procedures() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF2Procedures.MLUsername = HITPUserName o_CF2Procedures.MLPassword = HITPPassword ' Get Response Value SaveCF2Procedures = MedilinkAPI.SaveCF2Procedures(o_CF2Procedures) Exit Function ErrHandler: MsgBox "SaveCF2Procedures : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF2FinalRVS() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF2FinalRVS.MLUsername = HITPUserName o_CF2FinalRVS.MLPassword = HITPPassword ' Get Response Value SaveCF2FinalRVS = MedilinkAPI.SaveCF2FinalRVS(o_CF2FinalRVS) Exit Function ErrHandler: MsgBox "SaveCF2FinalRVS : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF2FinalICD() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF2FinalICD.MLUsername = HITPUserName o_CF2FinalICD.MLPassword = HITPPassword ' Get Response Value SaveCF2FinalICD = MedilinkAPI.SaveCF2FinalICD(o_CF2FinalICD) Exit Function ErrHandler: MsgBox "SaveCF2FinalICD : " & Err.Description, vbExclamation, "" End Function Public Function SaveCF2FinalDiagnosis() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CF2FinalDiagnosis.MLUsername = HITPUserName o_CF2FinalDiagnosis.MLPassword = HITPPassword ' Get Response Value SaveCF2FinalDiagnosis = MedilinkAPI.SaveCF2FinalDiagnosis(o_CF2FinalDiagnosis) Exit Function ErrHandler: MsgBox "SaveCF2FinalDiagnosis : " & Err.Description, vbExclamation, "" End Function Public Function SavePHClaim() As String On Error GoTo ErrHandler InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_PHClaim.MLUsername = HITPUserName o_PHClaim.MLPassword = HITPPassword ' Get Response Value SavePHClaim = MedilinkAPI.SavePHClaim(o_PHClaim) Exit Function ErrHandler: MsgBox "SavePHClaim : " & Err.Description, vbExclamation, "" End Function Public Function SaveMemberEligibility() As Boolean On Error GoTo ErrHandler isSuccess = False InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_SaveEligibility.MLUsername = HITPUserName o_SaveEligibility.MLPassword = HITPPassword ' GET Response Value Set o_Eligibility = MedilinkAPI.SaveMemberEligibility(o_SaveEligibility) If o_Eligibility.TrackingNo <> "" Then isSuccess = True End If If o_Eligibility.Remarks <> "" Then MsgBox "Remarks :" & o_Eligibility.Remarks, vbInformation, "INFORMATION" End If SaveMemberEligibility = isSuccess Exit Function ErrHandler: MsgBox "SaveMemberEligibility : " & Err.Description, vbExclamation, "" End Function Public Function CheckMemberEligibility() As Boolean On Error GoTo ErrHandler If AuthenticateHITPUser = False Then MsgBox "Not Authorized!", vbExclamation, "" Exit Function End If isSuccess = False InitializeMedilinkAPI If CheckMedilinkServer = False Then Exit Function If CheckPHICServer = False Then Exit Function o_CheckEligibility.MLUsername = HITPUserName o_CheckEligibility.MLPassword = HITPPassword ' GET Response Value Set o_Eligibility = MedilinkAPI.CheckMemberEligibility(o_CheckEligibility) If o_Eligibility.TrackingNo <> "" Then isSuccess = True Else MsgBox "Remarks :" & o_Eligibility.Remarks, vbInformation, "INFORMATION" End If CheckMemberEligibility = isSuccess Exit Function ErrHandler: MsgBox "CheckMemberEligibility : " & Err.Description, vbExclamation, "" End Function Public Sub InitializeMedilinkAPI() ' Set LogOn Info MedilinkAPI.SetLogOnInfo MedsysUser.ServerName, "MEDICARE", MedsysUser.UserID, MedsysUser.ServerPassword ' Validate API Token ValidateApiToken End Sub Private Sub ValidateApiToken() On Error GoTo ErrHandler If (MedilinkAPI.ValidateToken <> True) Then ' If not Valid, then do RenewToken Dim token As APIAccessToken Set token = MedilinkAPI.GetAccessToken Dim isRenewed As Boolean isRenewed = MedSysDbService.RenewToken(token) End If Exit Sub ErrHandler: MsgBox "ValidateApiToken : " & Err.Description, vbExclamation, "" End Sub Public Function CheckMedilinkServer() As Boolean On Error GoTo ErrHandler CheckMedilinkServer = False If Format(MedilinkAPI.GetMedilinkDateTime, "MM-dd-yyyy") = Format(DateTime.Now, "MM-dd-yyyy") Then CheckMedilinkServer = True Else MsgBox "Medilink Server is Offline...", vbOK, "INFORMATION" End If Exit Function ErrHandler: MsgBox "CheckMedilinkServer : " & Err.Description, vbExclamation, "" End Function Public Function CheckPHICServer() As Boolean On Error GoTo ErrHandler CheckPHICServer = False If Format(MedilinkAPI.GetPHICDateTime, "MM-dd-yyyy") = Format(DateTime.Now, "MM-dd-yyyy") Then CheckPHICServer = True Else MsgBox "PHIC Server is Offline...", vbOK, "INFORMATION" End If Exit Function ErrHandler: MsgBox "CheckPHICServer : " & Err.Description, vbExclamation, "" End Function Public Function CheckMedilinkConnectivity() As Boolean On Error GoTo ErrHandler CheckMedilinkConnectivity = False MedilinkAPI.SetLogOnInfo MedsysUser.ServerName, "MEDICARE", MedsysUser.UserID, MedsysUser.ServerPassword ' If not Valid, then do RenewToken Dim token As APIAccessToken Set token = MedilinkAPI.GetAccessToken If Trim(token.AccessToken) <> "" Then CheckMedilinkConnectivity = True End If Exit Function ErrHandler: MsgBox "ValidateApiToken : " & Err.Description, vbExclamation, "" End Function ' PUBLIC OBJECT PROPERTIES Property Get OCaseRate() As CaseRate() OCaseRate = o_CaseRate End Property Property Get OClaimsInquiry() As ClaimsInquiry() OClaimsInquiry = o_ClaimsInquiry End Property Property Get OClaimSupportDocResponse() As ClaimSupportDocResponse() OClaimSupportDocResponse = o_ClaimSupportDocResponse End Property Property Get OICD() As ICD Set OICD = o_ICD End Property Property Get ODoctorsAccreditation() As DoctorsAccreditation Set ODoctorsAccreditation = o_DoctorsAccreditation End Property Property Get OClaimDetails() As ClaimDetails Set OClaimDetails = o_ClaimDetails End Property Property Set OUploadClaimSupportDocs(oValue As UploadClaimSupportDocs) Set o_UploadClaimSupportDocs = oValue End Property Property Get OUploadClaimSupportDocs() As UploadClaimSupportDocs() OUploadClaimSupportDocs = o_UploadClaimSupportDocs End Property Property Get ODocumentType() As DocumentType() ODocumentType = o_DocumentType End Property Property Set OSubmitClaimV2(oValue As SubmitClaimsV2) Set o_SubmitClaimV2 = oValue End Property Property Get OSubmitClaimV2() As SubmitClaimsV2 Set OSubmitClaimV2 = o_SubmitClaimV2 End Property Property Set OClaimSupportDocs(oValue As ClaimSupportDocs) Set o_ClaimSupportDocs = oValue End Property Property Get OClaimSupportDocs() As ClaimSupportDocs Set OClaimSupportDocs = o_ClaimSupportDocs End Property Property Set OPHClaimReceiptHeader(oValue As PHClaimReceiptHeader) Set o_PHClaimReceiptHeader = oValue End Property Property Get OPHClaimReceiptHeader() As PHClaimReceiptHeader Set OPHClaimReceiptHeader = o_PHClaimReceiptHeader End Property Property Set OCF3ParticularsXLSO(oValue As CF3ParticularsXLSO) Set o_CF3ParticularsXLSO = oValue End Property Property Get OCF3ParticularsXLSO() As CF3ParticularsXLSO Set OCF3ParticularsXLSO = o_CF3ParticularsXLSO End Property Property Set OCF3ParticularsDRGMED(oValue As CF3ParticularsDRGMED) Set o_CF3ParticularsDRGMED = oValue End Property Property Get OCF3ParticularsDRGMED() As CF3ParticularsDRGMED Set OCF3ParticularsDRGMED = o_CF3ParticularsDRGMED End Property Property Set OCF2Doctors(oValue As CF2Doctors) Set o_CF2Doctors = oValue End Property Property Get OCF2Doctors() As CF2Doctors Set OCF2Doctors = o_CF2Doctors End Property Property Set OCF2Procedures(oValue As CF2Procedures) Set o_CF2Procedures = oValue End Property Property Get OCF2Procedures() As CF2Procedures Set OCF2Procedures = o_CF2Procedures End Property Property Set OCF2FinalRVS(oValue As CF2FinalRVS) Set o_CF2FinalRVS = oValue End Property Property Get OCF2FinalRVS() As CF2FinalRVS Set OCF2FinalRVS = o_CF2FinalRVS End Property Property Set OCF2FinalICD(oValue As CF2FinalICD) Set o_CF2FinalICD = oValue End Property Property Get OCF2FinalICD() As CF2FinalICD Set OCF2FinalICD = o_CF2FinalICD End Property Property Set OCF2FinalDiagnosis(oValue As CF2FinalDiagnosis) Set o_CF2FinalDiagnosis = oValue End Property Property Get OCF2FinalDiagnosis() As CF2FinalDiagnosis Set OCF2FinalDiagnosis = o_CF2FinalDiagnosis End Property Property Set OPHClaim(oValue As PHClaim) Set o_PHClaim = oValue End Property Property Get OPHClaim() As PHClaim Set OPHClaim = OPHClaim End Property Property Set OSaveEligibility(oValue As SaveEligibility) Set o_SaveEligibility = oValue End Property Property Get OSaveEligibility() As SaveEligibility Set OSaveEligibility = o_SaveEligibility End Property Property Set OCheckEligibility(oValue As CheckEligibility) Set o_CheckEligibility = oValue End Property Property Get OCheckEligibility() As CheckEligibility Set OCheckEligibility = o_CheckEligibility End Property Property Set OEligibility(oValue As Eligibility) Set o_Eligibility = oValue End Property Property Get OEligibility() As Eligibility Set OEligibility = o_Eligibility End Property