public virtual ApiRateClientRequestModel MapServerResponseToClientRequest( ApiRateServerResponseModel response) { var request = new ApiRateClientRequestModel(); request.SetProperties( response.AmountPerMinute, response.TeacherId, response.TeacherSkillId); return(request); }
public virtual ApiRateServerResponseModel MapServerRequestToResponse( int id, ApiRateServerRequestModel request) { var response = new ApiRateServerResponseModel(); response.SetProperties(id, request.AmountPerMinute, request.TeacherId, request.TeacherSkillId); return(response); }
public void MapEntityToModel() { var mapper = new DALRateMapper(); Rate item = new Rate(); item.SetProperties(1, 1m, 1, 1); ApiRateServerResponseModel response = mapper.MapEntityToModel(item); response.AmountPerMinute.Should().Be(1m); response.Id.Should().Be(1); response.TeacherId.Should().Be(1); response.TeacherSkillId.Should().Be(1); }
public virtual async Task <UpdateResponse <ApiRateServerResponseModel> > Update( int id, ApiRateServerRequestModel model) { var validationResult = await this.RateModelValidator.ValidateUpdateAsync(id, model); if (validationResult.IsValid) { Rate record = this.DalRateMapper.MapModelToEntity(id, model); await this.RateRepository.Update(record); record = await this.RateRepository.Get(id); ApiRateServerResponseModel apiModel = this.DalRateMapper.MapEntityToModel(record); await this.mediator.Publish(new RateUpdatedNotification(apiModel)); return(ValidationResponseFactory <ApiRateServerResponseModel> .UpdateResponse(apiModel)); } else { return(ValidationResponseFactory <ApiRateServerResponseModel> .UpdateResponse(validationResult)); } }
public virtual ApiRateServerResponseModel MapEntityToModel( Rate item) { var model = new ApiRateServerResponseModel(); model.SetProperties(item.Id, item.AmountPerMinute, item.TeacherId, item.TeacherSkillId); if (item.TeacherIdNavigation != null) { var teacherIdModel = new ApiTeacherServerResponseModel(); teacherIdModel.SetProperties( item.TeacherIdNavigation.Id, item.TeacherIdNavigation.Birthday, item.TeacherIdNavigation.Email, item.TeacherIdNavigation.FirstName, item.TeacherIdNavigation.LastName, item.TeacherIdNavigation.Phone, item.TeacherIdNavigation.UserId); model.SetTeacherIdNavigation(teacherIdModel); } if (item.TeacherSkillIdNavigation != null) { var teacherSkillIdModel = new ApiTeacherSkillServerResponseModel(); teacherSkillIdModel.SetProperties( item.TeacherSkillIdNavigation.Id, item.TeacherSkillIdNavigation.Name); model.SetTeacherSkillIdNavigation(teacherSkillIdModel); } return(model); }
public RateUpdatedNotification(ApiRateServerResponseModel record) { this.Record = record; }