예제 #1
0
        public async Task <IHttpActionResult> Save([FromBody] RespuestaFormModel formModel)
        {
            GenericResult itemResult = null;

            try
            {
                if (await _authorizationService.AuthorizeAsync(User))
                {
                    if (ModelState.IsValid)
                    {
                        var respuesta = _respuestaService.Get(formModel.Id) ?? new Respuesta();

                        respuesta.Valor          = formModel.Valor;
                        respuesta.Detalle        = formModel.Detalle;
                        respuesta.FechaRespuesta = formModel.FechaRespuesta;

                        if (respuesta.Id == Guid.Empty)
                        {
                            respuesta.CreadoPor = User.Identity.Name;
                            respuesta.CreadoEn  = DateTime.Now;
                        }

                        respuesta.ActualizadoPor = User.Identity.Name;
                        respuesta.ActualizadoEn  = DateTime.Now;

                        var estandar = _estandarService.Get(formModel.EstandarId);
                        respuesta.Estandar = estandar;

                        var evaluacion = _evaluacionService.Get(formModel.EvaluacionId);
                        respuesta.Evaluacion = evaluacion;

                        var confirmation = _respuestaService.SaveOrUpdate(respuesta);
                        if (confirmation.WasSuccessful)
                        {
                            itemResult = GenericResult.Ok(confirmation.Message);
                            var item = confirmation.Value as Respuesta;
                            itemResult.ReturnValue = new { Id = item.Id };
                        }
                        else
                        {
                            itemResult = GenericResult.Failure(confirmation.Message);
                        }
                    }
                }
                else
                {
                    var codeResult = new CodeResultStatus(401);
                    return(Ok(codeResult));
                }
            }
            catch (Exception exception)
            {
                itemResult = GenericResult.Failure(exception.Message);
            }

            return(Ok(itemResult));
        }
예제 #2
0
        public async Task <IHttpActionResult> Create([FromBody] EvaluacionFormModel formModel)
        {
            GenericResult itemResult = null;

            try
            {
                if (await _authorizationService.AuthorizeAsync(User))
                {
                    if (ModelState.IsValid)
                    {
                        var evaluacion = new Evaluacion
                        {
                            NombreMIC       = formModel.NombreMIC,
                            NombreRGM       = formModel.NombreRGM,
                            PosicionMIC     = _evaluacionService.GetPosicion(formModel.Posicion),
                            TipoVisita      = formModel.TipoVisita,
                            ParteDelDia     = formModel.ParteDia,
                            TipoEvaluacion  = _evaluacionService.GetTipoEvaluacion(formModel.TipoEvaluacion),
                            Local           = _localService.Get(formModel.IdLocal),
                            Estado          = _statusService.Online(),
                            FechaEvaluacion = DateTime.Now,
                            HoraEvaluacion  = DateTime.Now,
                            ActualizadoEn   = DateTime.Now,
                            CreadoEn        = DateTime.Now,
                            ActualizadoPor  = "admin",
                            CreadoPor       = "admin",
                        };

                        var confirmation = _evaluacionService.SaveOrUpdate(evaluacion);
                        if (confirmation.WasSuccessful)
                        {
                            var respConfirmation = _evaluacionService.CreateRespuestasByEvaluacion(evaluacion.Id);

                            itemResult = GenericResult.Ok(confirmation.Message);
                            var item = confirmation.Value as Evaluacion;
                            itemResult.ReturnValue = new { Id = item.Id };
                        }
                        else
                        {
                            itemResult = GenericResult.Failure(confirmation.Message);
                        }
                    }
                }
                else
                {
                    var codeResult = new CodeResultStatus(401);
                    return(Ok(codeResult));
                }
            }
            catch (System.Exception exception)
            {
                itemResult = GenericResult.Failure(exception.Message);
            }

            return(Ok(itemResult));
        }
예제 #3
0
        public async Task <IHttpActionResult> SaveByLocal([FromBody] ImagenLocalFormModel formModel)
        {
            GenericResult itemResult = null;

            try
            {
                if (await _authorizationService.AuthorizeAsync(User))
                {
                    var imagenLocal = _localService.GetImage(formModel.Id) ?? new ImagenLocal();

                    if (imagenLocal.Id == Guid.Empty)
                    {
                        imagenLocal.CreadoEn  = DateTime.Now;
                        imagenLocal.CreadoPor = User.Identity.Name;
                    }

                    imagenLocal.ActualizadoEn  = DateTime.Now;
                    imagenLocal.ActualizadoPor = User.Identity.Name;
                    imagenLocal.Descripcion    = !string.IsNullOrEmpty(formModel.Descripcion) ? formModel.Descripcion : "";
                    imagenLocal.Tipo           = formModel.Tipo;
                    imagenLocal.Orden          = formModel.Orden;

                    var local = _localService.Get(formModel.LocalId);
                    imagenLocal.Local = local;

                    if (!string.IsNullOrEmpty(formModel.ImagenData))
                    {
                        var imageBase64 = formModel.ImagenData.Replace("data:image/jpeg;base64,", "");
                        var imageBytes  = Convert.FromBase64String(imageBase64);
                        var imageUrl    = _blobImageService.UploadImage(imageBytes, BlobContainers.Locales());
                        imagenLocal.Imagen = imageUrl;
                    }

                    ActionConfirmation confirmation = _localService.SaveOrUpdateImagen(imagenLocal);
                    if (confirmation.WasSuccessful)
                    {
                        itemResult = GenericResult.Ok(confirmation.Message);
                        var item = confirmation.Value as ImagenLocal;
                        itemResult.ReturnValue = new { Id = item.Id };
                    }
                    else
                    {
                        itemResult = GenericResult.Failure(confirmation.Message);
                    }
                }
            }
            catch (Exception exception)
            {
                itemResult = GenericResult.Failure(exception.Message);
            }

            return(Ok(itemResult));
        }