Evaluating bids

Reescrita De Aplicativo De .Net Para Java Nativo

Published on the May 18, 2023 in IT & Programming

About this project

Open

OBJETIVO

Desenvolver um aplicativo para ser executado em máquinas de recebimento
PagSeguro, para a venda e controle de fichas em eventos, conforme requisitos
detalhados a seguir. Toda a solução apresentada nesta proposta será desenvolvida
pela Avante e sua equipe.

2 . Detalhamento dos requisitos

Foi feito um fluxograma (Anexo 1) que ilustra todas as funcionalidades que devem
ser implementadas no aplicativo. Vale ressaltar que cada perfil de usuário terá
acesso a um subconjunto das funcionalidades listadas, de acordo com as suas
permissões.

Estas funcionalidades listadas foram fundamentais para determinar o
cronograma e orçamento do projeto, que serão apresentados adiante. Outras
funcionalidades não listadas abaixo não fazem parte do escopo do presente projeto.
São elas:

Login: Ao abrir o aplicativo, o usuário poderá efetuar login, sendo que o
mesmo deverá ser persistente (usuário continua logado eternamente, até que
efetue logoff).

Deslogar: antes de efetuar o logoff do usuário corrente, verifica se há alguma
venda pendente. Se houver, não permite o logoff, sendo necessário primeiro
enviar a(s) venda(s) pendente(s) e fechar o caixa.
Vender ficha: ao tocar em vender ficha, será verificado se o cardápio offline
já foi baixado. Se não, faz o download do cardápio. Em seguida serão
mostradas as categorias de produtos. Após tocar em uma categoria, serão
mostrados os produtos e ao tocar neles serão adicionados automaticamente
à venda, atualizando o totalizador no rodapé. Após finalizar a seleção de
itens, o operador deverá tocar em PEDIDOS no rodapé da tela e poderá
confirmar/alterar/cancelar os itens da venda. Em seguida, o operador deve
tocar no botão PAGAMENTO no rodapé da tela, sendo possível inserir
diferentes formas de pagamento, até que seja atingido o total da venda. Após
informar os meios de pagamento, o operador deve tocar em CONFIRMAR.
Dependendo do perfil do operador, estarão disponíveis diferentes tipos de
recebimento da venda. Para recebimentos em cartão (crédito ou débito) e
pix, serão utilizadas funções da sdk da pagseguro. Para recebimentos em
dinheiro, descontos ou cortesias, será feito apenas o registro local (no
dispositivo) do recebimento. Após a finalização da venda, será impressa uma
ficha individual para cada produto vendido, que conterá um QRCode para
validação na entrega. Todas as funções acima deverão funcionar de forma
off-line, com exceção do download do cardápio e do recebimento via
PagSeguro

Validar ficha: para que esta funcionalidade possa funcionar, o operador deve
permitir que o aplicativo acesse a câmera do dispositivo. Em seguida, o
operador deve ler o QRCode com o dispositivo e validar a ficha. Caso a ficha
seja válida, será dada a opção do usuário “queimar a ficha”, ou seja, o cliente
recebe o produto e, em seguida, a ficha deixa de ter validade.

Cancelamento: ao tocar nesta opção, o usuário terá acesso à lista de fichas
vendidas, e poderá selecionar uma ou mais fichas para cancelamento. Neste
caso, as fichas selecionadas serão “queimadas”, ou seja, deixarão de ser
válidas, e o valor correspondente será retirado do caixa, em forma de
DINHEIRO. Não estão previstos estornos em outros modos de pagamento,
como cartão e PIX

Impressões: ao tocar nesta opção, o usuário poderá reimprimir qualquer
uma das fichas que tiver sido vendida. Além disso, poderá imprimir todo o
cardápio disponível.

Sincronizar: funcionalidade para forçar o envio de informações das vendas
realizadas até o momento. O envio das informações exige conectividade e as
mesmas são enviadas via API.

Enviar vendas: funcionalidade que permite ao usuário forçar o envio das
vendas já realizadas para o servidor, através de API. Esta função exige
conectividade. Após o envio, as informações não ficarão mais disponíveis
localmente no dispositivo.

Fechar caixa: funcionalidade que permite ao usuário encerrar o movimento,
enviando as informações para o servidor, através de API. Esta função exige
conectividade. Após o envio, as informações não ficarão mais disponíveis
localmente no dispositivo.

Relatório local: nesta funcionalidade, o usuário poderá gerar um relatório local, ou
seja, do movimento que ainda não foi sincronizado com o servidor, utilizando filtros
de data/hora. Após listar as informações, será possível enviar para impressão

Suprimento: funcionalidade para permitir que seja registrada a inserção de dinheiro
no caixa.
Sangria: funcionalidade para permitir que seja registrada a retirada de dinheiro do
caixa.
Testar impressora: funcionalidade que permite testar se a impressora está
funcionando, através de um relatório padrão.

Modo de venda: funcionalidade que permite informar se todas as vendas devem
acontecer de forma online ou offline. Mesmo marcando a opção online, será
verificado se há conectividade e, em caso negativo, o aplicativo continuará
permitindo a realização de vendas off-line.

Atualizar informações do operador: função para permitir que os dados do
operador sejam atualizados no dispositivo. Esta função exige conectividade
Atualizar cardápio: função para permitir que o cardápio seja atualizado no
dispositivo. Esta função exige conectividade.

Category IT & Programming
Subcategory Web development
What is the scope of the project? Medium-sized change
Is this a project or a position? Project
Required availability As needed
API Integrations Other (Other APIs), Payment Processor (Paypal, Stripe, etc.)
Roles needed Developer

Delivery term: September 13, 2023

Skills needed

Other projects posted by F. V.