Diagrama de Classe de Dominio - e1k1to/MLJ GitHub Wiki
Dicionário
Troca
A classe Troca contém os atributos ID e Data. Essa é um tipo de Pedido feito quando o cliente pretende trocar um livro usado por outro.
Compra
A classe Compra contém os atributos ID e Data. Essa é um tipo de Pedido feito quando o estabelecimento pretende comprar um livro usado do cliente.
Venda
A classe Venda contém os atributos ID e Data. Essa é um tipo de Pedido feito quando o cliente pretende comprar um livro usado do estabelecimento.
Pedido
O pedido é uma super-classe que engloba Troca, Compra e Venda. Esse contém os atributos ID, DataPedido e TipoPedido, é criado pelo Cliente, que pode definir o tipo de pedido e é finalizado pelo Funcionário quando a operação é concluída.
Cliente
A classe cliente contém os atributos Nome e CPF. Esse pode criar Pedidos e verificar o estado atual da Entrega.
Funcionário
A classe funcionário contém os atributos Nome e CPF. Esse pode Analisar o estado de um livro enviado para troca ou compra, emitir Nota Fiscal e Finalizar pedidos criados pelo cliente.
Livro
A classe Livro contém os atributos Titulo, DataLancamento, Valor e EstadoLivro. Esse é parte da entrega e tem seu estado analisado pelo Funcionário.
Pedido de Entrega
A classe PedidoDeEntrega contém os atributos ID e Status. Esse é criado pelo funcionário e tem seu Status modificado pelo Entregador.
Entregador
A classe Entregador contém os atributos Nome e CPF. Esse é responsável por realizar as entregas e atualizar o status do pedido de entrega.
Entrega
A classe Entrega contém os atributos ID, DataRegistro e DataEntrega. Essa contém Livros, pode ter seu Status verificado pelo Cliente e é realizada pelo Entregador.
Nota fiscal
A classe Nota Fiscal contém apenas o atributo NúmeroNF. Essa é emitida pelo Funcionário após a conclusão da venda.