public function store(Request $request, $central_id) { $data = $request->json()->all(); $ecliente = $this->verificarCliente($data['identificacion']); if (!$ecliente) { $cliente = $this->createCliente($data); if ($cliente['cliente']) { if ($cliente['usuario']) { $pasajero = new Pasajero($data); $pasajero->identificacion = $data['identificacion']; $pasajero->nombres = $data['nombres']; $pasajero->telefono = $data['telefono']; $pasajero->direccion = $data['direccion']; $pasajero->central_id = $central_id; if ($pasajero->save()) { return JsonResponse::create(array('message' => "Se puso en espera al pasajero correctamente", 200)); } else { return response()->json(['message' => 'no se ha podido almacenar el registro'], 400); } } else { $cliente['usuario']->delete(); return response()->json(['message' => 'no se ha podido almacenar el registro'], 400); } } else { return response()->json(['message' => 'no se ha podido almacenar el registro'], 400); } } else { $pasajero = new Pasajero($data); $pasajero->identificacion = $data['identificacion']; $pasajero->nombres = $data['nombres']; $pasajero->telefono = $data['telefono']; $pasajero->direccion = $data['direccion']; $pasajero->central_id = $central_id; if ($pasajero->save()) { return JsonResponse::create(array('message' => "Se puso en espera al pasajero correctamente", 200)); } else { return response()->json(['message' => 'no se ha podido almacenar el registro'], 400); } } $central = Central::find($central_id); if (!$central->pasajeros()->save($pasajero)) { $pasajero->delete(); return response()->json(['message' => 'no se ha podido almacenar el registro'], 400); } }
public function moverPedidoSolicitud($solicitud_id) { $solicitud = Solicitud::find($solicitud_id); $noty = new NotificacionController(); if ($solicitud->tipo == 'vehiculo') { $cliente = $solicitud->load('cliente'); if ($cliente) { $solicitud->load('datos_pasajeros'); foreach ($solicitud->datos_pasajeros as $pasajero) { $p = new Pasajero(); $p->identificacion = $pasajero->identificacion; $p->nombres = $pasajero->nombre; $p->direccion = "{$solicitud->ciudad_direccion}" . " {$solicitud->direccion_recogida}"; $p->conductor_id = $solicitud->conductor_id; $p->central_id = $solicitud->central_id; $p->telefono = $solicitud->cliente->telefono; $p->estado = 'Asignado'; if ($p->save()) { json_decode($noty->enviarNotificacionConductores('Se te asigno un nuevo pasajero', $solicitud->conductor_id, 'Pasajeros')); } } } } if ($solicitud->tipo == 'paquete') { $p = new Paquete(); $solicitud->load('detalles', 'cliente'); foreach ($solicitud->detalles as $detalle) { $p->conductor_id = $solicitud->conductor_id; $p->central_id = $solicitud->central_id; $p->ide_remitente = $solicitud->cliente->identificacion; $p->nombres = $solicitud->cliente->nombres . $solicitud->cliente->apellidos; $p->telefono = $solicitud->cliente->telefono; $p->direccion = "{$solicitud->ciudad_direccion}" . " {$solicitud->direccion_recogida}"; $p->nombre_receptor = $detalle->destinatario; $p->telefono_receptor = $detalle->telefono; $p->direccionD = $detalle->direccion; $p->descripcion_paquete = $detalle->descripcion; if ($p->save()) { $noty->enviarNotificacionConductores('Se te asigno un nuevo paquete', $solicitud->conductor_id, 'Paquete'); } } } if ($solicitud->tipo == 'giro') { $g = new Giro(); $solicitud->load('detalles', 'cliente'); foreach ($solicitud->detalles as $detalle) { $g->conductor_id = $solicitud->conductor_id; $g->central_id = $solicitud->central_id; $g->ide_remitente = $solicitud->cliente->identificacion; $g->nombres = $solicitud->cliente->nombres . $solicitud->cliente->apellidos; $g->telefono = $solicitud->cliente->telefono; $g->direccion = "{$solicitud->ciudad_direccion}" . " {$solicitud->direccion_recogida}"; $g->nombre_receptor = $detalle->destinatario; $g->telefono_receptor = $detalle->telefono; $g->direccionD = $detalle->direccion; $g->monto = $detalle->descripcion; if ($g->save()) { json_decode($noty->enviarNotificacionConductores('Se te asigno un nuevo giro', $solicitud->conductor_id, 'Giro')); } } } if ($solicitud->tipo == 'pasajero') { if ($solicitud->load('datos_pasajeros')) { foreach ($solicitud->datos_pasajeros as $pasajero) { $p = new Pasajero(); $p->identificacion = $pasajero->identificacion; $p->nombres = $pasajero->nombre; $p->direccion = "{$solicitud->ciudad_direccion}" . " {$solicitud->direccion_recogida}"; $p->conductor_id = $solicitud->conductor_id; $p->central_id = $solicitud->central_id; $p->telefono = $pasajero->telefono; $p->estado = 'Asignado'; if ($p->save()) { json_decode($noty->enviarNotificacionConductores('Se te asigno un nuevo pasajero', $solicitud->conductor_id, 'Pasajeros')); } } } } }