public function grabardataAction()
 {
     try {
         $SesionUsuarioPlugin = $this->SesionUsuarioPlugin();
         $usuario_id = $SesionUsuarioPlugin->getUsuarioId();
         $EntityManagerPlugin = $this->EntityManagerPlugin();
         $MarcacionData = new MarcacionData();
         $MarcacionBO = new MarcacionBO();
         $MarcacionBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $respuesta = $SesionUsuarioPlugin->isLoginAdmin();
         if ($respuesta == false) {
             return false;
         }
         $body = $this->getRequest()->getContent();
         $json = json_decode($body, true);
         $accion = $json['accion'];
         //I, M
         $MarcacionData->setMarcacionSec($json['marcacion_sec']);
         $MarcacionData->setClienteId($json['cliente_id']);
         $MarcacionData->setNombre($json['nombre']);
         $MarcacionData->setDireccion($json['direccion']);
         $MarcacionData->setPaisId($json['pais_id']);
         $MarcacionData->setCiudad($json['ciudad']);
         $MarcacionData->setContacto($json['contacto']);
         $MarcacionData->setTelefono($json['telefono']);
         $MarcacionData->setTipoCajaDefaultId($json['tipo_caja_default_id']);
         $MarcacionData->setZip($json['zip']);
         $MarcacionData->setEstado($json['estado']);
         $response = new \stdClass();
         switch ($accion) {
             case 'I':
                 $MarcacionData->setUsuarioIngId($usuario_id);
                 $result = $MarcacionBO->ingresar($MarcacionData);
                 break;
             case 'M':
                 $MarcacionData->setUsuarioModId($usuario_id);
                 $result = $MarcacionBO->modificar($MarcacionData);
                 break;
             default:
                 $result['validacion_code'] = 'ERROR';
                 $result['respuesta_mensaje'] = 'ACCESO NO VALIDO';
                 break;
         }
         //end switch
         //Se consulta el registro siempre y cuando el validacion_code sea OK
         if ($result['validacion_code'] == 'OK') {
             $row = $MarcacionBO->consultar($json['marcacion_sec'], \Application\Constants\ResultType::MATRIZ);
         } else {
             $row = null;
         }
         //end if
         //Retorna la informacion resultante por JSON
         $response = new \stdClass();
         $response->respuesta_code = 'OK';
         $response->validacion_code = $result['validacion_code'];
         $response->respuesta_mensaje = $result['respuesta_mensaje'];
         if ($row) {
             $response->row = $row;
             $response->cbo_estado = \Application\Classes\ComboGeneral::getComboEstado($row['estado'], "");
         } else {
             $response->row = null;
             $response->cbo_estado = '';
         }
         //end if
         $json = new JsonModel(get_object_vars($response));
         return $json;
         //false
     } catch (\Exception $e) {
         $excepcion_msg = utf8_encode($this->ExcepcionPlugin()->getMessageFormat($e));
         $response = $this->getResponse();
         $response->setStatusCode(500);
         $response->setContent($excepcion_msg);
         return $response;
     }
 }