mirror of
https://github.com/makayabou/asg-server.git
synced 2026-05-02 17:43:36 +02:00
[3rdParty][devices] fix empty deletedAt field in json
This commit is contained in:
parent
cb3e4f8dd9
commit
98f3f719e0
@ -65,7 +65,7 @@ func (h *thirdPartyHandler) getDevice(user models.User, c *fiber.Ctx) error {
|
||||
Name: types.OrDefault[string](device.Name, ""),
|
||||
CreatedAt: device.CreatedAt,
|
||||
UpdatedAt: device.UpdatedAt,
|
||||
DeletedAt: device.DeletedAt.Time,
|
||||
DeletedAt: device.DeletedAt,
|
||||
LastSeen: device.LastSeen,
|
||||
})
|
||||
}
|
||||
@ -97,12 +97,16 @@ func (h *thirdPartyHandler) postMessage(user models.User, c *fiber.Ctx) error {
|
||||
|
||||
skipPhoneValidation := c.QueryBool("skipPhoneValidation", false)
|
||||
|
||||
// TODO: use DevicesService and don't preload devices on User
|
||||
if len(user.Devices) < 1 {
|
||||
devices, err := h.devicesSvc.Select(user)
|
||||
if err != nil {
|
||||
return fmt.Errorf("can't select devices: %w", err)
|
||||
}
|
||||
|
||||
if len(devices) < 1 {
|
||||
return fiber.NewError(fiber.StatusBadRequest, "Нет ни одного устройства в учетной записи")
|
||||
}
|
||||
|
||||
device := user.Devices[0]
|
||||
device := devices[0]
|
||||
state, err := h.messagesSvc.Enqeue(device, req, services.MessagesEnqueueOptions{SkipPhoneValidation: skipPhoneValidation})
|
||||
if err != nil {
|
||||
var err400 services.ErrValidation
|
||||
|
||||
@ -2,8 +2,6 @@ package models
|
||||
|
||||
import (
|
||||
"time"
|
||||
|
||||
"gorm.io/gorm"
|
||||
)
|
||||
|
||||
type MessageState string
|
||||
@ -19,13 +17,13 @@ const (
|
||||
type TimedModel struct {
|
||||
CreatedAt time.Time `gorm:"not null;autocreatetime:false;default:CURRENT_TIMESTAMP(3)"`
|
||||
UpdatedAt time.Time `gorm:"not null;autoupdatetime:false;default:CURRENT_TIMESTAMP(3) ON UPDATE CURRENT_TIMESTAMP(3)"`
|
||||
DeletedAt gorm.DeletedAt
|
||||
DeletedAt *time.Time
|
||||
}
|
||||
|
||||
type User struct {
|
||||
ID string `gorm:"primaryKey;type:varchar(32)"`
|
||||
PasswordHash string `gorm:"not null;type:varchar(72)"`
|
||||
Devices []Device `gorm:"foreignKey:UserID;constraint:OnDelete:CASCADE"`
|
||||
Devices []Device `gorm:"-,foreignKey:UserID;constraint:OnDelete:CASCADE"`
|
||||
|
||||
TimedModel
|
||||
}
|
||||
|
||||
@ -14,11 +14,11 @@ const (
|
||||
|
||||
// Устройство
|
||||
type Device struct {
|
||||
ID string `json:"id" example:"PyDmBQZZXYmyxMwED8Fzy"` // Идентификатор
|
||||
Name string `json:"name" example:"My Device"` // Название устройства
|
||||
CreatedAt time.Time `json:"createdAt" example:"2020-01-01T00:00:00Z"` // Дата создания
|
||||
UpdatedAt time.Time `json:"updatedAt" example:"2020-01-01T00:00:00Z"` // Дата обновления
|
||||
DeletedAt time.Time `json:"deletedAt,omitempty" example:"2020-01-01T00:00:00Z"` // Дата удаления
|
||||
ID string `json:"id" example:"PyDmBQZZXYmyxMwED8Fzy"` // Идентификатор
|
||||
Name string `json:"name" example:"My Device"` // Название устройства
|
||||
CreatedAt time.Time `json:"createdAt" example:"2020-01-01T00:00:00Z"` // Дата создания
|
||||
UpdatedAt time.Time `json:"updatedAt" example:"2020-01-01T00:00:00Z"` // Дата обновления
|
||||
DeletedAt *time.Time `json:"deletedAt,omitempty" example:"2020-01-01T00:00:00Z"` // Дата удаления
|
||||
|
||||
LastSeen time.Time `json:"lastSeen" example:"2020-01-01T00:00:00Z"` // Последняя активность
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user