Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 28 additions & 0 deletions avaliacoes/diario-oficial/testes/ContratoTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import org.junit.Test;
import static org.junit.Assert.*;

import java.time.LocalDate;

public class ContratoTest {

@Test
public void testConstrutorEDadosBasicos() {
LocalDate dataAssinatura = LocalDate.of(2023, 1, 1);
LocalDate dataPublicacao = LocalDate.of(2023, 1, 5);
double valor = 50000.00;
String objeto = "Serviços de limpeza";

Contrato contrato = new Contrato(dataAssinatura, dataPublicacao, valor, objeto);

assertEquals(dataAssinatura, contrato.getDataAssinatura());
assertEquals(dataPublicacao, contrato.getDataPublicacao());
assertEquals(valor, contrato.getValor(), 0.01);
assertEquals(objeto, contrato.getObjeto());
}

@Test
public void testImprimirPublicacaoNaoLancaExcecao() {
Contrato contrato = new Contrato(LocalDate.now(), LocalDate.now(), 2000, "Teste");
contrato.imprimirPublicação();
}
}
11 changes: 11 additions & 0 deletions avaliacoes/diario-oficial/testes/CorrigendaTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import org.junit.Test;
import static org.junit.Assert.*;

public class CorrigendaTest {

@Test
public void testImprimirPublicacaoNaoLancaExcecao() {
Corrigenda corrigenda = new Corrigenda("Texto de exemplo");
corrigenda.imprimirPublicação();
}
}
35 changes: 35 additions & 0 deletions avaliacoes/diario-oficial/testes/DiarioOficialTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
import org.junit.Test;
import static org.junit.Assert.*;

import java.util.ArrayList;

public class DiarioOficialTest {

@Test
public void testAddPublicacao() {
DiarioOficial diario = new DiarioOficial();
Publicacao p = new Corrigenda("Texto de exemplo");
diario.addPublicação(p);
assertEquals(1, diario.getPublicacoes().size());
assertEquals(p, diario.getPublicacoes().get(0));
}

@Test
public void testDeletePublicacao() {
DiarioOficial diario = new DiarioOficial();
Publicacao p1 = new Corrigenda("Um");
Publicacao p2 = new Corrigenda("Dois");
diario.addPublicação(p1);
diario.addPublicação(p2);
diario.deletePublicação(p1);
assertEquals(1, diario.getPublicacoes().size());
assertEquals(p2, diario.getPublicacoes().get(0));
}

@Test
public void testImprimirDiarioNaoLancaExcecao() {
DiarioOficial diario = new DiarioOficial();
diario.addPublicação(new Corrigenda("Exemplo"));
diario.imprimirDiario();
}
}
11 changes: 11 additions & 0 deletions avaliacoes/diario-oficial/testes/LegislacaoTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import org.junit.Test;
import static org.junit.Assert.*;

public class LegislacaoTest {

@Test
public void testImprimirPublicacaoNaoLancaExcecao() {
Legislacao legislacao = new Legislacao("LEI Nº 123", "Texto completo");
legislacao.imprimirPublicação();
}
}
11 changes: 11 additions & 0 deletions avaliacoes/diario-oficial/testes/LicitacaoTest.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
import org.junit.Test;
import static org.junit.Assert.*;

public class LicitacaoTest {

@Test
public void testImprimirPublicacaoNaoLancaExcecao() {
Licitacao licitacao = new Licitacao("Objeto", "Modalidade", 10000.0);
licitacao.imprimirPublicação();
}
}
15 changes: 15 additions & 0 deletions avaliacoes/restaurante/Cliente.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
public class Cliente extends Pessoa {
private int numFid;
public Cliente(String nome, String cpf, Endereço endereco, int numFid) {
super(nome, cpf, endereco);
this.numFid = numFid;
}

public int getNumFid() {
return numFid;
}

public void setNumFid(int numFid) {
this.numFid = numFid;
}
}
52 changes: 52 additions & 0 deletions avaliacoes/restaurante/Endereço.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
public class Endereço {

private String rua;
private String numero;
private String bairro;
private String cidade;

public Endereço(String rua, String numero, String bairro, String cidade) {
this.rua = rua;
this.numero = numero;
this.bairro = bairro;
this.cidade = cidade;
}


public String getRua() {
return rua;
}

public void setRua(String rua) {
this.rua = rua;
}

public String getNumero() {
return numero;
}

public void setNumero(String numero) {
this.numero = numero;
}

public String getBairro() {
return bairro;
}

public void setBairro(String bairro) {
this.bairro = bairro;
}

public String getCidade() {
return cidade;
}

public void setCidade(String cidade) {
this.cidade = cidade;
}

public String toString() {
return rua + ", " + numero + ", " + bairro + ", " + cidade;
}

}
25 changes: 25 additions & 0 deletions avaliacoes/restaurante/Funcionario.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
public class Funcionario extends Pessoa {
private String cargo;
private String ctp;


public Funcionario(String nome, String cpf, String cargo, Endereço endereco, String ctp) {
super(nome, cpf, endereco);
this.cargo = cargo;
this.ctp = ctp;
}

public String getCargo() {
return cargo;
}
public void setCargo(String cargo) {
this.cargo = cargo;
}

public String getCtp() {
return ctp;
}
public void setCtp(String ctp) {
this.ctp = ctp;
}
}
9 changes: 9 additions & 0 deletions avaliacoes/restaurante/INFCGenerator.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import java.util.ArrayList;
import java.util.UUID;

public interface INFCGenerator {
void setIdentificacao(UUID id);
void setEmitente(String cnpj);
void addItens(ArrayList<Item> itens);
void setTotal(float total);
}
31 changes: 31 additions & 0 deletions avaliacoes/restaurante/Item.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
public class Item {

private Produto produto;
private int quantidade;
private float valorVenda;

public Item(Produto produto, int quantidade, float valorVenda) {
this.produto = produto;
this.quantidade = quantidade;
this.valorVenda = valorVenda;
}

public Produto getProduto() {
return produto;
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public int getQuantidade() {
return quantidade;
}
public void setQuantidade(int quantidade) {
this.quantidade = quantidade;
}
public float getValorVenda() {
return valorVenda;
}
public void setValorVenda(float valorVenda) {
this.valorVenda = valorVenda;
}
}
20 changes: 20 additions & 0 deletions avaliacoes/restaurante/Menu.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
import java.util.ArrayList;

public class Menu {
private ArrayList<Produto> produtos = new ArrayList<>();

public void adicionarProduto(Produto produto) {
produtos.add(produto);
}

public void show() {
System.out.println("--- MENU ---");
for (Produto p : produtos) {
System.out.printf("%s - R$ %.2f\n", p.getNome(), p.getPreco());
}
}

public ArrayList<Produto> getProdutos() {
return produtos;
}
}
27 changes: 27 additions & 0 deletions avaliacoes/restaurante/Mesa.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
import java.util.ArrayList;

public class Mesa {
private int numero;
private Funcionario garcom;
private ArrayList<Pedido> pedidos = new ArrayList<>();


public Mesa(int numero) {
this.numero = numero;
}

public void adicionarPedido(Pedido pedido) {
pedidos.add(pedido);
}

public void setGarcom(Funcionario garcom){
this.garcom = garcom;
}

public int getNumero() {
return numero;
}
public ArrayList<Pedido> getPedidos() {
return pedidos;
}
}
69 changes: 69 additions & 0 deletions avaliacoes/restaurante/MyApp.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
import java.util.ArrayList;


public class MyApp {
public static void main(String[] args) {

Endereço enderecoRestaurante = new Endereço("Av. Central", "1000", "Centro", "Serra");
Endereço enderecoCliente = new Endereço("Rua das Acácias", "45", "Jardim", "Serra");
Endereço enderecoFuncionario = new Endereço("Rua das Palmeiras", "22", "Bela Vista", "Serra");


Menu menuPrincipal = new Menu();
Produto pizza = new Produto("Pizza Calabresa", 30.00f, 0.15f);
Produto suco = new Produto("Suco Natural", 10.00f, 0.08f);
Produto sobremesa = new Produto("Pudim", 12.00f, 0.10f);
menuPrincipal.adicionarProduto(pizza);
menuPrincipal.adicionarProduto(suco);
menuPrincipal.adicionarProduto(sobremesa);

ArrayList<Menu> menus = new ArrayList<>();
menus.add(menuPrincipal);

Mesa mesa1 = new Mesa(1);
ArrayList<Mesa> mesas = new ArrayList<>();
mesas.add(mesa1);

Restaurante restaurante = new Restaurante("Sabores da Serra", enderecoRestaurante, menus, mesas);


Funcionario garcom = new Funcionario("João", "123.456.789-00", "Garçom", enderecoFuncionario, "CTP12345");
mesa1.setGarcom(garcom);

Cliente cliente = new Cliente("Maria", "987.654.321-00", enderecoCliente, 5);
Pedido pedido = new Pedido(cliente);

pedido.adicionarItem(new Item(pizza, 2, pizza.getPreco()));
pedido.adicionarItem(new Item(suco, 1, suco.getPreco()));
pedido.adicionarItem(new Item(sobremesa, 1, sobremesa.getPreco()));


mesa1.adicionarPedido(pedido);


Pagamento pagamento = new PagamentoPix(100.00f);
pedido.pagar(pagamento);

System.out.println("\n====== STATUS FINAL ======");
System.out.println("Restaurante: " + restaurante.getNome());
System.out.println("Endereço: " + restaurante.getEndereco());

System.out.println("\n--- CARDÁPIO ---");
for (Produto prod : menuPrincipal.getProdutos()) {
System.out.printf("%s - R$ %.2f\n", prod.getNome(), prod.getPreco());
}

System.out.println("\n--- MESAS ---");
for (Mesa mesa : restaurante.getMesas()) {
System.out.println("Mesa " + mesa.getNumero());
System.out.println("Garçom: " + mesa.getPedidos().get(0).getNotaFiscal() != null ? mesa1.getPedidos().get(0).getNotaFiscal().toString() : "Sem nota");
for (Pedido p : mesa.getPedidos()) {
System.out.println("Pedido do cliente: " + p.getNotaFiscal() != null ? cliente.getNome() : "Sem nome");
System.out.println("Itens:");
for (Item item : p.getNotaFiscal() != null ? p.getNotaFiscal().getItens() : new ArrayList<Item>()) {
System.out.println("- " + item.getProduto().getNome());
}
}
}
}
}
Loading