コード例 #1
0
        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();
        }
コード例 #2
0
        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();
            }
        }