feat(store): UpsertDisplayState für screen_status
This commit is contained in:
parent
a833220ca6
commit
c359757e31
1 changed files with 18 additions and 0 deletions
|
|
@ -34,6 +34,12 @@ type Screen struct {
|
|||
CreatedAt time.Time `json:"created_at"`
|
||||
}
|
||||
|
||||
type ScreenStatus struct {
|
||||
ScreenID string `json:"screen_id"`
|
||||
DisplayState string `json:"display_state"`
|
||||
ReportedAt time.Time `json:"reported_at"`
|
||||
}
|
||||
|
||||
type MediaAsset struct {
|
||||
ID string `json:"id"`
|
||||
TenantID string `json:"tenant_id"`
|
||||
|
|
@ -310,6 +316,18 @@ func scanScreen(row interface {
|
|||
return &sc, nil
|
||||
}
|
||||
|
||||
// UpsertDisplayState speichert den zuletzt gemeldeten Display-Zustand eines Screens.
|
||||
func (s *ScreenStore) UpsertDisplayState(ctx context.Context, screenID, displayState string) error {
|
||||
_, err := s.pool.Exec(ctx,
|
||||
`insert into screen_status (screen_id, display_state, reported_at)
|
||||
values ($1, $2, now())
|
||||
on conflict (screen_id) do update
|
||||
set display_state = excluded.display_state,
|
||||
reported_at = excluded.reported_at`,
|
||||
screenID, displayState)
|
||||
return err
|
||||
}
|
||||
|
||||
// ------------------------------------------------------------------
|
||||
// MediaStore
|
||||
// ------------------------------------------------------------------
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue