internal static ObservableCollection <FurnitureView> GetFurnitureOnCanvas(Canvas canvas) { ObservableCollection <FurnitureView> CanvasFurniture = new(); foreach (System.Windows.FrameworkElement x in canvas.Children) { using (var DBContext = new LinePlaneContext()) { if ((int)x.Tag != 0) { foreach (var o in DBContext.Furnitures.Where(obj => obj._Id == (int)x.Tag)) { FurnitureView NewObj = new() { NameFurniture = o._FurnitureName, FurnitureURI = o._Link, Price = o._Price }; if (CanvasFurniture.Contains(NewObj)) { int index = CanvasFurniture.IndexOf(NewObj); CanvasFurniture[index].Amount++; CanvasFurniture[index].Price = o._Price; } else { CanvasFurniture.Add(NewObj); } } } } } return(CanvasFurniture); } }
static internal bool AddUser(string login, string password, string email) { using (var DBContext = new LinePlaneContext()) { bool UserAlreadyHave = false; User NewPeople = new User(); NewPeople._Login = login; NewPeople._Password = password; NewPeople._Email = email; foreach (var x in DBContext.Users) { if (x._Login == login) { UserAlreadyHave = true; } } if (!UserAlreadyHave) { DBContext.Users.Add(NewPeople); DBContext.SaveChanges(); //SetUserID(null); return(true); } else { return(false); } } }
static internal (string, Point, string, int) SearchShape(string Name) { Point ShapeSize = new Point(); string Type = null; string Image = null; int IdType = 0; int shapeID = -1; using (var DBFurniture = new LinePlaneContext()) { int IdFurniture = 0; foreach (var x in DBFurniture.Furnitures.Where(b => b._FurnitureName == Name)) { IdFurniture = x._Id; IdType = x._IdTipeFurniture; Image = x._Picture; shapeID = x._Id; } foreach (var f in DBFurniture.TipeFurnitures.Where(n => n._Id == IdType)) { Type = f.FurnitureTipe; } foreach (var x in DBFurniture.Measurments.Where(v => v._IdFurniture == IdFurniture)) { ShapeSize.X = x._Width; ShapeSize.Y = x._Length; } return(Type, ShapeSize, Image, shapeID); } }
internal static ObservableCollection <SaveView> GetSaveList() { ObservableCollection <SaveView> Colection = new ObservableCollection <SaveView>(); using (var DBContext = new LinePlaneContext()) { /*foreach ( var x in DBContext.Conservations.Where(b=>b._IdUser== UserData.UserID)) * { * SaveView DbSave = new SaveView() { SaveName = x._FurnitureName }; * Colection.Add(DbSave); * }*/ } return(Colection); }
static internal bool SearchUser(string login, string password) { using (var DBContext = new LinePlaneContext()) { foreach (var x in DBContext.Users) { if (x._Login == login && x._Password == password) { SetUserID(x._Id); return(true); } } SetUserID(null); return(false); } }
internal static bool NewSave(ref ObservableCollection <SaveView> SaveList, string SaveName) { using (LinePlaneContext DBContext = new LinePlaneContext()) { foreach (var x in DBContext.Conservations.Where(obj => obj._SaveName == SaveName)) { return(false); } SaveView NewSave = new SaveView() { SaveName = SaveName }; SaveList.Add(NewSave); return(true); } }
internal static void SetSave(Canvas canvas, string SaveName) { using (var DBContext = new LinePlaneContext()) { DeleteSave(SaveName); Conservations AddSave = new Conservations() { _Picture = "asd", _IdUser = UserData.UserID, _SaveName = SaveName }; DBContext.Conservations.Add(AddSave); DBContext.SaveChanges(); int ConservationID = 0; foreach (var g in DBContext.Conservations.Where(obj => obj._SaveName == SaveName)) { ConservationID = g._Id; } foreach (FrameworkElement shape in canvas.Children) { int FurnitureID = (int)shape.Tag; if (FurnitureID == 0) { Wall AddWall = new() { _IdConservation = ConservationID, _X1 = ((Line)shape).X1, _Y1 = ((Line)shape).Y1, _X2 = ((Line)shape).X2, _Y2 = ((Line)shape).Y2 }; DBContext.Walls.Add(AddWall); DBContext.SaveChanges(); } else { Сoordinates coordinates = new() { _X = Canvas.GetLeft(shape), _Y = Canvas.GetTop(shape) }; DBContext.Сoordinates.Add(coordinates); DBContext.SaveChanges(); int _IdСoordinates = DBContext.Сoordinates.OrderBy(Coord => Coord._Id).Last()._Id; Project AddSaveProject = new() { _IdConservation = ConservationID, _IdFurniture = FurnitureID, _IdСoordinates = _IdСoordinates }; DBContext.Projects.Add(AddSaveProject); DBContext.SaveChanges(); } } } }
internal static void LoadSave(ref Canvas canvas, string SaveName) { using (var DBContext = new LinePlaneContext()) { int?SaveID = null; foreach (var x in DBContext.Conservations.Where(obj => obj._SaveName == SaveName)) { SaveID = x._Id; } if (SaveID == null) { return; } else { //foreach } } }
internal static ObservableCollection <FurnitureView> GetFurnitureOnCanvas(Canvas canvas) { ObservableCollection <FurnitureView> CanvasFurniture = new(); foreach (System.Windows.FrameworkElement x in canvas.Children) { using (var DBContext = new LinePlaneContext()) { if (x.Tag != null && (int)x.Tag != 0) { foreach (var o in DBContext.Furnitures.Where(obj => obj._Id == (int)x.Tag)) { bool AllreadyHave = false; int index = 0; FurnitureView NewObj = new() { Amount = 1, NameFurniture = o._FurnitureUSERName, FurnitureURI = o._Link, Price = o._Price }; foreach (var obj in CanvasFurniture.Where(obj => obj.NameFurniture == o._FurnitureUSERName)) { AllreadyHave = true; index = CanvasFurniture.IndexOf(obj); } if (AllreadyHave) { CanvasFurniture[index].Amount++; CanvasFurniture[index].Price = o._Price; } else { CanvasFurniture.Add(NewObj); } } } } } return(CanvasFurniture); } }
internal static bool SetSave(Canvas canvas, string SaveName) { using (var DBContext = new LinePlaneContext()) { int?SaveID = null; foreach (var x in DBContext.Conservations.Where(obj => obj._SaveName == SaveName)) { SaveID = x._Id; } if (SaveID == null) { return(false); } else { //foreach } } return(true); }
internal static void LoadSave(ref Canvas canvas, string SaveName) { canvas.Children.Clear(); using (var DBContext = new LinePlaneContext()) { int SaveID = 0; foreach (var x in DBContext.Conservations.Where(obj => obj._SaveName == SaveName && obj._IdUser == UserData.UserID)) { SaveID = x._Id; } foreach (var x in DBContext.Walls.Where(obj => obj._IdConservation == SaveID)) { Point FirstPoint = new() { X = x._X1, Y = x._Y1 }; Point SecondPoint = new() { X = x._X2, Y = x._Y2 }; object a = new DrawWalls(ref canvas, FirstPoint, SecondPoint); } foreach (var x in DBContext.Projects.Where(obj => obj._IdConservation == SaveID)) { int FurnitureID = x._IdFurniture; string TypeShape = string.Empty; string LocalURIImage = string.Empty; Point Size = new Point(); Point Margin = new(); using (var Context = new LinePlaneContext()) { foreach (var Cord in Context.Сoordinates.Where(obj => obj._Id == x._IdСoordinates)) { Margin.X = Cord._X; Margin.Y = Cord._Y; } foreach (var h in Context.Furnitures.Where(obj => obj._Id == x._IdFurniture)) { using (var SubContext = new LinePlaneContext()) { foreach (var j in SubContext.TipeFurnitures.Where(obj => obj._Id == h._IdTipeFurniture)) { TypeShape = j.FurnitureTipe; } LocalURIImage = h._Picture; foreach (var j in SubContext.Measurments.Where(obj => obj._IdFurniture == h._Id)) { Size.X = j._Width; Size.Y = j._Length; } } } var Shape = new FrameworkElement(); BitmapImage Image = null; var dir = AppDomain.CurrentDomain.BaseDirectory; dir = dir.Remove(dir.IndexOf("\\bin\\Debug\\net5.0-windows")) + LocalURIImage; try { Image = new BitmapImage(new Uri(dir, UriKind.RelativeOrAbsolute)); } catch { Image = null; } if (TypeShape == null) { var Square = new Logic.SpawnShape.Draw_Square(30, 30); Shape = Square.shape; } else { if (TypeShape.ToLower() == "square") { var Square = new Logic.SpawnShape.Draw_Square(Size.X, Size.Y, Margin, Image, FurnitureID); Shape = Square.shape; } else if (TypeShape.ToLower() == "ellipse") { var Ellipse = new Logic.SpawnShape.Draw_Ellipse(Size.X, Size.Y, Margin, Image, FurnitureID); Shape = Ellipse.shape; } } canvas.Children.Add(Shape); } } } }
internal static void DeleteSave(string SaveName) { using (LinePlaneContext m = new LinePlaneContext()) { { int IdConservation = 0; foreach (var x in m.Conservations.Where(obj => obj._SaveName == SaveName)) { IdConservation = x._Id; } using (LinePlaneContext db = new LinePlaneContext()) { var deleteWalls = from t in db.Walls where t._IdConservation == IdConservation select t; foreach (var t in deleteWalls) { db.Walls.Remove(t); } try { db.SaveChanges(); } catch { } } using (LinePlaneContext db = new LinePlaneContext()) { var deleteProject = from t in db.Projects where t._IdConservation == IdConservation select t; foreach (var t in deleteProject) { using (LinePlaneContext db1 = new LinePlaneContext()) { var deleteСoordinates = from q in db1.Сoordinates where q._Id == t._IdСoordinates select q; foreach (var q in deleteСoordinates) { db1.Сoordinates.Remove(q); } try { db1.SaveChanges(); } catch { } } db.Projects.Remove(t); } try { db.SaveChanges(); } catch { } } using (LinePlaneContext db = new LinePlaneContext()) { var deleteConservation = from t in db.Conservations where t._Id == IdConservation select t; foreach (var t in deleteConservation) { db.Conservations.Remove(t); } try { db.SaveChanges(); } catch { } } } } }