public virtual ApiProductClientRequestModel MapServerResponseToClientRequest( ApiProductServerResponseModel response) { var request = new ApiProductClientRequestModel(); request.SetProperties( response.Active, response.Description, response.Name, response.Price, response.Quantity); return(request); }
public virtual ApiProductServerResponseModel MapServerRequestToResponse( int id, ApiProductServerRequestModel request) { var response = new ApiProductServerResponseModel(); response.SetProperties(id, request.Active, request.Description, request.Name, request.Price, request.Quantity); return(response); }
public virtual ApiProductServerResponseModel MapEntityToModel( Product item) { var model = new ApiProductServerResponseModel(); model.SetProperties(item.Id, item.Active, item.Description, item.Name, item.Price, item.Quantity); return(model); }
public void MapEntityToModel() { var mapper = new DALProductMapper(); Product item = new Product(); item.SetProperties(1, true, "A", "A", 1m, 1); ApiProductServerResponseModel response = mapper.MapEntityToModel(item); response.Active.Should().Be(true); response.Description.Should().Be("A"); response.Id.Should().Be(1); response.Name.Should().Be("A"); response.Price.Should().Be(1m); response.Quantity.Should().Be(1); }
public virtual async Task <UpdateResponse <ApiProductServerResponseModel> > Update( int id, ApiProductServerRequestModel model) { var validationResult = await this.ProductModelValidator.ValidateUpdateAsync(id, model); if (validationResult.IsValid) { Product record = this.DalProductMapper.MapModelToEntity(id, model); await this.ProductRepository.Update(record); record = await this.ProductRepository.Get(id); ApiProductServerResponseModel apiModel = this.DalProductMapper.MapEntityToModel(record); await this.mediator.Publish(new ProductUpdatedNotification(apiModel)); return(ValidationResponseFactory <ApiProductServerResponseModel> .UpdateResponse(apiModel)); } else { return(ValidationResponseFactory <ApiProductServerResponseModel> .UpdateResponse(validationResult)); } }
public ProductUpdatedNotification(ApiProductServerResponseModel record) { this.Record = record; }