public async Task <IActionResult> CreateUsuario([FromBody] CrearUsuarioRequest usuario)
        {
            _service = new CrearUsuarioService(_unitOfWork);
            var rta = _service.Ejecutar(usuario);

            if (rta.isOk())
            {
                await _context.SaveChangesAsync();

                return(CreatedAtAction("GetUsuario", new { correo = usuario.Correo }, usuario));
            }
            return(BadRequest(rta.Message));
        }
예제 #2
0
        public CrearUsuarioResponse Ejecutar(CrearUsuarioRequest request)
        {
            var usuario = _unitOfWork.UsuarioServiceRepository.FindFirstOrDefault(t => t.Correo == request.Correo);

            if (usuario == null)
            {
                Dominio.Usuario newUsuario = new Dominio.Usuario(request.Correo, request.Password, request.TipoUsuario);

                if (newUsuario.Password.Length > 6)
                {
                    IReadOnlyList <string> errors = newUsuario.CanCrear(newUsuario);

                    if (errors.Any())
                    {
                        string listaErrors = "Errores:";
                        foreach (var item in errors)
                        {
                            listaErrors += item.ToString();
                        }
                        return(new CrearUsuarioResponse()
                        {
                            Message = listaErrors
                        });
                    }
                    else
                    {
                        _unitOfWork.UsuarioServiceRepository.Add(newUsuario);
                        _unitOfWork.Commit();
                        return(new CrearUsuarioResponse()
                        {
                            Message = $"Usuario Creado Exitosamente"
                        });
                    }
                }
                else
                {
                    return(new CrearUsuarioResponse()
                    {
                        Message = $"La contraseña debe de contener mas de 6 digitos"
                    });
                }
            }
            else
            {
                return(new CrearUsuarioResponse()
                {
                    Message = $"Usuario ya existe"
                });
            }
        }
예제 #3
0
        public IHttpActionResult Agregar([FromBody]CrearUsuarioRequest request)
        {
            try
            {
                int clienteId = Convert.ToInt32(Request.Headers.GetValues("Cliente").FirstOrDefault());
                var response = usuarioRepository.CrearUsuario(request, clienteId);

                return Ok(response);
            }
            catch (Exception ex)
            {
                return InternalServerError(ex);
            }
        }
        public BaseResponse CrearUsuario(CrearUsuarioRequest r, int clienteId)
        {
            try
            {
                var db = new pedidoclick();
                db.Database.Connection.Open();

                var usuarioExiste = db.t_Usuario.Where(x => x.Usuario == r.Usuario && x.ClienteId == clienteId).FirstOrDefault();
                if (usuarioExiste != null)
                {
                    return(new BaseResponse {
                        Mensaje = "El usuario ya existe", Resultado = false
                    });
                }

                var u = new t_Usuario();
                u.Nombre      = r.Nombre;
                u.Apellido    = r.Apellido;
                u.ClienteId   = clienteId;
                u.RolId       = r.RolId;
                u.Usuario     = r.Usuario;
                u.Contrasena  = r.Contrasena;
                u.Correo      = r.Correo;
                u.CreadoFecha = DateTime.Now;
                u.Borrado     = false;

                db.t_Usuario.Add(u);

                db.SaveChanges();

                db.Database.Connection.Close();

                return(new BaseResponse {
                    Mensaje = "Usuario Creado", Resultado = true
                });
            }
            catch (Exception ex)
            {
                return(new BaseResponse {
                    Mensaje = "Sucedio un error al crear el usuario", Resultado = false
                });
            }
        }
예제 #5
0
        public HttpResponseMessage CrearUsuario([FromBody] CrearUsuarioRequest request)
        {
            var usuario = UsuariosRepository.InsertarUsuario(request.Nombre, request.UserName, request.CorreoElectronico, request.Contraseña, request.Descripcion, request.Edad, request.FotoDePortada, request.Qr, request.Url);

            return(Request.CreateResponse(HttpStatusCode.OK, usuario));
        }