<cfparam name="PAYER_ID" default="" />
<cfif isDefined("url.id")>
  <cfset PAYER_ID=url.id />
</cfif>
<cfset invoiceTotal=0>
<cfset invoicePayerId=0>
 <cfset get_invoice_ID =  ''>
<cfset user = Session.EmployeeID>
<cfparam name='url.Schedule_ID'  default='0' >
<cfparam name="form.rejected"  default = "0">
<cfparam name ="form.UBform" default="0" >

<cfif url.Claim_ID NEQ '0'  and len(url.Claim_ID)  gt 0 >
    <cfset Form.Claim_ID = url.Claim_ID />
</cfif>

<cfform name="file" enctype="multipart/form-data">
<cfif #parameterexists(Form.Claim_ID)#>

<!--- the the visits selected by the user--->
    <cfquery name="GetVisits" datasource="#Application.DataSrc#">
        SELECT * FROM #Request.prefix_db_agency#.claim_schedules
        JOIN  #Request.prefix_db_agency#.pSchedules ON pSchedules.Schedule_ID = claim_schedules.Schedule_ID AND pSchedules.Status = 0
        JOIN  #Request.prefix_db_agency#.pAssessments  ON  pAssessments.Assmt_ID = pSchedules.Assmt_ID AND pAssessments.Status = 0
      	WHERE Claim_ID IN (#Form.Claim_ID#)
        AND claim_schedules.Status = 0
	</cfquery>
    <cfset Form.Schedule_ID = Valuelist(GetVisits.Schedule_ID) />
    
  <!--- first get SOC visits--->
    <cfloop query="GetVisits">
        <cfquery name="InsertVisits" datasource="#Application.DataSrc#">
        		Insert Into #Request.prefix_db_lookup#.Claim (Agency_Id, Schedule_ID, Visit_Date, Rev_Code, HCPCS, Total_EClaim, Total_Units, Assmt_ID, Payer_ID, Ticket) 
        		VALUES ('#session.AgencyId#', #Schedule_ID#, '#bill_visitdate#', '#bill_rev_code#', '#bill_HCPCS#', #NumberFormat(bill_totalcharges,'_____.__')#, #bill_units#, #Assmt_ID#, #PAYER_ID#, 1)
  		</cfquery>   
        <cfquery name="Update_VisitsEclaims" datasource="#Application.DataSrc#">
            UPDATE IGNORE #Request.prefix_db_agency#.pSchedules SET Total_Eclaim = #NumberFormat(bill_totalcharges,'_____.__')#
            WHERE Schedule_ID = #Schedule_ID#
        </cfquery>       
    </cfloop>
 
    <cfquery name="GetFirstVisit" datasource="#Application.DataSrc#">
       SELECT Claim.Schedule_ID, Claim.Claim_ID, Claim.Total_Units, Claim.Visit_Date, pAssessments.F300 AS HIPPS_Code
       FROM   #Request.prefix_db_lookup#.Claim, #Request.prefix_db_agency#.pAssessments
       WHERE  Claim.Agency_Id = '#session.AgencyId#' 
       AND    Claim.Ticket = 1 
       AND    Claim.Assmt_ID = pAssessments.Assmt_ID 
       ORDER BY Patient_ID, Visit_Date
       Limit 1
    </cfquery>

    <cfset c = 0 />
    <cfset Paydate =''>
    <cfset Pad = 0 />
    <cfset PayerBalance =0 />
    
    <cfset c = 0 />
  	
    <cfset finaldata = "">
    <cfset agencyIds = ArrayNew(1) />
    <cfset assessmentTrackerIds = ArrayNew(1) />
    <cfset patientIds = ArrayNew(1) />
    <cfset invoiceAmounts = ArrayNew(1) />
    <cfset patients = ArrayNew(1) />
    <cfset invAmts  = ArrayNew(1) />

    <cfquery name="PrefetchData" datasource="#Application.DataSrc#">
       SELECT pAssessments.Assmt_ID, pPatients.patient_id, SUM(Claim.Total_EClaim) AS invAmt
       FROM   #Request.prefix_db_agency#.pAssessments, #Request.prefix_db_agency#.pPatients, #Request.prefix_db_lookup#.Agency, #Request.prefix_db_agency#.pPayer, #Request.prefix_db_lookup#.Claim
       WHERE Claim.Agency_Id = '#session.AgencyId#'
       AND  Claim.Ticket = 1 
       AND  Claim.Assmt_ID = pAssessments.Assmt_ID 
       AND  pAssessments.Patient_ID = pPatients.Patient_ID
       AND  Claim.Payer_ID = pPayer.Pay_ID 
       GROUP BY pAssessments.Assmt_ID, pPatients.patient_id
       ORDER BY pPatients.patient_id
    </cfquery>

  <cfoutput query="PrefetchData">
    <cfscript>
      ArrayAppend(patients, #PrefetchData.patient_id#);
      RAPCalc = CreateObject("component", "MC_RAP_Calc");
      rap = RAPCalc.getRAP(PrefetchData.Assmt_ID);
      ArrayAppend(invAmts, #Replace(rap, ",", "", "All")#);
     </cfscript>
  </cfoutput>
  <cfquery name="Getdata" datasource="#Application.DataSrc#">
         SELECT  Claim.Schedule_ID, Claim.Claim_ID, Claim.Total_EClaim, Claim.Visit_Date as RAP_Date, Claim.Rev_Code, Claim.HCPCS, 
         Claim.Total_Units,Claim.Agency_Id,  pAssessments.Patient_Id, "" AS HHRG_450_SCORE, claim_bill.ANPI AS NPI,  
        pAssessments.F300 AS HIPPS_Code, pAssessments.F176 AS Assessment_Completed_M0090,pAssessments.Assmt_ID, "" AS MSA_Code, "" AS FIPS_Code, "" AS Lives_With_M0340,  "" AS Race_M0140_NA, pPayer.Pay_ID AS Payer_ID, pPayer.Submitter_ID, pPayer.Receiver_ID, pPayer.Pay_Name, pPayer.Payer_No AS Payer_Number, pPayer.Pay_Street AS PayAdd1,"" AS PayAdd2, pPayer.Pay_City AS PayCity, pPayer.Pay_State AS PayState, pPayer.Pay_State AS PayZip , 0 AS TurboClaim,
          (SELECT MIN(Visit_Date)
            FROM   #Request.prefix_db_lookup#.Claim
        	WHERE  Agency_Id = '#session.AgencyId#'
        	AND    Assmt_ID = pAssessments.Assmt_ID
           ) AS FirstVisitDate, claim_bill.*  
         FROM  
        #Request.prefix_db_agency#.claim_schedules
        JOIN  #Request.prefix_db_agency#.claim_bill  ON  claim_schedules.Claim_ID = claim_bill.ID  
        JOIN  #Request.prefix_db_agency#.pSchedules  ON  pSchedules.Schedule_ID = claim_schedules.Schedule_ID
        JOIN  #Request.prefix_db_agency#.pAssessments ON  pAssessments.Assmt_ID = pSchedules.Assmt_ID
        JOIN  #Request.prefix_db_lookup#.Claim       ON  Claim.Assmt_ID = pSchedules.Assmt_ID
        JOIN  #Request.prefix_db_agency#.pPayer      ON  Claim.Payer_Id = pPayer.Pay_Id
        WHERE Claim.Agency_Id = '#session.AgencyId#'
        AND   Claim.Ticket = 1 
        AND   (Claim.Visit_Date >= Certification_Start or Claim.Visit_Date is null)
        ORDER BY pAssessments.Patient_Id, Claim.Claim_Id
   </cfquery>
  <!--- Initialize variables --->
  <cfset finaldata = "">
   
  <!--- GetData Value: <cfdump var="#GetData#"><br> ---> 
  <!---<cfoutput query="GetData" group="Patient_ID">--->
  <cfoutput query="GetData" group="Assmt_ID">
    <cfscript>
	 ArrayAppend(agencyIds, #GetData.Agency_ID#);
	 ArrayAppend(assessmentTrackerIds, #GetData.Assmt_ID#);
	 ArrayAppend(patientIds, #GetData.Patient_ID#);
	 ArrayAppend(invoiceAmounts, #GetData.Total_EClaim#);
  </cfscript>
  
 <cfset total_Days = #DateDiff("d",Getdata.Assessment_Completed_M0090,now())# >
<cfset Assessment_Completed = #Getdata.Assessment_Completed_M0090# />

    <!--- Used for counting the number of 322 iterations --->
    <cfset ctr_322 = 1>
    <cfif len(GetData.HHRG_450_Score) GT 8>
    	<cfset TS = 34>
    <cfelse>
    	<cfset TS = 33>
    </cfif>
    <cfset YB = '4'>
    <cfset OC = ''>
    <cfset claim = #GetData.HI_Claim_Number#>
    <cfset HIPPS2 = #GetData.HIPPS_Code#>
    <cfset REV2 = '0023'>
    <cfset DESC = 'HOME HEALTH SERVICES'>
    <cfset GetData.Source_of_Admission = #Left(GetData.Source_of_Admission,1)#>
    <cfset GetData.Admission_Status = #Left(GetData.Admission_Status,2)#>
    <cfif len(GetData.Agency_Zip) GT 5>
    	<cfset GetData.Agency_Zip = #Replace(GetData.Agency_Zip,"-","","ALL" )#>
		<cfelse><cfset GetData.Agency_Zip = #Left(GetData.Agency_Zip,5)# & '1901'></cfif>
    <cfif len(GetData.PayZip) lte 5 >
      <cfset GetData.PayZip = #Left(GetData.PayZip,5)# & '9999'>
    </cfif>
    <!--- Remove '.' from the Text_ICD field value ---> 
    <!--- <cfset GetData.Text_ICD = #Replace(GetData.Text_ICD, ".", "", "ALL")#> ---> 
    <!--- Retrieve 1 character (M/F) from Gender_M0069 field value --->
    <cfset GetData.Gender_M0069 = #Mid(GetData.Gender_M0069,5,1)#>
    <!--- Get first character from Source_of_Admission field value ---> 
	
	
	<cfif LEFT(GetData.Assessment_Reason_M0100,1) eq  '4'>
      <cfset FirstVisit = #GetData.FirstVisitDate#>
	<cfelse>
	   <cfset FirstVisit = #GetData.Start_of_Care_M0030#>
    </cfif>
   <!--- <cfset diff_Days = #DateDiff("d",Getdata.Certification_start,Getdata.RAP_Date)# > 
    <cfif diff_Days gt 30>
    <cfset RAP_date = #DateAdd('d', 30,  Getdata.Certification_start)#>
        <cfelse>
    <cfset RAP_date = #GetData.Certification_Start#>
     </cfif> --->
    <cfset var1 = "">
	 <cfset Turbo_Claim = 0 />
    <cfset CONTRO = #DateFormat(Now(),"YYMMDDHHMMSS")#>
    <cfset CONTROL = #session.AgencyId#&'-'&#CONTRO# />
    <cfset ISA = #DateFormat(Now(),"MMDDHHMMSS")#>
    <cfset ISA13 = #Right(ISA,9)#>
    <cfset GS06 = #DateFormat(Now(), "MMSS")#>
    <cfset ST02 = #DateFormat(Now(), "hmmss")#>

    <cfoutput group="Claim_ID">
       <!--- <cfif Trim(GetData.Rev_Code) eq '0023'> --->
        <cfset var1 = var1 &
		  "LX*#ctr_322#~"& chr(13)& chr(10) &
		  "SV2*#Trim(GetData.Rev_Code)#*HP>#Trim(GetData.HCPCS)#*#Trim(NumberFormat(GetData.Total_EClaim,'_____.__'))#*UN*1.00~"& chr(13)& chr(10) &
		  "DTP*472*D8*#DateFormat(GetData.FirstVisitDate,"yyyymmdd")#~"& chr(13)& chr(10)>
        <cfset ctr_322 = ctr_322 + 1>
        <cfif GetData.Total_EClaim neq '' and GetData.Total_EClaim gt 0>
          <cfset invoiceTotal = invoiceTotal + GetData.Total_EClaim>
        </cfif>
        <cfset invoicePayerId = #Payer_Id#>
      <!--- </cfif> --->
    </cfoutput>
    <cfset rap = 0 />
    <cfif c eq 0>
    </cfif>
    <!--- <cfif CGI.REMOTE_ADDR EQ '157.51.218.172'><cfoutput>#RAP_date# - #DateFormat(RAP_date,"yyyymmdd")#</cfoutput><cfabort></cfif> --->
    <!--- JDB: Move the cfset below back inside the c eq 0 above when the time comes --->
    <cfset finaldata = finaldata & "ISA*00*          *00*          *ZZ*00             *ZZ*               *#DateFormat(Now(), "YYMMDD")#*#DateFormat(Now(), "HHMM")#*U*00501*#ISA13#*0*P*>~" & chr(13)& chr(10) & 
		"GS*HC*#GetData.Submitter_ID#*#GetData.Receiver_ID#*#DateFormat(Now(), "YYYYMMDD")#*#DateFormat(Now(), "HHMM")#*#ISA13#*X*005010X223A2~" & chr(13)& chr(10) & 
		"ST*837*#ST02#*005010X223A2~" & chr(13)& chr(10) &  
		"BHT*0019*00*00000#YB#*#DateFormat(Now(), "YYYYMMDD")#*#DateFormat(Now(), "HHMM")#*CH~" & chr(13)& chr(10) & 
		"NM1*41*2*#UCase(GetData.Agency_Name)#*****46*#GetData.Agent_FEIN#~"  & chr(13)& chr(10) & 
		"PER*IC*#UCase(GetData.Agency_Contact)#*TE*#Left(GetData.Agency_Contact_Phone,3)##Mid(GetData.Agency_Contact_Phone,5,3)##Mid(GetData.Agency_Contact_Phone,9,4)#~" & chr(13)& chr(10) & 
		"NM1*40*2*#UCase(GetData.Pay_Name)#*****46~"& chr(13)& chr(10) & 
		"HL*1**20*1~" & chr(13)& chr(10) & 
		"PRV*BI*PXC*251E00000X~"& chr(13)& chr(10) & 
		"NM1*85*2*#UCase(GetData.Agency_Name)#*****XX*#GetData.ANPI#~"  & chr(13)& chr(10) & 
		"N3*#UCase(GetData.Agency_Address1)#~"  & chr(13)& chr(10) & 
		"N4*#UCase(GetData.Agency_City)#*#UCase(GetData.Agency_State)#*#GetData.Agency_Zip#~">
    <cfset c = c + 1>
    <cfset finaldata = finaldata & 
		"REF*EI*#GetData.Agent_FEIN#~"  & chr(13)& chr(10) & 
		"PER*IC*#UCase(GetData.Agency_Contact)#*TE*#Left(GetData.Agency_Contact_Phone,3)##Mid(GetData.Agency_Contact_Phone,5,3)##Mid(GetData.Agency_Contact_Phone,9,4)#~" & chr(13)& chr(10) & 
		"HL*2*1*22*0~" & chr(13)& chr(10) & 
		"SBR*P*18**<!---#UCase(GetData.Pay_Name)#--->*****MA~" & chr(13)& chr(10) & 
		"NM1*IL*1*#UCase(GetData.Last_Name_M0040)#*#UCase(GetData.First_Name_M0040)#****MI*#GetData.HI_Claim_Number#~"& chr(13)& chr(10) & 
		"N3*#UCase(GetData.Street_Address)#~"& chr(13)& chr(10) & 
		"N4*#UCase(GetData.City)#*#UCase(GetData.State_M0050)#*#GetData.Zip_M0060#~"  & chr(13)& chr(10) & 
		"DMG*D8*#DateFormat(GetData.DOB_M0066,"yyyymmdd")#*#GetData.Gender_M0069#~"& chr(13)& chr(10) &
		"NM1*PR*2*#UCase(GetData.Pay_Name)#*****PI*#GetData.Payer_Number#~"& chr(13)& chr(10) &
		"N3*#UCase(GetData.PayAdd1)#~"& chr(13)& chr(10) &
		"N4*#UCase(GetData.PayCity)#*#GetData.PayState#*#GetData.PayZip#~"& chr(13)& chr(10) & 
		"CLM*#CONTROL#*#invoiceTotal#***32>A>2**A*Y*Y*********~"& chr(13)& chr(10) & 
		"DTP*434*RD8*#DateFormat(RAP_Date,"yyyymmdd")#-#DateFormat(RAP_Date,"yyyymmdd")#~"& chr(13)& chr(10) & 
		"DTP*435*DT*#DateFormat(GetData.Start_of_Care_M0030,"yyyymmdd")#0001~"& chr(13)& chr(10) & 
		"CL1*9*#GetData.Source_of_Admission#*30~"& chr(13)& chr(10) >
        
              <cfquery  name="M0230Diagnosis" datasource="#Application.DataSrc#">
                SELECT pProblem.*,vetted_190924.ICD FROM #Request.prefix_db_agency#.pProblem 
                JOIN #Request.prefix_db_lookup#.vetted_190924 ON vetted_190924.Diagnosis = pProblem.Description
                WHERE pProblem.Assmt_ID IN (<cfqueryparam value="#GetData.Assmt_ID#"  cfsqltype="CF_SQL_INTEGER" list="yes">)
                AND pProblem.status = <cfqueryparam value="0"  cfsqltype="CF_SQL_INTEGER">
                AND (M0_No like 'M1021%' OR M0_No like 'M1023%')
                ORDER BY dx_order,RIGHT(M0_No, 1) ASC
              </cfquery>

              <cfloop query="M0230Diagnosis">
                   <cfif M0_No contains 'M1021'>
                     <cfset finaldata = finaldata &  "HI*ABK>#Replace(M0230Diagnosis.ICD, ".", "", "ALL")#~"& chr(13)& chr(10) >
                   </cfif>
              </cfloop>
               <cfset other_diagnosis_count = 0>
            <cfset finaldata = finaldata &  "HI*" />
              <cfloop query="M0230Diagnosis">
                   <cfif M0_No contains 'M1023'>
                         <cfset finaldata = finaldata & "ABF>#Replace(M0230Diagnosis.ICD, ".", "", "ALL")#*" >
                          <cfset other_diagnosis_count = 1>
                      </cfif>
                </cfloop>
                <cfset finaldata = Left(finaldata, len(finaldata)-1) />
                <cfset finaldata = finaldata &"~"& chr(13)& chr(10) />
                    
		<cfset  finaldata = finaldata &
		"HI*BE>61>>>#GetData.MSA_Code#~"& chr(13)& chr(10) & 
		"HI*BE>85>>>#GetData.FIPS_Code#~"& chr(13)& chr(10) & 
		"NM1*71*1*#UCase(GetData.Referring_LastName)#*#UCase(GetData.Referring_FirstName)#****XX*#GetData.NPI#~"& chr(13)& chr(10)>
        <cfif GetData.Lives_With_M0340 neq ''>
		<cfset finaldata = finaldata & "NM1*72*1*#UCase(GetData.Lives_With_M0340)#*#UCase(GetData.Race_M0140_NA)#****XX*#GetData.HHRG_450_Score#~"& chr(13)& chr(10)> 
		 </cfif>
		<cfset finaldata = finaldata & ""  >
    <cfset finaldata = finaldata & var1>
    <cfset finaldata = finaldata & "SE*#TS#*#ST02#~"& chr(13)& chr(10) &"GE*1*#ISA13#~"& chr(13)& chr(10)&"IEA*1*#ISA13#~">
    <!--- Add Newline/CR to string --->
    <cfset finaldata = finaldata & chr(13)& chr(10)>
  <!---</cfoutput>--->
    <cfquery name="Get_Inv" datasource="#Application.DataSrc#"> 
    		Select
    		s.Schedule_ID, 
    		s.Invoice_Id,s.Patient_ID,
    		s.Assmt_ID,
    		#url.ID# AS Payer_ID,	
    		#session.agencyid# AS Agency_ID,
        "" AS Homebound_Status,
            a.F26 AS Assessment_Reason_M0100,
    		"" as Paid,
    		"" as PaymentDate,
    		"" AS PayerBalance 
    		from   #Request.prefix_db_agency#.pSchedules s, #Request.prefix_db_agency#.pAssessments a 
        WHERE s.Schedule_ID in (#FORM.Schedule_ID#)
        and s.Assmt_ID = a.Assmt_ID
    </cfquery>
     <cfset Paydate = #Get_Inv.PaymentDate# />
     <cfset Pad= #Get_Inv.Paid# />
     <cfset PayerBalance =#Get_Inv.PayerBalance# />
	 
    <cfquery name="dblist" dbtype="query">
     select distinct(Schedule_ID) from GetData
    </cfquery>

<cfset thelist=#ValueList(dblist.Schedule_ID,",")#>

<!---  <cfoutput query="Get_Inv" group="Assmt_ID">--->
    <cfquery datasource="#Application.DataSrc#" name="Insert_Invoice">
 <cfsetting requesttimeout="5000">
 
  INSERT INTO #Request.prefix_db_agency#.Invoices (
	  PatientPayer_ID
	 ,Agency_ID
	 ,Patient_ID
	 ,Assmt_ID
     ,Output
	 ,DateSent
	 ,MethodSent
	 ,InvoiceTotal
	 ,PayerBalance
	 ,Internal_control_number
	 ,WhereTreated
	 ,Assessment_Completed_M0090
	 ,No_Days
	 ,Record_Created_By
  ) VALUES (
	   '#Payer_ID#'
	  ,'#Agency_ID#'
	  ,'#Patient_ID#'
	  ,'#Assmt_ID#'
      ,'RAP'
		,NOW()
		,'Electronic'
		<!--- ,<cfif Assessment_Reason_M0100 contains '1 -' >#NumberFormat(Homebound_Status,'_____.__')*.60#<cfelse>#NumberFormat(Homebound_Status,'_____.__')*.50#</cfif>
		,<cfif Assessment_Reason_M0100 contains '1 -' >#NumberFormat(Homebound_Status,'_____.__')*.60#<cfelse>#NumberFormat(Homebound_Status,'_____.__')*.50#</cfif> --->
    ,#NumberFormat(InvoiceTotal,'_____.__')#
              ,#NumberFormat(InvoiceTotal,'_____.__')#
		,'#CONTROL#'
		,''
		,'#Assessment_Completed#'
		,#total_Days#
		,#Session.EmployeeId#
  )
</cfquery>
    <cfquery datasource="#Application.DataSrc#" name="Last_Invoice_ID">
 <cfsetting requesttimeout="5000">
	SELECT LAST_INSERT_ID() as LastInsertID
</cfquery>
    <cfquery datasource="#Application.DataSrc#" name="Insert_Payments">
	 	INSERT INTO #Request.prefix_db_agency#.Payments (
	  Invoice_ID
	 ,PatientPayer_ID
	 ,PaymentDate
	 ,Amount
	 ,PaymentMethod
	 ,WriteOffAmount
	 ,WriteOffType
	 ,Internal_control_number
  ) VALUES (
  	'#Last_Invoice_ID.LastInsertID#',
	 '#Payer_ID#',
	 <cfif Paydate neq ''>
	  #CreateODBCDateTime(Now())#,
	 <cfelse>
	 	 #CreateODBCDateTime(Now())#,
	 </cfif>
	<!--- <cfif Paid neq ''>
	  #Paid#,
	 <cfelse>--->
	 	 0.00,
	 <!---</cfif>--->
	 
	 'Electronic',
	 '0.00',
	 '0.00'	
	 ,'#CONTROL#' 
  )
</cfquery>

  
	 <!--- Insert ALL claimdat into claim_bill table 


  <cfquery name="Insert_claim_bill" datasource="#Application.DataSrc#"> 
INSERT IGNORE INTO  #Request.prefix_db_agency#.claim_bill(
  Type_of_Bill , Assignment_Accept ,Submitter_ID , Receiver_ID , Agency_Name ,Agent_FEIN , Agency_Contact ,Agency_Contact_Phone , PayName ,
  ANPI ,Agency_Address1 ,Agency_City , Agency_State ,Agency_Zip , Last_Name_M0040 ,First_Name_M0040 , HI_Claim_Number ,Street_Address ,City ,
  State_M0050 ,Zip_M0060 ,DOB_M0066 ,Gender_M0069 ,Payer_Number ,PayAdd1 ,PayCity ,PayState ,PayZip ,Certification_start ,Certification_end ,
  Start_of_Care_M0030 ,Source_of_Admission ,Admission_Status ,Claim_Key ,HHRG_175_Score ,HHRG_230_Score ,HHRG_250_Score ,HHRG_390_Score ,
  HHRG_420_Score ,HHRG_440_Score ,MSA_Code ,Referring_LastName ,Referring_FirstName ,Referring_PNPI ,Certifying_LastName ,Certifying_FirstName ,
  Certifying_PNPI,Invoice_ID,Telephone,Assessment_Reason_M0100,Agency_Assigned_ID)
  VALUES
  ('32A','','#Submitter_ID#','#Receiver_ID#','#Agency_Name#','#Agent_FEIN#','#Agency_Contact#','#Agency_Contact_Phone#','#Pay_Name#',
'#ANPI#','#Agency_Address1#','#Agency_City#','#Agency_State#' ,'#Agency_Zip#','#Last_Name_M0040#','#First_Name_M0040#','#HI_Claim_Number#','#Street_Address#','#City#',
'#State_M0050#','#Zip_M0060#',<cfif DOB_M0066 neq ''>'#DATEFORMAT(DOB_M0066,'yyyy-mm-dd')#'<cfelse>null</cfif>,'#Gender_M0069#','#Payer_Number#','#PayAdd1#','#PayCity#','#PayState#','#PayZip#',
<cfif Certification_Start neq ''>'#DATEFORMAT(Certification_Start,'yyyy-mm-dd')#'<cfelse>null</cfif>,
<cfif Certification_End neq ''>'#DATEFORMAT(Certification_End,'yyyy-mm-dd')#'<cfelse>null</cfif>,
 <cfif Start_of_Care_M0030 neq ''>'#Start_of_Care_M0030#<cfelse>null</cfif>,'#Source_of_Admission#','#Admission_Status#','#Claim_Key#','#HHRG_175_Score#','#HHRG_230_Score#','#HHRG_250_Score#','#HHRG_390_Score#',
'#HHRG_420_Score#','#HHRG_440_Score#','#MSA_Code#','#LastName#','#FirstName#' ,'#NPI#' ,'','','',#Last_Invoice_ID.LastInsertID#,'','#Assessment_Reason_M0100#','#Agency_Assigned_ID#')
	</cfquery>  --->
	
<cfset Turbo_Claim = #GetData.TurboClaim# /> 
<cfif Turbo_Claim eq 1 and #Session.TurboClaim# eq 1 >
  <cfquery datasource="#Application.DataSrc#" name="Insert_Status">
      Update #Request.prefix_db_agency#.Invoices SET 
      Updated_by = 'Automatic',
      <cfif #form.rejected# neq 1>claim_status = 'Waiting'<cfelse>claim_status = 'Rejected'</cfif>
      WHERE Invoice_ID = #Last_Invoice_ID.LastInsertID#
  </cfquery>
</cfif>

<cfquery datasource="#Application.DataSrc#" name="get_schedule">
    SELECT * FROM #Request.prefix_db_agency#.pSchedules WHERE Schedule_ID IN (#thelist#) 
</cfquery>

<cfquery datasource="#Application.DataSrc#" name="Update_Flags">
    <cfsetting requesttimeout="5000">
  	UPDATE #Request.prefix_db_agency#.pSchedules SET 
        Invoice_ID = #Last_Invoice_ID.LastInsertID# 
    WHERE Schedule_ID IN (#thelist#) 
    AND   pSchedules.Assmt_ID = #Assmt_ID#
    ANd pSchedules.status = 0
</cfquery>
  <cfset invoiceTotal = 0>
  <cfset Paydate =''>
  <cfset Pad =0 >
  <cfset PayerBalance =0 />
  <cfif get_invoice_ID eq ''>
 <cfset get_invoice_ID = #Last_Invoice_ID.LastInsertID# />
 <cfelse>
 <cfset get_invoice_ID = get_invoice_ID&','&#Last_Invoice_ID.LastInsertID# />
 </cfif>
</cfoutput> 

<cfquery datasource="#Application.DataSrc#" name="Get_claim">
     Select * from  #Request.prefix_db_agency#.Invoices  where Invoice_ID in ('#get_invoice_ID#')
</cfquery>
  
  
<cfset Turbo_Claim = #GetData.TurboClaim# /> 
<cfif #form.UBform# EQ 1> 
   <cflocation url="index.cfm?page=agency&cat=BillingReports&rpt=form_edit&inv=#Get_claim.Invoice_ID#" addtoken="no"/>
</cfif>


<cfif #form.rejected# neq 1>
     <cffile action="write" file="#application.datapath##user##Application.datatype#" output="#finaldata#">				   
				<div class="portlet box blue">
					<div class="portlet-title">
							<div class="caption">
								<i class="fa fa-report"></i>NOAs Ready for Export to PC-ACE
							</div>
							<div class="tools">
								<a href="" class="collapse">
								</a>
							</div>
							<div class="actions">
							<input class="btn btn-default" type="button" title="Back" onclick="javacsript:history.back();" id="back" value="Back" name="back">
							</div>
						</div>
						<div class="portlet-body">
						<p>Your NOAs have been prepared for export. Right click on the hyperlink<br>
						below and click Save Target As...</p>
						<p><cfoutput><a target='NOA' href="#application.webdatapath##user##Application.datatype#">Save as NOA.dat in c://winpcace/impub92</a></cfoutput></p>
						<cfinput type="button" name="back" id="back" title="Back" value="Back" onClick="javacsript:history.back();" />
					</div>
				</div>
<cfelse>
	<cfmail from="ticket@myhomecarebiz.com" 
						 to="melissa@myhomecarebiz.com"  bcc="velmurugan@myhomecarebiz.com"
						 subject="Medicare final visits just Moved  to REJECTED" 
						 type="html">
						 <p>This claims just moved into Rejectec Claims</p><br />
					<cfoutput> <font face="Verdana, Arial, Helvetica, sans-serif" size="2">
					  <p>Agency: <b>#Session.AgencyName#</b></p>
					  <p>5-Digit ID: <b>#Session.AgencyLogin#</b> <b>3-Digit ID: #Session.AgencyID#</b></p>
					  <p>Name: <b>#session.Display#</b></p>
					  <p>Cell: <b>#Session.Phone#</b>&nbsp;&nbsp;Agency Phone: #Session.Agency_Phone#</p>
					  </font> </cfoutput>
				  </cfmail>
	<div class="portlet box blue">
					<div class="portlet-title">
							<div class="caption">
								<i class="fa fa-report"></i>Bill NOA
							</div>
							<div class="tools">
								<a href="" class="collapse">
								</a>
							</div>
							<div class="actions">
							<input class="btn btn-default" type="button" title="Back" onclick="javacsript:history.back();" id="back" value="Back" name="back">
							</div>
						</div>
						<div class="portlet-body">
						<p>Your NOA Claims Moved to Rejected Now.</p>
						<p>So Please check that Claim in REJECTED </p>
						<cfinput type="button" name="back" id="back" title="Back" value="Back" onClick="javacsript:history.back();" />
					</div>
	   </div>
				
</cfif>
		
  
<!--- After file creation is complete, flag the EClaimed field in the pSchedules table, by setting it to 1--->
  
  <cfquery name="dblist" dbtype="query">
 select distinct(Schedule_ID) from GetData
</cfquery>
  <cfset thelist=#ValueList(dblist.Schedule_ID,",")#>
  <cfif thelist neq ''>
    <!--- <cfquery datasource="#Application.DataSrc#" name="Update_Flags">
	UPDATE #Request.prefix_db_agency#.pSchedules SET 
      EClaimed = 1
	 ,Export_Date = #CreateODBCDateTime(Now())#
	WHERE Schedule_ID IN (#thelist#)
 </cfquery> --->
<cfquery datasource="#Application.DataSrc#" name="Update_Flags">
	UPDATE #Request.prefix_db_agency#.Supply_Sched SET Ticket = 9 WHERE Ticket = 1 AND Schedule_ID IN (#thelist#)
 </cfquery>
<cfquery datasource="#Application.DataSrc#" name="Update_Flags">
	DELETE FROM #Request.prefix_db_lookup#.Claim WHERE Agency_Id = '#session.AgencyId#' AND Schedule_ID IN (#thelist#)
 </cfquery> 
  </cfif>
   <cfelse>
  <h4>NOAs Ready for Export to PC-ACE</h4>
  <p>No NOA Visits Selected</p>
  <cfinput type="button" name="back" id="back" title="Back" value="Back" onClick="javacsript:history.back();" />
  </cfif>
</cfform>
