116 lines
5.6 KiB
PHP
116 lines
5.6 KiB
PHP
<?php
|
|
require_once 'Framework/Modele.php';
|
|
class Encaissement_temp extends Modele {
|
|
|
|
public function initEncaissement($codeSociete, $codeApporteur, $codeModePaiement, $codeMoyenPaiement,
|
|
$referencePaiement, $nomTireur, $banquePayeur, $numeroBordereau, $dateBordereau, $montant,
|
|
$libelleOperation, $dateEncaissement, $dateComptable, $dateCre, $user)
|
|
{
|
|
$sql = 'DELETE FROM encaissement_temp WHERE (user=?)';
|
|
$this->executerRequete($sql, array($user));
|
|
|
|
$sql = 'DELETE FROM detailencaissement_temp WHERE (user=?)';
|
|
$this->executerRequete($sql, array($user));
|
|
|
|
$sql = 'INSERT INTO encaissement_temp (codeSociete, codeApporteur, codeModePaiement, codeMoyenPaiement, referencePaiement,
|
|
nomTireur, banquePayeur, numeroBordereau, dateBordereau, montant, libelleOperation,
|
|
dateEncaissement, dateComptable, dateCre, user)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
|
|
|
|
$this->executerRequete($sql, array($codeSociete, $codeApporteur, $codeModePaiement, $codeMoyenPaiement,
|
|
$referencePaiement, $nomTireur, $banquePayeur, $numeroBordereau, $dateBordereau, $montant,
|
|
$libelleOperation, $dateEncaissement, $dateComptable, $dateCre, $user));
|
|
|
|
$idEncaissementTemp = $this->dernierId();
|
|
$_SESSION['idEncaissementTemp'] = $idEncaissementTemp;
|
|
$_SESSION['codeApporteur'] = $codeApporteur;
|
|
|
|
return $idEncaissementTemp;
|
|
}
|
|
|
|
|
|
public function initEncaissementClient($codeSociete, $idClient, $codeModePaiement, $codeMoyenPaiement, $referencePaiement,
|
|
$nomTireur, $banquePayeur, $montant, $libelleOperation, $dateEncaissement, $dateComptable, $dateCre, $user)
|
|
{
|
|
$sql = 'DELETE FROM encaissement_temp WHERE (user=?)';
|
|
$this->executerRequete($sql, array($user));
|
|
|
|
$sql = 'DELETE FROM detailencaissement_temp WHERE (user=?)';
|
|
$this->executerRequete($sql, array($user));
|
|
|
|
$sql = 'INSERT INTO encaissement_temp (codeSociete, idClient, codeModePaiement, codeMoyenPaiement, referencePaiement,
|
|
nomTireur, banquePayeur, montant, libelleOperation, dateEncaissement, dateComptable, dateCre, user)
|
|
VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)';
|
|
|
|
$this->executerRequete($sql, array($codeSociete, $idClient, $codeModePaiement, $codeMoyenPaiement, $referencePaiement,
|
|
$nomTireur, $banquePayeur, $montant, $libelleOperation, $dateEncaissement, $dateComptable, $dateCre, $user));
|
|
|
|
$idEncaissementTemp = $this->dernierId();
|
|
$_SESSION['idEncaissementTemp'] = $idEncaissementTemp;
|
|
|
|
return $idEncaissementTemp;
|
|
}
|
|
|
|
public function getEncaissementTemp($user)
|
|
{
|
|
$sql = 'SELECT A.id AS idEncaissementTemp, A.*, B.libelle as apporteur, C.libelle as modepaiement,
|
|
D.libelle as moyenpaiement, D.numeroCompte
|
|
from encaissement_temp A
|
|
left join apporteur B on (B.codeSociete=A.codeSociete) AND (B.codeApporteur=A.codeApporteur)
|
|
left join modepaiement C on (C.codeModePaiement=A.codeModePaiement)
|
|
left join moyenpaiement D on (D.codeSociete=A.codeSociete) AND (D.codeMoyenPaiement=A.codeMoyenPaiement)
|
|
where A.codeSociete=? AND A.user=? limit 1';
|
|
|
|
$encaissement = $this->executerRequete($sql, array($_SESSION['codeSociete'], $user));
|
|
return $encaissement->fetch(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
public function getEncaissementTempClient($user, $idClient)
|
|
{
|
|
$sql = 'SELECT A.id AS idEncaissementTemp, A.*, C.libelle as modepaiement,
|
|
D.libelle as moyenpaiement, D.numeroCompte
|
|
from encaissement_temp A
|
|
left join modepaiement C on (C.codeModePaiement=A.codeModePaiement)
|
|
left join moyenpaiement D on (D.codeSociete=A.codeSociete) AND (D.codeMoyenPaiement=A.codeMoyenPaiement)
|
|
where (A.codeSociete=?) AND (A.user=?) AND (A.idClient=?) limit 1';
|
|
|
|
$encaissement = $this->executerRequete($sql, array($_SESSION['codeSociete'], $user, $idClient));
|
|
return $encaissement->fetch(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
public function getEncaissementTempId($idEncaissementTemp) {
|
|
$sql = 'SELECT A.id AS idEncaissementTemp, A.*, B.libelle as apporteur, C.libelle as modepaiement,
|
|
D.libelle as moyenpaiement, D.numeroCompte
|
|
from encaissement_temp A
|
|
left join apporteur B on (B.codeSociete=A.codeSociete) AND (B.codeApporteur=A.codeApporteur)
|
|
left join modepaiement C on (C.codeModePaiement=A.codeModePaiement)
|
|
left join moyenpaiement D on (D.codeSociete=A.codeSociete) AND (D.codeMoyenPaiement=A.codeMoyenPaiement)
|
|
where A.id=?';
|
|
|
|
$encaissement = $this->executerRequete($sql, array($idEncaissementTemp));
|
|
return $encaissement->fetch(PDO::FETCH_ASSOC);
|
|
}
|
|
|
|
public function majTotalEncaissement($idEncaissementTemp)
|
|
{
|
|
$sql = 'select IFNULL(SUM(primeTtc),"0") as montant_selection from detailencaissement_temp where idEncaissement=?';
|
|
$resultat = $this->executerRequete($sql, array($idEncaissementTemp));
|
|
$ligne = $resultat->fetch(PDO::FETCH_ASSOC);
|
|
$montant_selection = $ligne['montant_selection'];
|
|
|
|
$sql = 'update encaissement_temp set montantSelection = ?, montantEcart = (montant-?) where (id=?)';
|
|
$this->executerRequete($sql, array($montant_selection, $montant_selection, $idEncaissementTemp));
|
|
|
|
$sql = 'update encaissement_temp set ecart = "1", codeEcart = "1" where (id=?) and (montantEcart>0)';
|
|
$this->executerRequete($sql, array($idEncaissementTemp));
|
|
|
|
$sql = 'update encaissement_temp set ecart = "1", codeEcart = "2" where (id=?) and (montantEcart<0)';
|
|
$this->executerRequete($sql, array($idEncaissementTemp));
|
|
}
|
|
|
|
public function supprimer($id) {
|
|
$sql = 'DELETE FROM encaissement_temp WHERE (id=?)';
|
|
$this->executerRequete($sql, array($id));
|
|
}
|
|
}
|