v1

package
v0.0.0-...-10ef84c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 17, 2023 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewCancelOrderCommandHandler

func NewCancelOrderCommandHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *cancelOrderCommandHandler

func NewChangeDeliveryAddressCmdHandler

func NewChangeDeliveryAddressCmdHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *changeDeliveryAddressCmdHandler

func NewCompleteOrderCommandHandler

func NewCompleteOrderCommandHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *completeOrderCommandHandler

func NewCreateOrderHandler

func NewCreateOrderHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *createOrderHandler

func NewOrderPaidHandler

func NewOrderPaidHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *payOrderCommandHandler

func NewSubmitOrderHandler

func NewSubmitOrderHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *submitOrderHandler

func NewUpdateShoppingCartCmdHandler

func NewUpdateShoppingCartCmdHandler(log logger.Logger, cfg *config.Config, es es.AggregateStore) *updateShoppingCartCmdHandler

Types

type CancelOrderCommand

type CancelOrderCommand struct {
	es.BaseCommand
	CancelReason string `json:"cancelReason" validate:"required"`
}

func NewCancelOrderCommand

func NewCancelOrderCommand(aggregateID string, cancelReason string) *CancelOrderCommand

type CancelOrderCommandHandler

type CancelOrderCommandHandler interface {
	Handle(ctx context.Context, command *CancelOrderCommand) error
}

type ChangeDeliveryAddressCommand

type ChangeDeliveryAddressCommand struct {
	es.BaseCommand
	DeliveryAddress string `json:"deliveryAddress" bson:"deliveryAddress,omitempty" validate:"required"`
}

func NewChangeDeliveryAddressCommand

func NewChangeDeliveryAddressCommand(aggregateID string, deliveryAddress string) *ChangeDeliveryAddressCommand

type ChangeDeliveryAddressCommandHandler

type ChangeDeliveryAddressCommandHandler interface {
	Handle(ctx context.Context, command *ChangeDeliveryAddressCommand) error
}

type CompleteOrderCommand

type CompleteOrderCommand struct {
	es.BaseCommand
	DeliveryTimestamp time.Time `json:"deliveryTimestamp" validate:"required"`
}

func NewCompleteOrderCommand

func NewCompleteOrderCommand(aggregateID string, deliveryTimestamp time.Time) *CompleteOrderCommand

type CompleteOrderCommandHandler

type CompleteOrderCommandHandler interface {
	Handle(ctx context.Context, command *CompleteOrderCommand) error
}

type CreateOrderCommand

type CreateOrderCommand struct {
	es.BaseCommand
	ShopItems       []*models.ShopItem `json:"shopItems" bson:"shopItems,omitempty" validate:"required"`
	AccountEmail    string             `json:"accountEmail" bson:"accountEmail,omitempty" validate:"required,email"`
	DeliveryAddress string             `json:"deliveryAddress" bson:"deliveryAddress,omitempty" validate:"required"`
}

func NewCreateOrderCommand

func NewCreateOrderCommand(aggregateID string, shopItems []*models.ShopItem, accountEmail, deliveryAddress string) *CreateOrderCommand

type CreateOrderCommandHandler

type CreateOrderCommandHandler interface {
	Handle(ctx context.Context, command *CreateOrderCommand) error
}

type OrderCommands

type OrderCommands struct {
	CreateOrder                CreateOrderCommandHandler
	OrderPaid                  PayOrderCommandHandler
	SubmitOrder                SubmitOrderCommandHandler
	UpdateOrder                UpdateShoppingCartCommandHandler
	CancelOrder                CancelOrderCommandHandler
	CompleteOrder              CompleteOrderCommandHandler
	ChangeOrderDeliveryAddress ChangeDeliveryAddressCommandHandler
}

func NewOrderCommands

func NewOrderCommands(
	createOrder CreateOrderCommandHandler,
	orderPaid PayOrderCommandHandler,
	submitOrder SubmitOrderCommandHandler,
	updateOrder UpdateShoppingCartCommandHandler,
	cancelOrder CancelOrderCommandHandler,
	deliveryOrder CompleteOrderCommandHandler,
	changeOrderDeliveryAddress ChangeDeliveryAddressCommandHandler,
) *OrderCommands

type PayOrderCommand

type PayOrderCommand struct {
	models.Payment
	es.BaseCommand
}

func NewPayOrderCommand

func NewPayOrderCommand(payment models.Payment, aggregateID string) *PayOrderCommand

type PayOrderCommandHandler

type PayOrderCommandHandler interface {
	Handle(ctx context.Context, command *PayOrderCommand) error
}

type SubmitOrderCommand

type SubmitOrderCommand struct {
	es.BaseCommand
}

func NewSubmitOrderCommand

func NewSubmitOrderCommand(aggregateID string) *SubmitOrderCommand

type SubmitOrderCommandHandler

type SubmitOrderCommandHandler interface {
	Handle(ctx context.Context, command *SubmitOrderCommand) error
}

type UpdateShoppingCartCommand

type UpdateShoppingCartCommand struct {
	es.BaseCommand
	ShopItems []*models.ShopItem `json:"shopItems" bson:"shopItems,omitempty" validate:"required"`
}

func NewUpdateShoppingCartCommand

func NewUpdateShoppingCartCommand(aggregateID string, shopItems []*models.ShopItem) *UpdateShoppingCartCommand

type UpdateShoppingCartCommandHandler

type UpdateShoppingCartCommandHandler interface {
	Handle(ctx context.Context, command *UpdateShoppingCartCommand) error
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL