Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CreateOrderRequest ¶
type CreateOrderRequest struct {
OrderID string `json:"order_id"`
OrderQty int `json:"order_qty"`
Amount string `json:"amount"`
}
CreateOrderRequest represents a request to create a new order
type CreateUserRequest ¶
type CreateUserRequest struct {
UserID string `json:"user_id"`
Email string `json:"email"`
Name string `json:"name"`
Status string `json:"status"`
}
CreateUserRequest represents a request to create a new user
type Order ¶
type Order struct {
OrderID string `json:"order_id"`
OrderQty int `json:"order_qty"`
Amount string `json:"amount"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
Order represents an order (keeping existing functionality)
type OrderDataStore ¶
type OrderDataStore interface {
CreateOrder(ctx context.Context, arg CreateOrderRequest) error
GetAllOrders(ctx context.Context) ([]*Order, error)
GetOrderByID(ctx context.Context, orderID string) (*Order, error)
}
OrderDataStore interface defines operations for orders (keeping existing functionality)
func NewOrderDataStore ¶
func NewOrderDataStore(cf gox.CrossFunction, querier ordersDataStore.Querier, queries *ordersDataStore.Queries) OrderDataStore
type UpdateUserRequest ¶
type UpdateUserRequest struct {
Email string `json:"email,omitempty"`
Name string `json:"name,omitempty"`
Status string `json:"status,omitempty"`
}
UpdateUserRequest represents a request to update an existing user
type User ¶
type User struct {
UserID string `json:"user_id"`
Email string `json:"email"`
Name string `json:"name"`
Status string `json:"status"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
User represents a user in the system
func (*User) FromOrder ¶
FromOrder converts from sqlc generated Order type to domain User type Note: This assumes the orders table is being used for users (common in examples)
func (*User) FromOrderRO ¶
FromOrderRO converts from sqlc generated RO Order type to domain User type
type UserDataStore ¶
type UserDataStore interface {
// Write operations (use RW connection)
CreateUser(ctx context.Context, arg CreateUserRequest) error
UpdateUser(ctx context.Context, userID string, arg UpdateUserRequest) error
DeleteUser(ctx context.Context, userID string) error
// Read operations (use RO connection)
GetUserByID(ctx context.Context, userID string) (*User, error)
GetAllUsers(ctx context.Context) ([]*User, error)
}
UserDataStore interface defines all operations for users (both read and write)
func NewUserDataStore ¶
func NewUserDataStore( cf gox.CrossFunction, rwQuerier ordersDataStore.Querier, rwQueries *ordersDataStore.Queries, roQuerier orderRoDataStore.Querier, roQueries *orderRoDataStore.Queries, ) UserDataStore
Constructor functions