コード例 #1
0
        public void Create(string email, string password)
        {
            WorkerUserDTO existsUser = getUserDTO(u => u.Email.ToUpper() == email.ToUpper());

            if (existsUser != null)
            {
                setErrorMsg("Email", Resource.UniqueEmailConstraintMsg);
            }

            if (!FormatConfirm.IsEmail(email))
            {
                setErrorMsg("Email", Resource.EmailConstraintMsg);
            }


            checkStringConstraint("Password", password, true, 100, 5);

            if (errorMessages.Count > 0)
            {
                throw new DataServiceException(Resource.GeneralConstraintMsg, errorMessages);
            }


            WorkerUser user = new WorkerUser()
            {
                Email    = email,
                Password = password
            };

            userRepository.Save(user);

            repository.SaveChanges();
        }
コード例 #2
0
        public ActionResult RecoveryPassword(RecoveryPassvordViewModel model)
        {
            if (ModelState.IsValid)
            {
                WorkerUserDTO user = userService.GetDTO(model.Email);
                if (user == null)
                {
                    ModelState.AddModelError("", Resource.Message_EmailNotRegitered);
                }
                else
                {
                    queuePasswordRecovery.Push(new UserPasswordRecoveryAppEvent()
                    {
                        Email    = model.Email,
                        Password = user.Password,
                        Cabinet  = false
                    });

                    /*Task task = new Task(() => sendEmail(model.Email,
                     *  String.Format(Resource.Text_RecoveryPasswordSubject, Resource.AppName),
                     *  user.Password));
                     * task.Start();*/

                    model.IsSend = true;
                }
            }

            return(View(model));
        }
コード例 #3
0
ファイル: UserController.cs プロジェクト: knyazkov-ma/Admin
 public IHttpActionResult Save(WorkerUserDTO dto)
 {
     return(execute(delegate()
     {
         userService.Save(dto);
         result = Json(new { success = true });
     }));
 }
コード例 #4
0
ファイル: UserController.cs プロジェクト: knyazkov-ma/Admin
 public IHttpActionResult Get(long id = 0)
 {
     return(execute(delegate()
     {
         WorkerUserDTO dto = userService.GetDTO(id);
         result = Json(new { success = true, data = dto });
     }));
 }
コード例 #5
0
        public void Save(WorkerUserDTO dto)
        {
            if (dto.Id == 1)
            {
                throw new DataServiceException(Resource.SuperUserUpdateMsg);
            }

            checkStringConstraint("Name", dto.Name, true, 100, 5);
            checkStringConstraint("Email", dto.Email, true, 100, 5);
            checkStringConstraint("Password", dto.Password, true, 100, 5);

            if (!String.IsNullOrWhiteSpace(dto.Email))
            {
                WorkerUserDTO existsUser = getUserDTO(u => u.Email.ToUpper() == dto.Email.ToUpper() && u.Id != dto.Id);
                if (existsUser != null)
                {
                    setErrorMsg("Email", Resource.UniqueEmailConstraintMsg);
                }

                if (!FormatConfirm.IsEmail(dto.Email))
                {
                    setErrorMsg("Email", Resource.EmailConstraintMsg);
                }
            }

            if (dto.UserType == null || dto.UserType.Id == 0)
            {
                setErrorMsg("UserType", Resource.EmptyConstraintMsg);
            }

            if (errorMessages.Count > 0)
            {
                throw new DataServiceException(Resource.GeneralConstraintMsg, errorMessages);
            }

            WorkerUser user = null;

            if (dto.Id == 0)
            {
                user = new WorkerUser();
            }
            else
            {
                user = userRepository.Get(dto.Id);
            }

            user.Email    = dto.Email;
            user.Password = dto.Password;
            user.Name     = dto.Name;
            user.UserType = typeWorkerUserRepository.Get(dto.UserType.Id);
            user.Disabled = dto.Disabled;

            userRepository.Save(user);
            repository.SaveChanges();
        }
コード例 #6
0
ファイル: UserStore.cs プロジェクト: knyazkov-ma/Admin
        public Task <ApplicationUser> FindByNameAsync(string userName)
        {
            WorkerUserDTO u = userService.GetDTO(userName);

            if (u != null)
            {
                return(Task.Run(() => new ApplicationUser()
                {
                    Id = u.Id,
                    UserName = u.UserName,
                    Password = u.Password,
                    Email = u.Email
                }));
            }

            return(Task.Run(() => (ApplicationUser)null));
        }
コード例 #7
0
        private WorkerUserDTO getUserDTO(Expression <Func <WorkerUser, bool> > predicate)
        {
            WorkerUser user = userRepository.Get(predicate);

            if (user == null)
            {
                return(null);
            }

            WorkerUserDTO dto = new WorkerUserDTO()
            {
                Email    = user.Email,
                Password = user.Password,
                Id       = user.Id,
                Name     = user.Name,
                Worker   = user.Worker,
                UserType = user.UserType
            };

            return(dto);
        }
コード例 #8
0
        public ActionResult RecoveryPassword(RecoveryPassvordViewModel model)
        {
            if (ModelState.IsValid)
            {
                WorkerUserDTO user = userService.GetDTO(model.Email);
                if (user == null)
                {
                    ModelState.AddModelError("", Resource.Message_EmailNotRegitered);
                }
                else
                {
                    Task task = new Task(() => sendEmail(model.Email,
                                                         String.Format(Resource.Text_RecoveryPasswordSubject, Resource.AppName),
                                                         user.Password));
                    task.Start();

                    model.IsSend = true;
                }
            }

            return(View(model));
        }