Ejemplo n.º 1
0
 /**
  * Monta o arquivo XML usando as tag's já preenchidas
  *
  * @return bool
  */
 public function montaCTe()
 {
     if (count($this->erros) > 0) {
         return false;
     }
     $this->zCTeTag();
     if ($this->toma03 != '') {
         $this->dom->appChild($this->ide, $this->toma03, 'Falta tag "ide"');
     } else {
         $this->dom->appChild($this->toma4, $this->enderToma, 'Falta tag "toma4"');
         $this->dom->appChild($this->ide, $this->toma4, 'Falta tag "ide"');
     }
     $this->dom->appChild($this->infCte, $this->ide, 'Falta tag "infCte"');
     if ($this->compl != '') {
         if ($this->fluxo != '') {
             foreach ($this->pass as $pass) {
                 $this->dom->appChild($this->fluxo, $pass, 'Falta tag "fluxo"');
             }
             $this->dom->appChild($this->compl, $this->fluxo, 'Falta tag "infCte"');
         }
         if ($this->semData != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->semData, 'Falta tag "Entrega"');
         } elseif ($this->comData != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->comData, 'Falta tag "Entrega"');
         } elseif ($this->noPeriodo != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->noPeriodo, 'Falta tag "Entrega"');
         } elseif ($this->semHora != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->semHora, 'Falta tag "Entrega"');
         } elseif ($this->comHora != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->comHora, 'Falta tag "Entrega"');
         } elseif ($this->noInter != '') {
             $this->zEntregaTag();
             $this->dom->appChild($this->entrega, $this->noInter, 'Falta tag "Entrega"');
         }
         foreach ($this->obsCont as $obsCont) {
             $this->dom->appChild($this->compl, $obsCont, 'Falta tag "compl"');
         }
         foreach ($this->obsFisco as $obsFisco) {
             $this->dom->appChild($this->compl, $obsFisco, 'Falta tag "compl"');
         }
         $this->dom->appChild($this->infCte, $this->compl, 'Falta tag "infCte"');
     }
     $this->dom->appChild($this->emit, $this->enderEmit, 'Falta tag "emit"');
     $this->dom->appChild($this->infCte, $this->emit, 'Falta tag "infCte"');
     if ($this->rem != '') {
         //    $this->dom->appChild($this->rem, $this->enderReme, 'Falta tag "rem"');
         $this->dom->appChild($this->infCte, $this->rem, 'Falta tag "infCte"');
     }
     if ($this->exped != '') {
         //            $this->dom->appChild($this->exped, $this->enderExped, 'Falta tag "exped"');
         $this->dom->appChild($this->infCte, $this->exped, 'Falta tag "infCte"');
     }
     if ($this->receb != '') {
         //            $this->dom->appChild($this->receb, $this->enderReceb, 'Falta tag "receb"');
         $this->dom->appChild($this->infCte, $this->receb, 'Falta tag "infCte"');
     }
     if ($this->dest != '') {
         //    $this->dom->appChild($this->dest, $this->enderDest, 'Falta tag "dest"');
         $this->dom->appChild($this->infCte, $this->dest, 'Falta tag "infCte"');
     }
     foreach ($this->comp as $comp) {
         $this->dom->appChild($this->vPrest, $comp, 'Falta tag "vPrest"');
     }
     $this->dom->appChild($this->infCte, $this->vPrest, 'Falta tag "infCte"');
     $this->dom->appChild($this->infCte, $this->imp, 'Falta tag "imp"');
     $this->dom->appChild($this->infCte, $this->infCTeNorm, 'Falta tag "infCTeNorm"');
     $this->dom->appChild($this->infCTeNorm, $this->infCarga, 'Falta tag "infCarga"');
     $this->dom->appChild($this->infCarga, $this->infQ, 'Falta tag "infQ"');
     $this->dom->appChild($this->infCTeNorm, $this->infDoc, 'Falta tag "infDoc"');
     foreach ($this->infNFe as $infNFe) {
         $this->dom->appChild($this->infDoc, $infNFe, 'Falta tag "infNFe"');
     }
     foreach ($this->infOutros as $infOutros) {
         $this->dom->appChild($this->infDoc, $infOutros, 'Falta tag "infOutros"');
     }
     $this->dom->appChild($this->infCTeNorm, $this->seg, 'Falta tag "seg"');
     $this->dom->appChild($this->infCTeNorm, $this->infModal, 'Falta tag "infModal"');
     $this->dom->appChild($this->infModal, $this->rodo, 'Falta tag "rodo"');
     $this->dom->appChild($this->CTe, $this->infCte, 'Falta tag "CTe"');
     $this->dom->appChild($this->dom, $this->CTe, 'Falta tag "DOMDocument"');
     $this->xml = $this->dom->saveXML();
     return true;
 }