<?php

namespace Modules\Fournisseur\WebService;

use Helpers\Webservice\Wsdl;

class DocFournisseur
{
    
    // phpcs:ignore
    public function SuppresionDocAtt($array)
    {
        Wsdl::XmlEntities($array);
        
        $envoi = '<SupDocRattacheIn LngUtilisation="'.$array['Langue'].'">
                    <TypeObjet>'.$array['refObjet'].'</TypeObjet>
                    <RefObjet>'.$array['id'].'</RefObjet>
                    <NumOrdre>'.$array['numOrdre'].'</NumOrdre>
                  </SupDocRattacheIn>';
        return new \Helpers\Webservice\Wsdl('Oxaproc_DocRat.wsdl', 'OXAPRC_DOCRAT_SUPPR', $envoi, false);
    }
    
    public function sansObjet($array)
    {
        Wsdl::XmlEntities($array);
        
        $xml = '<DocRattacheSansObjetIn>
				<TypeObjet>'.$array['TypeObjet'].'</TypeObjet>
				<RefObjet>'.$array['codeFrs'].'</RefObjet>
				<Categorie>'.$array['CATEGORIE'].'</Categorie>
				<NumOrdre>'.$array['NO_ORDRE'].'</NumOrdre>
				<Titre>'.$array['TITRE'].'</Titre>
				</DocRattacheSansObjetIn>';
        
        return new \Helpers\Webservice\Wsdl('Oxaproc_GestFournisss_Docs_Ratt.wsdl', 'OXAPRC_DOCRAT_SSOBJ', $xml, false);
    }
    
    public function relanceDocAtt($array)
    {
        Wsdl::XmlEntities($array);
        
        $xml = '<DocRattacheRelanceIn>
					<Societe>'.$array['societe'].'</Societe>
				    <Utilisateur>'.$array['utilisateur'].'</Utilisateur>
					<TypeObjet>'.$array['TypeObjet'].'</TypeObjet>
					<Fournisseur>'.$array['codeFrs'].'</Fournisseur>
				    <NumOrdre>'.$array['NO_ORDRE'].'</NumOrdre>
					<Raison>'.$array['raison_relance'].'</Raison>
					<Titre>'.$array['TITRE'].'</Titre>
				</DocRattacheRelanceIn>';
        
        return new \Helpers\Webservice\Wsdl('Oxaproc_GestFournisss_Docs_Ratt.wsdl', 'OXAPRC_DOCRAT_RELANCE', $xml, false);
    }
    
    // phpcs:ignore
    public function NouveauDocAtt($array)
    {
        Wsdl::XmlEntities($array);
        
        if ($array['dateParu']!="") {
            $mois = mb_substr($array['dateParu'], 4, 2);
            $jour = mb_substr($array['dateParu'], 6, 2);
            $annee = (int)mb_substr($array['dateParu'], 0, 4);
            
            $array['dateParu']=$annee."/".$mois."/".$jour;
        }
 
        if ($array['dateVali']!="") {
            $mois = mb_substr($array['dateVali'], 4, 2);
            $jour = mb_substr($array['dateVali'], 6, 2);
            $annee = (int)mb_substr($array['dateVali'], 0, 4);
            
            $array['dateVali']=$annee."/".$mois."/".$jour;
        }
        
        $xml =  "<EnrDocRattacheIn LngUtilisation='{$_SESSION['Session_Langue']}'>" .
                     "<NomFichier>{$array['new_name']}</NomFichier>" .
                     "<NomFichierOrigine>{$array['file_name']}</NomFichierOrigine>" .
                     "<TypeObjet>{$array['typeObjet']}</TypeObjet>" .
                     "<RefObjet>{$array['refObjet']}</RefObjet>" .
                     "<TypePJ>{$array['typePj']}</TypePJ>" .
                     "<Titre>{$array['titreDoc']}</Titre>" .
                     "<Auteur>{$array['auteur']}</Auteur>" .
                     "<Centre>{$array['centre']}</Centre>" .
                     "<DteParution>{$array['dateParu']}</DteParution>" .
                     "<DteValidite>{$array['dateVali']}</DteValidite>" .
                     "<PJCommande>{$array['PJCommande']}</PJCommande>" .
                     "<Commentaire>{$array['commentaire']}</Commentaire>" .
                     "<Categorie>{$array['categorie']}</Categorie>" .
                 "</EnrDocRattacheIn>";
       
        return new \Helpers\Webservice\Wsdl('Oxaproc_DocRat.wsdl', 'OXAPRC_DOCRAT_ENREG', $xml, false);
    }
    
    // phpcs:ignore
    public function NouveauDocAttAvecHisto($array)
    {
        Wsdl::XmlEntities($array);
        
        if ($array['dateParu']!="") {
            $mois = mb_substr($array['dateParu'], 4, 2);
            $jour = mb_substr($array['dateParu'], 6, 2);
            $annee = (int)mb_substr($array['dateParu'], 0, 4);
            
            $array['dateParu']=$annee."/".$mois."/".$jour;
        }
        
        if ($array['dateVali']!="") {
            $mois = mb_substr($array['dateVali'], 4, 2);
            $jour = mb_substr($array['dateVali'], 6, 2);
            $annee = (int)mb_substr($array['dateVali'], 0, 4);
            
            $array['dateVali']=$annee."/".$mois."/".$jour;
        }
        
        $xml =  "<EnrDocRattacheIn LngUtilisation='{$_SESSION['Session_Langue']}'>" .
                    "<NomFichier>{$array['new_name']}</NomFichier>" .
                    "<NomFichierOrigine>{$array['file_name']}</NomFichierOrigine>" .
                    "<TypeObjet>{$array['typeObjet']}</TypeObjet>" .
                    "<RefObjet>{$array['refObjet']}</RefObjet>" .
                    "<TypePJ>{$array['typePj']}</TypePJ>" .
                    "<Titre>{$array['titreDoc']}</Titre>" .
                    "<Auteur>{$array['auteur']}</Auteur>" .
                    "<Centre>{$array['centre']}</Centre>" .
                    "<DteParution>{$array['dateParu']}</DteParution>" .
                    "<DteValidite>{$array['dateVali']}</DteValidite>" .
                    "<PJCommande>{$array['PJCommande']}</PJCommande>" .
                    "<Commentaire>{$array['commentaire']}</Commentaire>" .
                    "<Categorie>{$array['categorie']}</Categorie>" .
                    "<NumOrdre>{$array['docAtt']}</NumOrdre>".
                    "<AvecHistorisation>{$array['histo']}</AvecHistorisation>" .
                    "<Modifier>1</Modifier>" .
                "</EnrDocRattacheIn>";
        
        return new \Helpers\Webservice\Wsdl('Oxaproc_DocRat.wsdl', 'OXAPRC_DOCRAT_ENREG', $xml, false);
    }
    
    // phpcs:ignore
    public function DownloadDocAtt($array)
    {
        Wsdl::XmlEntities($array);
        
        $xml = '<Fournisseur_Dossier_In LngUtilisation="'.$_SESSION['Session_Langue'].'">'.
            '<CodeFour>'.$array['codeFrs'].'</CodeFour>'.
            '<CodeUtilisateur>'.$_SESSION['Session_Login'].'</CodeUtilisateur>'.
            '</Fournisseur_Dossier_In>'.
            '';
        
        return new \Helpers\Webservice\Wsdl('OxaprocGen.wsdl', 'SRM_FOUR_TELDOSSIER', $xml, false);
    }
    
    // phpcs:ignore
    public function AttestationConformite($array)
    {
        Wsdl::XmlEntities($array);
        
        $xml = '<Fournisseur_Dossier_In LngUtilisation="'.$_SESSION['Session_Langue'].'">'.
            '<CodeFour>'.$array['codeFrs'].'</CodeFour>'.
            '<CodeUtilisateur>'.$_SESSION['Session_Login'].'</CodeUtilisateur>'.
            '</Fournisseur_Dossier_In>'.
            '';
        
        return new \Helpers\Webservice\Wsdl('OxaprocGen.wsdl', 'SRM_FOUR_ATTCONFORMITE', $xml, false);
    }
}
