コード例 #1
0
        public ServerResult <User> Login(Login args)
        {
            try
            {
                if (args == null)
                {
                    throw new Exception("Arguments are empty");
                }

                Entities.User user = userRepository.GetByEmail(args.Email);
                if (user != null)
                {
                    tokenRepository.Add(new Entities.Token
                    {
                        User        = user,
                        UserId      = user.Id,
                        TokenString = Convert.ToBase64String(Guid.NewGuid().ToByteArray()),
                        startTime   = DateTime.Now,
                        endTime     = DateTime.Now.AddHours(3)
                    });
                    return(new ServerResult <User>
                    {
                        Data = user.ToDTO(),
                        Success = true
                    });
                }
                else
                {
                    return new ServerResult <User>
                           {
                               Success = false,
                               Message = "Bad credentials",
                               Data    = null,
                           }
                };
            }
            catch (Exception e)
            {
                return(new ServerResult <User>
                {
                    Success = false,
                    Message = e.Message,
                });
            }
        }
コード例 #2
0
        public ServerResult <User> Registration(Registration args)
        {
            try
            {
                if (userRepository.GetByEmail(args.Email) != null)
                {
                    return(new ServerResult <User>
                    {
                        Success = false,
                        Message = "this email already exists in the database"
                    });
                }
                var user = new Entities.User
                {
                    FirstName   = args.FirstName,
                    LastName    = args.LastName,
                    Email       = args.Email,
                    PhoneNumber = args.PhoneNumber,
                    Token       = args.Token,
                };

                userRepository.Add(user);

                return(new ServerResult <User>
                {
                    Data = user.ToDTO(),
                    Success = true
                });
            }
            catch (Exception e)
            {
                return(new ServerResult <User>
                {
                    Success = false,
                    Message = e.Message
                });
            }
        }