Esempio n. 1
0
        public Infrastructure.ApiResponse <Services.ViewModel.UserViewModel> Post([FromBody] Services.ViewModel.CreateUserViewModel model)
        {
            var response = new Infrastructure.ApiResponse <Services.ViewModel.UserViewModel>();

            try{
                var req = new Services.Message.AddUserRequest();
                req.model = model;

                _userService.AddUser(req);

                response.status = true;

                Services.ViewModel.UserViewModel u = new Services.ViewModel.UserViewModel();
                u.username = model.username;

                response.data = u;
                response.code = System.Net.HttpStatusCode.Created;
            }catch (Infrastructure.BusinessRuleException bex) {
                response.status        = true;
                response.code          = System.Net.HttpStatusCode.BadRequest;
                response.brokenRules   = bex.BrokenRules;
                response.error_message = bex.Message;
            }catch (Exception ex) {
                response.status        = true;
                response.code          = System.Net.HttpStatusCode.InternalServerError;
                response.error_message = "Ocorreu um erro inesperado. Entre em contato com o nosso time de desenvolvimento.";
            }
            return(response);
        }
Esempio n. 2
0
        public async Task <IActionResult> Login([Bind("username,password")] Services.ViewModel.UserViewModel model)
        {
            Console.Write(model);
            AuthenticationModel response = null;

            System.Net.Http.HttpMethod method = System.Net.Http.HttpMethod.Post;
            if (model.Id != Guid.Empty)
            {
                method = System.Net.Http.HttpMethod.Put;
            }

            response = await ApiRequestHelper.postPutEncodedRequest <AuthenticationModel>(
                EscolaDeVoce.Backend.Helpers.EscolaDeVoceEndpoints.tokenUrl,
                model.username,
                model.password
                );

            if (response != null)
            {
                const string Issuer = "https://www.escoladevoce.com.br";
                var          claims = new List <Claim> {
                    new Claim(ClaimTypes.Name, "Charles", ClaimValueTypes.String, Issuer),
                    new Claim(ClaimTypes.Surname, "França", ClaimValueTypes.String, Issuer),
                    new Claim(ClaimTypes.Country, "BR", ClaimValueTypes.String, Issuer),
                    new Claim(ClaimTypes.Country, "BR", ClaimValueTypes.String, Issuer),
                    new Claim("TOKEN", response.access_token, ClaimValueTypes.String, Issuer),
                    new Claim("facebookid", "112345432145432", ClaimValueTypes.String, Issuer),
                    new Claim("id", Guid.NewGuid().ToString(), ClaimValueTypes.String)
                };

                var userIdentity  = new ClaimsIdentity(claims, "Passport");
                var userPrincipal = new ClaimsPrincipal(userIdentity);

                await HttpContext.Authentication.SignInAsync("Cookie", userPrincipal,
                                                             new AuthenticationProperties
                {
                    ExpiresUtc   = DateTime.UtcNow.AddMinutes(20),
                    IsPersistent = true,
                    AllowRefresh = false
                });

                return(RedirectToAction("Index", "Project"));
            }

            Console.Write(response);
            return(View());
        }
Esempio n. 3
0
        public Infrastructure.ApiResponse <Services.ViewModel.UserViewModel> Put(string id, [FromBody] Services.ViewModel.UserViewModel model)
        {
            var response = new Infrastructure.ApiResponse <Services.ViewModel.UserViewModel>();

            try{
                Guid userid = Guid.Empty;
                if (!Guid.TryParse(id, out userid))
                {
                    return(Infrastructure.ApiResponse <Services.ViewModel.UserViewModel> .CreateResponse(false, "Usuário não encontrado", null, System.Net.HttpStatusCode.NotFound));
                }

                model.Id = userid;
                _userService.UpdateUser(new Services.Message.UpdateUserRequest()
                {
                    user = model
                });

                response.status = true;
                response.data   = model;
                response.code   = System.Net.HttpStatusCode.Created;
            }catch (Infrastructure.BusinessRuleException bex) {
                response.status        = true;
                response.code          = System.Net.HttpStatusCode.BadRequest;
                response.brokenRules   = bex.BrokenRules;
                response.error_message = bex.Message;
            }catch (Exception ex) {
                response.status        = true;
                response.code          = System.Net.HttpStatusCode.InternalServerError;
                response.error_message = "Ocorreu um erro inesperado. Entre em contato com o nosso time de desenvolvimento.";
            }

            return(response);
        }