Skip to content

Latest commit

 

History

History
163 lines (104 loc) · 5.22 KB

pt-br.md

File metadata and controls

163 lines (104 loc) · 5.22 KB

ACIM Backend

Logo

ACIM Fidelity App é um aplicativo que permite o registro de usuários, empresas, cartões de fidelidade e pontos. Os usuários podem se cadastrar, fazer login, atualizar seu perfil e recuperar sua senha. As empresas podem se registrar, atualizar seus dados e listar suas informações. Os cartões de fidelidade podem ser registrados, atualizados, listados e excluídos, juntamente com os pontos associados a eles. O aplicativo foi desenvolvido em GoLang, utilizando o SQLite3 como banco de dados e Docker/Docker Compose para o ambiente de desenvolvimento. O autor do projeto é Luis Gabriel Marchió Batista e ele pode ser contatado por meio de várias plataformas, como e-mail, LinkedIn, Github, Instagram, Discord e WhatsApp.

Esquemas

Company

  • Name
  • CNPJ
  • Address
  • Address Number
  • Address Complement
  • Address City
  • Address State
  • Address Zip Code
  • User[]

User

  • Name
  • Address
  • Phone
  • Email
  • Password
  • CompanyId (optional)
  • Type (user / employee)

CardFidelity

  • UserId
  • CompanyId
  • TotalPoints
  • Point[]
  • Finished

Point

  • CardFidelityId
  • Point: 1
  • CreatedAt
  • UpdatedAt

Funcionalidades

  • Criar empresa
  • Criar usuário
  • Listar empresas
  • Listar usuários
  • Mostrar empresa
  • Mostrar usuário
  • Atualizar empresa
  • Atualizar usuário
  • Excluir empresa
  • Excluir usuário
  • Login
  • Logout
  • Esqueci minha senha
  • Redefinir senha
  • Atualizar perfil
  • Atualizar senha
  • Controle de acesso (usuário / funcionário / admin) (middleware)

Requisitos

Schema user

  • O usuário deve ser capaz de se registrar no aplicativo com nome, email, senha e tipo (usuário / funcionário / admin).

  • O usuário deve ser capaz de atualizar nome, email e senha.

  • O usuário deve ser capaz de fazer login com email e senha.

  • O usuário deve ser capaz de recuperar a senha usando o email.

  • O usuário deve ser capaz de redefinir a senha.

  • O usuário deve ser capaz de atualizar o perfil (nome, email e senha).

  • [] O usuário deve ser capaz de atualizar a foto do perfil.

  • O usuário não deve ser capaz de criar um novo usuário com um email já registrado.

  • O usuário não deve ser capaz de atualizar o email para um email já registrado.

  • O usuário não deve ser capaz de criar um novo usuário com tipo de funcionário e empresa não registrada / não informada.

Schema company

  • O usuário deve ser capaz de registrar uma empresa com nome, CNPJ, endereço, número do endereço, complemento do endereço, cidade do endereço, estado do endereço e código postal do endereço.

  • O usuário deve ser capaz de atualizar os dados da empresa.

  • O usuário deve ser capaz de listar as empresas.

  • O usuário deve ser capaz de mostrar os dados da empresa.

  • O usuário deve ser capaz de excluir a empresa.

  • O usuário não deve ser capaz de registrar uma empresa com um CNPJ já registrado.

  • O usuário não deve ser capaz de atualizar o CNPJ para um CNPJ já registrado.

CardFidelity Schema

  • O usuário deve ser capaz de registrar um cartão fidelidade com usuário, empresa, pontos totais e pontos.

  • O usuário deve ser capaz de atualizar os dados do cartão fidelidade.

  • O usuário deve ser capaz de listar os cartões fidelidade.

  • O usuário deve ser capaz de mostrar os dados do cartão fidelidade.

  • O usuário deve ser capaz de excluir o cartão fidelidade.

Point Schema

  • O usuário deve ser capaz de registrar um ponto com cartão fidelidade, ponto e criado em.

  • O usuário deve ser capaz de atualizar os dados do ponto.

  • O usuário deve ser capaz de listar os pontos.

  • O usuário deve ser capaz de mostrar os dados do ponto.

  • O usuário deve ser capaz de excluir o ponto.

Autor

Contato