public function deletePrestamo($id) { DB::transaction(function () use($id) { $prestamo = Prestamo::find($id); $this->deleteLetra($prestamo->id); $prestamo->delete(); }); }
public function regPagoLetra($pago_letra, $pago_proveedor) { //primero creamos el pago letra $p_letra = new PagoLetra(); $p_letra->fecha_pago = $pago_proveedor->created_at; $p_letra->monto_pagado = $pago_letra['monto_inicial'] + $pago_letra['interes']; $p_letra->pago_proveedor_id = $pago_proveedor->id; $p_letra->letra_id = $pago_letra['id']; $p_letra->save(); //luego actualizamos la letra $letra = Letra::find($pago_letra['id']); $letra->estado = 1; $letra->save(); //luego traemos al prestamo $prestamo = Prestamo::find($pago_letra['prestamo_id']); //traemos a todas las letras no pagadas para comparar //sacamos la cantidad de letras en deudas $cantidad = Letra::where('prestamo_id', '=', $pago_letra['id'])->where('estado', '=', '0')->get(); //comparamos si s la ultima letra para poder actualizar el prestamo if ($letra->n_letra == $prestamo->n_letras || count($cantidad) == 0) { $prestamo->estado = 'pagada'; $prestamo->save(); } }