Я пытаюсь сохранить некоторые данные в базе данных, и сразу после того, как я пытаюсь загрузить и превзойти файл с этими данными. Итак, я заметил, что пакет excel блокирует мою фиксацию, и, очевидно, он не позволяет мне хранить данные в БД. Это мой код. - Я использую Laravel 5.5 - "maatwebsite / excel": "~ 2.1.0",
public function refundTicketAndGenerateExcel($transactions, $table)
{
try
{
\DB::beginTransaction();
$this->storeRefundData($transactions);
$response = $this->generateExcel($table);
\DB::commit();
return $response;
}
catch (\Exception $e)
{
\DB::rollback();
\Log::error($e);
$result['message'] = $e->getMessage();
return response()->json($result, 500);
}
}
public function generateExcel($table)
{
Excel::create('Reembolsos', function ($excel) use ($table) {
$excel->sheet('Reembolsos', function ($sheet) use ($table) {
$FontStyle = array(
'font' => array(
'name' => 'Arial',
'color' => array('rgb' => '000000'),
'size' => 11
),
);
$sheet->loadView($this->path . '.partials.excel', ['table'=>$table]);
$sheet->getStyle('A1:K1000')->applyFromArray($FontStyle);
});
})->export('xls');
}
PD: Если я просто прокомментирую \ DB :: beginTransaction () и \ DB :: commit (), все будет работать нормально; С другой стороны, если я просто прокомментирую блок Excel :: create, все тоже будет работать нормально; Вот почему я говорю, что пакет Excel блокирует мою фиксацию.
Заранее спасибо.