package entity

import (
	"time"
)

// VisitStatus entity data
type VisitStatus struct {
	ID    int64  `db:"visit_status_id" json:"-"`
	Key   string `db:"key" json:"key"`
	Value string `db:"value" json:"value"`
}

// Visit entity data
type Visit struct {
	ID                   int64       `db:"visit_id" json:"-"`
	UUID                 string      `db:"visit_uuid" json:"-"`
	Status               VisitStatus `db:"visit_status" json:"-"`
	User                 User        `db:"user" json:"-"`
	VisitDuration        int64       `db:"visit_duration" json:"-"`
	VisitDatetime        time.Time   `db:"visit_datetime" json:"-"`
	PickupDatetime       time.Time   `db:"pickup_datetime" json:"-"`
	Notes                *string     `db:"notes" json:"-"`
	PickupAddressID      int64       `db:"pickup_address_id" json:"-"`
	DestinationAddressID int64       `db:"destination_address_id" json:"-"`
	Pickup               Location    `db:"pickup" json:"-"`
	Provider             Provider    `db:"provider" json:"-"`
	CreatedUser          User        `db:"created_user" json:"-"`
	Created              time.Time   `db:"created_date" json:"-"`
	Updated              time.Time   `db:"updated_date" json:"-"`
	ReturnDate           *time.Time  `db:"return_date" json:"-"`
	TripType             TripType    `db:"trip_type" json:"-"`
	ExternalID           string      `db:"visit_external_id" json:"-"`
	Rides                []Ride      `db:"rides" json:"-"`
}
