Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Criar endpoint e componente de atividades do usuário por data #1612

Closed

Conversation

marlonangeli
Copy link

Mudanças realizadas

Adiciona um endpoint que busca as atividades do usuário por dia, sendo uma soma de posts e comentários criados, queria saber a opinião de vocês sobre contabilizar os TabCoins e TabCash.

Endpoint adicionado:
GET /api/v1/users/[username]/activity

Exemplo de resposta:

{
    "id": "56c8cbcc-a678-41c4-a0c3-6e280570f163",
    "activity": [
        {
            "count": 1,
            "date": "2024-01-24"
        }
    ]
}

Resolve #1599

Tipo de mudança

  • Nova funcionalidade

Checklist:

  • Testar query com conteúdos mais antigos (anos)
  • Adicionar mais testes
  • Criar componente para interface
  • Melhorar abordagem em filterOutput

Copy link

vercel bot commented Jan 24, 2024

@marlonangeli is attempting to deploy a commit to the TabNews Team on Vercel.

A member of the Team first needs to authorize it.

Copy link
Collaborator

@Rafatcb Rafatcb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@marlonangeli obrigado pela contribuição!

Não vi os testes e deixei o PR como Draft porque ainda falta implementar outras coisas (como você disse, TabCoin e TabCash).

Qual o formato de resposta esperado ao final? Hoje está:

{
  id: string;
  activity: {
    count: number;
    date: string;
  }[]
}

Imagino que precisará renomear count para algo como contents_created, já que também será retornado a quantidade de TabCoins e TabCash.

Vai querer considerar separadamente os ganhos e gastos? Porque se eu receber 20 TabCoins numa publicação em um dia, mas eu qualificar 15 conteúdos diferentes, será um dia "negativo" em TabCoins. E TabCoins gastos para qualificar outros conteúdos, apesar de serem um débito no total, tem um tipo de "valor" bem diferente de perder TabCoin por receber um voto negativo.

A funcionalidade ainda não está clara para mim.

created_at: output.created_at,
updated_at: output.updated_at,
};
if (output.activity)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Não sei se essa é a melhor forma de definir o filteredOutputValues, mas de todo modo, sugiro utilizar chaves { e } no if e no else para facilitar a identificação dos blocos.

const query = {
text: `
SELECT
COUNT(*)::int as count,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Precisa desse cast aqui?

async function getHandler(request, response) {
const userTryingToGet = user.createAnonymous();
const userDataFromDatabase = await user.findOneByUsername(request.query.username, {
withBalance: false,
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Não precisa passar withBalance: false porque já é o padrão.

@Rafatcb Rafatcb marked this pull request as draft January 27, 2024 16:19
@Rafatcb Rafatcb added the back Envolve modificações no backend label Feb 3, 2024
@Rafatcb Rafatcb added the pendente Aguardando ação do autor do Pull Request label Feb 17, 2024
@Rafatcb
Copy link
Collaborator

Rafatcb commented Feb 27, 2024

@marlonangeli Mais uma vez, obrigado pela contribuição!

Estou fechando o PR por ter modificações pendentes há um mês, assim mantemos o repositório organizado.

Caso deseje dar continuidade à este PR, pode realizar as alterações sugeridas e reabrir o PR 👍

Sobre o formato de resposta mais adequado para atender essa necessidade, creio que o melhor lugar para discutir seja no próprio issue.

@Rafatcb Rafatcb closed this Feb 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
back Envolve modificações no backend pendente Aguardando ação do autor do Pull Request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Tabela de atividades e contribuições do usuário
2 participants