added support for merging vendors.

This commit is contained in:
Bryce Covert
2020-01-05 10:28:10 -08:00
parent 2913f05479
commit 2a708f1990
7 changed files with 144 additions and 38 deletions

View File

@@ -50,4 +50,18 @@
id))
(->graphql))))
(defn merge-vendors [context {:keys [from to]} value]
(let [conn (d/connect uri)
transaction (->> (d/query {:query {:find '[?x ?a2]
:in '[$ ?vendor-from ]
:where ['[?x ?a ?vendor-from]
'[?a :db/ident ?a2]]}
:args [(d/db conn)
from]})
(mapcat (fn [[src attr]]
[[:db/retract src attr from]
[:db/add src attr to]])))
transaction (conj transaction [:db/retractEntity from])]
@(d/transact conn transaction)
to))