adaptation versements personnes aux nouvelles structures
FossilOrigin-Name: ceca540fd6ead507a1d322c07a884d0aa1b8a44cf9501f8179ddaee4d12df3fb
This commit is contained in:
parent
7dbbe5bfc1
commit
d7faf06f10
@ -74,6 +74,37 @@ class Utils
|
|||||||
return $db->get($sql);
|
return $db->get($sql);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Versements totaux par personne pour une année donnée
|
||||||
|
* @param année
|
||||||
|
*/
|
||||||
|
public static function getVersementsTotaux($annee)
|
||||||
|
{
|
||||||
|
$sql =
|
||||||
|
"SELECT
|
||||||
|
membres.id as idUser,
|
||||||
|
sum(acc_transactions_lines.credit) AS versement
|
||||||
|
FROM
|
||||||
|
acc_transactions_users,
|
||||||
|
membres,
|
||||||
|
acc_transactions
|
||||||
|
INNER JOIN acc_transactions_lines
|
||||||
|
ON acc_transactions_lines.id_transaction = acc_transactions.id
|
||||||
|
WHERE (
|
||||||
|
strftime('%Y', acc_transactions.date) = ?
|
||||||
|
AND
|
||||||
|
acc_transactions_lines.credit > 0
|
||||||
|
AND
|
||||||
|
acc_transactions_users.id_transaction = acc_transactions.id
|
||||||
|
AND
|
||||||
|
acc_transactions_users.id_user = membres.id
|
||||||
|
)
|
||||||
|
GROUP by acc_transactions_users.id_user
|
||||||
|
ORDER by membres.nom COLLATE U_NOCASE;
|
||||||
|
";
|
||||||
|
return DB::getInstance()->get($sql, $annee);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return personnes ayant versé des dons pour une année donnée
|
* @return personnes ayant versé des dons pour une année donnée
|
||||||
* @param $annee
|
* @param $annee
|
||||||
@ -269,7 +300,7 @@ class Utils
|
|||||||
* Versements totaux par personne pour une année donnée
|
* Versements totaux par personne pour une année donnée
|
||||||
* @param année
|
* @param année
|
||||||
*/
|
*/
|
||||||
public static function getVersementsTotaux($annee) {
|
public static function getVersementsTotaux_old($annee) {
|
||||||
$sql =
|
$sql =
|
||||||
"SELECT
|
"SELECT
|
||||||
acc_transactions_users.id_user as idUser,
|
acc_transactions_users.id_user as idUser,
|
||||||
|
@ -31,11 +31,11 @@
|
|||||||
value=$rang}
|
value=$rang}
|
||||||
</td>
|
</td>
|
||||||
<td>{$versement.idUser}</td>
|
<td>{$versement.idUser}</td>
|
||||||
<td>{$versement.nom}</td>
|
<td>{$lesDonateurs[$versement.idUser]->nomPrenom}</td>
|
||||||
<td class="montant">{$versement.montant|raw|money}</td>
|
<td class="montant">{$versement.versement|raw|money}</td>
|
||||||
<td>{$versement.adresse}</td>
|
<td>{$lesDonateurs[$versement.idUser]->adresse}</td>
|
||||||
<td>{$versement.codePostal}</td>
|
<td>{$lesDonateurs[$versement.idUser]->codePostal}</td>
|
||||||
<td>{$versement.ville}</td>
|
<td>{$lesDonateurs[$versement.idUser]->ville}</td>
|
||||||
</tr>
|
</tr>
|
||||||
{/foreach}
|
{/foreach}
|
||||||
</tbody>
|
</tbody>
|
||||||
|
@ -11,7 +11,7 @@ $lesLignes = f('selected');
|
|||||||
|
|
||||||
// filtrer les versements sélectionnés
|
// filtrer les versements sélectionnés
|
||||||
$versementsSelectionnes = array();
|
$versementsSelectionnes = array();
|
||||||
foreach ($lesLignes as $indice => $ligne) {
|
foreach ($lesLignes as $ligne) {
|
||||||
$versementsSelectionnes[] = $_SESSION['lesVersements'][$ligne];
|
$versementsSelectionnes[] = $_SESSION['lesVersements'][$ligne];
|
||||||
}
|
}
|
||||||
// cumuler les versements d'une personne
|
// cumuler les versements d'une personne
|
||||||
@ -73,8 +73,8 @@ $fichierZip = Utils::makeArchive(
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Cumuler les versements de chaque personne par tarif
|
* Cumuler les versements de chaque personne par tarif
|
||||||
* @param tableau des versements
|
* @param tableau des versements triés par idTarif, idUser, date
|
||||||
* @return tableau des versements cumulés
|
* @return tableau des versements cumulés : id => Personne
|
||||||
*/
|
*/
|
||||||
function cumulerVersements($versements)
|
function cumulerVersements($versements)
|
||||||
{
|
{
|
||||||
@ -100,8 +100,7 @@ function cumulerVersements($versements)
|
|||||||
// créer les infos de la personne, sauf si elle est déjà présente
|
// créer les infos de la personne, sauf si elle est déjà présente
|
||||||
if (!array_key_exists($idPersonne_courant, $totalPersonnes))
|
if (!array_key_exists($idPersonne_courant, $totalPersonnes))
|
||||||
{
|
{
|
||||||
$totalPersonnes["$idPersonne_courant"] =
|
$totalPersonnes["$idPersonne_courant"] = Personne::copier($_SESSION['membresDonateurs'][$ligne->idUser]);
|
||||||
Personne::copier($_SESSION['membresDonateurs'][$ligne->idUser]);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// cumuler versements
|
// cumuler versements
|
||||||
|
@ -11,7 +11,7 @@ $lesLignes = f('selected');
|
|||||||
|
|
||||||
// filtrer les versements sélectionnés
|
// filtrer les versements sélectionnés
|
||||||
$versementsSelectionnes = array();
|
$versementsSelectionnes = array();
|
||||||
foreach ($lesLignes as $indice => $ligne) {
|
foreach ($lesLignes as $ligne) {
|
||||||
$versementsSelectionnes[] = $_SESSION['lesVersementsTotaux'][$ligne];
|
$versementsSelectionnes[] = $_SESSION['lesVersementsTotaux'][$ligne];
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -28,7 +28,7 @@ $logoCERFA = PLUGIN_ROOT . "/data/logoCerfa.png";
|
|||||||
$signature = PLUGIN_ROOT . "/data/default_signature.png";
|
$signature = PLUGIN_ROOT . "/data/default_signature.png";
|
||||||
$listeFichiers = [];
|
$listeFichiers = [];
|
||||||
|
|
||||||
foreach ($versementsSelectionnes as $idPersonne => $personne) {
|
foreach ($versementsSelectionnes as $ligne) {
|
||||||
// générer un fichier par reçu
|
// générer un fichier par reçu
|
||||||
$pdf = new RecusPDF(
|
$pdf = new RecusPDF(
|
||||||
'DejaVu',
|
'DejaVu',
|
||||||
@ -41,15 +41,15 @@ foreach ($versementsSelectionnes as $idPersonne => $personne) {
|
|||||||
// extraire les montants des versements
|
// extraire les montants des versements
|
||||||
$pdf->imprimer_recu(
|
$pdf->imprimer_recu(
|
||||||
$_SESSION['annee_recu'],
|
$_SESSION['annee_recu'],
|
||||||
$personne->idUser,
|
$ligne->idUser,
|
||||||
$personne->nom,
|
$_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom,
|
||||||
array($personne->montant/100),
|
array($ligne->versement/100),
|
||||||
$personne->adresse,
|
$_SESSION['membresDonateurs'][$ligne->idUser]->adresse,
|
||||||
$personne->codePostal,
|
$_SESSION['membresDonateurs'][$ligne->idUser]->codePostal,
|
||||||
$personne->ville
|
$_SESSION['membresDonateurs'][$ligne->idUser]->ville
|
||||||
);
|
);
|
||||||
// fabriquer le nom du fichier PDF
|
// fabriquer le nom du fichier PDF
|
||||||
$nom = str_replace(' ', '_', $personne->nom);
|
$nom = str_replace(' ', '_', $_SESSION['membresDonateurs'][$ligne->idUser]->nomPrenom);
|
||||||
$nom = str_replace("'", "", $nom);
|
$nom = str_replace("'", "", $nom);
|
||||||
// $nomFichier = Utils::getPDFDirectory() . "/" . 'recu_' . $annee_recu . '_' . $nom . '.pdf';
|
// $nomFichier = Utils::getPDFDirectory() . "/" . 'recu_' . $annee_recu . '_' . $nom . '.pdf';
|
||||||
$nomFichier = PLUGIN_ROOT . '/pdf/recu_' . $_SESSION['annee_recu'] . '_' . $nom . '.pdf';
|
$nomFichier = PLUGIN_ROOT . '/pdf/recu_' . $_SESSION['annee_recu'] . '_' . $nom . '.pdf';
|
||||||
|
@ -2,19 +2,33 @@
|
|||||||
|
|
||||||
namespace Garradin;
|
namespace Garradin;
|
||||||
|
|
||||||
|
use Garradin\Plugin\RecusFiscaux\Personne;
|
||||||
use Garradin\Plugin\RecusFiscaux\Utils;
|
use Garradin\Plugin\RecusFiscaux\Utils;
|
||||||
|
|
||||||
// vérifier si l'année a bien été sélectionnée au préalable
|
// vérifier si l'année a bien été sélectionnée au préalable
|
||||||
$_SESSION['annee_recu'] = f('annee_recu');
|
$_SESSION['annee_recu'] = f('annee_recu');
|
||||||
// error_log("vp.php::annee_recu = (" .$_SESSION['annee_recu'] . ")");
|
|
||||||
if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") {
|
if (! isset($_SESSION['annee_recu']) || $_SESSION['annee_recu'] == "") {
|
||||||
\Garradin\Utils::redirect(PLUGIN_URL . 'index.php');
|
\Garradin\Utils::redirect(PLUGIN_URL . 'index.php');
|
||||||
}
|
}
|
||||||
// liste des versements totaux par personne
|
|
||||||
|
// versements totaux par personne
|
||||||
$_SESSION['lesVersementsTotaux'] = Utils::getVersementsTotaux($_SESSION['annee_recu']);
|
$_SESSION['lesVersementsTotaux'] = Utils::getVersementsTotaux($_SESSION['annee_recu']);
|
||||||
|
|
||||||
|
// membres donateurs
|
||||||
|
$membresDonateurs = array();
|
||||||
|
$versementsMembres = Utils::getDonateurs($_SESSION['annee_recu']);
|
||||||
|
foreach ($versementsMembres as $versement) {
|
||||||
|
$membresDonateurs[$versement->idUser] = new Personne($versement->idUser,
|
||||||
|
$versement->nom,
|
||||||
|
$versement->adresse,
|
||||||
|
$versement->codePostal,
|
||||||
|
$versement->ville);
|
||||||
|
}
|
||||||
|
$_SESSION['membresDonateurs'] = $membresDonateurs;
|
||||||
|
|
||||||
// préparation de l'affichage
|
// préparation de l'affichage
|
||||||
$tpl->assign('lesVersementsTotaux', $_SESSION['lesVersementsTotaux']);
|
$tpl->assign('lesVersementsTotaux', $_SESSION['lesVersementsTotaux']);
|
||||||
|
$tpl->assign('lesDonateurs', $membresDonateurs);
|
||||||
$tpl->assign('plugin_css', ['style.css']);
|
$tpl->assign('plugin_css', ['style.css']);
|
||||||
|
|
||||||
// envoyer au template
|
// envoyer au template
|
||||||
|
Loading…
Reference in New Issue
Block a user