コード例 #1
0
        public ActionResult WorkspaceDetail(int ClientSpaceFloorPlanID)
        {
            SetSessionVariables();

            ApplicationState.Instance.CartSeats.Clear();
            ApplicationState.Instance.CartSpaces.Clear();
            ApplicationState.Instance.ReadClientSeats.Clear();
            ApplicationState.Instance.ClientID         = 0;
            ApplicationState.Instance.ClientLocationID = 0;

            WorkspaceDetailViewModel vModel = new WorkspaceDetailViewModel();

            ViewBag.ListOfScheduleTime = Common.GetScheduleTime();

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(Common.Instance.ApiClientControllerName);
                var responseTask = client.GetAsync(Common.Instance.ApiClientGetWorkSpaceDetails + ClientSpaceFloorPlanID.ToString());
                responseTask.Wait();

                var result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var readTask = result.Content.ReadAsAsync <WorkSpaceDetailsResponse>();
                    readTask.Wait();
                    vModel.WorkSpaceDetails                    = readTask.Result;
                    ViewBag.ClientID                           = vModel.WorkSpaceDetails.selectedSpace.ClientID;
                    ViewBag.ClientLocationID                   = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID;
                    ApplicationState.Instance.ClientID         = vModel.WorkSpaceDetails.selectedSpace.ClientID;
                    ApplicationState.Instance.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID;
                }

                responseTask = client.GetAsync(Common.Instance.ApiClientGetClientSpaceSeats + ClientSpaceFloorPlanID.ToString());
                responseTask.Wait();

                result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var readTask = result.Content.ReadAsAsync <List <ClientSpaceSeat> >();
                    readTask.Wait();
                    var seats = readTask.Result;
                    //SetSeatListObject(seats);
                    ApplicationState.Instance.ReadClientSeats = seats;
                }
            }

            return(View(vModel));
        }
コード例 #2
0
        public ActionResult Signup(SignupViewModel newSignupUser)
        {
            SetSessionVariables();

            //ViewBag.IsBooking = HttpContext.Request.Query["IsBooking"];
            //bool IsBooking = Convert.ToBoolean(ViewBag.IsBooking);
            if (newSignupUser.IsBooking)
            {
                newSignupUser.signupUser.IsClient = false;
            }
            else
            {
                newSignupUser.signupUser.IsClient = true;
            }

            if (!newSignupUser.IsBooking)
            {
                newSignupUser.signupUser.IsActive = true;
                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri(Common.Instance.ApiUserLoginUserLoginControllerName);

                    //HTTP POST
                    var postTask = client.PostAsJsonAsync <SignupUser>(Common.Instance.ApiUserLoginSignupUser, newSignupUser.signupUser);
                    postTask.Wait();

                    var result = postTask.Result;
                    if (result.IsSuccessStatusCode)
                    {
                        var readTask = result.Content.ReadAsAsync <UserLogin>();
                        readTask.Wait();
                        UserLogin login = readTask.Result;

                        if (login != null)
                        {
                            AssignSessionVariables(login);
                            SetSessionVariables();
                            return(RedirectToAction("Index", "Home"));
                        }
                        else
                        {
                            ModelState.AddModelError(string.Empty, "Username already exist");
                            return(View("Signup", newSignupUser));
                        }
                    }
                }
            }
            else
            {
                if (newSignupUser != null)
                {
                    MemberMaster NewMember    = new MemberMaster();
                    UserLogin    NewUserLogin = new UserLogin();

                    if (ApplicationState.Instance.CartSpaces.Count() > 0)
                    {
                        using (var client = new HttpClient())
                        {
                            WorkspaceDetailViewModel vModel = new WorkspaceDetailViewModel();
                            client.BaseAddress = new Uri(Common.Instance.ApiClientControllerName);
                            var responseTask = client.GetAsync(Common.Instance.ApiClientGetWorkSpaceDetails + ApplicationState.Instance.CartSpaces[0].ClientSpaceFloorPlanID.ToString());
                            responseTask.Wait();

                            var result = responseTask.Result;
                            if (result.IsSuccessStatusCode)
                            {
                                var readTask = result.Content.ReadAsAsync <WorkSpaceDetailsResponse>();
                                readTask.Wait();
                                vModel.WorkSpaceDetails = readTask.Result;
                            }

                            //ApplicationState.Instance.CartSpaces[0].ClientSpaceFloorPlanID

                            NewMember.ClientID     = vModel.WorkSpaceDetails.selectedSpace.ClientID;
                            NewMember.MemberStatus = true;
                            //NewMember.MemberName = newSignupUser.signupUser.Username;
                            NewMember.MemberName      = newSignupUser.signupUser.Firstname + " " + newSignupUser.signupUser.Lastname;
                            NewMember.CreatedBy       = 1;
                            NewMember.CreatedDateTime = DateTime.Now;

                            using (var client1 = new HttpClient())
                            {
                                client1.BaseAddress = new Uri(Common.Instance.ApiMemberControllerName);

                                //HTTP POST
                                var postTask1 = client1.PostAsJsonAsync <MemberMaster>(Common.Instance.ApiMemberAddMemberMaster, NewMember);
                                postTask1.Wait();

                                var result1 = postTask1.Result;
                                if (result1.IsSuccessStatusCode)
                                {
                                    var rs = result1.Content.ReadAsAsync <MemberMaster>().Result;
                                    NewUserLogin.MemberID = rs.MemberID;
                                    NewUserLogin.Username = newSignupUser.signupUser.Username;
                                    NewUserLogin.Password = newSignupUser.signupUser.Password;
                                    NewUserLogin.Active   = true;
                                    NewUserLogin.UserType = 4;
                                    NewUserLogin.ClientID = NewMember.ClientID;

                                    using (var client2 = new HttpClient())
                                    {
                                        //userLogin section added
                                        client2.BaseAddress = new Uri(Common.Instance.ApiUserLoginUserLoginControllerName);
                                        var postTask2 = client2.PostAsJsonAsync <UserLogin>(Common.Instance.ApiUserLoginAddUserLogin, NewUserLogin);
                                        postTask2.Wait();

                                        var result2 = postTask2.Result;
                                        if (result2.IsSuccessStatusCode)
                                        {
                                            var rs1 = result2.Content.ReadAsAsync <UserLogin>();
                                            NewUserLogin = rs1.Result;
                                            AssignSessionVariables(NewUserLogin);
                                            SetSessionVariables();

                                            //send booking request

                                            MemberBookingRequest bookingReuest = new MemberBookingRequest();
                                            bookingReuest.memberBookingSpaces     = ApplicationState.Instance.CartSpaces;
                                            bookingReuest.memberBookingSpaceSeats = ApplicationState.Instance.CartSeats;

                                            foreach (var _space in bookingReuest.memberBookingSpaces)
                                            {
                                                _space.ClientID         = vModel.WorkSpaceDetails.selectedSpace.ClientID;
                                                _space.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID;
                                                _space.MemberID         = NewUserLogin.MemberID;
                                                _space.SpacePrice       = vModel.WorkSpaceDetails.selectedSpace.Price;
                                                _space.CreatedBy        = NewUserLogin.UserID;
                                            }

                                            foreach (var _memberSpace in bookingReuest.memberBookingSpaces)
                                            {
                                                using (var client3 = new HttpClient())
                                                {
                                                    client3.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                                    var postTask3 = client3.PostAsJsonAsync <MemberBookingSpace>(Common.Instance.ApiSpaceBookingRequestSpace, _memberSpace);
                                                    postTask3.Wait();

                                                    var result3 = postTask3.Result;
                                                    if (result3.IsSuccessStatusCode)
                                                    {
                                                        var _newMemberRequestedSpace = result3.Content.ReadAsAsync <MemberBookingSpace>().Result;
                                                        foreach (var _seat in bookingReuest.memberBookingSpaceSeats)
                                                        {
                                                            _seat.MemberBookingSpaceID = _newMemberRequestedSpace.MemberBookingSpaceID;
                                                            _seat.CreatedBy            = NewUserLogin.UserID;
                                                        }

                                                        using (var client4 = new HttpClient())
                                                        {
                                                            client4.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                                            var postTask4 = client4.PostAsJsonAsync <List <MemberBookingSpaceSeat> >(Common.Instance.ApiSpaceBookingRequestSpaceSeats, bookingReuest.memberBookingSpaceSeats);
                                                            postTask4.Wait();

                                                            var result4 = postTask4.Result;
                                                            if (result4.IsSuccessStatusCode)
                                                            {
                                                                //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                                                //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                                                return(RedirectToAction("Index", "Home"));
                                                            }
                                                        }

                                                        //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                                        //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                                        //return RedirectToAction("Index", "MemberBooking", new { ClientLocationID = spaceVM.ClientLocationID });
                                                    }
                                                }
                                            }
                                            //end booking request
                                        }
                                    }
                                }
                            }
                        }
                    }

                    ModelState.AddModelError(string.Empty, "Server Error. Please contact administrator.");
                }
            }


            return(View());
        }
コード例 #3
0
        // GET: Authentication
        public ActionResult Login()
        {
            ViewBag.IsBooking = HttpContext.Request.Query["IsBooking"];
            UserLoginViewModel vModel = new UserLoginViewModel();

            vModel.IsBooking = Convert.ToBoolean(ViewBag.IsBooking);


            if (vModel.IsBooking && GetSessionObject() != null)
            {
                if (ApplicationState.Instance.CartSpaces.Count() > 0)
                {
                    using (var client = new HttpClient())
                    {
                        WorkspaceDetailViewModel vModelWS = new WorkspaceDetailViewModel();
                        client.BaseAddress = new Uri(Common.Instance.ApiClientControllerName);
                        var responseTask = client.GetAsync(Common.Instance.ApiClientGetWorkSpaceDetails + ApplicationState.Instance.CartSpaces[0].ClientSpaceFloorPlanID.ToString());
                        responseTask.Wait();

                        var result = responseTask.Result;
                        if (result.IsSuccessStatusCode)
                        {
                            var readTask = result.Content.ReadAsAsync <WorkSpaceDetailsResponse>();
                            readTask.Wait();
                            vModelWS.WorkSpaceDetails = readTask.Result;
                        }

                        //send booking request

                        MemberBookingRequest bookingReuest = new MemberBookingRequest();
                        bookingReuest.memberBookingSpaces     = ApplicationState.Instance.CartSpaces;
                        bookingReuest.memberBookingSpaceSeats = ApplicationState.Instance.CartSeats;

                        foreach (var _space in bookingReuest.memberBookingSpaces)
                        {
                            _space.ClientID         = vModelWS.WorkSpaceDetails.selectedSpace.ClientID;
                            _space.ClientLocationID = vModelWS.WorkSpaceDetails.selectedSpace.ClientLocationID;
                            _space.MemberID         = GetSessionObject().MemberID;
                            _space.SpacePrice       = vModelWS.WorkSpaceDetails.selectedSpace.Price;
                            _space.CreatedBy        = GetSessionObject().UserID;
                        }

                        foreach (var _memberSpace in bookingReuest.memberBookingSpaces)
                        {
                            using (var client3 = new HttpClient())
                            {
                                client3.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                var postTask3 = client3.PostAsJsonAsync <MemberBookingSpace>(Common.Instance.ApiSpaceBookingRequestSpace, _memberSpace);
                                postTask3.Wait();

                                var result3 = postTask3.Result;
                                if (result3.IsSuccessStatusCode)
                                {
                                    var _newMemberRequestedSpace = result3.Content.ReadAsAsync <MemberBookingSpace>().Result;
                                    foreach (var _seat in bookingReuest.memberBookingSpaceSeats)
                                    {
                                        _seat.MemberBookingSpaceID = _newMemberRequestedSpace.MemberBookingSpaceID;
                                        _seat.CreatedBy            = GetSessionObject().UserID;
                                    }

                                    using (var client4 = new HttpClient())
                                    {
                                        client4.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                        var postTask4 = client4.PostAsJsonAsync <List <MemberBookingSpaceSeat> >(Common.Instance.ApiSpaceBookingRequestSpaceSeats, bookingReuest.memberBookingSpaceSeats);
                                        postTask4.Wait();

                                        var result4 = postTask4.Result;
                                        if (result4.IsSuccessStatusCode)
                                        {
                                            //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                            //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                            //return RedirectToAction("Index", "MemberBooking", new { ClientLocationID = spaceVM.ClientLocationID });
                                        }
                                    }

                                    //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                    //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                    //return RedirectToAction("Index", "MemberBooking", new { ClientLocationID = spaceVM.ClientLocationID });
                                }
                            }
                        }
                        //end booking request
                    }
                }
            }

            if (GetSessionObject() != null)
            {
                return(RedirectToAction("Index", "Home"));
            }

            SetSessionVariables();
            return(View(vModel));
        }
コード例 #4
0
        public ActionResult Login(UserLoginViewModel user)
        {
            //ViewBag.IsBooking = HttpContext.Request.Query["IsBooking"];
            //bool IsBooking = Convert.ToBoolean(ViewBag.IsBooking);
            //user.IsBooking = IsBooking;

            var ssd = user.IsBooking;
            //if (user.IsBooking)
            //    user.signupUser.IsClient = false;
            //else
            //    user.signupUser.IsClient = true;


            UserLogin _user = null;

            using (var client = new HttpClient())
            {
                client.BaseAddress = new Uri(Common.Instance.ApiUserLoginUserLoginControllerName);
                //HTTP GET
                var responseTask = client.PostAsJsonAsync(Common.Instance.ApiUserLoginAuthenticateUser, user.UserLogin);
                responseTask.Wait();

                var result = responseTask.Result;
                if (result.IsSuccessStatusCode)
                {
                    var readTask = result.Content.ReadAsAsync <UserLogin>();
                    readTask.Wait();

                    _user = readTask.Result;
                }
            }

            if (_user != null && _user.UserStatus == UserStatus.Inactive)
            {
                ViewData["loginError"] = "Account inactive, please contact administrator";
                return(View("Login", user));
            }

            if (_user != null && _user.UserStatus == UserStatus.Suspended)
            {
                ViewData["loginError"] = "Account suspended, please contact administrator";
                return(View("Login", user));
            }

            if (_user != null && _user.Username == user.UserLogin.Username && _user.Password == user.UserLogin.Password)
            {
                AssignSessionVariables(_user);
                SetSessionVariables();

                if (user.IsBooking)
                {
                    if (ApplicationState.Instance.CartSpaces.Count() > 0)
                    {
                        using (var client = new HttpClient())
                        {
                            WorkspaceDetailViewModel vModel = new WorkspaceDetailViewModel();
                            client.BaseAddress = new Uri(Common.Instance.ApiClientControllerName);
                            var responseTask = client.GetAsync(Common.Instance.ApiClientGetWorkSpaceDetails + ApplicationState.Instance.CartSpaces[0].ClientSpaceFloorPlanID.ToString());
                            responseTask.Wait();

                            var result = responseTask.Result;
                            if (result.IsSuccessStatusCode)
                            {
                                var readTask = result.Content.ReadAsAsync <WorkSpaceDetailsResponse>();
                                readTask.Wait();
                                vModel.WorkSpaceDetails = readTask.Result;
                            }

                            //send booking request

                            MemberBookingRequest bookingReuest = new MemberBookingRequest();
                            bookingReuest.memberBookingSpaces     = ApplicationState.Instance.CartSpaces;
                            bookingReuest.memberBookingSpaceSeats = ApplicationState.Instance.CartSeats;

                            foreach (var _space in bookingReuest.memberBookingSpaces)
                            {
                                _space.ClientID         = vModel.WorkSpaceDetails.selectedSpace.ClientID;
                                _space.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID;
                                _space.MemberID         = _user.MemberID;
                                _space.SpacePrice       = vModel.WorkSpaceDetails.selectedSpace.Price;
                                _space.CreatedBy        = _user.UserID;
                            }

                            foreach (var _memberSpace in bookingReuest.memberBookingSpaces)
                            {
                                using (var client3 = new HttpClient())
                                {
                                    client3.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                    var postTask3 = client3.PostAsJsonAsync <MemberBookingSpace>(Common.Instance.ApiSpaceBookingRequestSpace, _memberSpace);
                                    postTask3.Wait();

                                    var result3 = postTask3.Result;
                                    if (result3.IsSuccessStatusCode)
                                    {
                                        var _newMemberRequestedSpace = result3.Content.ReadAsAsync <MemberBookingSpace>().Result;
                                        foreach (var _seat in bookingReuest.memberBookingSpaceSeats)
                                        {
                                            _seat.MemberBookingSpaceID = _newMemberRequestedSpace.MemberBookingSpaceID;
                                            _seat.CreatedBy            = _user.UserID;
                                        }

                                        using (var client4 = new HttpClient())
                                        {
                                            client4.BaseAddress = new Uri(Common.Instance.ApiSpaceBookingControllerName);
                                            var postTask4 = client4.PostAsJsonAsync <List <MemberBookingSpaceSeat> >(Common.Instance.ApiSpaceBookingRequestSpaceSeats, bookingReuest.memberBookingSpaceSeats);
                                            postTask4.Wait();

                                            var result4 = postTask4.Result;
                                            if (result4.IsSuccessStatusCode)
                                            {
                                                //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                                //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                                //return RedirectToAction("Index", "MemberBooking", new { ClientLocationID = spaceVM.ClientLocationID });
                                            }
                                        }

                                        //SpaceBookingViewModel spaceVM = new SpaceBookingViewModel();
                                        //spaceVM.ClientLocationID = vModel.WorkSpaceDetails.selectedSpace.ClientLocationID.Value;
                                        //return RedirectToAction("Index", "MemberBooking", new { ClientLocationID = spaceVM.ClientLocationID });
                                    }
                                }
                            }
                            //end booking request
                        }
                    }
                }
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                ViewData["loginError"] = "Incorrect username or password.";
                return(View("Login", user));
            }

            return(View());
        }