guard()->setUser($f['issuer']); $award = PurchaseAward::query()->findOrFail($f['order']->purchase_award_id); $awardAttributes = $award->getAttributes(); unset($awardAttributes['id']); DB::table('purchase_order_items')->where('purchase_order_id', $f['order']->id)->delete(); DB::table('purchase_orders')->where('id', $f['order']->id)->delete(); DB::table('purchase_awards')->where('id', $award->id)->delete(); $quote = Quotation::query()->where('requisition_id', $f['r']->id)->firstOrFail(); $workflow = app(ProposalOpeningWorkflow::class); $data = ['previous_id' => 0, 'basis_hash' => $workflow->basis($workflow->proposals($f['r'])), 'opened_at' => now()->subMinute()->timezone('Africa/Johannesburg')->format('Y-m-d\TH:i'), 'timezone' => 'Africa/Johannesburg', 'submission_deadline' => null, 'reference' => 'ABERTURA-FICTICIA', 'location' => 'Sala exclusivamente fictícia', 'reason' => 'Registo exclusivamente fictício de teste', 'notes' => 'Observações fictícias', 'quotation_ids' => [$quote->id], 'participants' => [['name' => 'Participante fictício', 'capacity' => 'Secretariado de teste', 'group' => 'participant']], 'annexes' => ['Lista fictícia de presenças'], 'confirmed' => true]; $serviceData = [...$data, 'opened_at' => CarbonImmutable::createFromFormat('!Y-m-d\TH:i', $data['opened_at'], $data['timezone'])->utc()->format('Y-m-d H:i:s')]; return [...$f, 'quote' => $quote, 'data' => $data, 'service_data' => $serviceData, 'award_attributes' => $awardAttributes]; }