public async Task <MeterReadingResource> GetMeterReadingByAccountIdAsync(int accountId) { MeterReadingResource resource = new MeterReadingResource(); var result = await _meterReadingRepository.GetMeterReadingByAccountIdAsync(accountId); resource = _mapper.Map <MeterReadingResource>(result); return(resource); }
public async Task UpdateMeterReadingAsync(MeterReadingResource model) { _logger.LogInformation("Updating existing meter reading"); var entity = _mapper.Map <MeterReading>(model); var succeeded = await _meterReadingRepository.UpdateMeterReadingAsync(entity); if (!succeeded) { string errorMessage = "Failed to update new meter reading"; _logger.LogError(errorMessage); throw new MeterReadingServiceException(errorMessage); } }
public async System.Threading.Tasks.Task TestMeterReadingAsync() { //Arrange var meterReadingResource = new MeterReadingResource() { AccountId = 2344, MeterReadingDateTime = DateTime.Parse("22/04/2019 09:24"), MeterReadValue = "01002" }; var validator = new MeterReadingResourceValidator(); //Act var validationResult = await validator.ValidateAsync(meterReadingResource); //Assert Assert.True(validationResult.IsValid, "Not valid"); }
public async Task CreateMeterReadingAsync(MeterReadingResource model) { if (model == null) { throw new MeterReadingServiceException("Resource model can not be null"); } _logger.LogInformation("Creating new meter reading"); var entity = _mapper.Map <MeterReading>(model); var succeeded = await _meterReadingRepository.CreateMeterReadingAsync(entity); if (!succeeded) { string errorMessage = "Failed to create new meter reading."; _logger.LogError(errorMessage); throw new MeterReadingServiceException(errorMessage); } }
public void AddToMeterReadingValidationReport(MeterReadingResource meterReadingResource , IEnumerable <string> errors = null , MeterReadingStatusReport type = MeterReadingStatusReport.Successfull) { var meterReadingErrorMessages = new MeterReadingErrorMessages { AccountId = meterReadingResource.AccountId, MeterReadingDateTime = meterReadingResource.MeterReadingDateTime, MeterReadValue = meterReadingResource.MeterReadValue, Messages = errors?.ToList() }; if (type == MeterReadingStatusReport.Successfull) { Successfull.Add(meterReadingErrorMessages); } else { Failed.Add(meterReadingErrorMessages); } }