Exemple #1
0
        public IHttpActionResult Update(int id, MeasurementModel measureModel)
        {
            if (measureModel == null)
            {
                var errorMessage = _messages.GetMessage(Generic.NullObject);
                return(BadRequest(errorMessage));
            }

            if (_measureRep.GetAll().Any(m => m.UnitOfMeasure == measureModel.UnitOfMeasure &&
                                         m.Id != id))
            {
                var errorMessage = _messages.GetMessage(Custom.Conflict, "Measurement", "Unit Of Measure");
                return(Conflict(errorMessage));
            }

            var measurement = _measureRep.Get(id);

            if (measurement == null)
            {
                var errorMessage = _messages.GetMessage(Custom.NotFound, "Measurement");
                return(NotFound(errorMessage));
            }

            _mapper.Map(measureModel, measurement);
            _measureRep.Update(measurement);

            return(StatusCode(HttpStatusCode.NoContent));
        }
        public async Task <IActionResult> Update(long id, Measurement measurement)
        {
            var measurementToUpdate = await _measurementRepository.Get(id);

            if (measurementToUpdate == null)
            {
                return(NotFound("The measurement record couldn't be found"));
            }
            await _measurementRepository.Update(measurementToUpdate, measurement);

            return(NoContent());
        }
Exemple #3
0
        public async Task <IActionResult> Put(int aquariumId, int measurementId, [FromBody] MeasurementModel model)
        {
            try
            {
                var measurement = await _repository.Get(measurementId);

                if (measurement == null)
                {
                    return(NotFound());
                }
                if (measurement.AquariumId != aquariumId)
                {
                    return(BadRequest("Aquarium and Measurement don't match"));
                }

                _mapper.Map(model, measurement);

                // Validate
                var results = _validationManager.Validate(measurement);

                if (results.Count != 0)
                {
                    return(UnprocessableEntity(results));
                }

                // Lookup unit
                measurement.Unit = await _unitManager.LookUpByName(measurement.Unit);

                await _repository.Update(measurement);

                AddETag(measurement.RowVersion);
                return(Ok(_mapper.Map <MeasurementModel>(measurement)));
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "An error occured whilst trying to update Measurement.");
            }
            return(BadRequest("Could not update Measurment"));
        }
 public void UpdateMeasurement(Measurement model)
 {
     _measurementRepository.Update(model);
 }