예제 #1
0
        public async Task <IActionResult> UploadProfilePhoto(PostImagen imagenPaciente)
        {
            var user_uuid = User.Claims.Where(x => x.Type == ClaimTypes.Sid).First().Value;

            // I'm getting file inside Request object

            Paciente pacienteEncontrado = _context.Pacientes
                                          .Where(p => p.UUID == imagenPaciente.uuidPaciente)
                                          .FirstOrDefault();

            if (pacienteEncontrado == null)
            {
                return(BadRequest(new Dictionary <string, string> ()
                {
                    { "Error", "El paciente no existe" }
                }));
            }

            var file = this.Request.Form.Files[0];

            // File type validation
            if (!file.ContentType.Contains("image"))
            {
                return(BadRequest(new Dictionary <string, string> ()
                {
                    { "Error", "La imagen no es valida" }
                }));
            }

            var imageResponse = await ImagenService.UploadObject(file);

            var    awsregion = _configuration.GetSection("AppSettings").GetValue <string> ("AWSRegion");
            string amazonAWS = "amazonaws.com";
            string urlImage  = "https://" + imageResponse.BucketName + ".s3-" + awsregion + "." + amazonAWS + "/" + imageResponse.FileName;

            Imagen nuevaImagen = new Imagen {
                uuid        = Guid.NewGuid(),
                paciente    = pacienteEncontrado,
                url         = urlImage,
                descripcion = imagenPaciente.descripcion
            };

            _context.Imagenes.Add(nuevaImagen);

            _context.SaveChanges();

            JsonResult response = new JsonResult(new Object());

            return(Ok("imagen subida al servidor"));
        }
예제 #2
0
        public async void loadComboBoxImageInfo()
        {
            this.comboBoxImageInfo.Items.Clear();
            this.comboBoxImageInfo.SelectedValuePath = "Key";
            this.comboBoxImageInfo.DisplayMemberPath = "Value";
            try
            {
                var result = await ImagenService.getImagens();

                var jsonObj = new JavaScriptSerializer().Deserialize <Images>(result);
                foreach (model.Image obj in jsonObj.images)
                {
                    this.comboBoxImageInfo.Items.Add(new KeyValuePair <model.Image, string>(obj, obj.name));
                }
            }
            catch (Exception)
            {
                MessageBox.Show("Erro no servidor");
            }

            this.comboBoxImageInfo.SelectedIndex = 0;
        }
예제 #3
0
        public async Task <IActionResult> deletePhoto(DeleteImagen imagenParaBorrar)
        {
            var user_uuid = User.Claims.Where(x => x.Type == ClaimTypes.Sid).First().Value;

            if (imagenParaBorrar == null)
            {
                return(BadRequest(new Dictionary <string, string> ()
                {
                    { "Error", "La imagen no se encuentra" }
                }));
            }

            var imageResponse = await ImagenService.RemoveObject(imagenParaBorrar.key);

            Imagen imagen = _context.Imagenes
                            .Where(i => i.url == imagenParaBorrar.url)
                            .FirstOrDefault();

            _context.Imagenes.Remove(imagen);
            _context.SaveChanges();

            return(Ok("imagen borrada correctamente"));
        }