Exemple #1
0
 public static function deux_mois($debut)
 {
     $nb_mois = 0;
     $date_en_cours = $debut;
     $mois_en_cours = Feries::Mois(date('n', strtotime($date_en_cours)));
     if ($mois_en_cours == 'Aout') {
         $mois_en_cours = 'Septembre';
     }
     while ($nb_mois < 2) {
         $mois_stock = Feries::Mois(date('n', strtotime('+7days', strtotime($date_en_cours))));
         if ($mois_stock != $mois_en_cours) {
             $nb_mois++;
             $mois_en_cours = $mois_stock;
         }
         $date_en_cours = date('Y-m-d', strtotime('+7days', strtotime($date_en_cours)));
     }
     $chiffre_jour = date('N', strtotime($date_en_cours));
     $diff = -$chiffre_jour + 1;
     $date_deux_mois = date('Y-m-d', strtotime($diff . 'days', strtotime($date_en_cours)));
     return $date_deux_mois;
 }
 public function facturation(Request $request)
 {
     $data = $request->all();
     $mois = date('Y-m-d', strtotime($data['mois']));
     $fin = date('Y-m-d', strtotime('+2 month', strtotime($mois)));
     $facturations = Facturation::with('enfant', 'enfant.classe')->whereBetween('semaine', [$mois, $fin])->orderBy('enfant_id')->get();
     //dd($facturations, $mois, $fin);
     Excel::load('fichiers/facturation.xlsx', function ($file) use($mois, $fin, $facturations, $data) {
         $file->setFileName('facturation_' . Feries::Mois(date('n', strtotime('+10day' . $mois))) . '_' . Feries::Mois(date('n', strtotime('+1month' . $mois))));
         $file->setActiveSheetIndex(0)->setCellValue('E3', date('d/m/Y', strtotime($mois)));
         $file->setActiveSheetIndex(0)->setCellValue('E4', date('d/m/Y', strtotime($fin)));
         $file->setActiveSheetIndex(0)->setCellValue('E6', $data['prix_elementaire']);
         $file->setActiveSheetIndex(0)->setCellValue('D6', $data['prix_maternelle']);
         $ligne = 10;
         $id = 0;
         $total = 0;
         $colonne = 'G';
         foreach ($facturations as $facturation) {
             if ($id != $facturation->enfant_id) {
                 if ($total != 0) {
                     $file->setActiveSheetIndex(0)->setCellValue('E' . $ligne, $total);
                     if ($last->enfant->classe->cycle == 'Maternelle') {
                         $file->setActiveSheetIndex(0)->setCellValue('F' . $ligne, $total * $data['prix_maternelle']);
                         //dd($facturation, $total, 'F'.$ligne,  $data['prix_maternelle']);
                     } else {
                         $file->setActiveSheetIndex(0)->setCellValue('F' . $ligne, $total * $data['prix_elementaire']);
                     }
                     $total = 0;
                 }
                 $ligne++;
                 //$maDate = $mois;
                 $colonne = 'G';
                 $file->setActiveSheetIndex(0)->setCellValue('A' . $ligne, $facturation->enfant->classe->niveau);
                 $file->setActiveSheetIndex(0)->setCellValue('B' . $ligne, $facturation->enfant->classe->instituteur);
                 $file->setActiveSheetIndex(0)->setCellValue('C' . $ligne, $facturation->enfant->nom);
                 $file->setActiveSheetIndex(0)->setCellValue('D' . $ligne, $facturation->enfant->prenom);
                 $id = $facturation->enfant_id;
                 //ici prix
             }
             $maDate = $mois;
             while ($maDate < $facturation->semaine) {
                 $maDate = date('Y-m-d', strtotime('+7day' . $maDate));
                 $colonne = chr(ord($colonne) + 3);
             }
             $total += $facturation->fixe + $facturation->non_fixe;
             $file->setActiveSheetIndex(0)->setCellValue($colonne . $ligne, $facturation->fixe + $facturation->non_fixe);
             $file->setActiveSheetIndex(0)->setCellValue(chr(ord($colonne) + 1) . $ligne, 0);
             $file->setActiveSheetIndex(0)->setCellValue(chr(ord($colonne) + 2) . $ligne, $facturation->abscence_signalee);
             $colonne = 'G';
             $last = $facturation;
         }
         $file->setActiveSheetIndex(0)->setCellValue('E' . $ligne, $total);
         if (isset($last)) {
             if ($last->enfant->classe->cycle == 'maternelle') {
                 $file->setActiveSheetIndex(0)->setCellValue('F' . $ligne, $total * $data['prix_maternelle']);
             } else {
                 $file->setActiveSheetIndex(0)->setCellValue('F' . $ligne, $total * $data['prix_elementaire']);
             }
         }
     })->export('xls');
 }
	<div class="jumbotron">
		{!! Form::open(['url' => url('facturation'), 'class' => 'form-horizontal']) !!}
		<fieldset>
		<legend>Facturation</legend>
		<div class="form-group {!! $errors->has('mois') ? 'has-error' : '' !!} " >
			<label for="mois" class="col-lg-2 control-label">Mois de facturation</label>
			<div class="col-lg-5">
				<select name="mois" id="mois" class="form-control">
					<?php 
use App\Library\Feries;
foreach ($mois as $month) {
    $debutMois = Feries::Mois(date('n', strtotime($month["debut"])));
    if ($debutMois == 'Aout') {
        $debutMois = 'Septembre';
    }
    $finMois = Feries::Mois(date('n', strtotime('+1month', strtotime($month["debut"]))));
    echo '<option value="' . $month['debut'] . '">Mois : ' . $debutMois . ' - ' . $finMois . '</option>';
}
?>
				</select>
			</div>
		</div>
		<div class="form-group {!! $errors->has('prix_elementaire') ? 'has-error' : '' !!} " >
			<label for="prix_elementaire" class="col-lg-2 control-label">Prix d'un repas élémentaire</label>
			<div class="col-lg-5">
				{!! Form::text('prix_elementaire', null,['class' => 'form-control', 'placeholder' => 'ex : 2.34', 'id' => 'prix_elementaire']) !!}
				{!! $errors->first('prix_elementaire', '<small class="help-block"> :message </small>') !!}
			</div>
		</div>
		<div class="form-group {!! $errors->has('prix_maternelle') ? 'has-error' : '' !!} " >
			<label for="prix_maternelle" class="col-lg-2 control-label">Prix d'un repas maternelle</label>