Ejemplo n.º 1
0
        public ActionResult Create(UserViewModel userViewModel)
        {
            userViewModel.genderList = _userBusiness.GetGenderList();
            if (ModelState.IsValid)
            {
                Mapper.CreateMap <UserViewModel, User>();
                User user   = Mapper.Map <UserViewModel, User>(userViewModel);
                var  result = _userBusiness.ValidateUser(user, "I");
                if (!string.IsNullOrEmpty(result))
                {
                    TempData["Success"]   = result;
                    TempData["isSuccess"] = "false";
                    return(View(userViewModel));
                }

                //saving profile image
                user.TokenKey = GlobalMethods.GetToken();
                user.UserType = "Admin";
                user.Password = Md5Encryption.Encrypt(userViewModel.Password);
                FileOperations.CreateDirectory(Server.MapPath("~/ProfileImage"));
                if (userViewModel.ProfileImageUpload != null)
                {
                    string ext      = Path.GetExtension(userViewModel.ProfileImageUpload.FileName).ToLower();
                    string filename = user.TokenKey + ext;

                    string filePath = Server.MapPath("~/ProfileImage/") + filename;
                    userViewModel.ProfileImageUpload.SaveAs(filePath);
                    user.ProfileImage = filename;
                }
                user.IsBlocked = false;
                bool isSuccess = _userBusiness.AddUpdateDeleteUser(user, "I");
                if (isSuccess)
                {
                    TempData["Success"]   = "User Created Successfully!!";
                    TempData["isSuccess"] = "true";
                    return(RedirectToAction("Index"));
                }
                else
                {
                    TempData["Success"]   = "Failed to create User!!";
                    TempData["isSuccess"] = "false";
                }
            }
            else
            {
                TempData["Success"]   = ModelState.Values.SelectMany(m => m.Errors).FirstOrDefault().ErrorMessage;
                TempData["isSuccess"] = "false";
            }

            return(View(userViewModel));
        }