public IDtoOutObjects CreateUser(DtoInUser dtoInUser) { string deviceName = dtoInUser.DeviceName; User user = new User(); var configIn = new MapperConfiguration(cfg => { cfg.CreateMap <DtoInUser, User>(); }); IMapper mapperIn = configIn.CreateMapper(); mapperIn.Map(dtoInUser, user); user.BornDate = new DateTime(dtoInUser.Year, dtoInUser.Month, dtoInUser.Day); try { if (!UserExists(user)) { Credential c = new Credential(user.Email, Guid.NewGuid().ToString(), user); Credential credential = credentialsRepository.Add(c); credentialsRepository.Save(); User u = _usersRepostiory.FindBy(x => x.Id == user.Id && x.IsDeleted == false).FirstOrDefault(); #region createMapperUser var config = new MapperConfiguration(cfg => { cfg.CreateMap <User, DtoOutUser>(); }); IMapper mapper = config.CreateMapper(); #endregion DtoOutUser dtoOutUser = new DtoOutUser(); mapper.Map(u, dtoOutUser); dtoOutUser.TokenString = TokenTools.CreateToken(u, deviceName).TokenString; return(dtoOutUser); } else { DtoOutError error = new DtoOutError(); error.Exception = new DuplicateObjectInDatabaseException("User"); error.Message = "This user is already created"; return(error); } } catch (Exception ex) { DtoOutError error = new DtoOutError(); error.Exception = ex; error.Message = ex.Message; return(error); } }
public IDtoOutObjects Login(string loginName, string password, string deviceName) { Credential credential = _credentialRepository.FindBy(x => x.LoginName == loginName && x.IsDeleted == false && x.ObjectUser.IsDeleted == false).FirstOrDefault(); if (credential != null && credential.Password == password) { Token t = TokenTools.CreateToken(credential.ObjectUser, deviceName); var config = new MapperConfiguration(cfg => { cfg.CreateMap <Token, DtoOutToken>(); }); IMapper mapper = config.CreateMapper(); DtoOutToken dtoOutToken = new DtoOutToken(); mapper.Map(t, dtoOutToken); dtoOutToken.IdUser = TokenTools.getUserFromToken(dtoOutToken.TokenString).Id; return(dtoOutToken); } else { DtoOutError error = new DtoOutError(); error.Exception = new CredentialAreNotValidException(); error.Message = "Credentials are not assign to account"; return(error); } }