DelphiParseServer
- Quiet · last change 5-18-2024
- ★ 5 on GitHub
README
Guia do Projeto
Capítulo 1: Estrutura do Banco de Dados
1. Criar Classes no Back4App
1.1 Criar a Classe Category
- 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
1.2 Criar a Classe Item
- 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 classeCategoryimageURL(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.
1.3 Criar a Classe IDAutoGen
- 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.
Capítulo 2: Descrição das Funções do main.js
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.
Exemplo de JSON para createOrUpdateItem
{
"itemId": 1,
"name": "Mussarela",
"description": "Mussarela, tomate e orégano",
"price": 34.90,
"category": "Pizzas",
"availability": true,
"highlighted": false
}Exemplo de JSON para createOrUpdateItems
{
"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
}
]
}
