Dos lotes aos tokens
Representei os lotes com ERC-1155 e APIs para transferência, divisão e união.

Na dissertação de mestrado construí um protótipo para seguir a história de um lote. Depois de o dividir, transferir ou juntar a outro, queria poder recuperar a sua origem e os documentos associados.
Representei os lotes com ERC-1155 e APIs para transferência, divisão e união.
Os metadados públicos ficam no IPFS. O MongoDB guarda dados agregados para consulta. Incluí verificações de coerência entre blockchain, IPFS e MongoDB para identificar divergências entre as representações de um lote.
No protótipo o backend assina com chaves de teste. A gestão de chaves e a assinatura dupla entre participantes precisam de mais trabalho antes de uma utilização real.
Descarregar a dissertação de mestrado sobre rastreabilidade (PDF) IT · 3,0 MB
API e lógica dos lotes. Materiais originais do repositório com fonte verificável.
router.get('/batches/:batchId', supplyChainController.getBatchById);
router.get('/batches/:batchId/parents', supplyChainController.getBatchParents);
router.get('/batches/:batchId/trace-history', supplyChainController.traceBatchHistory);
router.get('/batches/:batchId/descendants', supplyChainController.getBatchDescendants);
router.post('/batches/:batchId/split', upload.array('attachments'), supplyChainController.splitBatch);
router.post('/batches/:batchId/transfer', supplyChainController.transferBatch);
router.delete('/batches/:batchId', supplyChainController.burnBatch);
router.get('/batches/:batchId/status', supplyChainController.getBatchStatus);
router.put('/batches/:batchId/contamination', supplyChainController.setContaminationStatus);
router.post('/batches/:batchId/contaminate', supplyChainController.contaminateBatch);Modelar divisões e transformações de lotes ensinou-me a definir as relações antes de escolher como as guardar. Distinguir o registo original dos dados usados na consulta também me ajuda a integrar sistemas.
Protótipo de dissertação de mestrado, testado numa rede Ethereum local com Ganache e chaves de teste.
Conta-me o que queres construir ou melhorar, quem o vai usar e que limites tens. Respondo-te para percebermos por onde começar.