Commit 0aa16519 by Damien Moulard

Merge branch 'modifs-suite-retour-mail-et-justif-reconv-ccas' into 'ssa-gironde'

Modifs suite retour mail et justif reconv ccas

See merge request cooperatic/kohinos-tav!109
parents fbf72e45 cb2aa719
......@@ -7,6 +7,7 @@ namespace App\Command;
use App\Entity\Flux;
use App\Entity\GlobalParameter;
use App\Entity\Prestataire;
use App\Entity\User;
use App\Utils\CustomEntityManager;
use App\Utils\OperationUtils;
use IntlDateFormatter;
......@@ -71,10 +72,18 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
$this->io->text('Envoi du mail pour le prestataire ' . $p->getRaison());
$subject = "Expérimentation de Sécurité Sociale de l’Alimentation en Gironde – Facture CCAS $monthYearStr";
$globalParamRepo = $this->em->getRepository(GlobalParameter::class);
//Send to prestataire
//Send copy to tresoriers + gestionnaire de groupe (or default contact if linked gestionnaire de groupe does not exists)
$copyTo = array();
$users = $this->em->getRepository(User::class)->findByRole('ROLE_TRESORIER');
foreach ($users as $userTresorier) {
$copyTo[] = $userTresorier->getEmail();
}
$copyTo[] = $globalParamRepo->getMailOfGestionnaireDeGroupeOrDefaultContact($p);
$mail = (new \Swift_Message($subject))
->setFrom($globalParamRepo->val(GlobalParameter::MLC_NOTIF_EMAIL))
->setTo($p->getGestionnairesEmailsArray())
->setCc($globalParamRepo->getMailOfGestionnaireDeGroupeOrDefaultContact($p))
->setCc($copyTo)
->setBody(
$this->templating->render(
'@kohinos/email/tav/ccas_transactions.html.twig',
......@@ -89,6 +98,11 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
return $mail;
}
private function fputcsvSeparatedBySemicolon($file, $arr)
{
fputcsv($file, $arr, ";");
}
/**
* @param $year
* @param int $month
......@@ -112,8 +126,8 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
$file = fopen($path, 'w');
//Write header
fputcsv($file, [
"Numéro d'anonymisation",
$this->fputcsvSeparatedBySemicolon($file, [
"Numero d'anonymisation",
'Montant (€)',
'Montant en lettres',
'Date',
......@@ -128,7 +142,7 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
foreach ($data as $row) {
//Write intermediate total line before moving to next client
if ($previousAnonymousToken !== $row['anonymous_token']) {
fputcsv($file, [
$this->fputcsvSeparatedBySemicolon($file, [
'TOTAL ' . $row['anonymous_token'],
$clientTotal,
$nf->format($clientTotal),
......@@ -137,7 +151,7 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
$clientTotal = 0;
}
//Write transaction line
fputcsv($file, [
$this->fputcsvSeparatedBySemicolon($file, [
$row['anonymous_token'],
$row['montant'],
$this->currencySpellout($nf, $row['montant']),
......@@ -147,14 +161,14 @@ class SendCcasTransactionsExportToPrestatairesCommand extends Command
$prestaTotal += $row['montant'];
}
//Write last intermediate total line
fputcsv($file, [
$this->fputcsvSeparatedBySemicolon($file, [
'TOTAL ' . $row['anonymous_token'],
number_format($clientTotal, 2),
$this->currencySpellout($nf, $clientTotal),
'',
]);
//Write final total line
fputcsv($file, [
$this->fputcsvSeparatedBySemicolon($file, [
'TOTAL ' . $p->getRaison(),
number_format($prestaTotal, 2),
$this->currencySpellout($nf, $prestaTotal),
......
......@@ -39,7 +39,8 @@
Cité municipale, 4 rue Claude Bonnier<br/>
33045 Bordeaux Cedex<br/><br/></li>
<li>Détail : (copier coller le tableau de l'état mensuel des dépenses ci joint) code client, montant mensuel dépensé par code client (en chiffres et en lettres),
date de la période couverte, montant total des dépenses dans le point de vente (en chiffres et en lettres)<br/><br/></li>
date de la période couverte, montant total des dépenses dans le point de vente (en chiffres et en lettres) ;
IMPORTANT: si le tableau ne rentre pas dans le détail de votre facture, copier/coller uniquement les lignes de total par code client<br/><br/></li>
<li>Date de la facture + cachet et signature</li>
</ul>
</li>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment