public function guardar(Actividades $actividad) { $id = (int) $actividad->getActividadesId(); if ($actividad->getActividadesFecha()) { $fecha = $actividad->getActividadesFecha(); } else { $fecha = null; } if ($actividad->getActividadesFechaFin()) { $fecha_fin = $actividad->getActividadesFechaFin(); } else { $fecha_fin = null; } if ($id == "") { $data = array('actividades_nombre' => $actividad->getActividadesNombre(), 'actividades_fecha' => $fecha, 'actividades_estado' => $actividad->getActividadesEstado(), 'actividades_responsable' => $actividad->getActividadesResponsable(), 'actividades_area' => $actividad->getActividadesArea(), 'actividades_reporta' => $actividad->getActividadesReporta(), 'actividades_fecha_fin' => $fecha_fin); $this->tableGateway->insert($data); $lastId = $this->tableGateway->adapter->getDriver()->getConnection()->getLastGeneratedValue(); return $lastId; } else { if ($this->obtenerPorId($id)) { $data = array('actividades_nombre' => $actividad->getActividadesNombre(), 'actividades_fecha' => $fecha, 'actividades_estado' => $actividad->getActividadesEstado(), 'actividades_responsable' => $actividad->getActividadesResponsable(), 'actividades_area' => $actividad->getActividadesArea(), 'actividades_reporta' => $actividad->getActividadesReporta(), 'actividades_fecha_fin' => $fecha_fin); $this->tableGateway->update($data, array('actividades_id' => $id)); return $id; } else { throw new \Exception('El Id no existe!'); } } }