Exemplo n.º 1
0
        public string AddUserLoginTimeConfiguration(UserLoginTimeConfigurationVM model)
        {
            string id = string.Empty;

            SqlParameter[] parameters =
            {
                new SqlParameter {
                    ParameterName = "@TutorId", Value = model.TutorId
                },
                new SqlParameter {
                    ParameterName = "@WeekDay", Value = model.WeekDay
                },
                new SqlParameter {
                    ParameterName = "@IsAllowLogin", Value = model.IsAllowLogin
                },
                new SqlParameter {
                    ParameterName = "@LoginStartTime", Value = model.LoginStartTime
                },
                new SqlParameter {
                    ParameterName = "@LoginEndTime", Value = model.LoginEndTime
                },
                new SqlParameter {
                    ParameterName = "@CreatedBy", Value = model.CreatedBy
                },
            };

            id = Convert.ToString(DALHelper.ExecuteScalar("AddUserLoginTimeConfiguration", parameters));

            return(id);
        }
        public ActionResult UserLoginTime()
        {
            var userLoginDetails = userRepository.GetUserLoginTimeByTutor(LogInManager.LoggedInUser.Id);

            UserLoginTimeVM model = new UserLoginTimeVM();

            model.TutorId           = LogInManager.LoggedInUser.Id;
            model.ConfigurationType = UserLoginConfigurationType.RESTRICTED;

            if (userLoginDetails != null && userLoginDetails.Count > 0)
            {
                var userLoginDetail = userLoginDetails[0];

                model.ConfigurationType = userLoginDetail.ConfigurationType;
                model.LoginStartTime    = userLoginDetail.LoginStartTime;
                model.LoginEndTime      = userLoginDetail.LoginEndTime;
                model.UserName          = userLoginDetail.UserName;

                if (model.LoginStartTime != null && model.LoginStartTime.HasValue)
                {
                    DateTime startTime = DateTime.Today.Add(model.LoginStartTime.Value);
                    model.LoginStartTimeText = startTime.ToString("HH:mm");
                }

                if (model.LoginEndTime != null && model.LoginEndTime.HasValue)
                {
                    DateTime endTime = DateTime.Today.Add(model.LoginEndTime.Value);
                    model.LoginEndTimeText = endTime.ToString("HH:mm");
                }

                //Get user's login time configuration setting
                var loginTimeConfigurations = userRepository.GetUserLoginTimeConfigurationByTutor(LogInManager.LoggedInUser.Id, null);
                if (loginTimeConfigurations != null && loginTimeConfigurations.Count > 0)
                {
                    foreach (var item in loginTimeConfigurations)
                    {
                        if (item.IsAllowLogin)
                        {
                            DateTime startTime = DateTime.Today.Add(item.LoginStartTime.Value);
                            item.LoginStartTimeText = startTime.ToString("HH:mm");

                            DateTime endTime = DateTime.Today.Add(item.LoginEndTime.Value);
                            item.LoginEndTimeText = endTime.ToString("HH:mm");
                        }
                    }

                    model.Configurations = loginTimeConfigurations;
                }
                else
                {
                    List <UserLoginTimeConfigurationVM> configurations = new List <UserLoginTimeConfigurationVM>();
                    for (int i = 0; i < 7; i++) // Sunday to Saturday
                    {
                        UserLoginTimeConfigurationVM objTimeConfiguration = new UserLoginTimeConfigurationVM();
                        objTimeConfiguration.WeekDay            = i;
                        objTimeConfiguration.IsAllowLogin       = false;
                        objTimeConfiguration.LoginStartTimeText = string.Empty;
                        objTimeConfiguration.LoginEndTimeText   = string.Empty;

                        configurations.Add(objTimeConfiguration);
                    }
                    model.Configurations = configurations;
                }
            }
            return(View(model));
        }