private void BtnAddMaterial_Click(object sender, RoutedEventArgs e) { Classes.AddEditClass.StatusEditAdd = Classes.AddEditClass.EditAddClient.Greate; Classes.FilePathFoto.path = ""; Windows.AddEditMaterials addEditMaterials = new Windows.AddEditMaterials(); addEditMaterials.Owner = Classes.ParentWindow.parentWindow; addEditMaterials.BtnDel.Visibility = Visibility.Hidden; addEditMaterials.ShowDialog(); if (addEditMaterials.DialogResult.HasValue && addEditMaterials.DialogResult.Value) { var materials = new Materials() { NameMaterial = addEditMaterials.TxtNameMaterial.Text, CountOnWarehouse = Int32.Parse(addEditMaterials.TxtCountOnWarehouse.Text), CountPackaging = Int32.Parse(addEditMaterials.TxtCountPack.Text), MinCount = Int32.Parse(addEditMaterials.TxtMinCount.Text), Price = Decimal.Parse(addEditMaterials.TxtPrice.Text), Description = addEditMaterials.TxtDescription.Text, IdTypeMaterial = Entities.GetContext().TypeMaterial.Where(i => i.NameTypeMaterial == addEditMaterials.ComboTypeMaterial.Text).FirstOrDefault().IdTypeMaterial, IdTypeUnit = Entities.GetContext().TypeUnit.Where(i => i.NameTypeUnit == addEditMaterials.ComboTypeUnit.Text).FirstOrDefault().IdTypeUnit }; Entities.GetContext().Entry(materials).State = EntityState.Added; Entities.GetContext().SaveChanges(); if (Classes.FilePathFoto.path != "") { string newPhotoPath = $"/materials/mat_{materials.IdMaterial}.jpeg"; materials.Photo = newPhotoPath; bool flag = true; Entities.GetContext().Entry(materials).State = EntityState.Modified; Entities.GetContext().SaveChanges(); CopyFoto(flag, newPhotoPath); } } Filter(); }
private void LstMaterials_MouseDoubleClick(object sender, MouseButtonEventArgs e) { string newPhotoPath = ""; bool flag = false; if (LstMaterials.SelectedItem is Materials materials) { Classes.AddEditClass.StatusEditAdd = Classes.AddEditClass.EditAddClient.Edit; Windows.AddEditMaterials addEditMaterials = new Windows.AddEditMaterials(); addEditMaterials.Owner = Classes.ParentWindow.parentWindow; addEditMaterials.IdMaterial = materials.IdMaterial; if (materials.CountOnWarehouse > materials.MinCount) { decimal res = Math.Ceiling(Convert.ToDecimal(materials.MinCount) / Convert.ToDecimal(materials.CountPackaging)); res *= materials.CountPackaging; res *= materials.Price; addEditMaterials.LblMinPartion.Content = res.ToString(); } else { int buff_count = materials.MinCount - materials.CountOnWarehouse; decimal res = Math.Ceiling(Convert.ToDecimal(buff_count) / Convert.ToDecimal(materials.CountPackaging)); res *= materials.CountPackaging; res *= materials.Price; addEditMaterials.LblMinPartion.Content = res.ToString(); } addEditMaterials.TxtNameMaterial.Text = materials?.NameMaterial.ToString(); addEditMaterials.TxtCountOnWarehouse.Text = materials?.CountOnWarehouse.ToString(); addEditMaterials.TxtCountPack.Text = materials?.CountPackaging.ToString(); addEditMaterials.TxtMinCount.Text = materials?.MinCount.ToString(); addEditMaterials.TxtPrice.Text = materials?.Price.ToString(); addEditMaterials.TxtDescription.Text = materials?.Description; //byte[] imgdata = System.IO.File.ReadAllBytes(materials?.Photo); //System.Windows.Resources.StreamResourceInfo res_img = Application.GetResourceStream(new Uri(materials?.Photo, UriKind.Relative)); //addEditMaterials.ImgMaterial.Source = materials?.Photo != null ? byteToImage(imgdata) : null; addEditMaterials.ImgMaterial.Source = materials?.Photo != null ? new BitmapImage(new Uri(materials?.Photo, UriKind.Relative)) : null; Classes.FilePathFoto.path = materials?.Photo; addEditMaterials.ComboTypeMaterial.SelectedItem = materials?.TypeMaterial.NameTypeMaterial; addEditMaterials.ComboTypeUnit.SelectedItem = materials?.TypeUnit.NameTypeUnit; addEditMaterials.DgSupplair.ItemsSource = materials?.ListSuppliers; addEditMaterials.ShowDialog(); if (addEditMaterials.DialogResult.HasValue && addEditMaterials.DialogResult.Value) { if (addEditMaterials.StatusDelete == false) { var materialSave = Entities.GetContext().Materials.Where(i => i.IdMaterial == materials.IdMaterial).FirstOrDefault(); if (materialSave.Photo != Classes.FilePathFoto.path) { newPhotoPath = $"/materials/mat_{materialSave.IdMaterial}.jpeg"; materialSave.Photo = newPhotoPath; flag = true; } materialSave.NameMaterial = addEditMaterials.TxtNameMaterial.Text; materialSave.CountOnWarehouse = Int32.Parse(addEditMaterials.TxtCountOnWarehouse.Text); materialSave.CountPackaging = Int32.Parse(addEditMaterials.TxtCountPack.Text); materialSave.MinCount = Int32.Parse(addEditMaterials.TxtMinCount.Text); materialSave.Price = Decimal.Parse(addEditMaterials.TxtPrice.Text); materialSave.Description = addEditMaterials.TxtDescription.Text; materialSave.IdTypeMaterial = Entities.GetContext().TypeMaterial.Where(i => i.NameTypeMaterial == addEditMaterials.ComboTypeMaterial.Text).FirstOrDefault().IdTypeMaterial; materialSave.IdTypeUnit = Entities.GetContext().TypeUnit.Where(i => i.NameTypeUnit == addEditMaterials.ComboTypeUnit.Text).FirstOrDefault().IdTypeUnit; Entities.GetContext().Entry(materialSave).State = EntityState.Modified; Entities.GetContext().SaveChanges(); } LstMaterials.SelectedItem = materials; // string tempFileName = AppDomain.CurrentDomain.BaseDirectory + "Content\\AdContent\\" + System.IO.Path.GetRandomFileName(); CopyFoto(flag, newPhotoPath); } Filter(); } }