/**
  * 
  * @param int $grupo_precio_cab_id
  * @param istring $producto_id
  * @param string $variedad_id
  * @param string $grado_id
  * @return \Dispo\Data\GrupoPrecioDetData|NULL
  */
 public function consultar($grupo_precio_cab_id, $producto_id, $variedad_id, $grado_id)
 {
     $GrupoPrecioDetData = new GrupoPrecioDetData();
     $sql = ' SELECT grupo_precio_det.* ' . ' FROM grupo_precio_det ' . ' WHERE grupo_precio_cab_id = :grupo_precio_cab_id ' . '   and producto_id		= :producto_id' . '   and variedad_id		= :variedad_id' . '   and grado_id		= :grado_id';
     $stmt = $this->getEntityManager()->getConnection()->prepare($sql);
     $stmt->bindValue(':grupo_precio_cab_id', $grupo_precio_cab_id);
     $stmt->bindValue(':producto_id', $producto_id);
     $stmt->bindValue(':variedad_id', $variedad_id);
     $stmt->bindValue(':grado_id', $grado_id);
     $stmt->execute();
     $row = $stmt->fetch();
     //Se utiliza el fecth por que es un registro
     if ($row) {
         $GrupoPrecioDetData->setGrupoPrecioCabId($row['grupo_precio_cab_id']);
         $GrupoPrecioDetData->setProductoId($row['producto_id']);
         $GrupoPrecioDetData->setVariedadId($row['variedad_id']);
         $GrupoPrecioDetData->setGradoId($row['grado_id']);
         $GrupoPrecioDetData->setPrecio($row['precio']);
         $GrupoPrecioDetData->setPrecioOferta($row['precio_oferta']);
         return $GrupoPrecioDetData;
     } else {
         return null;
     }
     //end if
 }
 function grabarAction()
 {
     try {
         $SesionUsuarioPlugin = $this->SesionUsuarioPlugin();
         $EntityManagerPlugin = $this->EntityManagerPlugin();
         $GrupoPrecioCabBO = new GrupoPrecioCabBO();
         $GrupoPrecioCabBO->setEntityManager($EntityManagerPlugin->getEntityManager());
         $respuesta = $SesionUsuarioPlugin->isLoginAdmin();
         if ($respuesta == false) {
             return false;
         }
         $body = $this->getRequest()->getContent();
         $json = json_decode($body, true);
         $GrupoPrecioDetData = new GrupoPrecioDetData();
         $GrupoPrecioDetData->setGrupoPrecioCabId($json['grupo_precio_cab_id']);
         $GrupoPrecioDetData->setProductoId($json['producto_id']);
         $GrupoPrecioDetData->setVariedadId($json['variedad_id']);
         $GrupoPrecioDetData->setGradoId($json['grado_id']);
         $GrupoPrecioDetData->setPrecio($json['precio']);
         $GrupoPrecioDetData->setPrecioOferta($json['precio']);
         $result = $GrupoPrecioCabBO->registrarPrecio($json['tipo_precio'], $GrupoPrecioDetData);
         //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'];
         $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;
     }
 }