Executando verificação de segurança...
1
J3ff
1 min de leitura ·

Dúvidas sobre um sistema de doações por créditos.

Olá, eu sou o Jeff e estou desenvolvendo um sistema no qual o usuário pode trocar resíduos orgânicos por créditos online. Esse sistema está sendo criado para um projeto social no qual as pessoas doarão resíduos orgânicos que serão processados e transformados em adubo, usado para o cultivo de hortaliças. Em troca da doação dos resíduos, o usuário receberá créditos que poderão ser trocados por hortaliças ou negociados com outros usuários. Esse projeto está sendo desenvolvido na minha escola e terá um volume baixo de acessos, sendo o público-alvo algumas famílias carentes e pequenas empresas. Estou usando o MySQL.

Minha maior dúvida está relacionada à parte do banco de dados. Como eu o estruturo, a parte das relações entre as tabelas e tudo mais. Até agora, estou perdido, pois todas as minhas tentativas deram errado.

Entre minhas tentativas de construir o banco de dados, inicialmente tentei criar 3 tabelas: a de usuários, moedas e resíduos. A de moedas teria uma relação one-to-one como a de usuários e one-to-many para resíduos, onde a cada nova doação eu adicionaria o id do resíduo à relação e somaria a quantidade de moedas recebidas por aquela quantidade de resíduo. Mas o problema que eu encontrei foi em trocar essa moeda com outros usuários.

Carregando publicação patrocinada...
1

E qual é a sua dúvida sobre a parte do banco especificamente?
Qual banco de dados você ta usando ?
Qual o volume de acessos ?
Que tipo de público você quer alcançar ?
É um projeto acadêmico ?

Complementa aí pra poder te ajudar.

0
1

Bem aparentemente seu problema está na modelagem, eu aconselho a estudar sobre diagramas, o
MER - Modelo de Entidade Relacionamento é um excelente exemplo de por onde começar e entender onde entra o que.

Para ir te dando uma luz pelo que entendi no seu texto você tem muito mais entidades(tabelas) do que você montou.

Eu faria da seguinte forma:

Usuário
Id,
Nome,
etc

Extrato
Id,
IdUsuario,
Valor,
Tipo de movimentação(Débito ou Crédito),
Natureza da operação( Se o que motivou o registro for uma transferência seria T, se foi uma compra seria G, se for um recebimento de crédito por entrega de resíduo seria C)

Resíduos
Id,
IdExtrato ( Pra você saber o crédito que foi gerado pela entrada do resido),
Quantidade,
Tipo,
Etc,

O saldo do usuário seria a crédito - débito toda vez que o usuário quisesse saber ou usar o saldo você faria o cálculo dele e se ficar negativo trava a movimentação.

Para as outras naturezas eu faria outras tabelas para ter o controle dessas operações.

Vale ressaltar que modelagem é algo tem interpretativo e há mil forma de fazer isso.

Em vez de ir direto para o script vai montando diagrama verificando e validando as suas entidades.

0
1

Cite algumas das suas tentativas!
Por cima, bem por cima, não me parece algo complicado!

Mas como o que vc diz é bem por cima também, não da pra saber muito!
precisamos de mais dados!

0