示例#1
0
        //Adicinar e Guardar um Produto
        public int AdicionarProduto(Produto.Categoria categoria, string descrição, float preço, int quantidade)
        {
            Produto novoProduto = new Produto(categoria, descrição, preço, quantidade);

            bool existe = false;

            //Ver se já existe
            foreach (Produto produto in stock)
            {
                if (String.Compare(novoProduto.descricao, produto.descricao) == 0)
                {
                    existe              = true;
                    produto.quantidade += quantidade;
                }
            }
            if (existe == true)
            {
                Console.WriteLine("Produto Adicionado com Sucesso");
                SaveStock();
                return(1);
            }
            else
            {
                stock.Add(novoProduto);
                SaveStock();
                return(1);
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            Stock        stock    = new Stock();
            Registos     registos = new Registos();
            ListaFaturas faturas  = new ListaFaturas();



            registos.RegistarFuncionario("Caixa", "123", "Caixa");

            //Carregar os ficheiros
            stock.leituraStock();
            registos.leituraRegistos();
            faturas.leituraFaturas();
            //Login
            Console.WriteLine("---------- LOGIN ----------");
            Console.Write("\t Username  : "******"\t Password  : "******"\n");

            //resultadoLogin = Cargo do user logado
            string resultadoLogin = registos.Login(username, pw);

            if (String.Compare("gerente", resultadoLogin, true) == 0)
            {
startGerente:
                Console.Clear();
                Console.WriteLine("---------- Menu -> {0} ----------", resultadoLogin);
                Console.WriteLine("\n1 - Adicionar Funcionário");
                Console.WriteLine("2 - Apagar Funcionário");
                Console.WriteLine("3 - Vender");
                Console.WriteLine("0 - Logout");
                string respostaMenu = Console.ReadLine();

                switch (respostaMenu)
                {
                case "1":
                    Console.Clear();
                    Console.Write("\t Username  : "******"\t Password  : "******"\t Cargo  : ");
                    string cargoNovo = Console.ReadLine();
                    Console.WriteLine("\n");
                    Console.Clear();

                    //RegistarFuncionario() devolve:
                    // 0 se o utilizador já existir
                    // 1 se o registo for aceite
                    int resultadoRegisto = registos.RegistarFuncionario(usernameNovo, pwNova, cargoNovo);

                    if (resultadoRegisto == 0)
                    {
                        Console.Clear();
                        Console.WriteLine("Já existe");
                        Console.ReadKey();
                        goto startGerente;
                    }

                    else
                    {
                        Console.WriteLine("Registo efetuado com sucesso");
                        Console.ReadKey();
                        goto startGerente;
                    }
                    break;

                case "2":
                    Console.Clear();
                    Console.WriteLine("Insira o username do funcionario a apagar: ");
                    string userApagar = Console.ReadLine();

                    //apagarFuncionarios devolve:
                    // 1 se apagar
                    // 0 user não existir
                    int apagou = registos.apagarFuncionario(userApagar);
                    if (apagou == 1)
                    {
                        Console.Clear();
                        Console.WriteLine("User apagado com sucesso");
                        Console.ReadKey();
                        goto startGerente;
                    }
                    else
                    {
                        Console.Clear();
                        Console.WriteLine("User não existe");
                        Console.ReadKey();
                        goto startGerente;
                    }
                    break;

                case "3":

                    break;

                case "0":
                    //Dá restart na aplicação
                    //"Logout"
                    var fileName = Assembly.GetExecutingAssembly().Location;
                    System.Diagnostics.Process.Start(fileName);
                    break;

                default:
                    break;
                }
            }

            if (String.Compare("repositor", resultadoLogin, true) == 0)
            {
startRepositor:
                Console.Clear();
                Console.WriteLine("---------- Menu -> {0} ----------", resultadoLogin);
                Console.WriteLine("\n1 - Listar Produtos");
                Console.WriteLine("2 - Adicionar Produtos");
                Console.WriteLine("3 - Atualizar stock");
                Console.WriteLine("4 - Remover Produtos");
                Console.WriteLine("5 - Limpar Lista");
                Console.WriteLine("0 - Logout");
                string respostaRepositor = Console.ReadLine();

                switch (respostaRepositor)
                {
                case "0":
                    //Dá restart na aplicação
                    //"Logout"
                    var fileName = Assembly.GetExecutingAssembly().Location;
                    System.Diagnostics.Process.Start(fileName);
                    break;

                case "2":
                    //AdicionarProduto
                    //Devolve 1 se adicionar corretamente
                    //Devolve 0 se não adicionar

                    Console.Clear();
                    Console.WriteLine("Escolha a categoria:");
                    Console.WriteLine("1 - Congelados");
                    Console.WriteLine("2 - Prateleira");
                    Console.WriteLine("3 - Enlatados");
                    int escolha = int.Parse(Console.ReadLine());
                    Produto.Categoria categoriaa = (Produto.Categoria)escolha;

                    Console.Clear();
                    Console.WriteLine("Descrição: ");
                    string descricaoProduto = Console.ReadLine();
                    Console.WriteLine("Preço:");
                    float preço = float.Parse(Console.ReadLine());
                    Console.WriteLine("Quantidade a adicionar:");
                    int quantidade = int.Parse(Console.ReadLine());

                    int resultadoAdicionar = stock.AdicionarProduto(categoriaa, descricaoProduto, preço, quantidade);
                    if (resultadoAdicionar == 1)
                    {
                        Console.Clear();
                        Console.WriteLine("Adicionado com Sucesso!");
                        Console.ReadKey();
                        goto startRepositor;
                    }
                    else
                    {
                        Console.Clear();
                        Console.WriteLine("Nao Adicionou!");
                        Console.ReadKey();
                        goto startRepositor;
                    }

                    break;

                case "1":
                    Console.Clear();
                    stock.ListarProdutos();
                    Console.ReadKey();
                    goto startRepositor;
                    break;


                case "4":
                    Console.Clear();
                    Console.WriteLine("Insira o produto a apagar: ");
                    string produtoApag = Console.ReadLine();
                    int    x           = stock.RemoverStock(produtoApag);

                    if (x == 1)
                    {
                        Console.Clear();
                        Console.WriteLine("Produto apagado com sucesso");
                        Console.ReadKey();
                        goto startRepositor;
                    }
                    else
                    {
                        Console.Clear();
                        Console.WriteLine("Produto não existe");
                        Console.ReadKey();
                        goto startRepositor;
                    }

                case "3":
                    Console.Clear();
                    Console.WriteLine("Insira o produto a atualizar: ");
                    string produtoAtualizar = Console.ReadLine();
                    Console.WriteLine("Insira a quantidade a atualizar: +/- quantidade");
                    string quantiAtualizar = Console.ReadLine();
                    int    novaQuantidade  = stock.AtualizarStock(produtoAtualizar, quantiAtualizar);
                    Console.Clear();
                    if (novaQuantidade > 0)
                    {
                        Console.WriteLine("Stock atualizado com sucesso!\nO seu produto tem agora {0} unidades", novaQuantidade);
                        Console.ReadKey();
                    }
                    else
                    {
                        Console.WriteLine("Impossivel");
                        Console.ReadKey();
                    }
                    goto startRepositor;

                default:

                    break;
                }
            }

            if (String.Compare("caixa", resultadoLogin, true) == 0)
            {
startCaixa:
                Console.Clear();
                Console.WriteLine("Insira o nome do cliente:");
                string nomeCliente = Console.ReadLine();
                Console.Clear();
                string         descProduto           = "";
                List <Produto> listaProdutosVendidos = new List <Produto>();
                float          preçoTotal            = 0;
                ArrayList      arrayQuantidades      = new ArrayList();

                do
                {
                    stock.ListarProdutos();
                    Console.WriteLine("\n\nInsira a descrição do produto a adicionar");
                    descProduto = Console.ReadLine();


                    if (descProduto == "0")
                    {
                        break;
                    }
                    else
                    {
                        Console.WriteLine("Insira a quantidade do produto a adicionar:");
                        int quantidade = int.Parse(Console.ReadLine());
                        arrayQuantidades.Add(quantidade);

                        stock.venderProduto(descProduto, quantidade);
                        Console.Clear();
                        listaProdutosVendidos.Add(stock.getProduto(descProduto));
                        preçoTotal += stock.getProduto(descProduto).preço *quantidade;
                    }
                } while (descProduto != "0");


                faturas.RegistarFatura(username, nomeCliente, preçoTotal, listaProdutosVendidos, arrayQuantidades);
                faturas.SaveFaturas();
                Console.Clear();
                Fatura faturaNova = new Fatura();
                faturaNova = faturas.GetFatura(username, nomeCliente, preçoTotal, listaProdutosVendidos);


                Console.WriteLine(faturaNova.ToString());
                Console.ReadKey();
                goto startCaixa;
            }


            else
            {
                Console.Clear();
                Console.WriteLine(resultadoLogin);
                Console.ReadKey();
            }
        }