Compare commits

..

6 Commits

Author SHA1 Message Date
73ecb0aa7e basket update 2022-12-22 14:04:01 +01:00
d614a907b5 basket update 2022-12-22 13:59:08 +01:00
597e72169a basket update 2022-12-22 13:53:17 +01:00
4f1fdd447a basket update 2022-12-22 13:31:25 +01:00
fb63ea8b7d update 2022-12-20 16:09:44 +01:00
14fbd44668 update 2022-12-20 16:07:56 +01:00
5 changed files with 44 additions and 12 deletions

View File

@@ -1,5 +1,31 @@
package http
import "time"
type GetBasketRequest struct {
BasketID string `json:"basket_id"`
}
type GetBasketResponse struct {
ID string `json:"id"`
State string `json:"state"`
CreatedAt time.Duration `json:"created_at"`
UpdatedAt time.Duration `json:"updated_at"`
}
type GetBasketItemsRequest struct {
}
type GetBasketItemsResponse struct {
ID string `json:"id"`
BasketID string `json:"basket_id"`
ProductID int `json:"product_id"`
Quantity int `json:"quantity"`
Price float64 `json:"price"`
CreatedAt time.Duration `json:"created_at"`
UpdatedAt time.Duration `json:"updated_at"`
}
type BasketCheckoutRequest struct {
BasketID string `json:"basket_id"`
}

View File

@@ -2,6 +2,7 @@ package http
type AddProductToBasketRequest struct {
ProductID int `json:"product_id"`
Quantity int `json:"quantity"`
}
type AddProductToBasketResponse struct {
@@ -11,8 +12,10 @@ type AddProductToBasketResponse struct {
type RemoveProductFromBasketRequest struct {
ProductID int `json:"product_id"`
Quantity int `json:"quantity"`
}
type RemoveProductFromBasketResponse struct {
BasketID string `json:"basket_id"`
ProductID int `json:"product_id"`
BasketID string `json:"basket_id"`
}

View File

@@ -5,17 +5,18 @@ import (
)
type BasketModel struct {
ID string `db:"id"`
CreatedAt pgtype.Timestamp `db:"created_at"`
UpdatedAt pgtype.Timestamp `db:"updated_at"`
ID string `db:"id", json:"id"`
State string `db:"state", json:"state"`
CreatedAt pgtype.Timestamp `db:"created_at", json:"created_at"`
UpdatedAt pgtype.Timestamp `db:"updated_at", json:"updated_at"`
}
type BasketItemModel struct {
ID string `db:"id"`
BasketID string `db:"basket_id"`
ProductID string `db:"product_id"`
Quantity int `db:"quantity"`
Price float64 `db:"price"`
CreatedAt pgtype.Timestamp `db:"created_at"`
UpdatedAt pgtype.Timestamp `db:"updated_at"`
ID string `db:"id", json:"id"`
BasketID string `db:"basket_id", json:"basket_id"`
ProductID int `db:"product_id", json:"product_id"`
Quantity int `db:"quantity", json:"quantity"`
Price float64 `db:"price", json:"price"`
CreatedAt pgtype.Timestamp `db:"created_at", json:"created_at"`
UpdatedAt pgtype.Timestamp `db:"updated_at", json:"updated_at"`
}

2
model/order.go Normal file
View File

@@ -0,0 +1,2 @@
package model

View File

@@ -2,6 +2,6 @@ package model
type ProductPriceModel struct {
ID int `db:"id"`
PID int `db:"pid"`
PID string `db:"pid"`
Price float64 `db:"price"`
}