<?php

namespace Modules\Commande\Repository;

class PJ
{
    
    private $pdo;
    
    public function __construct(\PDO $pdo)
    {
        $this->pdo = $pdo;
    }
    
    /**
     * retourne la liste des PJ pour une commande
     * @param integer $numCde
     * @param array $post
     * @return array
     */
    public function listePJ($numCde, $post)
    {
        $req = "select * from CA_PIJO with (nolock) where NO_CA=:numCde";
        
        $arrayReq = [':numCde' => $numCde];
        
        $whereArray = \Helpers\Filter\FilterTable::splitFilter($post, 0, 0, 1);
        
        if (count($whereArray)>  0) {
            $req .= $whereArray[0].$whereArray['tri'];
            
            if (count($whereArray[1]) != 0) {
                $arrayReq = array_merge($arrayReq, $whereArray[1]);
            }
        }
                
        $requete = $this->pdo->prepare($req);
        $requete->execute($arrayReq);
        
        return $requete->fetchAll($this->pdo::FETCH_ASSOC);
    }

    /**
     * insère une pièce jointe dans la table CA_PIJO
     * @param array $array
     * @return true
     */
    public function insertSinglePJ(Array $array)
    {
        $req = "INSERT INTO CA_PIJO (NO_CA, NO_ORDRE, TYPE_PJ, TITRE, COPIE, IMP_PJ, IMP_TITRE, NOM_FIC, NOM_ORI) 
                VALUES (:NO_CA, :NO_ORDRE, :TYPE_PJ, :TITRE, " . $array['COPIE'] . ", " . $array['IMP_PJ'] . ", " . $array['IMP_TITRE'] . ", :NOM_FIC, :NOM_ORI)";

        $arrayReq = [
            ':NO_CA'        => $array['NO_CA'],
            ':NO_ORDRE'     => $array['NO_ORDRE'],
            ':TYPE_PJ'      => $array['TYPE_PJ'],
            ':TITRE'        => \substr($array['TITRE'], 0, 25),
            ':NOM_FIC'      => $array['NOM_FIC'],
            ':NOM_ORI'      => $array['NOM_ORI']
        ];

        $request = $this->pdo->prepare($req);
        return $request->execute($arrayReq);
    }
}
