customer/internal/models/history.go

41 lines
1.3 KiB
Go
Raw Normal View History

2023-05-23 10:52:27 +00:00
package models
import "time"
2023-06-15 12:31:34 +00:00
// TODO: метод для установки стандартных значений при создании модели в БД (ко всем моделям)
// TODO: добавить истории
2023-06-13 22:20:40 +00:00
2023-05-23 10:52:27 +00:00
type History struct {
2023-06-15 12:31:34 +00:00
ID string `json:"id" bson:"_id,omitempty"`
UserID string `json:"userId" bson:"userId"`
Comment string `json:"comment" bson:"comment"`
Key string `json:"key" bson:"key"`
RawDetails string `json:"rawDetails" bson:"rawDetails"`
2023-06-15 12:45:38 +00:00
Deleted bool `json:"isDeleted" bson:"isDeleted"`
2023-06-15 12:31:34 +00:00
CreatedAt time.Time `json:"createdAt" bson:"createdAt"`
UpdatedAt time.Time `json:"updatedAt" bson:"updatedAt"`
DeletedAt *time.Time `json:"deletedAt,omitempty" bson:"deletedAt,omitempty"`
2023-05-23 10:52:27 +00:00
}
2023-06-15 12:45:38 +00:00
func (receiver *History) Sanitize() *History {
now := time.Now()
receiver.ID = ""
receiver.CreatedAt = now
receiver.UpdatedAt = now
receiver.DeletedAt = nil
receiver.Deleted = false
return receiver
}
2023-06-15 12:31:34 +00:00
// TODO: применять эти типы тарифов при кейсах (операция не обязательная)
2023-05-23 15:24:52 +00:00
2023-06-15 12:31:34 +00:00
type CustomerHistoryKey string
2023-05-23 10:52:27 +00:00
const (
2023-06-15 12:31:34 +00:00
CustomerHistoryKeyReplenish = "customer.replenishWallet"
CustomerHistoryKeyPayCart = "customer.payCart"
CustomerHistoryKeyTariffEnded = "customer.tariffEnded"
2023-05-23 10:52:27 +00:00
)