public dynamic UpdateBooking(UpdateBooking sd)
        {
            EMPLOYEEDATETIMESLOT bookingUpdate  = new EMPLOYEEDATETIMESLOT();
            EMPLOYEEDATETIMESLOT bookingUpdate2 = new EMPLOYEEDATETIMESLOT();

            try
            {
                var bookingID = db.EMPLOYEEDATETIMESLOTs.Where(vvs => vvs.EMPLOYEEDATETIMESLOTID == sd.EmployeeDateTimeSlotID).Select(hh => hh.BOOKINGID).FirstOrDefault();
                bookingUpdate                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.EmployeeDateTimeSlotID);
                bookingUpdate.BOOKINGID           = null;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 1;

                bookingUpdate2                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.newEmployeeDateTimeSlotID);
                bookingUpdate2.BOOKINGID           = bookingID;
                bookingUpdate2.EMPLOYEESLOTSTAUSID = 2;

                db.SaveChanges();
            }
            catch (Exception e)
            {
                return(false);
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(true);
        }
        public HttpResponseMessage UpdateBooking(UpdateBooking sd)
        {
            EMPLOYEEDATETIMESLOT bookingUpdate  = new EMPLOYEEDATETIMESLOT();
            EMPLOYEEDATETIMESLOT bookingUpdate2 = new EMPLOYEEDATETIMESLOT();

            try
            {
                var bookingID = db.EMPLOYEEDATETIMESLOTs.Where(vvs => vvs.EMPLOYEEDATETIMESLOTID == sd.EmployeeDateTimeSlotID).Select(hh => hh.BOOKINGID).FirstOrDefault();
                bookingUpdate                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.EmployeeDateTimeSlotID);
                bookingUpdate.BOOKINGID           = null;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 1;

                bookingUpdate2                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.newEmployeeDateTimeSlotID);
                bookingUpdate2.BOOKINGID           = bookingID;
                bookingUpdate2.EMPLOYEESLOTSTAUSID = 2;

                db.SaveChanges();
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest,"Error With Booking "));
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(Request.CreateResponse(HttpStatusCode.Created));
        }
Ejemplo n.º 3
0
        public IHttpActionResult PostDateSlot(EmpSlot data)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                var date = db.DATETIMESLOTs.Where(kk => kk.DATEID == data.DateID && kk.SLOTID == data.SlotID).ToList();
                if (date.Count == 0)
                {
                    DATETIMESLOT DATETIMESLOT = new DATETIMESLOT();
                    DATETIMESLOT.DATEID = data.DateID;
                    DATETIMESLOT.SLOTID = data.SlotID;
                    DATETIMESLOT.AREAID = data.AreaID;


                    db.DATETIMESLOTs.Add(DATETIMESLOT);
                    db.SaveChanges();
                }
                else
                {
                    return(Ok(false));
                }



                int value = int.Parse(db.DATETIMESLOTs
                                      .OrderByDescending(p => p.DATETIMESLOTID)
                                      .Select(r => r.DATETIMESLOTID)
                                      .First().ToString());


                EMPLOYEEDATETIMESLOT EMPLOYEEDATETIMESLOT = new EMPLOYEEDATETIMESLOT();
                EMPLOYEEDATETIMESLOT.EMPLOYEEID          = data.EmployeeID;
                EMPLOYEEDATETIMESLOT.EMPLOYEESLOTSTAUSID = 1;
                EMPLOYEEDATETIMESLOT.DATETIMESLOTID      = value;

                db.EMPLOYEEDATETIMESLOTs.Add(EMPLOYEEDATETIMESLOT);
                db.SaveChanges();
            }
            catch (Exception)
            {
                dynamic User = new ExpandoObject();
                User.Message = "Something went wrong !";
                return(null);
            }

            return(Ok(data));
        }
        public HttpResponseMessage Addbooking(Addbooking sd)
        {
            //  var httpRequest = HttpContext.Current.Request;

            BOOKING booking = new BOOKING();
            EMPLOYEEDATETIMESLOT bookingUpdate = new EMPLOYEEDATETIMESLOT();



            //Save to DB
            try
            {
                booking.CLIENTID   = sd.ClientID;
                booking.PROPERTYID = sd.PropertyID;
                booking.USERID     = 2;
                //   booking.CLIENTID = Convert.ToInt32(httpRequest["CLIENTID"]);
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Error With Booking "));
            }


            try
            {
                db.BOOKINGs.Add(booking);
                db.SaveChanges();

                bookingUpdate = db.EMPLOYEEDATETIMESLOTs.Find(sd.EmployeeDateTimeSlotID);
                int value = int.Parse(db.BOOKINGs
                                      .OrderByDescending(p => p.BOOKINGID)
                                      .Select(r => r.BOOKINGID)
                                      .First().ToString());
                bookingUpdate.BOOKINGID           = value;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 2;


                db.SaveChanges();
            }
            catch (Exception)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Error With Booking "));;
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(Request.CreateResponse(HttpStatusCode.Created));
        }
Ejemplo n.º 5
0
        public IHttpActionResult PostDateSlot(EMPLOYEEDATETIMESLOT data)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            try
            {
                data.EMPLOYEESLOTSTAUSID = 1;
                db.EMPLOYEEDATETIMESLOTs.Add(data);
                db.SaveChanges();
            }
            catch (Exception)
            {
                dynamic User = new ExpandoObject();
                User.Message = "Something went wrong !";
                return(null);
            }

            return(Ok(data));
        }
        public HttpResponseMessage Updatebooking(UpdateBooking sd)
        {
            EMPLOYEEDATETIMESLOT bookingUpdate = new EMPLOYEEDATETIMESLOT();

            try
            {
                bookingUpdate                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.BookingID);
                bookingUpdate.BOOKINGID           = null;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 1;


                db.SaveChanges();
            }
            catch (Exception e)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, "Error With Booking "));
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(Request.CreateResponse(HttpStatusCode.Created));
        }
        public dynamic DeleteBooking(UpdateBooking sd)
        {
            EMPLOYEEDATETIMESLOT bookingUpdate = new EMPLOYEEDATETIMESLOT();

            try
            {
                bookingUpdate                     = db.EMPLOYEEDATETIMESLOTs.Find(sd.BookingID);
                bookingUpdate.BOOKINGID           = null;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 1;


                db.SaveChanges();
            }
            catch (Exception)
            {
                return(false);
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(true);
        }
        public dynamic Addbooking(Addbooking sd)
        {
            //  var httpRequest = HttpContext.Current.Request;

            BOOKING booking = new BOOKING();
            EMPLOYEEDATETIMESLOT bookingUpdate = new EMPLOYEEDATETIMESLOT();



            //Save to DB
            try
            { var existing = db.BOOKINGs.Where(jj => jj.CLIENTID == sd.ClientID && jj.PROPERTYID == sd.PropertyID).ToList();


              if (existing.Count == 0)
              {
                  booking.CLIENTID   = sd.ClientID;
                  booking.PROPERTYID = sd.PropertyID;
                  var USERID = db.CLIENTs.Where(kk => kk.CLIENTID == sd.ClientID).Select(jj => jj.USERID).FirstOrDefault();
                  booking.USERID = USERID;
                  //   booking.CLIENTID = Convert.ToInt32(httpRequest["CLIENTID"]);
              }
              else
              {
                  dynamic setInvalid = new ExpandoObject();
                  setInvalid = false;
                  return(setInvalid);
              } }
            catch (Exception e)
            {
                return(false);
            }


            try
            {
                db.BOOKINGs.Add(booking);
                db.SaveChanges();

                bookingUpdate = db.EMPLOYEEDATETIMESLOTs.Find(sd.EmployeeDateTimeSlotID);
                int value = int.Parse(db.BOOKINGs
                                      .OrderByDescending(p => p.BOOKINGID)
                                      .Select(r => r.BOOKINGID)
                                      .First().ToString());
                bookingUpdate.BOOKINGID           = value;
                bookingUpdate.EMPLOYEESLOTSTAUSID = 2;


                db.SaveChanges();


                var emp       = db.EMPLOYEEs.Where(hh => hh.EMPLOYEEID == bookingUpdate.EMPLOYEEID).FirstOrDefault();
                var theClient = db.CLIENTs.Where(hh => hh.CLIENTID == sd.ClientID).FirstOrDefault();
                var prop      = db.PROPERTies.Where(hh => hh.PROPERTYID == sd.PropertyID).FirstOrDefault();
                var empslot   = bookingUpdate.DATETIMESLOTID;
                var dateid    = db.DATETIMESLOTs.Find(empslot);
                var date      = db.DATEs.Where(kk => kk.DATEID == dateid.DATEID).Select(jj => jj.DATEDESCRIPTION).FirstOrDefault();
                var slotS     = db.SLOTs.Where(kk => kk.SLOTID == dateid.SLOTID).FirstOrDefault();

                //send email with verification
                MailMessage mail       = new MailMessage();
                SmtpClient  SmtpServer = new SmtpClient("smtp.gmail.com");
                mail.From = new MailAddress("*****@*****.**");
                mail.To.Add(emp.EMAIL);
                mail.Subject = "Property Viewing Booking From: " + theClient.NAME + " " + theClient.SURNAME + " " + theClient.PHONENUMBER;
                mail.Body    = "Good day " + emp.NAME + " " + emp.SURNAME + "\n" + theClient.NAME + " " + theClient.SURNAME + " would love to view the property at " + prop.ADDRESS + " with the property reference number " + prop.PROPERTYID + ". \nClient Details \nClient Name : " + theClient.NAME + " " + theClient.SURNAME + "\nClient Email:" + theClient.EMAIL + "\nClient Number:" + theClient.PHONENUMBER + "\nViewing Details \nDate and Time of viewing : " + date + " " + DateTime.Now.Year.ToString() + " \nFrom: " + slotS.STARTTIME + "-" + slotS.ENDTIME + " \n\nThank you  ";

                SmtpServer.Port                  = 587;
                SmtpServer.DeliveryMethod        = SmtpDeliveryMethod.Network;
                SmtpServer.UseDefaultCredentials = false;
                SmtpServer.Credentials           = new System.Net.NetworkCredential("*****@*****.**", "test123@123test");
                SmtpServer.EnableSsl             = true;

                SmtpServer.Send(mail);
            }
            catch (Exception)
            {
                return(false);
            }


            //booking.BOOKINGID = getCreatedBookingID(booking.CLIENTID);
            return(true);
        }
Ejemplo n.º 9
0
        public dynamic ArchivePropertyDetails(int id)
        {
            List <dynamic> toReturn = new List <dynamic>();

            try
            {
                PROPERTY property = db.PROPERTies.Include(hh => hh.PROPERTYSTATU).Include(kk => kk.RENTALAPPLICATIONs).Include(mm => mm.BOOKINGs).Where(kk => kk.PROPERTYID == id && (kk.PROPERTYSTATUSID == 1 || kk.PROPERTYSTATUSID == 2)).FirstOrDefault();


                if (property == null)
                {
                    return(NotFound());
                }
                else
                {
                    var propertyCheck = property.BOOKINGs.Where(jj => jj.PROPERTYID == property.PROPERTYID).ToList();

                    var mybookings =
                        (from y in propertyCheck.AsEnumerable()
                         join x in db.EMPLOYEEDATETIMESLOTs.AsEnumerable()
                         on y.BOOKINGID equals x.BOOKINGID

                         select new EMPLOYEEDATETIMESLOT
                    {
                        EMPLOYEEDATETIMESLOTID = x.EMPLOYEEDATETIMESLOTID,

                        DATETIMESLOTID = x.DATETIMESLOTID,
                        BOOKINGID = x.BOOKINGID
                    }).ToList();

                    List <EMPLOYEEDATETIMESLOT> list = new List <EMPLOYEEDATETIMESLOT>();

                    foreach (EMPLOYEEDATETIMESLOT Jb in mybookings)
                    {
                        var Dateid   = db.DATETIMESLOTs.Include(zz => zz.DATE).Where(zz => zz.DATETIMESLOTID == Jb.DATETIMESLOTID).Select(zz => zz.DATEID).FirstOrDefault();
                        var date     = db.DATEs.Where(zz => zz.DATEID == Dateid).Select(zz => zz.DATEDESCRIPTION).FirstOrDefault();
                        var fulldate = Convert.ToDateTime(date + " " + DateTime.Today.Year).ToString("yyyy-MM-dd");
                        if (Convert.ToDateTime(fulldate) > DateTime.Today)
                        {
                            EMPLOYEEDATETIMESLOT newEmp = new EMPLOYEEDATETIMESLOT();
                            newEmp.BOOKINGID = Jb.BOOKINGID;
                            newEmp.EMPLOYEEDATETIMESLOTID = Jb.EMPLOYEEDATETIMESLOTID;
                            newEmp.DATETIMESLOTID         = Jb.DATETIMESLOTID;

                            list.Add(newEmp);
                        }
                    }


                    if (list.Count != 0)
                    {
                        dynamic setInvalid = new ExpandoObject();
                        setInvalid.isValid = "false";
                        toReturn.Add(setInvalid);
                    }
                    else
                    {
                        var propertyCheckRentalApplication = property.RENTALAPPLICATIONs.Where(jj => jj.PROPERTYID == property.PROPERTYID && (jj.RENTALAPPLICATIONSTATUSID == 1 || jj.RENTALAPPLICATIONSTATUSID == 2)).ToList();

                        if (propertyCheckRentalApplication.Count != 0)
                        {
                            dynamic setInvalid = new ExpandoObject();
                            setInvalid.isValid = "false";
                            toReturn.Add(setInvalid);
                        }
                        else
                        {
                            var propertyCheckRentalAgreement = property.RENTAL_AGREEMENT.Where(jj => jj.PROPERTYID == property.PROPERTYID && (jj.RENTALSTATUSID == 1 || jj.RENTALSTATUSID == 3 || jj.RENTALSTATUSID == 4 || jj.RENTALSTATUSID == 5)).ToList();
                            if (propertyCheckRentalAgreement.Count != 0)
                            {
                                dynamic setInvalid = new ExpandoObject();
                                setInvalid.isValid = "false";
                                toReturn.Add(setInvalid);
                            }
                            else
                            {
                                property.PROPERTYSTATUSID = 3;
                                db.SaveChanges();
                                dynamic setInvalid = new ExpandoObject();
                                setInvalid.isValid = "true";
                                toReturn.Add(setInvalid);

                                // return true;
                            }
                        }
                    }



                    if (propertyCheck == null)
                    {
                    }



                    //RENTALAMOUNT amnt = db.RENTALAMOUNTs.Where(hh => hh.PROPERTYID == property.PROPERTYID).FirstOrDefault();

                    //if (amnt != null)
                    //{
                    //    db.RENTALAMOUNTs.Remove(amnt);
                    //    db.SaveChanges();

                    //}

                    //List<PROPERTYPHOTO> photos = db.PROPERTYPHOTOes.Where(jj => jj.PROPERTYID == property.PROPERTYID).ToList();

                    //if (photos.Count != 0)
                    //{
                    //    foreach (PROPERTYPHOTO photo in photos)
                    //    {
                    //        db.PROPERTYPHOTOes.Remove(photo);
                    //        db.SaveChanges();

                    //    }

                    //}
                    //else
                    //{

                    //}


                    //db.PROPERTies.Remove(property);
                    //db.SaveChanges();
                }


                return(toReturn);
            }
            catch (Exception)
            {
                return(null);
            }
        }