public ObservableCollection<Contenu_Commande_Fournisseur> PasteDataCommandeWindow() { if (Clipboard.ContainsText(TextDataFormat.Text)) { ObservableCollection<Contenu_Commande_Fournisseur> toReturn = new ObservableCollection<Contenu_Commande_Fournisseur>(); String data = Clipboard.GetText(); ObservableCollection<String> listLignes = new ObservableCollection<string>(data.Split('\n')); int nbLignes = 1; int ligneToIgnore = listLignes.Count(); foreach (String ligne in listLignes) { if (nbLignes != ligneToIgnore) { if (this.verifNombreColonnes(ligne, 4)) { ObservableCollection<String> listColonnes = new ObservableCollection<string>(ligne.Split('\t')); int i = 1; Contenu_Commande_Fournisseur toAdd = new Contenu_Commande_Fournisseur(); toAdd.Prix_Remise = 0; toAdd.Taux_Remise = 0; foreach (String colonne in listColonnes) { if (i == 1) { toAdd.Reference = colonne; } if (i == 2) { toAdd.Designation = colonne; } if (i == 3) { double val; if (double.TryParse(colonne.Replace(".", ","), out val)) { toAdd.Quantite = double.Parse(colonne.Replace(".", ",")); } else { MessageBox.Show("Le collage s'arrete car à la ligne n°" + nbLignes + ", vous essayez de rentrer une quantité qui n'est pas un chiffre", "Coller : erreur !", MessageBoxButton.OK, MessageBoxImage.Error); return null; } } if (i == 4) { double val; if (double.TryParse(colonne.Replace(".", ","), out val)) { toAdd.Prix_Unitaire = double.Parse(colonne.Replace(".", ",")); } else { MessageBox.Show("Le collage s'arrete car à la ligne n°" + nbLignes + ", vous essayez de rentrer un prix unitaire qui n'est pas un chiffre", "Coller : erreur !", MessageBoxButton.OK, MessageBoxImage.Error); return null; } } toReturn.Add(toAdd); i = i + 1; } nbLignes = nbLignes + 1; } else { MessageBox.Show("Le collage s'arrete car à la ligne n°" + nbLignes + ", le nombre de colonne n'est pas bon, il doit y en avoir 4 (Référence, désignation, Quantité, Prix unitaire).", "Coller : erreur !", MessageBoxButton.OK, MessageBoxImage.Error); return null; } } } return toReturn; } else { return null; } }
private void import() { if (this.commandeWindow != null) { foreach (ItemShop item in this._dataGridFournisseur.SelectedItems.OfType<ItemShop>()) { try { Contenu_Commande_Fournisseur newItem = new Contenu_Commande_Fournisseur(); newItem.Reference = item.Reference; newItem.Designation = item.Designation; newItem.Quantite = 1; newItem.Prix_Unitaire = double.Parse(item.Min_Prix_Unitaire.ToString()); ((Commande_Fournisseur)this.commandeWindow.DataContext).Contenu_Commande_Fournisseur.Add(newItem); } catch (Exception) { } } try { this.commandeWindow._dataGridContenuCommande.Items.Refresh(); } catch (Exception) { } } if (this.bonLivraisonWindow != null) { foreach (ItemShop item in this._dataGridFournisseur.SelectedItems.OfType<ItemShop>()) { try { Bon_Livraison_Contenu_Commande_Supplementaire newItem = new Bon_Livraison_Contenu_Commande_Supplementaire(); newItem.Reference = item.Reference; newItem.Designation = item.Designation; newItem.Quantite_Livree = 1; newItem.Prix_Remise = double.Parse(item.Min_Prix_Unitaire.ToString()); ((Bon_Livraison)this.bonLivraisonWindow.DataContext).Bon_Livraison_Contenu_Commande_Supplementaire.Add(newItem); } catch (Exception) { } } try { this.bonLivraisonWindow._dataGridContenuSupplementaire.Items.Refresh(); } catch (Exception) { } } if (this.sortieAtelierWindow != null) { foreach (ItemShop item in this._dataGridFournisseur.SelectedItems.OfType<ItemShop>()) { try { Contenu_Sortie_Atelier newItem = new Contenu_Sortie_Atelier(); newItem.Reference = item.Reference; newItem.Designation = item.Designation; newItem.Quantite = 1; newItem.Prix = double.Parse(item.Moyenne_Prix_Unitaire.ToString()); newItem.Prix_Remise = double.Parse(item.Min_Prix_Unitaire.ToString()); ((Sortie_Atelier)this.sortieAtelierWindow.DataContext).Contenu_Sortie_Atelier.Add(newItem); } catch (Exception) { } } try { this.sortieAtelierWindow._dataGridContenu.Items.Refresh(); } catch (Exception) { } } }
private void _buttonEquCommande_Click(object sender, RoutedEventArgs e) { if (this._comboBoxNumeroAffaire.SelectedItem != null) { //Instancie une nouvelle fenêtre CommandeOrdreMissionWindow comWindow = new CommandeOrdreMissionWindow(); if (((Ordre_Mission)this.DataContext).Mission_Tiers1.Commande_Fournisseur1 == null) { //Nouvelle commande Commande_Fournisseur item = new Commande_Fournisseur(); item.Mission_Tiers.Add(((Ordre_Mission)this.DataContext).Mission_Tiers1); if (this._textBoxLibelleMission.Text.Trim() != "") { Contenu_Commande_Fournisseur temp = new Contenu_Commande_Fournisseur(); temp.Designation = this._textBoxLibelleMission.Text; temp.Quantite = 1; item.Contenu_Commande_Fournisseur.Add(temp); } if (this._datePickerDateDebut.SelectedDate != null) { item.Date_Commande = this._datePickerDateDebut.SelectedDate; item.Date_Livraison_Prevu = this._datePickerDateDebut.SelectedDate; } //Instancie le nouveau data context comWindow.DataContext = item; } else { //Instancie le data context déjà exitant comWindow.DataContext = ((Ordre_Mission)this.DataContext).Mission_Tiers1.Commande_Fournisseur1; } //booléen nullable vrai ou faux ou null bool? dialogResult = comWindow.ShowDialog(); //Vérifie le retour if (dialogResult.HasValue && dialogResult.Value == true) { //Si j'appuie sur le bouton Ok, je renvoi l'objet ordreMission dans le datacontext de la fenêtre ((Ordre_Mission)this.DataContext).Mission_Tiers1.Commande_Fournisseur1 = (Commande_Fournisseur)comWindow.DataContext; } else if (comWindow.creation == true) { ((Ordre_Mission)this.DataContext).Mission_Tiers1.Commande_Fournisseur1 = null; } this.verif_buttonEquCommande(); } }
/// <summary> /// duplique la commande passée en paramètre /// </summary> /// <param name="commande1">commande à dupliquer</param> private Commande_Fournisseur duplicateCommande(Commande_Fournisseur itemToCopy) { Commande_Fournisseur tmp = new Commande_Fournisseur(); tmp.Affaire1 = itemToCopy.Affaire1; tmp.Contact1 = itemToCopy.Contact1; tmp.Entreprise = itemToCopy.Entreprise; tmp.Entreprise1 = itemToCopy.Entreprise1; tmp.Adresse = itemToCopy.Adresse; tmp.Fournisseur1 = itemToCopy.Fournisseur1; tmp.Salarie = itemToCopy.Salarie; tmp.Personne = itemToCopy.Personne; tmp.Total_Commande = itemToCopy.Total_Commande; tmp.Total_Ramene_A = itemToCopy.Total_Ramene_A; tmp.Remise = itemToCopy.Remise; tmp.Nature = itemToCopy.Nature; tmp.Type_Commande1 = itemToCopy.Type_Commande1; tmp.Franco = itemToCopy.Franco; tmp.Contact2 = itemToCopy.Contact2; tmp.Remise_Somme = itemToCopy.Remise_Somme; tmp.Liv_Atelier = itemToCopy.Liv_Atelier; tmp.Liv_Autre = itemToCopy.Liv_Autre; tmp.Liv_Chantier = itemToCopy.Liv_Chantier; tmp.Divers = itemToCopy.Divers; tmp.Stock = itemToCopy.Stock; tmp.Entreprise_Mere1 = itemToCopy.Entreprise_Mere1; foreach (Contenu_Commande_Fournisseur ccf in itemToCopy.Contenu_Commande_Fournisseur) { Contenu_Commande_Fournisseur toAdd = new Contenu_Commande_Fournisseur(); toAdd.Reference = ccf.Reference; toAdd.Designation = ccf.Designation; toAdd.Quantite = ccf.Quantite; toAdd.Prix_Remise = ccf.Prix_Remise; toAdd.Prix_Unitaire = ccf.Prix_Unitaire; toAdd.Prix_Total = ccf.Prix_Total; toAdd.Taux_Remise = ccf.Taux_Remise; toAdd.Description = ccf.Description; tmp.Contenu_Commande_Fournisseur.Add(toAdd); } foreach (Commande_Fournisseur_Condition_Reglement cr in itemToCopy.Commande_Fournisseur_Condition_Reglement) { Commande_Fournisseur_Condition_Reglement toAdd = new Commande_Fournisseur_Condition_Reglement(); toAdd.Condition_Reglement1 = cr.Condition_Reglement1; toAdd.Commentaire = cr.Commentaire; tmp.Commande_Fournisseur_Condition_Reglement.Add(toAdd); } tmp.Utilisateur1 = ((App)App.Current)._connectedUser; return tmp; }