コード例 #1
0
        public async Task <DataResponse <FriendRequest> > GetFriedsRequestByUserID(Guid userID)
        {
            DataResponse <FriendRequest> response = new DataResponse <FriendRequest>();

            if (userID == null)
            {
                response.AddError("ID", "ID invalido");
            }

            return(response.HasError() ? response : await _repository.GetFriedsRequestByUserID(userID));
        }
コード例 #2
0
        public async Task <DataResponse <Item> > GetObjectByID(Guid objectToGetID)
        {
            DataResponse <Item> response = new DataResponse <Item>();

            if (objectToGetID == null)
            {
                response.AddError("ID", "ID invalido");
            }

            return(response.HasError() ? response : await _repository.GetObjectByID(objectToGetID));
        }
コード例 #3
0
        public async Task <DataResponse <Comment> > GetCommentsByWritterID(Guid writterID)
        {
            DataResponse <Comment> response = new DataResponse <Comment>();

            if (writterID == null)
            {
                response.AddError("ID", "ID invalido");
            }

            return(response.HasError() ? response : await _repository.GetCommentsByWritterID(writterID));
        }
コード例 #4
0
        public async Task <DataResponse <Sale> > GetSalesByBuyerID(Guid buyerID)
        {
            DataResponse <Sale> response = new DataResponse <Sale>();

            if (buyerID == null)
            {
                response.AddError("ID", "ID invalido");
            }

            return(response.HasError() ? response : await _repository.GetSalesByBuyerID(buyerID));
        }
コード例 #5
0
        public async Task <DataResponse <User> > GetUserByIdForProfile(Guid userID, bool owenr)
        {
            DataResponse <User> dataResponse = new DataResponse <User>();

            if (userID == null)
            {
                dataResponse.AddError("userID", "ID invalido");
            }

            return(dataResponse.HasError() ? dataResponse : await _repository.GetUserByIdForProfile(userID, owenr));
        }
コード例 #6
0
        public async Task <DataResponse <Ad> > GetAdsForID(Guid SellerID)
        {
            DataResponse <Ad> response = new DataResponse <Ad>();

            if (SellerID == null)
            {
                response.AddError("ID", "ID invalido");
            }

            return(response.HasError() ? response : await _repository.GetAdsForID(SellerID));
        }
コード例 #7
0
        public async Task <object> Profile()
        {
            int id = this.GetUserID();
            DataResponse <User> response = await this._service.GetByID(id);

            if (!response.HasError())
            {
                response.Data[0].Password = "";

                return(this.SendResponse(response));
            }

            return(new
            {
                message = response.GetErrorMessage()
            });
        }
コード例 #8
0
        public async Task <object> GetByID(int id)
        {
            DataResponse <User> response = await this._service.GetByID(id);

            if (!response.HasError())
            {
                response.Data[0].Password = "";
                response.Data[0].Cpf      = "";
                response.Data[0].Rg       = "";
                return(new
                {
                    user = response.Data[0]
                });
            }

            return(new
            {
                message = response.GetErrorMessage()
            });
        }
コード例 #9
0
        public async Task <object> Authenticate([FromBody] AuthenticateModel model)
        {
            User u = new User()
            {
                Email = model.Email, Password = model.Password
            };
            DataResponse <User> response = await this._service.Authenticate(u);

            if (!response.HasError())
            {
                string token = TokenService.GenerateToken(response.Data[0]);
                response.Data[0].Password = "";

                return(this.SendResponse(new { data = response.Data, token = token }));
            }

            return(new
            {
                message = response.GetErrorMessage()
            });
        }
コード例 #10
0
        public async Task <DataResponse <Item> > GetObjectByName(string name)
        {
            DataResponse <Item> response = new DataResponse <Item>();

            if (string.IsNullOrWhiteSpace(name))
            {
                response.AddError("Name", "O nome deve ser informado");
            }
            else
            {
                name = name.ToLower().Trim();
                name = Regex.Replace(name, @"\s+", " ");

                if (name.Length < 2 && name.Length > 20)
                {
                    response.AddError("Name", "O nome deve conter entre 2 a 20 caracteres");
                }
            }

            return(response.HasError() ? response : await _repository.GetObjectByName(name));
        }
コード例 #11
0
        public async Task <object> GetOwner(int id)
        {
            try
            {
                DataResponse <Owner> response = await _service.GetByID(id);

                if (response.HasError())
                {
                    return(response);
                }

                if (await CheckPermissionToGetOwner(response.Data[0]))
                {
                    return(this.SendResponse(response));
                }
                return(Forbid());
            }
            catch (Exception e)
            {
                Response.StatusCode = StatusCode(500).StatusCode;
                return(null);
            }
        }
コード例 #12
0
        public async Task <DataResponse <User> > Authenticate(User user)
        {
            DataResponse <User> r = new DataResponse <User>();

            try
            {
                DataResponse <User> getUserResponse = await _userRepo.GetByEmail(user.Email);

                if (getUserResponse.HasError())
                {
                    return(getUserResponse);
                }

                User findedUser = getUserResponse.Data[0];

                if (!await new HashUtils().CompareHash(user.Password, findedUser.Password))
                {
                    r.Success = false;
                    r.ErrorList.Add("Invalid password");
                    return(r);
                }

                r.Data.Add(findedUser);
                r.Success = true;
                return(r);
            }
            catch (Exception e)
            {
                StringBuilder sb = new StringBuilder();
                log.Error(sb.AppendLine(e.Message).AppendLine(e.StackTrace).ToString());

                r.Success = false;
                r.ErrorList.Add("Error on user authentication");
                return(r);
            }
        }
コード例 #13
0
        public async Task <DataResponse <User> > Authetication(string email, string password)
        {
            DataResponse <User> dataResponse = (DataResponse <User>)Validate.ValidateLoginUser(email, password);

            return(dataResponse.HasError() ? dataResponse : await _repository.Authetication(email, password));
        }