private void materiaisView_SelectionChanged(object sender, SelectionChangedEventArgs e) { e.Handled = true; /*ver o tipo de material do item selecionado, meter na grid de detalhes a informçao * desse material, tornando a visibilidade ativa dos textblocks especificos*/ String tipoMaterial = ""; if (materiaisView.SelectedItems.Count > 0) { hideAll(); addMaterial.IsEnabled = true; MaterialTextil mt = new MaterialTextil(); mt = (MaterialTextil)materiaisView.SelectedItem; tipoMaterial = dataHandler.getMaterialType(mt.Referencia); //consoante o material selecionado, tornar visivel ou a caixa de seleçao de //quantidade de material inteira ou a caixa de seleçao de quantidade de material decimal if (tipoMaterial.Equals("Pano", StringComparison.Ordinal) || tipoMaterial.Equals("Linha", StringComparison.Ordinal)) { txtQuantidadeDec.Visibility = Visibility.Visible; txtQuantidadeInt.Visibility = Visibility.Hidden; } else { txtQuantidadeInt.Visibility = Visibility.Visible; txtQuantidadeDec.Visibility = Visibility.Hidden; } if (tipoMaterial.Equals("Pano", StringComparison.Ordinal)) { Pano pano = dataHandler.getPano(mt.Referencia); txt1.Text = pano.Tipo; txt2.Text = pano.Gramagem.ToString() + " g/m^2"; txt3.Text = pano.AreaArmazem.ToString() + "m^2"; txt4.Text = pano.PrecoMetroQuadrado.ToString() + " €/m^2"; panoArea.Visibility = Visibility.Visible; panoGramagem.Visibility = Visibility.Visible; panoPreço.Visibility = Visibility.Visible; panoTipo.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Linha", StringComparison.Ordinal)) { Linha linha = dataHandler.getLinha(mt.Referencia); txt1.Text = linha.Grossura.ToString() + " cm"; txt2.Text = linha.Preco100Metros.ToString() + " €/100m"; txt3.Text = linha.ComprimentoStock.ToString() + " cm"; txt4.Text = ""; linhaGrossura.Visibility = Visibility.Visible; linhaPreço.Visibility = Visibility.Visible; linhaQuantidade.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Fecho", StringComparison.Ordinal)) { Fecho fecho = dataHandler.getFecho(mt.Referencia); txt1.Text = fecho.Comprimento.ToString() + " cm"; txt2.Text = fecho.TamanhoDente.ToString() + " cm"; txt3.Text = fecho.QuantidadeArmazem.ToString() + " un."; txt4.Text = fecho.PrecoUnidade.ToString() + " €/un."; fechoComprimento.Visibility = Visibility.Visible; fechoTamanhoDente.Visibility = Visibility.Visible; fechoPreço.Visibility = Visibility.Visible; fechoQuantidade.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Mola", StringComparison.Ordinal)) { Mola mola = dataHandler.getMola(mt.Referencia); txt1.Text = mola.Diametro.ToString() + " cm"; txt2.Text = mola.QuantidadeArmazem.ToString() + " un."; txt3.Text = mola.PrecoUnidade.ToString() + " €/un."; txt4.Text = ""; molaDiametro.Visibility = Visibility.Visible; molaPreço.Visibility = Visibility.Visible; molaQuantidade.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Botão", StringComparison.Ordinal)) { Botao botao = dataHandler.getBotao(mt.Referencia); txt1.Text = botao.Diametro.ToString() + " cm"; txt2.Text = botao.QuantidadeArmazem.ToString() + " un."; txt3.Text = botao.PrecoUnidade.ToString() + " €/un."; txt4.Text = ""; botaoDiametro.Visibility = Visibility.Visible; botaoPreço.Visibility = Visibility.Visible; botaoQuantidade.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Elástico", StringComparison.Ordinal)) { Elastico el = dataHandler.getElastico(mt.Referencia); txt1.Text = el.Comprimento.ToString() + " cm"; txt2.Text = el.Largura.ToString() + " cm"; txt3.Text = el.QuantidadeArmazem.ToString() + " un."; txt4.Text = el.PrecoUnidade.ToString() + " €/un."; elasticoComprimento.Visibility = Visibility.Visible; elasticoLargura.Visibility = Visibility.Visible; elasticoPreço.Visibility = Visibility.Visible; elasticoQuantidade.Visibility = Visibility.Visible; } else if (tipoMaterial.Equals("Fita de Velcro", StringComparison.Ordinal)) { FitaVelcro f = dataHandler.getFitaVelcro(mt.Referencia); txt1.Text = f.Comprimento.ToString() + " cm"; txt2.Text = f.Largura.ToString() + " cm"; txt3.Text = f.QuantidadeArmazem.ToString() + " un."; txt4.Text = f.PrecoUnidade.ToString() + " €/un."; velcroComprimento.Visibility = Visibility.Visible; velcroLargura.Visibility = Visibility.Visible; velcroPreço.Visibility = Visibility.Visible; velcroQuantidade.Visibility = Visibility.Visible; } } }
private void fillInfo() { design.Text = mat.Designacao; cor.Background = new SolidColorBrush((Color)ColorConverter.ConvertFromString(mat.Cor)); if (cor.Background.Equals(new SolidColorBrush((Color)ColorConverter.ConvertFromString("Black")))) { cor.Foreground = new SolidColorBrush((Color)ColorConverter.ConvertFromString("White")); } cor.Content = mat.Cor; mat.TipoMaterial1 = dataHandler.getMaterialType(mat.Referencia); if (mat.TipoMaterial1.Equals("Pano", StringComparison.Ordinal)) { Pano pano = dataHandler.getPano(mat.Referencia); txt1.Text = pano.Tipo; txt2.Text = pano.Gramagem.ToString() + " g/m^2"; txt3.Text = pano.AreaArmazem.ToString() + "m^2"; txt4.Text = pano.PrecoMetroQuadrado.ToString() + " €/m^2"; panoArea.Visibility = Visibility.Visible; panoGramagem.Visibility = Visibility.Visible; panoPreço.Visibility = Visibility.Visible; panoTipo.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Linha", StringComparison.Ordinal)) { Linha linha = dataHandler.getLinha(mat.Referencia); txt1.Text = linha.Grossura.ToString() + " cm"; txt2.Text = linha.Preco100Metros.ToString() + " €/100m"; txt3.Text = linha.ComprimentoStock.ToString() + " cm"; txt4.Text = ""; linhaGrossura.Visibility = Visibility.Visible; linhaPreço.Visibility = Visibility.Visible; linhaQuantidade.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Fecho", StringComparison.Ordinal)) { Fecho fecho = dataHandler.getFecho(mat.Referencia); txt1.Text = fecho.Comprimento.ToString() + " cm"; txt2.Text = fecho.TamanhoDente.ToString() + " cm"; txt3.Text = fecho.QuantidadeArmazem.ToString() + " un."; txt4.Text = fecho.PrecoUnidade.ToString() + " €/un."; fechoComprimento.Visibility = Visibility.Visible; fechoTamanhoDente.Visibility = Visibility.Visible; fechoPreço.Visibility = Visibility.Visible; fechoQuantidade.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Mola", StringComparison.Ordinal)) { Mola mola = dataHandler.getMola(mat.Referencia); txt1.Text = mola.Diametro.ToString() + " cm"; txt2.Text = mola.QuantidadeArmazem.ToString() + " un."; txt3.Text = mola.PrecoUnidade.ToString() + " €/un."; txt4.Text = ""; molaDiametro.Visibility = Visibility.Visible; molaPreço.Visibility = Visibility.Visible; molaQuantidade.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Botão", StringComparison.Ordinal)) { Botao botao = dataHandler.getBotao(mat.Referencia); txt1.Text = botao.Diametro.ToString() + " cm"; txt2.Text = botao.QuantidadeArmazem.ToString() + " un."; txt3.Text = botao.PrecoUnidade + " €/un."; txt4.Text = ""; botaoDiametro.Visibility = Visibility.Visible; botaoPreço.Visibility = Visibility.Visible; botaoQuantidade.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Elástico", StringComparison.Ordinal)) { Elastico el = dataHandler.getElastico(mat.Referencia); txt1.Text = el.Comprimento.ToString() + " cm"; txt2.Text = el.Largura.ToString() + " cm"; txt3.Text = el.QuantidadeArmazem.ToString() + " un."; txt4.Text = el.PrecoUnidade.ToString() + " €/un."; elasticoComprimento.Visibility = Visibility.Visible; elasticoLargura.Visibility = Visibility.Visible; elasticoPreço.Visibility = Visibility.Visible; elasticoQuantidade.Visibility = Visibility.Visible; } else if (mat.TipoMaterial1.Equals("Fita de Velcro", StringComparison.Ordinal)) { FitaVelcro f = dataHandler.getFitaVelcro(mat.Referencia); txt1.Text = f.Comprimento.ToString() + " cm"; txt2.Text = f.Largura.ToString() + " cm"; txt3.Text = f.QuantidadeArmazem.ToString() + " un."; txt4.Text = f.PrecoUnidade.ToString() + " €/un."; velcroComprimento.Visibility = Visibility.Visible; velcroLargura.Visibility = Visibility.Visible; velcroPreço.Visibility = Visibility.Visible; velcroQuantidade.Visibility = Visibility.Visible; } refFabr.Text = mat.Referencia.ToString(); refForn.Text = mat.ReferenciaFornecedor; nifForn.Text = mat.Fornecedor.NIF_Fornecedor; nomeForn.Text = mat.Fornecedor.Nome; }
private void Page_Loaded(object sender, RoutedEventArgs e) { if (IsLoaded) { nomeProduto.Text = prodPers.ProdutoBase.Nome.ToString(); //obter os materiais necessários para o produto int quantProd = Convert.ToInt32(quantidade.Text); mtProd = dataHandler.materiaisProduto((int)prodPers.ProdutoBase.Referencia, prodPers.Tamanho, (int)prodPers.ID, quantProd); ObservableCollection <MaterialTextil> materiaisProd = new ObservableCollection <MaterialTextil>(); String s = ""; foreach (MaterialTextil mt in mtProd) { //passar as funçoes pra sql s = dataHandler.getMaterialType(mt.Referencia); if (s.Equals("Pano", StringComparison.Ordinal)) { Pano p = dataHandler.getPano(mt.Referencia); mt.QuantidadeStock = p.AreaArmazem + " m^2"; mt.QuantidadeStockD = p.AreaArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir p.QuantidadeNecessaria = Convert.ToDouble(mt.QuantidadeSelecionada); materiaisProd.Add(p); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " m^2"; } else if (s.Equals("Linha", StringComparison.Ordinal)) { Linha l = dataHandler.getLinha(mt.Referencia); mt.QuantidadeStock = l.ComprimentoStock + " m"; mt.QuantidadeStockD = l.ComprimentoStock; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir l.QuantidadeNecessaria = Convert.ToDouble(mt.QuantidadeSelecionada); materiaisProd.Add(l); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " m"; } else if (s.Equals("Fecho", StringComparison.Ordinal)) { Fecho f = dataHandler.getFecho(mt.Referencia); mt.QuantidadeStock = f.QuantidadeArmazem + " un."; mt.QuantidadeStockD = f.QuantidadeArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir f.QuantidadeNecessaria = Convert.ToInt32(mt.QuantidadeSelecionada); materiaisProd.Add(f); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " un."; } else if (s.Equals("Mola", StringComparison.Ordinal)) { Mola m = dataHandler.getMola(mt.Referencia); mt.QuantidadeStock = m.QuantidadeArmazem + " un."; mt.QuantidadeStockD = m.QuantidadeArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir m.QuantidadeNecessaria = Convert.ToInt32(mt.QuantidadeSelecionada); materiaisProd.Add(m); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " un."; } else if (s.Equals("Botão", StringComparison.Ordinal)) { Botao b = dataHandler.getBotao(mt.Referencia); mt.QuantidadeStock = b.QuantidadeArmazem + " un."; mt.QuantidadeStockD = b.QuantidadeArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir b.QuantidadeNecessaria = Convert.ToInt32(mt.QuantidadeSelecionada); materiaisProd.Add(b); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " un."; } else if (s.Equals("Elástico", StringComparison.Ordinal)) { Elastico el = dataHandler.getElastico(mt.Referencia); mt.QuantidadeStock = el.QuantidadeArmazem + " un."; mt.QuantidadeStockD = el.QuantidadeArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir el.QuantidadeNecessaria = Convert.ToInt32(mt.QuantidadeSelecionada); materiaisProd.Add(el); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " un."; } else if (s.Equals("Fita de Velcro", StringComparison.Ordinal)) { FitaVelcro fv = dataHandler.getFitaVelcro(mt.Referencia); mt.QuantidadeStock = fv.QuantidadeArmazem + " un."; mt.QuantidadeStockD = fv.QuantidadeArmazem; //passar para a observable collection que tem todos os detalhes do material o double da //quantidade necessária para o produzir fv.QuantidadeNecessaria = Convert.ToInt32(mt.QuantidadeSelecionada); materiaisProd.Add(fv); //acrescentar as unidades na variavel que vai ser usada para o bind mt.QuantidadeSelecionada = mt.QuantidadeSelecionada + " un."; } } DGproduçao.ItemsSource = mtProd; } }
private void confirmar_Click(object sender, RoutedEventArgs e) { try { validarInput(); } catch (Exception ex) { Xceed.Wpf.Toolkit.MessageBox.Show(ex.Message, "ERRO", MessageBoxButton.OK, MessageBoxImage.Warning); return; } MaterialTextil material = null; if (((ComboBoxItem)tipoMaterial.SelectedItem).Name.Equals("Pano")) { material = new Pano(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColorText; material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Pano)material).Gramagem = (int)txtGramagem.Value; ((Pano)material).PrecoMetroQuadrado = (Double)txtPreçoM2.Value; ((Pano)material).Tipo = txtTipoPano.Text; } else if (((ComboBoxItem)tipoMaterial.SelectedItem).Name.Equals("Linha")) { material = new Linha(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Linha)material).Preco100Metros = Convert.ToDouble(txtPreço100M.Text); ((Linha)material).Grossura = Convert.ToDouble(txtGrossura.Text); } else if (((ComboBoxItem)tipoMaterial.SelectedItem).Name.Equals("Acessorios")) { if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("Fecho")) { material = new Fecho(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Fecho)material).TamanhoDente = Convert.ToDouble(txtTamanhoDente.Text); ((Fecho)material).Largura = Convert.ToDouble(txtLarguraFecho.Text); ((Fecho)material).Comprimento = Convert.ToDouble(txtComprimentoFecho.Text); ((Fecho)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidadeFecho.Text); Console.WriteLine(((Fecho)material).PrecoUnidade); } else if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("Mola")) { material = new Mola(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Mola)material).Diametro = Convert.ToDouble(txtDiametroMola.Text); ((Mola)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidadeMola.Text); } else if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("Botao")) { material = new Botao(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Botao)material).Diametro = Convert.ToDouble(txtDiametroBotao.Text); ((Botao)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidadeBotao.Text); } else if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("FitaVelcro")) { material = new FitaVelcro(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((FitaVelcro)material).Largura = Convert.ToDouble(txtLarguraFita.Text); ((FitaVelcro)material).Comprimento = Convert.ToDouble(txtComprimentoFita.Text); ((FitaVelcro)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidadeFita.Text); } else if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("Elastico")) { material = new Elastico(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((Elastico)material).Largura = Convert.ToDouble(txtLarguraFita.Text); ((Elastico)material).Comprimento = Convert.ToDouble(txtComprimentoFita.Text); ((Elastico)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidadeElastico.Text); } else if (((ComboBoxItem)acessorios.SelectedItem).Name.Equals("Outro")) { material = new AcessoriosCostura(); material.Fornecedor = new Fornecedor(); material.Cor = corMaterial.SelectedColor.ToString(); material.Designacao = txtDescriçãoMaterial.Text; material.Fornecedor.NIF_Fornecedor = txtFornecedorNif.Text; material.ReferenciaFornecedor = txtReferenciaFornecedor.Text; ((AcessoriosCostura)material).PrecoUnidade = Convert.ToDouble(txtPrecoUnidade.Text); } } try { dataHandler.inserirMaterial(material); } catch (Exception ex) { MessageBox.Show(ex.Message); return; } Xceed.Wpf.Toolkit.MessageBox.Show("Material adicionado á base de dados.", "Operação Concluida", MessageBoxButton.OK, MessageBoxImage.Information); this.NavigationService.GoBack(); }