Skip to content

Sistema Financiero - Larevel, Vue.js, PWA, Firebase, Heroku, Git, Materialize.css e ...

Notifications You must be signed in to change notification settings

FranciscoWallison/Laravel-Vue.js

Repository files navigation

Proposta do Trabalho

Texto

Este trabalho tem como objetivo desenvolver um Sistema de Gestão Administrativo / Financeiro, oferecendo serviços de otimização de atividades no setor financeiro, com as funcionalidades de contas a pagar e receber, gerenciamento de contas bancárias e fluxo de caixa. Além de oferecer informações que ajudam os setores estratégicos, dando apoio à tomada de decisão, oferecendo uma boa interação e acessibilidade dos serviços. Serão utilizados modelos como multi-tenancy, modelo na qual nasceu com a computação em nuvem, e PWA (Progressive Web Apps) dando uma melhor interação dos seus serviços.

Pequeno resumo

Este projeto teve como objetivo de criar um sistem financeiro utilizando PWA,
para o TCC do curso Sistema de informação.
Algumas tecnologias utilizadas: Laravel, Vue.js, jquery, heroku, firebase,
push notification, php, javascript ...

Telas

Dashboard

Na página principal, temos um pequeno resumo da situação financeira.

Dashboard IMG

image4

Cadastro da conta bancária no sistema, para o levantamento do salto total do cliente.

Cadastro da conta bancária IMG

image7

Na funcionalidade, fluxo de caixa, há uma tabela que tem os seguintes dados: o saldo final, saldo do mês anterior, geração de caixa, recebimentos, outras receitas, receitas de vendas, pagamento e despesas financeiras. Pode-se baixar o relatório da tabela no formato .csv.

Fluxo de caixa IMG

image6

Na funcionalidade extratos a receber, há uma tabela que tem os seguintes dados: valor, saldo, lançamento e data. No rodapé da página, há a soma do total recebido, total de pagamentos, número de lançamentos e total do período.

Extratos a receber IMG

image9

Na funcionalidade de contas a receber há uma tabela que tem os seguintes dados: valor da conta, descrição e data do vencimento da conta. No rodapé da página, há a soma das contas pagas, a pagar, vencidas e o total.

Contas a receber IMG

image8

Na funcionalidade de contas a pagar, há uma tabela que tem os seguintes dados: valor da conta, descrição e data do vencimento da conta. No rodapé da página, há a soma das contas pagas, a pagar, vencidas e o total de pagamentos feitos.

Contas a pagar IMG

image10


Oques é SaaS?

  • Significa Software como serviço
  • Ambiente Compartilhado.
  • Customizações por Cliente
  • Atentimento a vários clientes
  • Utiliza arquitetura multe-tenancy.
  • Ideal em cloud server

O que é multi-tenancy?

  • Tenancy Significada: Locação Arrendamento
  • Em ti: Inquilino
  • Vários Clientes Por Aplicação
  • Aplicavel quando aplicação vira um produto
  • Clientes Compartilham Estrutua
  • Escopo do Multi-Tenancy: Usuário, Empresas, Etc.
  • Isolar as Unformações Logicamente
  • Falha de um cliente não pode afetar em outro

Qual Modelo Utilizar?

  • Não há Verdade do Universo
  • Enternder o Contexto que Será Aplicado
  • Entender as Customizações
  • Númemos de Usuários
  • Recursos a Serem Utilizados

MODELOS DE IMPLEMENTAÇÃO

TIPO (Tudo isolado (container, hadware, banco de dados))

  • Alto nivel de segurança
  • Alto consumo de hardware
  • Monitoramento Individual

TIPO (Conatiner compartilhado, banco de dados diferente)

  • Customização
  • Consistencia dos dados
  • Volume de consumo
  • Muitos Usuarios por TENANT

TIPO (Tudo compaartilhado (container, hadware, banco de dadoss))

  • Muitos TENANTS envolvidos
  • Baixa Customização

libs

- hyn/multi-tenant (trabalhas com subdominhos)
- orchestral/tenanti (trabalhas com varias instancias de bancos )

Vuex Single Source of Truth (SSOT).

[Flux](https://facebook.github.io/flux/docs/in-depth-overview.html#content) 

O que é a fonte única da verdade?

O Conceito (Analogia do Armazém):
Imagine estruturar todas as informações da aplicação concentrando-as em um único lugar, que chamaremos de "Armazém". Neste modelo, os componentes visuais não retêm dados próprios; eles funcionam apenas como referência.

A regra é clara: qualquer alteração de informação deve ser feita exclusivamente neste Armazém. Como o acesso é centralizado, se modificarmos algo no Armazém, todos os componentes que consomem esses dados receberão a resposta atualizada instantaneamente.

É como uma biblioteca central: todos os componentes precisam consultá-la para obter informações, pois os dados oficiais residem nela e somente nela. Componentes podem até manter estados locais para interações menores, mas os dados vitais do negócio são sempre capturados dessa fonte principal.

Analogia Técnica:
Este conceito é amplamente utilizado em bancos de dados relacionais. Por exemplo, ao criarmos uma tabela de pedidos, não duplicamos os dados do cliente em cada venda; apenas criamos um apontamento (chave estrangeira) para a tabela de clientes. Assim, mantemos o ID vinculado e, caso alguém atualize o cadastro do cliente na origem, todas as consultas de pedidos refletirão essa mudança automaticamente, garantindo a integridade dos dados.

Push Notificantion

http://vineeshnp.com/push-notification-on-progressive-web-apps-with-firebase-cloud-messaging/

https://console.firebase.google.com/project/sisfin-2bb72/settings/cloudmessaging/

Link para Projeto

https://intense-dawn-46739.herokuapp.com/app#!/login

Login

cliente5@user.com
cliente15@user.com
cliente16@user.com

Senha

secret

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •