Change-Id: I6c6847fac56f0a9a1a2209792e00a3aec5e672b9 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10809 Autosubmit: aspen <root@gws.fyi> Reviewed-by: sterni <sternenseemann@systemli.org> Tested-by: BuildkiteCI Reviewed-by: lukegb <lukegb@tvl.fyi>
19 lines
567 B
Clojure
19 lines
567 B
Clojure
(ns bbbg.db.user
|
|
(:require [bbbg.db :as db]
|
|
[bbbg.user :as user]))
|
|
|
|
(defn create! [db attrs]
|
|
(db/insert! db
|
|
:public.user
|
|
(select-keys attrs [::user/id
|
|
::user/username
|
|
::user/discord-user-id])))
|
|
|
|
(defn find-or-create! [db attrs]
|
|
(or
|
|
(db/fetch db {:select [:*]
|
|
:from [:public.user]
|
|
:where [:=
|
|
:discord-user-id
|
|
(::user/discord-user-id attrs)]})
|
|
(create! db attrs)))
|