Пример #1
0
 ///<summary>Called from Eclaims and includes multiple claims.</summary>
 public static string SendBatch(List <ClaimSendQueueItem> queueItems, int batchNum)
 {
     for (int i = 0; i < queueItems.Count; i++)
     {
         //A setting for the clearinghouse could have changed so we need to always refresh the clearinghouse variable before sending any batches.
         if (i == 0)
         {
             clearinghouse = Clearinghouses.GetClearinghouse(queueItems[i].ClearinghouseNum);
         }
         if (!CreateClaim(queueItems[i].PatNum, queueItems[i].ClaimNum, batchNum))
         {
             return("");
         }
     }
     return("Sent");
 }
Пример #2
0
        ///<summary>Returns a string describing all missing data on this claim.  Claim will not be allowed to be sent electronically unless this string comes back empty.</summary>
        public static string GetMissingData(ClaimSendQueueItem queueItem)
        {
            Clearinghouse clearhouse = Clearinghouses.GetClearinghouse(queueItem.ClearinghouseNum);

            if (clearhouse.Eformat == ElectronicClaimFormat.X12)
            {
                return(X12.GetMissingData(queueItem));
            }
            else if (clearhouse.Eformat == ElectronicClaimFormat.Renaissance)
            {
                return(Renaissance.GetMissingData(queueItem));
            }
            else if (clearhouse.Eformat == ElectronicClaimFormat.Canadian)
            {
                return(Canadian.GetMissingData(queueItem));
            }
            return("");
        }
Пример #3
0
        public static string Run(int scriptNum, string responseExpected, Claim claim)
        {
            string        retVal          = "";
            InsPlan       insPlan         = InsPlans.GetPlan(claim.PlanNum, null);
            InsSub        insSub          = InsSubs.GetOne(claim.InsSubNum);
            Carrier       carrier         = Carriers.GetCarrier(insPlan.CarrierNum);
            Clearinghouse clearinghouseHq =
                Clearinghouses.GetClearinghouse(Clearinghouses.AutomateClearinghouseHqSelection(carrier.ElectID, claim.MedType));
            Clearinghouse    clearinghouseClin = Clearinghouses.OverrideFields(clearinghouseHq, Clinics.ClinicNum);
            long             etransNum         = CanadianOutput.SendClaimReversal(clearinghouseClin, claim, insPlan, insSub);
            Etrans           etrans            = Etranss.GetEtrans(etransNum);
            string           message           = EtransMessageTexts.GetMessageText(etrans.EtransMessageTextNum);
            CCDFieldInputter formData          = new CCDFieldInputter(message);
            string           responseStatus    = formData.GetValue("G05");

            if (responseStatus != responseExpected)
            {
                return("G05 should be " + responseExpected + "\r\n");
            }
            retVal += "Reversal #" + scriptNum.ToString() + " successful.\r\n";
            return(retVal);
        }