コード例 #1
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
        private void TextboxFiltrarClientes_OnTextChange(object sender, EventArgs e)
        {
            Utilizadores        user       = new Utilizadores();
            List <Utilizadores> userFiltro = bd.UtilizadoresSet.Where(nif => nif.NIF.ToString().Contains(textboxFiltrarClientes.text)).ToList();

            listBoxClientes.list.DataSource = userFiltro;
        }
コード例 #2
0
ファイル: clientes.cs プロジェクト: vinksmoke/StarStand
        private void btnEditClientes_Click(object sender, EventArgs e)
        {
            DataGridViewRow selectedRow = dgv_selectedRow();
            Utilizadores    user        = (Utilizadores)selectedRow.DataBoundItem;

            acessGerirClientes(user);
        }
コード例 #3
0
ファイル: clientes.cs プロジェクト: vinksmoke/StarStand
        public void Dgv_Clientes_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            decimal         totalOficina = 0;
            DataGridViewRow selectedRow  = dgv_selectedRow();
            Utilizadores    user         = (Utilizadores)selectedRow.DataBoundItem;

            //carroOficina
            if (user != null)
            {
                labelValorNCarros.Text = user.CarroOficina.Count.ToString();
                foreach (CarroOficina carro in user.CarroOficina)
                {
                    foreach (Servicos servico in carro.Servicos)
                    {
                        totalOficina += servico.Parcela.Sum(v => v.Valor);
                    }
                }
                labelValorTotalGOficina.Text = totalOficina.ToString() + " €";

                labelValorCarrosComprados.Text = user.Venda.Count.ToString();
                labelTotalGastoVenda.Text      = user.Venda.Sum(v => v.Valor) + " €";
                labelValorCarrosAlugados.Text  = user.Aluguer.Count.ToString();
                labelTotalGastoAluguer.Text    = user.Aluguer.Sum(v => v.Valor) + " €";
            }
        }
コード例 #4
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
        private void BtnDeleteCarros_Click(object sender, EventArgs e)
        {
            if (listBoxCarros.list.SelectedIndex != -1)
            {
                DialogResult dialog = MessageBox.Show("Tem a certeza que quere eliminar", "Comfimação", MessageBoxButtons.YesNo);
                if (dialog == DialogResult.Yes)
                {
                    int indexCliente = listBoxClientes.list.SelectedIndex;

                    CarroOficina carro        = listBoxCarros.list.SelectedItem as CarroOficina;
                    CarroOficina carro_apagar = (CarroOficina)bd.CarrosSet.Find(carro.IdCarro);
                    bd.CarrosSet.Remove(carro_apagar);

                    bd.SaveChanges();
                    lerdadosclientes();
                    listBoxClientes.list.SelectedIndex = indexCliente;
                    Utilizadores user = listBoxClientes.list.SelectedItem as Utilizadores;
                    lerdadosCarros(user);
                    listBoxServicos.list.DataSource = null;
                    listBoxParcela.list.DataSource  = null;
                    panelParcela.Visible            = false;
                }
                cancelarServico();
            }
            else
            {
                MessageBox.Show("Tem de selecionar um carro");
            }
        }
コード例 #5
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
        private void BtnEliminarParcela_Click(object sender, EventArgs e)
        {
            if (listBoxParcela.list.SelectedIndex != -1)
            {
                int indexCliente = listBoxClientes.list.SelectedIndex;
                int indexCarros  = listBoxCarros.list.SelectedIndex;
                int indexServico = listBoxServicos.list.SelectedIndex;

                Parcela parcela        = listBoxParcela.list.SelectedItem as Parcela;
                Parcela parcela_apagar = (Parcela)bd.ParcelaSet.Find(parcela.IdParcela);
                bd.ParcelaSet.Remove(parcela_apagar);
                bd.SaveChanges();


                lerdadosclientes();
                listBoxClientes.list.SelectedIndex = indexCliente;
                Utilizadores user = listBoxClientes.list.SelectedItem as Utilizadores;
                lerdadosCarros(user);
                listBoxCarros.list.SelectedIndex = indexCarros;
                CarroOficina carro = listBoxCarros.list.SelectedItem as CarroOficina;
                lerdadosServicos(carro);
                listBoxServicos.list.SelectedIndex = indexServico;
                Servicos servico = listBoxServicos.list.SelectedItem as Servicos;
                lerdadosParcela(servico);
            }
            else
            {
                MessageBox.Show("Tem de selecionar uma parcela");
            }
        }
コード例 #6
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
        private void ListBoxClientes_ChangeSeletedIndex(object sender, EventArgs e)
        {
            Utilizadores user = listBoxClientes.list.SelectedItem as Utilizadores;

            lerdadosCarros(user);
            listBoxCarros.list.SelectedIndex = -1;
            listBoxServicos.list.DataSource  = null;
            cancelarServico();
        }
コード例 #7
0
ファイル: clientes.cs プロジェクト: vinksmoke/StarStand
        //Funções
        public void acessGerirClientes(Utilizadores user)
        {
            GerirClientes frm = new GerirClientes(user);

            if (frm.ShowDialog() == DialogResult.OK)
            {
                lerdados();
            }
        }
コード例 #8
0
ファイル: clientes.cs プロジェクト: vinksmoke/StarStand
        private void btnRemoveClientes_Click(object sender, EventArgs e)
        {
            int             index       = dgv_Clientes.CurrentCell.RowIndex;
            DataGridViewRow selectedRow = dgv_Clientes.Rows[index];
            Utilizadores    user        = (Utilizadores)selectedRow.DataBoundItem;

            bd.Entry(user).State = EntityState.Deleted;
            bd.SaveChanges();
            lerdados();
        }
コード例 #9
0
ファイル: GerirCarros.cs プロジェクト: vinksmoke/StarStand
        private void BtnSubmeter_Click(object sender, EventArgs e)
        {
            //Campos Obrigatórios
            if (textBoxMarca.Text.Equals("") || textBoxMarca.Text.Equals("Marca"))
            {
                MessageBox.Show("Marca: Campo Obrigatório!");
                return;
            }

            if (TextBoxModelo.Text.Equals("") || TextBoxModelo.Text.Equals("Modelo"))
            {
                MessageBox.Show("Modelo: Campo Obrigatório!");
                return;
            }

            if (TextboxMatricula.Text.Equals("") || TextboxMatricula.Text.Equals("Matricula"))
            {
                MessageBox.Show("Matricula: Campo Obrigatório!");
                return;
            }

            //Validações
            if (comboboxCombustivel.Text.Equals("Combustível"))
            {
                MessageBox.Show("Comustível: Selecione um tipo de combustível!");
                return;
            }

            if (Globalcarro != null)
            {
                Utilizadores user  = bd.UtilizadoresSet.Single(Utilizadores => Utilizadores.IdUtilizador == idUtilizador);
                CarroOficina carro = user.CarroOficina.Single(carros => carros.IdCarro == Globalcarro.IdCarro);
                carro.Marca           = textBoxMarca.Text.Trim();
                carro.Modelo          = TextBoxModelo.Text.Trim();
                carro.Matricula       = TextboxMatricula.Text.Trim();
                carro.Combustivel     = comboboxCombustivel.SelectedText.Trim();
                bd.Entry(carro).State = EntityState.Modified;
            }
            else
            {
                CarroOficina carro = new CarroOficina();
                carro.Marca       = textBoxMarca.Text.Trim();
                carro.Modelo      = TextBoxModelo.Text.Trim();
                carro.Matricula   = TextboxMatricula.Text.Trim();
                carro.Combustivel = comboboxCombustivel.SelectedText.Trim();
                carro.Kms         = 1;
                carro.UtilizadoresIdUtilizador = idUtilizador;
                bd.CarrosSet.Add(carro);
            }

            bd.SaveChanges();
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
コード例 #10
0
ファイル: ExtendAluguer.cs プロジェクト: vinksmoke/StarStand
        public override string ToString()
        {
            StarDBContainer bd   = new StarDBContainer();
            Utilizadores    user = bd.UtilizadoresSet.Where(id => id.IdUtilizador == UtilizadoresIdUtilizador).First();

            if (Kms == null)
            {
                return(DataInicio + "" + user.Nome);
            }
            else
            {
                return("(Concluido)-" + user.Nome + "-" + Valor);
            }
        }
コード例 #11
0
 private void btnEditClientes_Click(object sender, EventArgs e)
 {
     if (listboxClientes.list.SelectedIndex != -1)
     {
         Utilizadores  user = listboxClientes.list.SelectedItem as Utilizadores;
         GerirClientes frm  = new GerirClientes(user);
         if (frm.ShowDialog() == DialogResult.OK)
         {
             lerdadosClientes();
         }
     }
     else
     {
         MessageBox.Show("Tem de selecionar um cliente");
     }
 }
コード例 #12
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
        //Parcelas
        private void BtnAdicionarParcela_Click(object sender, EventArgs e)
        {
            if (listBoxServicos.list.SelectedIndex != -1)
            {
                if (textBoxDescricao.Text == "" || textBoxValorParcela.Text == ValorParcela || textBoxValorParcela.Text == "")
                {
                    MessageBox.Show("Tem de preencher todos os campos");
                    return;
                }
                int      indexCliente = listBoxClientes.list.SelectedIndex;
                int      indexCarros  = listBoxCarros.list.SelectedIndex;
                int      indexServico = listBoxServicos.list.SelectedIndex;
                Servicos servico      = listBoxServicos.list.SelectedItem as Servicos;
                Parcela  parcela      = new Parcela();

                parcela.Descrição = textBoxDescricao.Text;
                try
                {
                    parcela.Valor = decimal.Parse(textBoxValorParcela.Text.Replace(".", ","));
                }catch (FormatException)
                {
                    MessageBox.Show("So pode inserir numeros e ','ou '.'");
                    textBoxValorParcela.Text = "";
                    return;
                }

                parcela.ServicoIdServicos = servico.IdServicos;
                bd.ParcelaSet.Add(parcela);
                bd.SaveChanges();


                lerdadosclientes();
                listBoxClientes.list.SelectedIndex = indexCliente;
                Utilizadores user = listBoxClientes.list.SelectedItem as Utilizadores;
                lerdadosCarros(user);
                listBoxCarros.list.SelectedIndex = indexCarros;
                CarroOficina carro = listBoxCarros.list.SelectedItem as CarroOficina;
                lerdadosServicos(carro);
                listBoxServicos.list.SelectedIndex = indexServico;
                servico = listBoxServicos.list.SelectedItem as Servicos;
                lerdadosParcela(servico);
            }
            else
            {
                MessageBox.Show("Tem de selecionar um serviço");
            }
        }
コード例 #13
0
        public GerirClientes(Utilizadores user)
        {
            InitializeComponent();

            //Editar dados dos clientes
            if (user != null)
            {
                btnSubmeter.Text        = "Editar";
                btnSubmeter.Normalcolor = Color.Yellow;
                textboxNome.Text        = user.Nome.ToString();
                textboxNIF.Text         = user.NIF.ToString();
                textboxTelemovel.Text   = user.Telemovel.ToString();
                textboxMorada.Text      = user.Morada.ToString();
                textboxEmail.Text       = user.Email.ToString();
                idUser = user.IdUtilizador;
            }
        }
コード例 #14
0
ファイル: GerirVendas.cs プロジェクト: vinksmoke/StarStand
 private void BtnRemoveClientes_Click(object sender, EventArgs e)
 {
     if (listboxClientes.list.SelectedIndex != -1)
     {
         DialogResult dialog = MessageBox.Show("Tem a certeza que quere eliminar", "Comfimação", MessageBoxButtons.YesNo);
         if (dialog == DialogResult.Yes)
         {
             Utilizadores user = listboxClientes.list.SelectedItem as Utilizadores;
             bd.Entry(user).State = EntityState.Deleted;
             bd.SaveChanges();
             lerdadosclientes();
         }
     }
     else
     {
         MessageBox.Show("Tem de selecionar um cliente");
     }
 }
コード例 #15
0
 private void btnRemoveClientes_Click(object sender, EventArgs e)
 {
     if (listboxClientes.list.SelectedIndex != -1)
     {
         DialogResult dialog = MessageBox.Show("Tem a certeza que quere eliminar", "Comfimação", MessageBoxButtons.YesNo);
         if (dialog == DialogResult.Yes)
         {
             Utilizadores user        = listboxClientes.list.SelectedItem as Utilizadores;
             Utilizadores user_apagar = (Utilizadores)bd.UtilizadoresSet.Find(user.IdUtilizador);
             bd.UtilizadoresSet.Remove(user_apagar);
             bd.SaveChanges();
             lerdadosClientes();
         }
     }
     else
     {
         MessageBox.Show("Tem de selecionar um cliente");
     }
 }
コード例 #16
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
 private void BtnFaturar_Click(object sender, EventArgs e)
 {
     if (listBoxServicos.list.SelectedIndex != -1)
     {
         Utilizadores user     = listBoxClientes.list.SelectedItem as Utilizadores;
         CarroOficina carro    = listBoxCarros.list.SelectedItem as CarroOficina;
         Servicos     servicos = listBoxServicos.list.SelectedItem as Servicos;
         string       textoFatura;
         textoFatura  = "<h1>StarStand</h1>";
         textoFatura += "<hr>";
         textoFatura += "<span>" + user.Nome + "</span><br>";
         textoFatura += "<span>" + user.NIF + "</span><br>";
         textoFatura += "<span>" + user.Morada + "</span><br>";
         textoFatura += "<hr>";
         textoFatura += "<h2>Dados do Carro</h2>";
         textoFatura += "<span><b>Marca :  </b>" + carro.Marca + "</span><br>";
         textoFatura += "<span><b>Modelo :  </b>" + carro.Modelo + "</span><br>";
         textoFatura += "<span><b>Matricula :  </b>" + carro.Matricula + "</span><br>";
         textoFatura += "<span><b>Combustivel :  </b>" + carro.Combustivel + "</span><br>";
         textoFatura += "<hr>";
         textoFatura += "<h2>Dados do Serviço</h2>";
         textoFatura += "<span>Iniciada :  " + servicos.DataEntrada.ToLongDateString() + "</span><br>";
         DateTime dataFim = (DateTime)servicos.DataSaida;
         textoFatura += "<span>Finalizada :  " + dataFim.ToLongDateString() + " </span><br>";
         textoFatura += "<span>Nome :  " + servicos.Nome + " </span><br>";
         textoFatura += "<span>Parcelas :  </span><br>";
         textoFatura += "<hr>";
         foreach (Parcela parcela in servicos.Parcela)
         {
             textoFatura += "<span> " + parcela.Descrição + ": " + parcela.Valor + " €</span><br>";
         }
         textoFatura += "<hr>";
         textoFatura += "<span>Total:" + servicos.Parcela.Sum(v => v.Valor) + " €</span><br>";
         IronPdf.HtmlToPdf Renderer = new IronPdf.HtmlToPdf();
         Renderer.RenderHtmlAsPdf(textoFatura).SaveAs(Directory.GetCurrentDirectory() + "\\FaturaOficina\\" + servicos.IdServicos + "_" + user.Nome + ".pdf");
     }
     else
     {
         MessageBox.Show("Tem de selecionar o serviço que quere faturar");
     }
 }
コード例 #17
0
ファイル: GerirAluguer.cs プロジェクト: vinksmoke/StarStand
 public GerirAluguer(Utilizadores user, CarroAluguer carro)
 {
     InitializeComponent();
     globalUser  = user;
     globalCarro = carro;
     if (user == null)
     {
         bd = new StarDBContainer();
         int     id      = globalCarro.Aluguer.OrderByDescending(a => a.IdAluguer).Select(a => a.IdAluguer).First();
         Aluguer aluguer = bd.AluguerSet.Single(a => a.IdAluguer == id);
         DatepickerEntrada.Enabled = false;
         textboxKms.Enabled        = true;
         DatepickerEntrada.Value   = aluguer.DataInicio;
         DatepickerSaida.Value     = (DateTime)aluguer.DataFim;
     }
     else
     {
         DatepickerEntrada.Enabled = true;
         textboxKms.Enabled        = false;
     }
 }
コード例 #18
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
 //Carros
 private void BtnAddCarros_Click(object sender, EventArgs e)
 {
     if (listBoxClientes.list.SelectedIndex != -1)
     {
         Utilizadores user          = listBoxClientes.list.SelectedItem as Utilizadores;
         int          selectedIndex = listBoxClientes.list.SelectedIndex;
         GerirCarros  frm           = new GerirCarros(user.IdUtilizador, null);
         if (frm.ShowDialog() == DialogResult.OK)
         {
             lerdadosclientes();
             listBoxClientes.list.SelectedIndex = selectedIndex;
             user = listBoxClientes.list.SelectedItem as Utilizadores;
             lerdadosCarros(user);
         }
         cancelarServico();
     }
     else
     {
         MessageBox.Show("Tem de selecionar um cliente");
     }
 }
コード例 #19
0
        //Adicionar clientes
        private void btnSubmeter_Click(object sender, EventArgs e)
        {
            if (textboxNIF.Text.Length < 9)
            {
                MessageBox.Show("Introduza 9 digitos no campo do NIF!");
                return;
            }
            if (textboxNIF.Text.Length > 9)
            {
                MessageBox.Show("Introduziu mais que 9 digitos!");
                return;
            }

            int          convnif = int.Parse(textboxNIF.Text);
            Utilizadores nif     = bd.UtilizadoresSet.FirstOrDefault(x => x.NIF == convnif);

            if (nif != null)
            {
                MessageBox.Show("O NIF introduzido já existe!");
            }

            if (textboxNome.Text.Count(c => !char.IsLetter(c) && !char.IsWhiteSpace(c)) > 0)
            {
                MessageBox.Show("Nome: Este campo só pode conter letras!");
                return;
            }

            if (!textboxEmail.Text.Contains("@"))
            {
                MessageBox.Show("Email: Campo incorreto!");
                return;
            }
            if (textboxTelemovel.Text.Count(c => char.IsDigit(c)) == 0)
            {
                MessageBox.Show("Telemóvel: Obrigatório digitos!");
                return;
            }

            if (textboxTelemovel.Text.Count(c => char.IsLetter(c)) > 0)
            {
                MessageBox.Show("Telemóvel: Este campo não permite letras!");
                return;
            }

            if (textboxTelemovel.Text.Count(c => !char.IsSymbol(c)) == 0)
            {
                MessageBox.Show("Telemóvel: Este campo não permite letras!");
                return;
            }


            //Campos para preencher obrigatóriamente!
            if (textboxNome.Text.Equals(""))
            {
                MessageBox.Show("Nome: Campo Obrigatório!");
                return;
            }

            if (textboxNIF.Text.Equals(""))
            {
                MessageBox.Show("NIF: Campo Obrigatório!");
                return;
            }

            if (textboxTelemovel.Text.Equals(""))
            {
                MessageBox.Show("Telemóvel: Campo Obritório!");
                return;
            }

            if (textboxMorada.Text.Equals(""))
            {
                MessageBox.Show("Morada: Campo Obrigatório!");
                return;
            }

            if (btnSubmeter.Text == "Inserir")
            {
                Utilizadores user = new Utilizadores();
                user.Nome      = textboxNome.Text.Trim();
                user.NIF       = int.Parse(textboxNIF.Text.Trim());
                user.Morada    = textboxMorada.Text.Trim();
                user.Telemovel = textboxTelemovel.Text.Trim();
                user.Email     = textboxEmail.Text.Trim();
                bd.UtilizadoresSet.Add(user);
            }
            else
            {
                Utilizadores user = bd.UtilizadoresSet.Single(Utilizadores => Utilizadores.IdUtilizador == idUser);
                user.Nome            = textboxNome.Text.Trim();
                user.NIF             = int.Parse(textboxNIF.Text.Trim());
                user.Morada          = textboxMorada.Text.Trim();
                user.Telemovel       = textboxTelemovel.Text.Trim();
                user.Email           = textboxEmail.Text.Trim();
                bd.Entry(user).State = EntityState.Modified;
            }

            //Verificações ao tentar submeter
            //Restrições


            bd.SaveChanges();
            this.DialogResult = DialogResult.OK;
            this.Close();
        }
コード例 #20
0
ファイル: oficina.cs プロジェクト: vinksmoke/StarStand
 public void lerdadosCarros(Utilizadores user)
 {
     bd = new StarDBContainer();
     listBoxCarros.list.DataSource = user.CarroOficina.ToList();
 }
コード例 #21
0
ファイル: GerirVendas.cs プロジェクト: vinksmoke/StarStand
        private void BtnSubmeter_Click(object sender, EventArgs e)
        {
            bd = new StarDBContainer();
            if (listboxClientes.list.SelectedIndex != -1)
            {
                if (comboboxCombustivel.Text.Equals("Combustível"))
                {
                    MessageBox.Show("Comustível: Selecione um tipo de combustível!");
                    return;
                }
                if (comboBoxEstado.Text.Equals("Estado"))
                {
                    MessageBox.Show("Estado: Selecione um tipo de estado!");
                    return;
                }
                Utilizadores user = listboxClientes.list.SelectedItem as Utilizadores;

                Venda venda = new Venda();
                venda.Data   = DateTime.Now;
                venda.Estado = comboBoxEstado.Text;
                try
                {
                    venda.Valor = decimal.Parse(textboxValor.Text.Replace(".", ","));
                }
                catch (FormatException)
                {
                    MessageBox.Show("So pode inserir numeros e '.' ou ','");
                    textboxValor.Text = "";

                    setplaceholder(textboxValor, VALOR);
                    return;
                }
                venda.UtilizadoresIdUtilizador = user.IdUtilizador;
                CarroVenda carro = new CarroVenda();
                carro.Marca       = textBoxMarca.Text.Trim();
                carro.Modelo      = TextBoxModelo.Text.Trim();
                carro.Matricula   = TextboxMatricula.Text.Trim();
                carro.Combustivel = comboboxCombustivel.Text;
                if (textBoxExtras.Text == EXTRA || textBoxExtras.Text == "")
                {
                    carro.Extras = null;
                }

                else
                {
                    carro.Extras = textBoxExtras.Text;
                }
                venda.CarroVenda = carro;
                bd.CarrosSet.Add(carro);
                bd.VendaSet.Add(venda);
                bd.SaveChanges();

                CarroOficina carroOficina = new CarroOficina();
                carroOficina.Marca       = venda.CarroVenda.Marca;
                carroOficina.Modelo      = venda.CarroVenda.Modelo;
                carroOficina.Matricula   = venda.CarroVenda.Matricula;
                carroOficina.Combustivel = venda.CarroVenda.Combustivel;
                carroOficina.Kms         = 0;
                carroOficina.UtilizadoresIdUtilizador = venda.UtilizadoresIdUtilizador;
                bd.CarrosSet.Add(carroOficina);
                bd.SaveChanges();
                this.Close();
            }
        }