Estás leyendo la publicación: Cómo realizar operaciones CRUD usando API en Magento 2
use Proveedor\Módulo\Api\CustomInterface;
use Proveedor\Módulo\Modelo\ModuleFactory;
clase Custom implementa CustomInterface
{
privado $moduleFactory;
presupuesto privado $;
$respuesta protegida = [‘success’ => false];
función pública __construct(moduleFactory $moduleFactory, \Magento\Quote\Model\Quote $quote)
{
$this->quote = $quote;
$this->moduleFactory = $moduleFactory;
}
/** * GET para Post api * @param string $title * @return string */
función pública getPost($título)
{
$insertData = $this->moduleFactory->create();
intentar {
$insertarDatos->setTitle($datos[‘title’])->guardar();
$respuesta = [‘success’ => true, ‘message’ => $data];
} atrapar (\Excepción $e) {
$respuesta = [‘success’ => false, ‘message’ => $e->getMessage()];
}
devolver $respuesta;
}
/** * cadena @return */
función pública getData()
{
intentar {
$data = $this->moduleFactory->create()->getCollection()->getData();
devolver $datos;
} atrapar (\Excepción $e) {
devolver [‘success’ => false, ‘message’ => $e->getMessage()];
}
}
/** * @param int $id * @return bool verdadero en caso de éxito */
función pública getDelete($id)
{
intentar {
si ($id) {
$data = $this->moduleFactory->create()->load($id);
$datos->eliminar();
devolver “éxito”;
}
} atrapar (\Excepción $e) {
$respuesta = [‘success’ => false, ‘message’ => $e->getMessage()];
}
falso retorno”;
}
/** * @param int $id * @return cadena */
función pública getById($id)
{
intentar {
si ($id) {
$data = $this->moduleFactory->create()->load($id)->getData();
devolver [‘success’ => true, ‘message’ => json_encode($data)];
}
} atrapar (\Excepción $e) {
devolver [‘success’ => false, ‘message’ => $e->getMessage()];
}
}
/** * GET para Post api * @param string $title * @return string */
función pública getEdit($título)
{
$editar = file_get_contents(“php://input”);
$datos = json_decode($editar, verdadero);
$insertData = $this->moduleFactory->create();
$id = $datos[‘id’];
si ($id) {
intentar {
$insertarDatos->cargar($id);
$insertarDatos->setTitle($datos[‘title’])->guardar();
$respuesta = [‘success’ => true, ‘message’ => $data];
} atrapar (\Excepción $e) {
$respuesta = [‘success’ => false, ‘message’ => $e->getMessage()];
}
}
respuesta de retorno;
}
}