Пример #1
0
 /**
  * Edition de la facture
  *
  * @param bool $create création ou non du pdf
  *
  * @return void
  */
 function editFacture($create = true)
 {
     if ($create) {
         $this->createPdf();
     }
     foreach ($this->factures as $the_facture) {
         $this->facture = $the_facture;
         $this->facture->loadRefsItems();
         $this->_no_round = false;
         if ($this->facture->cloture && !count($this->facture->_ref_items)) {
             $this->facture->creationLignesFacture();
         }
         $this->patient = $this->facture->loadRefPatient();
         $this->facture->_ref_patient->loadRefsCorrespondantsPatient();
         $this->praticien = $this->facture->loadRefPraticien();
         $this->facture->loadRefAssurance();
         $this->facture->loadRefsObjects();
         $this->facture->loadRefsReglements();
         if ($this->type_pdf == "relance") {
             $this->facture->loadRefsRelances();
         }
         $this->function_prat = $this->praticien->loadRefFunction();
         $this->group = $this->function_prat->loadRefGroup();
         $adherent = $this->facture->loadNumAdherent($this->praticien->adherent);
         $this->adherent = $adherent["compte"];
         if ($this->type_pdf == "BVR") {
             $this->loadTotaux();
             $this->acompte = 0;
             $this->nb_factures = count($this->facture->_montant_factures_caisse);
             $this->num_fact = 0;
             foreach ($this->facture->_montant_factures_caisse as $cle_facture => $montant_facture) {
                 if ($this->acompte < $this->facture->_montant_avec_remise) {
                     $this->editHautFacture($cle_facture, $montant_facture);
                     $this->editBVR($montant_facture);
                 }
             }
         }
         if ($this->type_pdf == "BVR_TS") {
             $this->loadTotaux();
             $this->acompte = 0;
             $this->nb_factures = count($this->facture->_montant_factures_caisse);
             $this->num_fact = 0;
             $montant = 0;
             if ($this->acompte < $this->facture->_montant_avec_remise) {
                 $montant = $this->facture->_montant_avec_remise - $this->facture->_reglements_total_patient;
                 $montant = $montant - $this->facture->_reglements_total_tiers;
                 $this->editHautFacture(" ", $montant);
                 $this->editBVR($montant);
             }
             $this->type_pdf = "justif_TS";
             $this->function_prat->adresse = str_replace("\r\n", ' ', $this->function_prat->adresse);
             $this->patient->adresse = str_replace("\r\n", ' ', $this->patient->adresse);
             $this->editCenterJustificatif(0, $montant);
         } elseif ($this->type_pdf == "justif") {
             $this->function_prat->adresse = str_replace("\r\n", ' ', $this->function_prat->adresse);
             $this->patient->adresse = str_replace("\r\n", ' ', $this->patient->adresse);
             foreach ($this->facture->_montant_factures_caisse as $cle_facture => $montant_facture) {
                 $this->editCenterJustificatif($cle_facture, $montant_facture);
             }
         } elseif ($this->type_pdf == "relance") {
             $this->editRelanceEntete();
             //$this->editHautFacture(1, $this->relance->_montant, true);
             if (CAppUI::conf("ref_pays") == 2) {
                 $this->editBVR($this->relance->_montant);
             }
         }
     }
 }