فهرست منبع

Colonna stato export prima nota

FabioFratini 8 ماه پیش
والد
کامیت
690cdf9007
1فایلهای تغییر یافته به همراه43 افزوده شده و 55 حذف شده
  1. 43 55
      app/Http/Livewire/Record.php

+ 43 - 55
app/Http/Livewire/Record.php

@@ -310,9 +310,9 @@ class Record extends Component
         return $data;
     }
 
-    public function export()
+   public function export()
     {
-        $letters = array('E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z');
+        $letters = array('F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', 'AA');
 
         $spreadsheet = new Spreadsheet();
         $activeWorksheet = $spreadsheet->getActiveSheet();
@@ -322,9 +322,10 @@ class Record extends Component
         $activeWorksheet->setCellValue('B1', "Causale");
         $activeWorksheet->setCellValue('C1', "Dettaglio");
         $activeWorksheet->setCellValue('D1', "Nominativo");
+        $activeWorksheet->setCellValue('E1', "Stato");
+
         $idx = 0;
-        foreach($this->payments as $p)
-        {
+        foreach ($this->payments as $p) {
             if ($idx >= count($letters)) {
                 break;
             }
@@ -342,9 +343,10 @@ class Record extends Component
         $activeWorksheet->setCellValue('B2', "");
         $activeWorksheet->setCellValue('C2', "");
         $activeWorksheet->setCellValue('D2', "");
-        foreach($this->payments as $p)
-        {
-            if($p->type == 'ALL'){
+        $activeWorksheet->setCellValue('E2', "");
+
+        foreach ($this->payments as $p) {
+            if ($p->type == 'ALL') {
                 if ($idx >= count($letters)) {
                     break;
                 }
@@ -353,8 +355,7 @@ class Record extends Component
                 $idx++;
                 $activeWorksheet->setCellValue($letters[$idx] . '2', "Uscite");
                 $idx++;
-            }
-            elseif($p->type == 'IN'){
+            } elseif ($p->type == 'IN') {
                 if ($idx >= count($letters)) {
                     break;
                 }
@@ -363,8 +364,7 @@ class Record extends Component
                 $idx++;
                 $activeWorksheet->setCellValue($letters[$idx] . '2', "");
                 $idx++;
-            }
-            elseif($p->type == 'OUT'){
+            } elseif ($p->type == 'OUT') {
                 if ($idx >= count($letters)) {
                     break;
                 }
@@ -376,53 +376,48 @@ class Record extends Component
             }
         }
 
-        $activeWorksheet->getStyle('A1:P1')->getFont()->setBold(true);
-        $activeWorksheet->getStyle('A2:P2')->getFont()->setBold(true);
+        $activeWorksheet->getStyle('A1:Q1')->getFont()->setBold(true);
+        $activeWorksheet->getStyle('A2:Q2')->getFont()->setBold(true);
         // $activeWorksheet->getStyle('A1:N1')->getFill()->setFillType(\PhpOffice\PhpSpreadsheet\Style\Fill::FILL_SOLID)->getStartColor()->setARGB('00ff00');
 
         $count = 3;
 
         $totals = [];
 
-        foreach($this->records as $causal => $record)
-        {
+        foreach ($this->records as $causal => $record) {
 
             $check = strpos($causal, "$") ? explode("$", $causal)[1] : $causal;
-            list($d, $c, $j, $k) = explode("§", $check);
+            list($d, $c, $j, $k, $deleted, $numeroLinea) = explode("§", $check);
 
             $activeWorksheet->setCellValue('A' . $count, date("d/m/Y", strtotime($d)));
             $activeWorksheet->setCellValue('B' . $count, $c);
             $activeWorksheet->setCellValue('C' . $count, $k);
             $activeWorksheet->setCellValue('D' . $count, $j);
 
+            $stato = ($deleted === 'DELETED') ? 'ANNULLATA' : '';
+            $activeWorksheet->setCellValue('E' . $count, $stato);
+
+            if ($stato === 'ANNULLATA') {
+                $activeWorksheet->getStyle('E' . $count)->getFont()->getColor()->setARGB('FFFF0000');
+            }
+
             $idx = 0;
-            foreach($this->payments as $p)
-            {
-                if(isset($record[$p->name]))
-                {
+            foreach ($this->payments as $p) {
+                if (isset($record[$p->name])) {
 
-                    if(isset($record[$p->name]["IN"]))
-                    {
+                    if (isset($record[$p->name]["IN"])) {
                         $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($record[$p->name]["IN"]));
-                    }
-                    else
-                    {
+                    } else {
                         $activeWorksheet->setCellValue($letters[$idx] . $count, "");
                     }
                     $idx++;
-                    if(isset($record[$p->name]["OUT"]))
-                    {
+                    if (isset($record[$p->name]["OUT"])) {
                         $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($record[$p->name]["OUT"]));
-                    }
-                    else
-                    {
+                    } else {
                         $activeWorksheet->setCellValue($letters[$idx] . $count, "");
                     }
                     $idx++;
-
-                }
-                else
-                {
+                } else {
                     if ($idx >= count($letters)) {
                         break;
                     }
@@ -435,7 +430,6 @@ class Record extends Component
             }
 
             $count += 1;
-
         }
 
         $count += 1;
@@ -446,32 +440,28 @@ class Record extends Component
         $activeWorksheet->setCellValue('B' . $count, '');
         $activeWorksheet->setCellValue('C' . $count, '');
         $activeWorksheet->setCellValue('D' . $count, '');
-        foreach($this->payments as $p)
-        {
-            if(isset($this->totals[$p->name]))
-            {
-                if($p->type == 'ALL'){
+        $activeWorksheet->setCellValue('E' . $count, '');
+
+        foreach ($this->payments as $p) {
+            if (isset($this->totals[$p->name])) {
+                if ($p->type == 'ALL') {
                     $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($this->totals[$p->name]["IN"]));
                     $idx++;
                     $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($this->totals[$p->name]["OUT"]));
                     $idx++;
-                }
-                elseif($p->type == 'IN'){
+                } elseif ($p->type == 'IN') {
                     $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($this->totals[$p->name]["IN"]));
                     $idx++;
                     $activeWorksheet->setCellValue($letters[$idx] . $count, "");
                     $idx++;
-                }
-                elseif($p->type == 'OUT'){
+                } elseif ($p->type == 'OUT') {
                     $activeWorksheet->setCellValue($letters[$idx] . $count, "");
                     $idx++;
                     $activeWorksheet->setCellValue($letters[$idx] . $count, formatPrice($this->totals[$p->name]["OUT"]));
                     $idx++;
                 }
-            }
-            else
-            {
-                if($p->type == 'ALL'){
+            } else {
+                if ($p->type == 'ALL') {
                     if ($idx >= count($letters)) {
                         break;
                     }
@@ -480,8 +470,7 @@ class Record extends Component
                     $idx++;
                     $activeWorksheet->setCellValue($letters[$idx] . $count, "0");
                     $idx++;
-                }
-                elseif($p->type == 'IN'){
+                } elseif ($p->type == 'IN') {
                     if ($idx >= count($letters)) {
                         break;
                     }
@@ -490,8 +479,7 @@ class Record extends Component
                     $idx++;
                     $activeWorksheet->setCellValue($letters[$idx] . $count, "");
                     $idx++;
-                }
-                elseif($p->type == 'OUT'){
+                } elseif ($p->type == 'OUT') {
                     if ($idx >= count($letters)) {
                         break;
                     }
@@ -504,20 +492,20 @@ class Record extends Component
             }
         }
 
-        $activeWorksheet->getStyle('A' . $count . ':P' . $count)->getFont()->setBold(true);
+        $activeWorksheet->getStyle('A' . $count . ':Q' . $count)->getFont()->setBold(true);
 
         $activeWorksheet->getColumnDimension('A')->setWidth(20);
         $activeWorksheet->getColumnDimension('B')->setWidth(40);
         $activeWorksheet->getColumnDimension('C')->setWidth(40);
         $activeWorksheet->getColumnDimension('D')->setWidth(40);
-        foreach($letters as $l)
+        $activeWorksheet->getColumnDimension('E')->setWidth(20);
+        foreach ($letters as $l)
             $activeWorksheet->getColumnDimension($l)->setWidth(20);
 
         $writer = new Xlsx($spreadsheet);
         $writer->save($path = storage_path('prima_nota_' . date("YmdHis") . '.xlsx'));
 
         return response()->download($path)->deleteFileAfterSend();
-
     }
 
 }