Small improvements

This commit is contained in:
2022-09-05 07:26:43 +02:00
parent b9b0c10e1c
commit be9ee8372f
7 changed files with 598 additions and 112 deletions

View File

@@ -101,8 +101,19 @@ func (s FleetsServerImpl) GetBooking(ctx context.Context, req *GetBookingRequest
return &GetBookingResponse{Booking: response}, nil
}
func (s FleetsServerImpl) UpdateBooking(context.Context, *UpdateBookingRequest) (*UpdateBookingResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method UpdateBooking not implemented")
func (s FleetsServerImpl) UpdateBooking(ctx context.Context, req *UpdateBookingRequest) (*UpdateBookingResponse, error) {
b := req.Booking.ToStorageType()
booking, err := s.handler.UpdateBooking(b)
if err != nil {
fmt.Println(err)
return nil, status.Errorf(codes.AlreadyExists, "booking update failed : %v", err)
}
response, err := BookingFromStorageType(booking)
if err != nil {
fmt.Println(err)
return nil, status.Errorf(codes.Internal, "issue while retrieving booking : %v", err)
}
return &UpdateBookingResponse{Booking: response}, nil
}
func (s FleetsServerImpl) DeleteBooking(ctx context.Context, req *DeleteBookingRequest) (*DeleteBookingResponse, error) {
if err := s.handler.DeleteBooking(req.Id); err != nil {
@@ -117,6 +128,38 @@ func (s FleetsServerImpl) DeleteBooking(ctx context.Context, req *DeleteBookingR
func (s FleetsServerImpl) FindVehicle(context.Context, *FindVehicleRequest) (*FindVehicleResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method FindVehicle not implemented")
}
func (s FleetsServerImpl) GetDriverBookings(ctx context.Context, req *GetDriverBookingsRequest) (*GetDriverBookingsResponse, error) {
responses, err := s.handler.GetDriverBookings(req.Driver)
if err != nil {
return nil, status.Errorf(codes.NotFound, "could not get driver bookings : %v", err)
}
var bookings []*Booking
for _, b := range responses {
booking, err := BookingFromStorageType(&b)
if err != nil {
return nil, status.Errorf(codes.Internal, "could not get booking : %v", err)
}
bookings = append(bookings, booking)
}
return &GetDriverBookingsResponse{Bookings: bookings}, nil
}
func (s FleetsServerImpl) GetBookings(ctx context.Context, req *GetBookingsRequest) (*GetBookingsResponse, error) {
responses, err := s.handler.GetBookings()
if err != nil {
return nil, status.Errorf(codes.NotFound, "could not get bookings : %v", err)
}
var bookings []*Booking
for _, b := range responses {
booking, err := BookingFromStorageType(&b)
if err != nil {
return nil, status.Errorf(codes.Internal, "could not get booking : %v", err)
}
bookings = append(bookings, booking)
}
return &GetBookingsResponse{Bookings: bookings}, nil
}
func (s FleetsServerImpl) mustEmbedUnimplementedFleetsServer() {}
func Run(done chan error, cfg *viper.Viper, handler handlers.FleetsHandler) {