public async Task <UpdateEstablishmentResponse> Handle( UpdateEstablishmentRequest request, CancellationToken cancellationToken) { var establishment = new Establishment(new Name(request.Name), new CNPJ(request.CNPJ), new Address(request.Address.Street, request.Address.Number, request.Address.Neighbourhood, request.Address.City, request.Address.State, request.Address.ZipCode, request.Address.Complement), new Phone(request.Phone.CodeArea, request.Phone.Number), request.CarsCapacity, request.MotorcyclesCapacity); var result = _repository.Update(establishment.ToDataEntity()); _repository.CommitChanges(); return(await Task.FromResult(new UpdateEstablishmentResponse( result.Id, result.Name, result.CNPJ, result.Address.ToString(), result.Phone, result.CarsCapacity, result.MotorcyclesCapacity ))); }
Handle(ReleaseParkingSpaceRequest request, CancellationToken cancellationToken) { var data = _establishmentRepository .GetById(request.EstablishmentId); var establishment = new Establishment(data); var totalPrice = establishment .ReleaseParkingSpace(request.ParkingSpaceId, request.VehicleId); _establishmentRepository.Update(establishment.ToDataEntity(request.EstablishmentId)); _establishmentRepository.CommitChanges(); return(Task.FromResult(new ReleaseParkingSpaceResponse(request.ParkingSpaceId, request.VehicleId, establishment .IsParkingSpaceAvailable(request.ParkingSpaceId), totalPrice.ToString() ) )); }
Handle(OccupyParkingSpaceRequest request, CancellationToken cancellationToken) { var data = _establishmentRepository .GetById(request.EstablishmentId); var establishment = new Establishment(data); establishment .OccupyParkingSpace(request.ParkingSpaceId, request.VehicleId); var result = _establishmentRepository .Update(establishment.ToDataEntity(request.EstablishmentId)); _establishmentRepository.CommitChanges(); return(Task.FromResult(new OccupyParkingSpaceResponse(request.ParkingSpaceId, request.VehicleId, establishment .IsParkingSpaceAvailable(request.ParkingSpaceId) ) )); }