matheus-vieira / solicitar

Projeto para ajudar a manter as pessoas em sua quarentena
https://matheus-vieira.github.io/solicitar/
Apache License 2.0
12 stars 2 forks source link

esse projeto está ativo? #2

Closed ghost closed 1 year ago

ghost commented 1 year ago

Olá a todos.

esse projeto está ativo?

gostaria de contribuir com algumas ideias

matheus-vieira commented 1 year ago

Opa, se quiser contribuir fique a vontade.

Na real acabou sendo mais uma ideia do que um projeto

ghost commented 1 year ago

Oi matheus-vieira.

Opa, se quiser contribuir fique a vontade. Na real acabou sendo mais uma ideia do que um projeto

Na real gostei da ideia e quero contribuir de alguma forma. valeu pelo contato e tenha um ótimo dia ou semana. Vou fechar essa issue já que respondeu minha dúvida.

matheus-vieira commented 1 year ago

Que tipo de ideias tens?

ghost commented 1 year ago

Oi matheus-vieira.

Que tipo de ideias tens?

tem uma biblioteca em js que gera pdf. pensei em utilizar a biblioteca js-pdf para gerar pdfs sobre o que cada estado, região precisa para alguma possível pandemia, ou qualquer coisa do tipo. pensei em adicionar suporte ao js-pdf no projeto solicitar.

o que pensa da ideia de adicionar suporte ao gerar pdf no projeto solicitar?

matheus-vieira commented 1 year ago

Parece uma ideia bacana, mas precisa realmente integrar com uma biblioteca de pdf?

Acho que é possível fazer o JS ler o json gerado e criar uma página para ser impressa.

Que acha?

ghost commented 1 year ago

Oi matheus-vieira.

Parece uma ideia bacana, mas precisa realmente integrar com uma biblioteca de pdf? Acho que é possível fazer o JS ler o json gerado e criar uma página para ser impressa. Que acha?

sou bem preguiçoso, gosto de coisas fáceis rs. prefiro utilizar um framework que tudo funciona da forma como é esperado, aguardado. a biblioteca js-pdf já tem suporte json, então não seria necessário codificar para isso.

matheus-vieira commented 1 year ago

Além disso teria que ter uma forma de armazenar os dados solicitados.

Hoje esses dados apenas pegam as informações e a encaminham por e-mail/WhatsApp.

Como é utilizado coisas exclusivamente estáticas, podemos realizar uma chamada um um endpoint (alguma função em uma nuvem) para realizar o armazenamento.

Tendo isso podemos ter a geração do pdf

ghost commented 1 year ago

Oi matheus-vieira.

Além disso teria que ter uma forma de armazenar os dados solicitados. Hoje esses dados apenas pegam as informações e a encaminham por e-mail/WhatsApp. Como é utilizado coisas exclusivamente estáticas, podemos realizar uma chamada um um endpoint (alguma função em uma nuvem) para realizar o armazenamento. Tendo isso podemos ter a geração do pdf

algumas ideias ou sugestões

o que pensa dessas 3 ideias?

matheus-vieira commented 1 year ago

A parte de ser serverless muito me agrada.

Não conheço esse baço de dados, mas parece ser uma boa forma de fazer o que se necessita.

Lembrando esse projeto não está em "produção" mas se essa implementação for realmente boa, pode ser utilizado em outros casos de usos

ghost commented 1 year ago

Oi matheus-vieira.

A parte de ser serverless muito me agrada. Não conheço esse baço de dados, mas parece ser uma boa forma de fazer o que se necessita. Lembrando esse projeto não está em "produção" mas se essa implementação for realmente boa, pode ser utilizado em outros casos de usos

valeu pelo comentário. posso enviar um pull-request sobre isso?

matheus-vieira commented 1 year ago

Claro que pode sim

ghost commented 1 year ago

Oi matheus-vieira.

Claro que pode sim

fiz o fork, ainda hoje envio o pull-request.

matheus-vieira commented 1 year ago

Fiz umas alterações no projeto:

matheus-vieira commented 1 year ago

As alterações já podem ser visualizadas:

estabelecimentos.json

A página que utiliza esse json continua funcionando Selecionar Estabelecimento.

ghost commented 1 year ago

Oi matheus-vieira.

Novidades: fiz o site https://solicitacoes.github.io/solicita/ vou fazer alguns testes da implementação aqui, e depois disso encaminhar na main desse projeto.

matheus-vieira commented 1 year ago

O texto que aparece inicialmente efetuei uns ajustes:

Devido à pandemia causado pelo coronavírus espalhando o covid-19 mundo afora, profissionais de saúde e governantes recomendam que as pessoas fiquem em quarentena e que se mantenha um distanciamento social. Porém, ainda precisamos de itens, serviços, e em alguns casos, doações. Com a necessidade informada acima foi disponibilizado esse site para conectar pessoas e estabelecimentos virtualmente. Precisa comprar pão, solicite a uma padaria ou mercado. Você dono de estabelecimento, utilize esse site para receber encomendas. Dessa forma evitamos superfaturamentos de plataformas de entregas. E ainda ajudamos os pequenos comerciantes. Portanto, fique em casa!

matheus-vieira commented 1 year ago

Se quiser, no meu site tem outras formas de conato comigo.

Talvez seja melhor do que aqui.

ghost commented 1 year ago

Oi matheus-vieira.

Se quiser, no meu site tem outras formas de conato comigo. Talvez seja melhor do que aqui.

viu o site novo? passa o feedback aqui: https://solicitacoes.github.io/solicita/

matheus-vieira commented 1 year ago

eu vi, inclusive o comentário anterior foi sobre esse site novo

ghost commented 1 year ago

Oi matheus-vieira.

eu vi, inclusive o comentário anterior foi sobre esse site novo

o que achou? viu o guia-passo a passo de cadastro? (ficou bom ou ruim?)

comenta aqui por favor o que acha dessa ideia image

essa mesma ui/ux que desenvolvi vou utilizar para o cadastro através do endpoint

matheus-vieira commented 1 year ago

Ficou bacana, bootsrap clássico!

Se for alterar layout recomento alterar tudo, somente o “miolo” da página vai ficar estranho, digo isso por que o cabeçalho está com outro estilo.

Na página inicial eu não sei ainda o que o usuário do sistema quer, se é solicitar ou cadastrar um estabelecimento.

Não sei qual seria o teu objetivo nesse início.

matheus-vieira commented 1 year ago

Eu também acredito que o usuário precisa de micro decisões.

No meu exemplo eu alteraria o texto "Comece aqui" por "Solicite Aqui", por questões de claridade, já o Cadastre um estabelecimento acho que está claro o suficiente.

Aliás vou altera isso já e colocar os botões para cima também.

ghost commented 1 year ago

Oi matheus-vieira.

Ficou bacana, bootsrap clássico!

valeu mano.

Se for alterar layout recomento alterar tudo, somente o “miolo” da página vai ficar estranho, digo isso por que o cabeçalho está com outro estilo.

já alterei o header e tirei o styles.css, deixei apenas a lib do boostrap pq é algo estático e não precisa está localmente como um arquivo na pasta assets. a vantagem disso, é que é aplicado a todos os arquivos sem vc precisar apontar no diretório da pasta assets.

Na página inicial eu não sei ainda o que o usuário do sistema quer, se é solicitar ou cadastrar um estabelecimento.

tó seguindo o fluxo do solicitar como era.

Não sei qual seria o teu objetivo nesse início.

o que acha da ideia de oferecer suporte múltiplo ao cadastro?

No meu exemplo eu alteraria o texto "Comece aqui" por "Solicite Aqui", por questões de claridade, já o Cadastre um estabelecimento acho que está claro o suficiente.

acho uma ótima ideia, farei isso agora.

atualização: fiz a correção do texto e do menu como pode ver aqui image

primeiro o usuário ler sobre o projeto e como seus dados serão processados. depois de ler e confirmar que leu, vai na parte de análise onde envia os dados

image

*após enviar os dados, ele pode ir para a parte de selecionar estabelecimentos ou confirmação dos dados. caso não confirme os dados, o processo/análise é anulado/arquivado. Ou seja, só é enviado após uma confirmação final.

matheus-vieira commented 1 year ago

Atualizei a minha versão com os links duplicados, podes ver aqui.

matheus-vieira commented 1 year ago

então... minha ideia é tipo adicionar uma camada de passo a passo, e depois do cadastro o usuário ter uma cópia local dos dados de cadastro, uma cópia pública no orbit-db e uma cópia externa no google drive/dropbox - caso o usuário tenha a conta num desses serviços.

Será que precisamos disso? E se utilizar um local-storage para realizar esse armazenamento apenas local, sem dependências externas para o usuário.?

o que acha da ideia de oferecer suporte múltiplo ao cadastro?

o que seria essa ideia de "múltiplo cadastro"

matheus-vieira commented 1 year ago

Hoje já uso o local storage para fazer alguns armazenamentos.

Pode ser que seja interessante ter no local storage os dados do cara para ele não ficar inserindo toda vez.

No momento que o usuário solicitar, verifica se tem informações no local storage,

ghost commented 1 year ago

Oi matheus-vieira.

o que seria essa ideia de "múltiplo cadastro"

porque ter esse recurso?

código fonte


  // Salvar localmente
  const doc = new jsPDF();
  doc.setProperties({
    title: 'Solicitar',
    subject: 'Documento de exemplo de solicitar',
    author: 'James Hall',
    keywords: 'generated, javascript, web 2.0, ajax',
    creator: 'Codehangen'
  });

  document.getElementById('cadastro').onsubmit = betterOnsubmit(values => {
    // gera o pdf a partir do client quando efetuar o submit
    doc.text(values.nome, 20, 20);
    doc.text(values.telefone, 20, 30);
    doc.text(values.whatsapp, 20, 40);
    doc.text(values.logradouro, 20, 50);
    doc.text(values.cidade, 20, 60);
    doc.text(values.estado, 20, 70);
    doc.text(values.bairro, 20, 80);
    doc.text(values.categoria, 20, 90);
    doc.save("cadastro.pdf");
  })

o que você pensa da ideia de maior auditabilidade? de uma maior verificação dos dados de cadastro?

atualização image

fluxograma

.
├── app "página inicial"
│   └── acessar
│   │    └── estabelecimento
|   |         └── email
|   |         └── whatsapp
│   └── registro
│   │    └── registrar contato
│   │    └── registrar estabelecimento
│   │    └── registrar solicitação
matheus-vieira commented 1 year ago

o que você pensa da ideia de maior auditabilidade? de uma maior verificação dos dados de cadastro?

Na real não havia pensado sobre isso na época.

A ideia era basicamente agilizar a solicitação de itens em supermercado. Por mais que foi solicitado a quarentena, e toda a ideia de ficar em casa, ainda precisávamos ir ao mercado comprar coisas como pão, leite, carne, etc.

ghost commented 1 year ago

Oi matheus-vieira.

Na real não havia pensado sobre isso na época.

entendo.

A ideia era basicamente agilizar a solicitação de itens em supermercado. Por mais que foi solicitado a quarentena, e toda a ideia de ficar em casa, ainda precisávamos ir ao mercado comprar coisas como pão, leite, carne, etc.

Então pensei em algo assim:

image

fluxo ideal

  1. o usuário 1 pode solicitar itens, serviços ou doações. Esse tipo de usuário deve também registrar o estabelecimento, assim como a quantidade de itens. (esse processo inicial é a cópia local interna de cadastro - utiliza-se localstorage/session para enviar dados entre as páginas, isso evita ter que preencher a página novamente em caso de alguma falha de conexão ou problema geral) cópia 1
  2. Após isso, o usuário 1 clica na parte de solicitar compra. Então é enviado uma cópia dos dados para um servidor externo, isso é feito através de uma chamada ajax via uma api rest para armazenar os dados do cadastro no momento do submit. (esse processo é conhecido como cópia remota) cópia 2
  3. Após a cópia dos dados ser enviado a um servidor externo, é avisado ao usuário 1 que todos os dados de solicitação de compras são disponíveis e acessíveis publicamente. Ao confirmar este aviso, é enviado uma cópia da solicitação da compra pelo orbit-db. cópia 3
  4. Após ser feita a cópia do arquivo para o acesso público, é avisado ao usuário 1 que deve fazer o backup das informações de forma privada para não perder os dados. Nesse caso final, é enviado uma cópia da solicitação da compra pelo google drive ou dropbox. cópia 4
  5. Após isso, é avisado ao usuário que deve deixar uma cópia para acesso temporário (esse processo é conhecido como "cópia do arquivo para o acesso temporário" - isso é feito para que uma ou mais pessoas possam compartilhar um link de uma cópia do arquivo seja para sua mídia social de preferência ou conhecimento. bem como, pode compartilhar o link desse arquivo para uma ou mais pessoas também. cópia 5
  6. por fim é gerado o pdf local com as demais informações da solicitação de compra. (esse processo é a "cópia local externa de cadastro", onde é gerado uma cópia dos dados locais registrados em localstorage/session para o formato de arquivo .pdf) cópia 6

como podemos ver esse é o processo do "múltiplo cadastro" (O que você pensa desse fluxo de trabalho?)

matheus-vieira commented 1 year ago

Gostei da ideia do fluxo, faz total sentido.

Mas o dado salvo externamente deve ser configurado para não ser armazenado por X tempo, sendo um tempo curto como dias.

Além de tudo estar como plano "de graça" e avisar antes de fazer um pagamento.