generated from PenaSide/GolangTemplate
feat: model versioning\nfix: pay empty cart 500 -> 406
This commit is contained in:
parent
e3f0e1202c
commit
0d21b76a00
11
CHANGELOG.md
Normal file
11
CHANGELOG.md
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
#v1.0.0
|
||||||
|
|
||||||
|
INTERNAL:
|
||||||
|
|
||||||
|
- Добавлено версионирование модели данных. На данный момент модель под версией 1
|
||||||
|
|
||||||
|
FIX:
|
||||||
|
|
||||||
|
- При пустой корзине во время оплаты(/cart/pay) больше не будет возвращаться 500, а будет возвращаться 406
|
||||||
|
|
||||||
|
#v1.0.0
|
@ -412,6 +412,12 @@ paths:
|
|||||||
application/json:
|
application/json:
|
||||||
schema:
|
schema:
|
||||||
$ref: "#/components/schemas/Error"
|
$ref: "#/components/schemas/Error"
|
||||||
|
"406":
|
||||||
|
description: корзина пустая
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/Error"
|
||||||
|
|
||||||
/wallet:
|
/wallet:
|
||||||
patch:
|
patch:
|
||||||
|
@ -135,6 +135,10 @@ func (receiver *CartController) Pay(ctx *fiber.Ctx) error {
|
|||||||
|
|
||||||
receiver.logger.Info("account for pay", zap.Any("acc", account))
|
receiver.logger.Info("account for pay", zap.Any("acc", account))
|
||||||
|
|
||||||
|
if len(account.Cart) == 0 {
|
||||||
|
return ctx.Status(fiber.StatusNotAcceptable).SendString("cart is empty")
|
||||||
|
}
|
||||||
|
|
||||||
tariffs, err := receiver.hubAdminClient.GetTariffs(ctx.Context(), accessToken, account.Cart)
|
tariffs, err := receiver.hubAdminClient.GetTariffs(ctx.Context(), accessToken, account.Cart)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return receiver.middleWare.ErrorOld(ctx, err)
|
return receiver.middleWare.ErrorOld(ctx, err)
|
||||||
|
@ -15,6 +15,7 @@ type Account struct {
|
|||||||
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
||||||
From string `json:"from" bson:"from"`
|
From string `json:"from" bson:"from"`
|
||||||
Partner string `json:"partner" bson:"partner"`
|
Partner string `json:"partner" bson:"partner"`
|
||||||
|
Version uint32 `json:"version" bson:"version"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *Account) Sanitize() *Account {
|
func (receiver *Account) Sanitize() *Account {
|
||||||
@ -32,6 +33,7 @@ func (receiver *Account) Sanitize() *Account {
|
|||||||
//receiver.Partner = ""
|
//receiver.Partner = ""
|
||||||
receiver.DeletedAt = nil
|
receiver.DeletedAt = nil
|
||||||
receiver.Deleted = false
|
receiver.Deleted = false
|
||||||
|
receiver.Version = mongoVersion
|
||||||
|
|
||||||
return receiver
|
return receiver
|
||||||
}
|
}
|
||||||
|
@ -131,3 +131,5 @@ type PlainAuth struct {
|
|||||||
Username string `env:"MAIL_AUTH_USERNAME,required"`
|
Username string `env:"MAIL_AUTH_USERNAME,required"`
|
||||||
Password string `env:"MAIL_AUTH_PASSWORD,required"`
|
Password string `env:"MAIL_AUTH_PASSWORD,required"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const mongoVersion uint32 = 1
|
||||||
|
@ -12,6 +12,7 @@ type CurrencyList struct {
|
|||||||
CreatedAt time.Time `json:"createdAt" bson:"createdAt"`
|
CreatedAt time.Time `json:"createdAt" bson:"createdAt"`
|
||||||
UpdatedAt time.Time `json:"updatedAt" bson:"updatedAt"`
|
UpdatedAt time.Time `json:"updatedAt" bson:"updatedAt"`
|
||||||
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
||||||
|
Version uint32 `json:"version" bson:"version"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func (receiver *CurrencyList) Sanitize() *CurrencyList {
|
func (receiver *CurrencyList) Sanitize() *CurrencyList {
|
||||||
@ -22,6 +23,7 @@ func (receiver *CurrencyList) Sanitize() *CurrencyList {
|
|||||||
receiver.UpdatedAt = now
|
receiver.UpdatedAt = now
|
||||||
receiver.DeletedAt = nil
|
receiver.DeletedAt = nil
|
||||||
receiver.Deleted = false
|
receiver.Deleted = false
|
||||||
|
receiver.Version = mongoVersion
|
||||||
|
|
||||||
return receiver
|
return receiver
|
||||||
}
|
}
|
||||||
|
@ -12,6 +12,7 @@ type History struct {
|
|||||||
CreatedAt time.Time `json:"createdAt" bson:"createdAt"`
|
CreatedAt time.Time `json:"createdAt" bson:"createdAt"`
|
||||||
UpdatedAt time.Time `json:"updatedAt" bson:"updatedAt"`
|
UpdatedAt time.Time `json:"updatedAt" bson:"updatedAt"`
|
||||||
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
|
||||||
|
Version uint32 `json:"version" bson:"version"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type TariffID struct {
|
type TariffID struct {
|
||||||
@ -44,6 +45,7 @@ func (receiver *History) Sanitize() *History {
|
|||||||
receiver.UpdatedAt = now
|
receiver.UpdatedAt = now
|
||||||
receiver.DeletedAt = nil
|
receiver.DeletedAt = nil
|
||||||
receiver.Deleted = false
|
receiver.Deleted = false
|
||||||
|
receiver.Version = mongoVersion
|
||||||
|
|
||||||
return receiver
|
return receiver
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user