This repository was archived by the owner on Oct 17, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
This repository was archived by the owner on Oct 17, 2024. It is now read-only.
feat/exposicoes-firebase #168
Copy link
Copy link
Closed
Description
Descrição
Adicionar métodos do firebase para exposições de itens do acervo
Tarefas
- Criar arquivo
utils\exposicoesFirebase.ts - Criar interface
Exposicao - Atualizar as regras para os novos caminhos adicionados
- Alterar getColecoes e getItensColecao para permitirem um parâmetro de query opcional com a lista de ids a serem buscados
interfaces/Exposicao
- Adicionar campos
nome: string,
descricao:? string,
privado: boolean,
permanente:boolean,
dataInicio?:Date,
dataFim?:Date,
colecoes: Map[string,string[]|ItemAcervo[]] //mapeando os itens ou a lista de ids para cada colecao,
dataCriacao: Date,
imagem: ImagemexposicoesFirebase.ts
- Criar classe ClientExposicaoFirebase
- Criar classe ConverterExposicaoFirebase
Converter
Caso algum dos métodos não funcione com
withConverter, é necessário chamá-los diretamente no método da classe Client
- Adicionar método toFirestore que converte uma exposição para um formato válido, caso a classe Map do javascript não seja compatível com o Map do firebase converter para um formato válido, se não, apenas converter para um objeto sem o id
- Adicionar método fromFirestore que converte o item acrescentando o id de acordo com o caminho e converte as colecoes para um Map, adiciona a data de criação como a data atual por padrão (não deve ser necessário preencher essa data no objeto)
Client
- Adicionar método
listExposicoesque retorna todas as exposições, sem carregar os itens - Adicionar método
getExposicaoque retorna uma exposição com o id especificado, casowithItemsseja verdadeiro retorna também os itens completos com suas imagens - Adicionar método
addExposicaoque adiciona uma nova exposição - Adicionar método
updateExposicaoque altera as informações da exposição, e muda o caminho (em uma transação do firestore), caso a privacidade mude - Adicionar método
deleteExposicaoque remove uma exposição (itens e coleções não são alterados)
Issues Necessárias
Nenhuma
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request
Type
Projects
Status
Concluído