예제 #1
0
        public HttpResponseMessage Post([FromBody] CreateEmpUserRequestDTO userEntity)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    userEntity.UserType = "EMP";
                    var res = _userServices.Register(userEntity);
                    if (res.IsSuccess)
                    {
                        return(Request.CreateResponse(HttpStatusCode.OK, res));
                    }
                    else
                    {
                        return(Request.CreateResponse(HttpStatusCode.BadRequest, res));
                    }
                }
                else
                {
                    // the code below should probably be refactored into a GetModelErrors
                    // method on your BaseApiController or something like that

                    var errors = new List <string>();
                    foreach (var state in ModelState)
                    {
                        foreach (var error in state.Value.Errors)
                        {
                            errors.Add(error.ErrorMessage);
                        }
                    }

                    return(Request.CreateResponse(HttpStatusCode.BadRequest, new CreateUserResponseDTO
                    {
                        IsSuccess = false,
                        Message = errors
                    }));
                }
            }
            catch (Exception ex)
            {
                throw new ApiDataException(1000, "Something wrong, Try Again!", HttpStatusCode.InternalServerError);
            }
        }
예제 #2
0
        public CreateUserResponseDTO Register(CreateEmpUserRequestDTO regDetail)
        {
            CreateUserResponseDTO response = new CreateUserResponseDTO();

            try
            {
                User user = new User();

                user.Username   = regDetail.Username;
                user.FirstName  = regDetail.FirstName;
                user.LastName   = regDetail.LastName;
                user.EmailId    = regDetail.EmailId;
                user.CreatedBy  = regDetail.CreatedBy;
                user.ModifiedBy = regDetail.CreatedBy;
                user.ModifiedOn = DateTime.Now;
                user.CreatedOn  = DateTime.Now;
                user.RoleId     = regDetail.RoleId;
                user.CompanyId  = regDetail.CompanyId;
                user.IsActive   = true;
                user.UserType   = regDetail.UserType;
                user.RefId      = regDetail.RefId;

                Secures SecTemp = new Secures();

                user.PasswordKey  = SecTemp.AuthKey(32);
                user.PasswordHash = SecTemp.Encrytp_String(regDetail.Password, user.PasswordKey);

                User usernameCheck = new User();
                User emailCheck    = new User();

                usernameCheck = _unitOfWork.UserRepository.Get(u => u.Username == regDetail.Username);
                emailCheck    = _unitOfWork.UserRepository.Get(u => u.EmailId == regDetail.EmailId);
                if (usernameCheck == null && emailCheck == null)
                {
                    var res = _unitOfWork.UserRepository.Insert(user, true);
                    _unitOfWork.Save();
                    if (res != null)
                    {
                        User testUser = new User();
                        testUser = _unitOfWork.UserRepository.Get(u => u.Username == regDetail.Username && u.EmailId == regDetail.EmailId);
                        if (testUser != null)
                        {
                            response.IsSuccess = true;
                            response.Message.Add("User created Successfully!");
                        }
                        else
                        {
                            response.IsSuccess = false;
                            response.Message.Add("Failed Try again after sometime");
                        }
                        //SecTemp.Send_Register_Mail(testUser.email, regDetail.Password, testUser.user_tblname, testUser.UserRole.user_role);
                    }
                    else
                    {
                        response.IsSuccess = false;
                        response.Message.Add("Failed Try again after sometime");
                    }
                }
                else
                {
                    if (usernameCheck != null)
                    {
                        response.IsSuccess = false;
                        response.Message.Add("Username already Exist");
                    }
                    if (emailCheck != null)
                    {
                        response.IsSuccess = false;
                        response.Message.Add("Email already Exist");
                    }
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }