Ejemplo n.º 1
0
        public async Task <ResponseModel> SaveMicroscope(MicroscopeViewModel model)
        {
            string uri     = "api/microscope/Save";
            var    request = await _http.PostAsJsonAsync <MicroscopeViewModel>(uri, model);

            var response = await request.Content.ReadFromJsonAsync <ResponseModel>();

            return(response);
        }
        public static MicroscopeViewModel ToMicroscopeViewModel(this MicroscopeEntity entity)
        {
            MicroscopeViewModel model = new MicroscopeViewModel();

            model.Id       = entity.Id;
            model.Model    = entity.Model;
            model.Type     = entity.Type;
            model.Producer = entity.Producer;
            model.Name     = entity.Producer;
            return(model);
        }
        public async Task <IActionResult> Save([FromBody] MicroscopeViewModel model)
        {
            try
            {
                MicroscopeEntity entity = null;
                if (!ModelState.IsValid)
                {
                    return(Ok(new ResponseModel()
                    {
                        Result = ResultCode.NotValidData
                    }));
                }
                var item = await _dm.MicroscopeAccessor.GetMicroscope(model.Producer, model.Model, model.Type);

                if (item != null && item.Id != model.Id)
                {
                    return(Ok(new ResponseModel()
                    {
                        Result = ResultCode.AlreadyExists
                    }));
                }
                if (model.Id <= 0)
                {
                    entity = new MicroscopeEntity();
                }
                else
                {
                    entity = await _dm.MicroscopeAccessor.GetMicroscope(model.Id);

                    if (entity == null)
                    {
                        return(Ok(new ResponseModel()
                        {
                            Result = ResultCode.AlreadyExists
                        }));
                    }
                }
                var entityToSave = model.ToMicroscopeEntity();

                await _dm.MicroscopeAccessor.SaveMicroscope(entityToSave);

                return(Ok(new ResponseModel()
                {
                    Result = ResultCode.Success
                }));
            }
            catch (Exception ex)
            {
                return(Ok(new ResponseModel()
                {
                    Result = ResultCode.ServerError, Description = ex.Message
                }));
            }
        }
        public static MicroscopeEntity ToMicroscopeEntity(this MicroscopeViewModel model)
        {
            MicroscopeEntity entity = new MicroscopeEntity();

            if (model.Id > 0)
            {
                entity.Id = model.Id;
            }
            entity.Model    = model.Model;
            entity.Type     = model.Type;
            entity.Producer = model.Producer;

            return(entity);
        }