Skip to content

Commit

Permalink
feat: set option to set the currency of the sales order as the custom…
Browse files Browse the repository at this point in the history
…er's country default currency
  • Loading branch information
matheus-mondaini committed May 29, 2023
1 parent e1e19dc commit dcadd56
Show file tree
Hide file tree
Showing 13 changed files with 79 additions and 53 deletions.
Binary file not shown.
Binary file not shown.
Binary file modified .vs/PedidoInternacional/v17/.futdcache.v2
Binary file not shown.
Binary file modified .vs/PedidoInternacional/v17/.suo
Binary file not shown.
Binary file modified .vs/ProjectEvaluation/pedidointernacional.metadata.v7.bin
Binary file not shown.
Binary file modified .vs/ProjectEvaluation/pedidointernacional.projects.v7.bin
Binary file not shown.
132 changes: 79 additions & 53 deletions PedidoInternacional/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -272,81 +272,107 @@ public static void CriarPedido (List<Cliente> clientes, List<Vendedor> vendedore
Console.Write("Digite o código numérico do vendedor: ");
}

Vendedor? vendedor = vendedores.Find(v => v.Codigo.Equals(codVendedor));

if (vendedor == null)
{
Console.WriteLine("Vendedor não encontrado");
return;
}

Console.Write("Código do cliente: ");
int codCliente;
while(!int.TryParse(Console.ReadLine(), out codCliente))
{
Console.Write("Digite o código numérico do cliente: ");
}

Console.Write("Código da moeda: ");
string? codMoeda = Console.ReadLine();

Vendedor? vendedor = vendedores.Find(v => v.Codigo.Equals(codVendedor));
Cliente? cliente = clientes.Find(c => c.Codigo.Equals(codCliente));
Moeda? moeda = moedas.Find(m => m.Codigo == codMoeda);

if (vendedor == null)
Console.WriteLine("Vendedor não encontrado");

if (cliente == null)
{
Console.WriteLine("Cliente não encontrado");
return;
}

if (moeda == null)
Console.WriteLine("Moeda não encontrada");
Moeda? moeda;
Console.Write("Deseja usar a moeda do país do cliente? (S/N): ");
string? usarMoedaCliente = Console.ReadLine();

while(usarMoedaCliente != "S" && usarMoedaCliente != "N")
{
Console.Write("Escolhan sim ou não (S/N): ");
usarMoedaCliente = Console.ReadLine();
}

if (usarMoedaCliente?.ToUpper() == "S")
{
moeda = cliente?.Pais?.Moeda;
Console.WriteLine($"Será utilizada a moeda {moeda?.Codigo}");
}
else
{
List<Produto> produtosPedido = new List<Produto>();
Console.Write("Código da moeda: ");
string? codMoeda = Console.ReadLine();

bool desejaAdicionar = true;
moeda = moedas.Find(m => m.Codigo == codMoeda);

while (desejaAdicionar)
if (moeda == null)
{
Console.WriteLine("Adicione um produto");
Console.Write("Digite o código: ");
int codProduto;
while(!int.TryParse(Console.ReadLine(), out codProduto))
{
Console.Write("Digite o código numérico do Produto: ");
}

Produto? produto = produtos.Find(p => p.Codigo.Equals(codProduto));

if (produto != null)
{
produtosPedido.Add(produto);
Console.WriteLine("Produto adicionado com sucesso");
Console.Write("Deseja adicionar mais um produto? (S/N): ");
string? sN = Console.ReadLine();
if (sN?.ToUpper() == "N")
desejaAdicionar = false;
}
else
{
Console.WriteLine("Produto não encontrado.");
Console.Write("Deseja tentar redigitar o código? (S/N): ");
string? sN = Console.ReadLine();
if (sN?.ToUpper() == "N")
desejaAdicionar = false;
}
Console.WriteLine("Moeda não encontrada");
return;
}
}

List<Produto> produtosPedido = new List<Produto>();

bool desejaAdicionar = true;

while (desejaAdicionar)
{
Console.WriteLine("Adicione um produto");
Console.Write("Digite o código: ");
int codProduto;
while (!int.TryParse(Console.ReadLine(), out codProduto))
{
Console.Write("Digite o código numérico do Produto: ");
}
if (produtosPedido.Count>0)

Produto? produto = produtos.Find(p => p.Codigo.Equals(codProduto));

if (produto != null)
{
Pedido pedido = new Pedido
{
Cliente = cliente,
Vendedor = vendedor,
Moeda = moeda,
Produtos = produtosPedido
};

pedidos.Add(pedido);
Console.WriteLine("Pedido cadastrado com sucesso");

pedido.AtualizarPreco();
produtosPedido.Add(produto);
Console.WriteLine("Produto adicionado com sucesso");
Console.Write("Deseja adicionar mais um produto? (S/N): ");
string? sN = Console.ReadLine();
if (sN?.ToUpper() == "N")
desejaAdicionar = false;
}
else
{
Console.WriteLine("Produto não encontrado.");
Console.Write("Deseja tentar redigitar o código? (S/N): ");
string? sN = Console.ReadLine();
if (sN?.ToUpper() == "N")
desejaAdicionar = false;
}

}
if (produtosPedido.Count > 0)
{
Pedido pedido = new Pedido
{
Cliente = cliente,
Vendedor = vendedor,
Moeda = moeda,
Produtos = produtosPedido
};

pedidos.Add(pedido);
Console.WriteLine("Pedido cadastrado com sucesso");

pedido.AtualizarPreco();
}
}

Expand Down
Binary file modified PedidoInternacional/bin/Debug/net7.0/PedidoInternacional.dll
Binary file not shown.
Binary file modified PedidoInternacional/bin/Debug/net7.0/PedidoInternacional.pdb
Binary file not shown.
Binary file modified PedidoInternacional/obj/Debug/net7.0/PedidoInternacional.dll
Binary file not shown.
Binary file modified PedidoInternacional/obj/Debug/net7.0/PedidoInternacional.pdb
Binary file not shown.
Binary file modified PedidoInternacional/obj/Debug/net7.0/ref/PedidoInternacional.dll
Binary file not shown.
Binary file modified PedidoInternacional/obj/Debug/net7.0/refint/PedidoInternacional.dll
Binary file not shown.

0 comments on commit dcadd56

Please sign in to comment.