cawangan_detail = $cawangan_detail; $this->query = $query; $this->teller_with_gadaian_summary_data = $teller_with_gadaian_data; $this->summary_gadaian = $summary_gadaian; } public function title(): string { return 'SUMMARY GADAIAN'; } public function bindValue(Cell $cell, $value) { if (is_numeric($value)) { $cell->setValueExplicit($value, DataType::TYPE_NUMERIC); return true; } // else return default behavior return parent::bindValue($cell, $value); } public function columnWidths(): array { return [ 'A' => 28, 'B' => 14.67, 'C' => 16.00, 'D' => 14.18, ]; } public function columnFormats(): array { return [ 'B' => NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1, 'C' => NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1, 'D' => NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1, ]; } public function registerEvents(): array { $table_style = [ 'borders' => [ 'allBorders' => [ 'borderStyle' => \PhpOffice\PhpSpreadsheet\Style\Border::BORDER_THIN, 'color' => ['argb' => '#000000'], ], ], ]; $main_table_row_count = count($this->teller_with_gadaian_summary_data) + 1; $main_table_start_at_row = 9; $main_table_range = 'A' . $main_table_start_at_row . ':J' . ($main_table_row_count + $main_table_start_at_row); $summary_table_row_count = 1; $summary_table_start_at_row = $main_table_row_count + $main_table_start_at_row + 5; $summary_table_range = 'A' . $summary_table_start_at_row . ':I' . ($summary_table_row_count + $summary_table_start_at_row); $summary_table_column_head = 'A' . $summary_table_start_at_row . ':F' . $summary_table_start_at_row; // return [ // AfterSheet::class => function (AfterSheet $event) use ($main_table_range, $summary_table_range, $summary_table_column_head, $table_style) { // $event->sheet->getStyle($main_table_range)->applyFromArray($table_style); // $event->sheet->getStyle($summary_table_range)->applyFromArray($table_style); // $event->sheet->mergeCells($summary_table_column_head); // }, // ]; return []; } public function view(): View { return view('exports.gadaian.summary', [ 'cawangan_detail' => $this->cawangan_detail, 'query' => $this->query, 'teller_with_gadaian_data' => $this->teller_with_gadaian_summary_data, 'summary_gadaian' => $this->summary_gadaian, ]); } }