- Vá para a seção "Database".
- Clique em "Create a Class" e nomeie a classe como
Category
. - Adicione os seguintes campos:
name
(String) - Nome da categoria- Outros campos relacionados à categoria, se necessário.
- Salve as configurações da classe
- Clique em "Create a Class" novamente e nomeie a classe como
Item
. - Adicione os seguintes campos:
name
(String) - Nome do itemdescription
(String) - Descrição do itemprice
(Number) - Preçocategory
(Pointer toCategory
) - Ponteiro para a classeCategory
imageURL
(File) - Arquivo de imagem do itemavailability
(Boolean) - Disponibilidade do itemhighlighted
(Boolean) - Destaque do itemdeletedAt
(Date) - Data de exclusão do item (campo opcional)itemId
(Number) - Identificador único do item
- Salve as configurações da classe.
- Clique em "Create a Class" novamente e nomeie a classe como
IDAutoGen
. - Adicione os seguintes campos:
nameClass
(String) - Nome da classe para a qual os IDs serão geradosnextId
(Number) - Próximo ID a ser atribuído
- Salve as configurações da classe.
Parse.Cloud.define("createOrUpdateItem", async (req) => {...})
: Gerencia a criação ou atualização de um item, verificando se um item já existe com base no ID fornecido e atualizando ou criando um novo item.Parse.Cloud.define("createOrUpdateItems", async (req) => {...})
: Permite a criação ou atualização de vários itens simultaneamente.async function getOrCreateItemId(itemId) {...}
: Obtém ou cria um novo ID para um item, gerando um novo se não for fornecido.async function getNextId(className, receivedId) {...}
: Obtém o próximo ID disponível para uma classe específica, incrementando o valor de ID na classeIDAutoGen
.async function findOrCreateObject(className, fieldName, fieldValue) {...}
: Busca ou cria um novo objeto em uma classe específica com base em um campo e valor fornecidos.function maskSensitiveData(req) {...}
: Usada para mascarar dados sensíveis em requisições, como IDs de aplicativos e chaves de API.
{
"itemId": 1,
"name": "Mussarela",
"description": "Mussarela, tomate e orégano",
"price": 34.90,
"category": "Pizzas",
"availability": true,
"highlighted": false
}
{
"items": [
{
"itemId": 2,
"name": "X-Bacon",
"description": "Carne bovina, queijo, bacon, tomate, cebola, alface, catchup e maionese",
"price": 19.50,
"category": "Lanches",
"availability": true,
"highlighted": false
},
{
"itemId": 3,
"name": "Batata",
"description": "Batata, queijo e bacon",
"price": 30.00,
"category": "Porções",
"availability": false,
"highlighted": true
},
{
"itemId": 6,
"name": "Pizza de Pepperoni",
"description": "Mussarela, molho de tomate, pepperoni e orégano",
"price": 40.00,
"category": "Pizzas",
"availability": true,
"highlighted": true
}
]
}