public async Task <IActionResult> Register([FromBody] Req_Register request) { if (!ModelState.IsValid) { return(BadRequest(new Res_Auth { Success = false, Errors = ModelState.Values.SelectMany(x => x.Errors.Select(xx => xx.ErrorMessage)) })); } var registerResponse = await _authService.RegisterAsync(request.Username, request.Password, request.Email, request.Role); if (!registerResponse.Success) { return(BadRequest(new Res_Auth { Success = registerResponse.Success, Errors = registerResponse.Errors })); } return(Ok(new Res_Auth { Success = registerResponse.Success })); }
public IActionResult Register(Req_Register user) { var result = new ApiResult <Res_User>(ServiceCode, "001"); try { var result_service = _userService.AddUser(user); if (result_service.IsSuccess == 1) { result.Data = result_service.Data; result.SetSuccess(result_service.Message); } else { result.Data = null; result.SetError(result_service.Message, result_service.StatusCode, result_service.TrackingCode); } return(new ObjectResult(result)); } catch (Exception e) { result.SetException(e); return(new ObjectResult(result)); } }
/// <summary> /// Method Code: 001 /// </summary> /// <param name="user"></param> /// <returns></returns> public ApiResult <Res_User> AddUser(Req_Register user) { var result = new ApiResult <Res_User>(ServiceCode, "001"); try { var userItem = new User() { CityId = 0, Name = user.Name, Username = user.Username, Email = user.Email, Password = user.Password, Gender = user.Gender, Follower = 0, Followed = 0, IsActive = 0, ProfileImageURL = "", RegisterDate = DateTime.Now }; var findUser = _unitOfWork.Users.SingleOrDefault(w => w.Email == userItem.Email || w.Username == userItem.Username); // Aynı kayda sahip başka bir kullancıı mevcut mu? if (findUser != null) { result.SetError("Aynı e-postaya veya kullanıcı adına sahip başka bir kullanıcı bulunmaktadır.", 405); result.Data = null; } else { _unitOfWork.Users.Add(userItem); MailValues mailValues = new MailValues() { IsBodyHtml = true, Subject = "CombinEseR Kullanıcı Kayıt Bilgisi", Body = MailManager.GetMailTemplate("Kullanıcı Kayıt Bildirimi", $"Aramıza Hoşgeldiniz, {user.Name}", null), List_To = new List <string>() { user.Email } }; MailManager.SendMail(mailValues); result.Data = _mapper.Map <User, Res_User>(userItem); _unitOfWork.Commit(); result.SetSuccess("Kullanıcı başarıyla sisteme kaydedildi."); } return(result); } catch (Exception e) { result.SetException(e); return(result); } }