Exemplo n.º 1
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,StundetId,LastName,FirstName,RoomType,LivingWithReligious,LivingWithSmoker,ReligiousType,HealthCondition,PartnerId1,PartnerId2,PartnerId3,PartnerId4")] ApprovalKit approvalKit)
        {
            if (id != approvalKit.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(approvalKit);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!ApprovalKitExists(approvalKit.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(approvalKit));
        }
        public async Task <IActionResult> Create([Bind("StundetId,LastName,FirstName,RoomType,LivingWithReligious,LivingWithSmoker,ReligiousType,HealthCondition,PartnerId1,PartnerId2,PartnerId3,PartnerId4")] ApprovalKit approvalKit)
        {
            var functions = new functions();

            if (functions.Comper(new DateTime(2019, 9, 5)))
            {
                string Aut = HttpContext.Session.GetString("Aut");
                ViewBag.Aut = Aut;
                string Id = HttpContext.Session.GetString("User");
                var    u  = await _context.Registrations.SingleOrDefaultAsync(m => m.StundetId.ToString().Equals(Id));

                approvalKit.FirstName = u.FirstName;
                approvalKit.LastName  = u.LastName;
                approvalKit.StundetId = u.StundetId;
                approvalKit.Gender    = u.gender;
                try
                {
                    if (ModelState.IsValid)
                    {
                        //u.Authorization = 9;
                        _context.Add(approvalKit);
                        await _context.SaveChangesAsync();

                        return(RedirectToAction("Wellcome", "Home"));
                    }
                }
                catch (DbUpdateException)
                {
                    ModelState.AddModelError("", "לא היה ניתן לשמור את השינויים, נא נסה שנית במועד מאוחר יותר");
                }
                return(View(approvalKit));
            }
            return(RedirectToAction("NoMore", "Home"));
        }
Exemplo n.º 3
0
 public ActionResult Edit(ApprovalKit Approv)
 {
     if (ModelState.IsValid)
     {
         Context.ApprovalKit.Save(Approv);
         return(RedirectToAction("index"));
     }
     return(View());
 }
Exemplo n.º 4
0
        public async Task <IActionResult> Create([Bind("ID,StundetId,LastName,FirstName,RoomType,LivingWithReligious,LivingWithSmoker,ReligiousType,HealthCondition,PartnerId1,PartnerId2,PartnerId3,PartnerId4")] ApprovalKit approvalKit)
        {
            if (ModelState.IsValid)
            {
                _context.Add(approvalKit);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(approvalKit));
        }
Exemplo n.º 5
0
        public static void Initialize(MaonotNetContext context)
        {
            context.Database.EnsureCreated();
            if (context.Users.Any())
            {
                return;
            }
            var users = new User[]
            {
                new User {
                    StundetId = 302875125, FirstName = "Miki", LastName = "Rotenstain", Password = BCrypt.Net.BCrypt.HashPassword("ABCabc123!"), Email = "*****@*****.**", Authorization = 2
                },
                new User {
                    StundetId = 308242122, FirstName = "Efrat", LastName = "Cohen", Password = BCrypt.Net.BCrypt.HashPassword("ABCabc123!"), Email = "*****@*****.**", Authorization = 7
                },
                new User {
                    StundetId = 123456789, FirstName = "מנהל", LastName = "מערכת", Password = BCrypt.Net.BCrypt.HashPassword("ABCabc123!"), Email = "*****@*****.**", Authorization = 1
                }
            };

            foreach (User u in users)
            {
                context.Users.Add(u);
            }
            context.SaveChanges();

            var reg = new Registration[]
            {
                new Registration {
                    StundetId    = users.Single(u => u.StundetId == 302875125).StundetId, FirstName = users.Single(u => u.StundetId == 302875125).FirstName, LastName = users.Single(u => u.StundetId == 302875125).LastName, gender = Gender.זכר, Bday = DateTime.Parse("1989-11-04"), City = "נשר", Adress = "עמוס 18", PhoneNumber = "050-2480441",
                    FieldOfStudy = FieldStudy.מערכות_מידע, SteadyYear = Year.ג, TypeOfService = Service.צבאי, HealthCondition = HealthCondition.ללא_מגבלה, Seniority = Year.ג, ApertmantType = ApertmantType.יחיד
                },
                // new Registration{StundetId= users.Single(u=> u.StundetId == 308242122).StundetId, FirstName= users.Single(u=> u.StundetId == 308242122).FirstName , LastName= users.Single(u=> u.StundetId == 308242122).LastName,gender=Gender.נקבה, Bday= DateTime.Parse("1992-02-14"), City= "להבים", Adress= "גומא 2",PhoneNumber= "054-6814427",
                // FieldOfStudy=FieldStudy.מערכות_מידע,SteadyYear=Year.ג, TypeOfService=Service.צבאי, HealthCondition=HealthCondition.ללא_מגבלה, Seniority=Year.ג, ApertmantType= ApertmantType.יחיד},
            };

            foreach (Registration u in reg)
            {
                context.Registrations.Add(u);
            }
            context.SaveChanges();

            var App = new ApprovalKit[]
            {
                new ApprovalKit {
                    StundetId        = users.Single(u => u.StundetId == 302875125).StundetId, FirstName = users.Single(u => u.StundetId == 302875125).FirstName, LastName = users.Single(u => u.StundetId == 302875125).LastName, RoomType = RoomType.חדר_ליחיד,
                    LivingWithSmoker = Choose.מעוניין, LivingWithReligious = Choose.לא_מעוניין, ReligiousType = Religious.דרוזי, HealthCondition = HealthCondition.ללא_מגבלה, Gender = reg.Single(r => r.StundetId == 302875125).gender
                }
                // new ApprovalKit{StundetId= users.Single(u=> u.StundetId == 308242122).StundetId, FirstName= users.Single(u=> u.StundetId == 308242122).FirstName , LastName= users.Single(u=> u.StundetId == 308242122).LastName, RoomType=RoomType.חדר_ליחיד,
                //  LivingWithSmoker = Choose.לא_מעוניין,LivingWithReligious=Choose.מעוניין, ReligiousType=Religious.יהודי, HealthCondition=HealthCondition.ללא_מגבלה}
            };

            foreach (ApprovalKit u in App)
            {
                context.ApprovalKits.Add(u);
            }
            context.SaveChanges();

            var Aut = new Authorization[]
            {
                new Authorization {
                    AutName = "מנהל מערכת"
                },                                         //1
                new Authorization {
                    AutName = "מנהל"
                },                                   //2
                new Authorization {
                    AutName = "אבות בית"
                },                                       //3
                new Authorization {
                    AutName = "ועדת משמעת"
                },                                         //4
                new Authorization {
                    AutName = "ועדת תרבות"
                },                                         //5
                new Authorization {
                    AutName = "עובד אבטחה"
                },                                         //6
                new Authorization {
                    AutName = "אורח"
                },                                   //7
                new Authorization {
                    AutName = "מועמד"
                },                                    //8
                new Authorization {
                    AutName = "דייר"
                }                                   //9
            };

            foreach (Authorization u in Aut)
            {
                context.Authorizations.Add(u);
            }
            context.SaveChanges();

            var Fault = new FaultForm[]
            {
                new FaultForm {
                    StundetId = 308242122, Apartment = 927, RoomNum = RoomNum.OneA, FullName = users.Single(u => u.StundetId == 308242122).FirstName + "" + users.Single(u => u.StundetId == 308242122).LastName, PhoneNumber = "050-2480441", Description = "הבוילר לא עובד לי אשמח לעזרתכם"
                }
            };

            foreach (FaultForm u in Fault)
            {
                context.FaultForms.Add(u);
            }
            context.SaveChanges();

            var Messg = new Message[]
            {
                new Message {
                    From = "ענת לוין", MsgTime = DateTime.Now, Addressee = "אפרת כהן", Subject = "משעמם לי בדירה", Content = "לה לה הלה לה"
                }
            };

            foreach (Message u in Messg)
            {
                context.Messages.Add(u);
            }
            context.SaveChanges();

            var Vlog = new VisitorsLog[]
            {
                new VisitorsLog {
                    VistorName   = "דני שובבני", StudentFullName = users.Single(u => u.StundetId == 302875125).FullName,
                    ApartmentNum = 927, Room = RoomNum.OneA, EnteryDate = DateTime.Parse("2018-06-22"), VisitorID = 123456789, StudentId = 302875125
                    , ExitDate   = DateTime.Parse("2018-06-24")
                }
            };

            foreach (VisitorsLog u in Vlog)
            {
                context.VisitorsLogs.Add(u);
            }
            context.SaveChanges();

            var War = new Warning[]
            {
                // new Warning{WarningNumber=WarningNumber.ראשונה, StudentId=users.Single(u=> u.StundetId==302875125).StundetId, Date=DateTime.Parse("2018-05-20")}
            };

            foreach (Warning u in War)
            {
                context.Warnings.Add(u);
            }
            context.SaveChanges();
        }
Exemplo n.º 6
0
        public static void Initializer(MaonotContext context)
        {
            context.Database.EnsureCreated();
            if (context.Users.Any())
            {
                return;
            }
            var users = new User[]
            {
                new User {
                    StundetId = 302875125, FirstName = "Miki", LastName = "Rotenstain", Password = "******", Email = "*****@*****.**"
                },
                new User {
                    StundetId = 308242122, FirstName = "Efrat", LastName = "Cohen", Password = "******", Email = "*****@*****.**"
                }
            };

            foreach (User u in users)
            {
                context.Users.Add(u);
            }
            context.SaveChanges();

            var reg = new Registration[]
            {
                new Registration {
                    StundetId    = users.Single(u => u.StundetId == 302875125).StundetId, FirstName = users.Single(u => u.StundetId == 302875125).FirstName, LastName = users.Single(u => u.StundetId == 302875125).LastName, gender = Gender.זכר, Bday = DateTime.Parse("1989-11-04"), City = "נשר", Adress = "עמוס 18", PhoneNumber = "050-2480441",
                    FieldOfStudy = FieldStudy.מערכות_מידע, SteadyYear = Year.ג, TypeOfService = Service.צבאי, HealthCondition = HealthCondition.ללא_מגבלה, Seniority = Year.ג, ApertmantType = ApertmantType.יחיד
                },
                new Registration {
                    StundetId    = users.Single(u => u.StundetId == 308242122).StundetId, FirstName = users.Single(u => u.StundetId == 308242122).FirstName, LastName = users.Single(u => u.StundetId == 308242122).LastName, gender = Gender.נקבה, Bday = DateTime.Parse("1992-02-14"), City = "להבים", Adress = "גומא 2", PhoneNumber = "054-6814427",
                    FieldOfStudy = FieldStudy.מערכות_מידע, SteadyYear = Year.ג, TypeOfService = Service.צבאי, HealthCondition = HealthCondition.ללא_מגבלה, Seniority = Year.ג, ApertmantType = ApertmantType.יחיד
                },
            };

            foreach (Registration u in reg)
            {
                context.Registrations.Add(u);
            }
            context.SaveChanges();

            var App = new ApprovalKit[]
            {
                new ApprovalKit {
                    StundetId        = users.Single(u => u.StundetId == 302875125).StundetId, FirstName = users.Single(u => u.StundetId == 302875125).FirstName, LastName = users.Single(u => u.StundetId == 302875125).LastName, RoomType = RoomType.חדר_ליחיד,
                    LivingWithSmoker = Choose.אפשרי, LivingWithReligious = Choose.אפשרי, ReligiousType = Religious.דרוזי, HealthCondition = HealthCondition.ללא_מגבלה
                },
                new ApprovalKit {
                    StundetId        = users.Single(u => u.StundetId == 308242122).StundetId, FirstName = users.Single(u => u.StundetId == 308242122).FirstName, LastName = users.Single(u => u.StundetId == 308242122).LastName, RoomType = RoomType.חדר_ליחיד,
                    LivingWithSmoker = Choose.לא_מעוניין, LivingWithReligious = Choose.מעוניין, ReligiousType = Religious.יהודי, HealthCondition = HealthCondition.ללא_מגבלה
                }
            };

            foreach (ApprovalKit u in App)
            {
                context.ApprovalKits.Add(u);
            }
            context.SaveChanges();

            var Fault = new FaultForm[]
            {
                new FaultForm {
                    Apartment = 927, RoomNum = 1, FullName = users.Single(u => u.StundetId == 308242122).FirstName + "" + users.Single(u => u.StundetId == 308242122).LastName, PhoneNumber = "050-2480441", Description = "הבוילר לא עובד לי אשמח לעזרתכם"
                }
            };

            foreach (FaultForm u in Fault)
            {
                context.FaultForms.Add(u);
            }
            context.SaveChanges();

            var Messg = new Message[]
            {
                new Message {
                    Addressee = "*****@*****.**", Subject = "ענת השותפות של מציקות לי", Content = "לענת שלום, השותפות שלי מטריפות אותי מה אפשר לעשות"
                }
            };

            foreach (Message u in Messg)
            {
                context.Messages.Add(u);
            }
            context.SaveChanges();

            var Vlog = new VisitorsLog[]
            {
                new VisitorsLog {
                    VistorName       = "דני שובבני", StudentFirstName = users.Single(u => u.StundetId == 302875125).FirstName,
                    StudentLasttName = users.Single(u => u.StundetId == 302875125).LastName, ApartmentNum = 927, Room = RoomNum.OneA, EnteryDate = DateTime.Parse("2018-05-22"), VisitorID = 123456789
                }
            };

            foreach (VisitorsLog u in Vlog)
            {
                context.VisitorsLogs.Add(u);
            }
            context.SaveChanges();

            var War = new Warning[]
            {
                new Warning {
                    WarningNumber = WarningNumber.ראשונה, StudentId = users.Single(u => u.StundetId == 302875125).StundetId, Date = DateTime.Parse("2018-05-20")
                }
            };

            foreach (Warning u in War)
            {
                context.Warnings.Add(u);
            }
            context.SaveChanges();
        }
Exemplo n.º 7
0
        //capacity כמה מקום פנוי יש
        //The function goes through all the Approval kits and assigning the students to the apartments
        public async Task <IActionResult> Assigning()
        {
            //Couples ApprovalKit

            List <ApprovalKit> Couples = _context.ApprovalKits.Where(
                a =>
                a.RoomType == RoomType.דירה_זוגית).ToList();

            //Single ApprovalKit
            List <ApprovalKit> Single = _context.ApprovalKits.Where(
                r =>
                r.RoomType == RoomType.חדר_ליחיד &&
                r.HealthCondition == HealthCondition.ללא_מגבלה
                ).ToList();


            //Accessible ApprovalKit
            List <ApprovalKit> Accessible = _context.ApprovalKits.Where(
                r =>
                r.RoomType == RoomType.חדר_ליחיד && (
                    r.HealthCondition == HealthCondition.מגבלה_פיזית_אחרת ||
                    r.HealthCondition == HealthCondition.נכה_צהל ||
                    r.HealthCondition == HealthCondition.נכות)
                ).ToList();


            //Couples

            foreach (ApprovalKit a in Couples)
            {
                var asaing = await _context.Assigning.SingleOrDefaultAsync(u => u.StundetId.Value == a.StundetId.Value);

                if (asaing == null)
                {
                    //a main student || c main student parnter
                    if (a.PartnerId1 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId.Value == a.PartnerId1.Value); //find the partner of the main student

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value)
                            {
                                //get empty apartment
                                var apartment = await _context.Apartments.FirstOrDefaultAsync(m => m.Type.Equals("Couples") && m.capacity == 2);

                                if (apartment != null)
                                {
                                    apartment.capacity = 0;
                                    _context.Update(apartment);
                                    // the user obj of a
                                    var u1 = await _context.Users.SingleOrDefaultAsync(m => m.StundetId == a.StundetId);

                                    //the user obj of c
                                    var u2 = await _context.Users.SingleOrDefaultAsync(m => m.StundetId == c.StundetId);

                                    Assigning p1 = new Assigning
                                    {
                                        StundetId    = a.StundetId.Value,
                                        ApartmentNum = apartment.ApartmentNum,
                                        Room         = 1
                                    };
                                    u1.ApartmentNum = apartment.ApartmentNum;
                                    u1.Room         = RoomNum.OneA;

                                    _context.Update(u1);
                                    Assigning p2 = new Assigning
                                    {
                                        StundetId    = c.StundetId.Value,
                                        ApartmentNum = apartment.ApartmentNum,
                                        Room         = 2
                                    };
                                    u2.ApartmentNum = apartment.ApartmentNum;
                                    u2.Room         = RoomNum.TwoA;
                                    _context.Update(u2);

                                    _context.Add(p1);
                                    _context.Add(p2);
                                    await _context.SaveChangesAsync();
                                }
                            }
                            ;
                        }
                        ;
                        //if there is no partner
                    }
                }
                ;
            }
            ;
            //Accessible
            foreach (ApprovalKit a in Accessible)
            {
                var asaing = await _context.Assigning.SingleOrDefaultAsync(u => u.StundetId.Value == a.StundetId.Value);

                if (asaing == null)
                {
                    ApprovalKit[] roomies = new ApprovalKit[3];
                    roomies[0] = a;
                    int size = 1;
                    if (a.PartnerId1 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId.Value == a.PartnerId1.Value && m.Gender == a.Gender);

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value || c.PartnerId2.Value == a.StundetId.Value)
                            {
                                roomies[1] = c;
                                size++;
                            }
                            ;
                        }
                        ;
                    }
                    ;
                    if (a.PartnerId2 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId == a.PartnerId2.Value && m.Gender == a.Gender);

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value || c.PartnerId2.Value == a.StundetId.Value)
                            {
                                roomies[2] = c;
                                size++;
                            }
                            ;
                        }
                        ;
                    }
                    ;
                    //change proprties of apartment
                    var apartment = await _context.Apartments.FirstOrDefaultAsync(m => m.Type.Equals("Accessible") && m.capacity == 3);

                    if (apartment != null)
                    {
                        int c = apartment.capacity.Value;
                        apartment.LivingWithReligious = a.LivingWithReligious;
                        apartment.LivingWithSmoker    = a.LivingWithSmoker;
                        apartment.Gender   = a.Gender;
                        apartment.capacity = apartment.capacity - size;
                        _context.Update(apartment);
                        await _context.SaveChangesAsync();


                        // save proprties of roomeis
                        foreach (ApprovalKit u in roomies)
                        {
                            if (u != null)
                            {
                                var user = await _context.Users.SingleOrDefaultAsync(m => m.StundetId == u.StundetId.Value);

                                Assigning r = new Assigning
                                {
                                    StundetId    = u.StundetId.Value,
                                    ApartmentNum = apartment.ApartmentNum,
                                    Room         = c,
                                };
                                user.ApartmentNum = apartment.ApartmentNum;
                                if (r.Room == 1)
                                {
                                    user.Room = RoomNum.OneA;
                                }
                                else if (r.Room == 2)
                                {
                                    user.Room = RoomNum.TwoA;
                                }
                                else if (r.Room == 3)
                                {
                                    user.Room = RoomNum.ThreeA;
                                }
                                else
                                {
                                    user.Room = RoomNum.FourA;
                                }
                                _context.Update(user);

                                _context.Add(r);
                                await _context.SaveChangesAsync();

                                c--;
                            }
                            ;
                        }
                        ;
                    }
                }
                ;
            }
            ;
            //Single
            foreach (ApprovalKit a in Single)
            {
                var asaing = await _context.Assigning.FirstOrDefaultAsync(x => x.StundetId.Value == a.StundetId.Value);

                if (asaing == null)
                {
                    ApprovalKit[] roomies = new ApprovalKit[4];
                    roomies[0] = a;
                    int size = 1;
                    if (a.PartnerId1 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId.Value == a.PartnerId1.Value && m.Gender == a.Gender);

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value || c.PartnerId2.Value == a.StundetId.Value || c.PartnerId3.Value == a.StundetId.Value)
                            {
                                roomies[1] = c;
                                size++;
                            }
                            ;
                        }
                        ;
                    }
                    ;
                    if (a.PartnerId2 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId.Value == a.PartnerId2.Value && m.Gender == a.Gender);

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value || c.PartnerId2.Value == a.StundetId.Value || c.PartnerId3.Value == a.StundetId.Value)
                            {
                                roomies[2] = c;
                                size++;
                            }
                        }
                        ;
                    }
                    ;
                    if (a.PartnerId3 != null)
                    {
                        var c = await _context.ApprovalKits.SingleOrDefaultAsync(m => m.StundetId == a.PartnerId3.Value && m.Gender == a.Gender);

                        if (c != null)
                        {
                            if (c.PartnerId1.Value == a.StundetId.Value || c.PartnerId2.Value == a.StundetId.Value || c.PartnerId3.Value == a.StundetId.Value)
                            {
                                roomies[3] = c;
                                size++;
                            }
                        }
                    }
                    ;

                    Apartments apartment = await _context.Apartments.FirstOrDefaultAsync(m => m.capacity >= size &&
                                                                                         m.Type.Equals("Single") &&
                                                                                         m.LivingWithReligious == a.LivingWithReligious &&
                                                                                         m.LivingWithSmoker == a.LivingWithSmoker &&
                                                                                         m.ReligiousType == a.ReligiousType &&
                                                                                         m.Gender == a.Gender);

                    if (apartment == null)
                    {
                        apartment = _context.Apartments.FirstOrDefault(m => m.capacity >= size && m.Type.Equals("Single"));
                    }
                    ;

                    if (apartment != null)
                    {
                        int c = apartment.capacity.Value;
                        apartment.LivingWithReligious = a.LivingWithReligious;
                        apartment.LivingWithSmoker    = a.LivingWithSmoker;
                        apartment.Gender        = a.Gender;
                        apartment.capacity      = apartment.capacity - size;
                        apartment.ReligiousType = a.ReligiousType;
                        _context.Update(apartment);
                        await _context.SaveChangesAsync();

                        foreach (ApprovalKit u in roomies)
                        {
                            if (u != null)
                            {
                                var user = await _context.Users.SingleOrDefaultAsync(m => m.StundetId == u.StundetId);

                                Assigning r = new Assigning
                                {
                                    StundetId    = u.StundetId.Value,
                                    ApartmentNum = apartment.ApartmentNum,
                                    Room         = c,
                                };
                                user.ApartmentNum = apartment.ApartmentNum;
                                if (r.Room == 1)
                                {
                                    user.Room = RoomNum.OneA;
                                }
                                else if (r.Room == 2)
                                {
                                    user.Room = RoomNum.TwoA;
                                }
                                else if (r.Room == 3)
                                {
                                    user.Room = RoomNum.ThreeA;
                                }
                                else
                                {
                                    user.Room = RoomNum.FourA;
                                }
                                _context.Update(user);
                                _context.Add(r);

                                await _context.SaveChangesAsync();

                                c--;
                            }
                            ; //end if u!=null
                        }
                        ;     //end foreach roomies
                    }// apartment!=null
                }
                ; //assing==null
            }
            ;     //foreach approval kit

            //await _context.SaveChangesAsync();
            //ViewBag.NotAssigning = Globals.NotAssigning;

            return(RedirectToAction("NotAssigning", "Apartments"));
        }