Boa tarde, estou com uma situação em uma variavel.
tenho uma variavel $conta que está recebendo um modulo_type... vou colocar o código abaixo.
esse IF é que está me dando um problemão...
tenho setado a variavel $conta porém ela não é um objeto, não posso usar o modulo_type, e tambem não posso apagar....
o código não é meu.... já peguei assim, e ainda não está comentado....
alguém me dá um help?
if ($conta->modulo_type == 'App\\Transferencia') {
$transferenciaService = new TransferenciaService($conta->modulo);
$transferenciaService->cancelarTransferencia($this->pagamento->data_estorno);
}
public function estornarPagamento($data = null)
{
// Caso o pagamento
if ($this->pagamento->tipoPagamento->caixa_tipo == 'digital') {
throw ValidationException::withMessages([
'message' => 'Pagamento realizado via caixa digital não pode ser estornado',
'error' => true,
]);
}
// Estorna o pagamento da conta
$this->pagamento->data_estorno = $data ?? now();
$this->pagamento->save();
// Altera o valor do saldo da conta
$conta = $this->pagamento->conta->recalcularSaldo();
// Se a conta for do tipo transferência, a conta deve ser cancelada
// assim como a outra conta de trasnferência, e os pagamentos de ambos
// devem ser estornados.
if ($conta->modulo_type == 'App\\Transferencia') {
$transferenciaService = new TransferenciaService($conta->modulo);
$transferenciaService->cancelarTransferencia($this->pagamento->data_estorno);
}
// Remove os itens de previsão do pagamento
$this->pagamento->itemPrevisao->delete();
return true;
}