regular routes journeys, persistent KV to store return states, ...

This commit is contained in:
2023-04-03 20:35:12 +02:00
parent 0ae5730e7f
commit 2f536dfb19
21 changed files with 1722 additions and 1070 deletions

View File

@@ -1,6 +1,10 @@
package ocss
import "time"
import (
"bytes"
"encoding/json"
"time"
)
type CarpoolBookingStatus int64
@@ -12,6 +16,40 @@ const (
CarpoolBookingValidated
)
var carpoolBookingStatustoID = map[string]CarpoolBookingStatus{
"WAITING_CONFIRMATION": CarpoolBookingWaitingConfirmation,
"CONFIRMED": CarpoolBookingConfirmed,
"CANCELLED": CarpoolBookingCancelled,
"COMPLETED_PENDING_VALIDATION": CarpoolBookingCompletedPendingValidation,
"VALIDATED": CarpoolBookingValidated,
}
var carpoolBookingStatustoString = map[CarpoolBookingStatus]string{
CarpoolBookingWaitingConfirmation: "WAITING_CONFIRMATION",
CarpoolBookingConfirmed: "CONFIRMED",
CarpoolBookingCancelled: "CANCELLED",
CarpoolBookingCompletedPendingValidation: "COMPLETED_PENDING_VALIDATION",
CarpoolBookingValidated: "VALIDATED",
}
func (s CarpoolBookingStatus) MarshalJSON() ([]byte, error) {
buffer := bytes.NewBufferString(`"`)
buffer.WriteString(carpoolBookingStatustoString[s])
buffer.WriteString(`"`)
return buffer.Bytes(), nil
}
func (bs *CarpoolBookingStatus) UnmarshalJSON(b []byte) error {
var j string
err := json.Unmarshal(b, &j)
if err != nil {
return err
}
// Note that if the string cannot be found then it will be set to the zero value, 'Created' in this case.
*bs = carpoolBookingStatustoID[j]
return nil
}
type CarpoolBookingEventData struct {
CarpoolBooking
DriverCarpoolBooking