editing clients has started.
This commit is contained in:
47
src/clj/auto_ap/graphql/clients.clj
Normal file
47
src/clj/auto_ap/graphql/clients.clj
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
(ns auto-ap.graphql.clients
|
||||||
|
(:require [auto-ap.datomic.clients :as d-clients]
|
||||||
|
[datomic.api :as d]
|
||||||
|
[auto-ap.datomic :refer [uri remove-nils]]
|
||||||
|
[auto-ap.graphql.utils :refer [->graphql assert-admin can-see-client?]]))
|
||||||
|
|
||||||
|
#_(def role->datomic-role {":none" :user-role/none
|
||||||
|
":admin" :user-role/admin
|
||||||
|
":user" :user-role/user})
|
||||||
|
|
||||||
|
(defn edit-client [context {:keys [edit_client] :as args} value]
|
||||||
|
(assert-admin (:id context))
|
||||||
|
(println (:address edit_client))
|
||||||
|
(let [client (d-clients/get-by-id (:id edit_client))
|
||||||
|
#_#_new-clients (set (map #(Long/parseLong %) (:clients edit_user)))
|
||||||
|
#_#_clients-to-remove (->> (:user/clients user)
|
||||||
|
(map :db/id)
|
||||||
|
(filter #(not (new-clients %)) ))]
|
||||||
|
|
||||||
|
|
||||||
|
@(d/transact (d/connect uri)
|
||||||
|
|
||||||
|
(doto (-> [(remove-nils {:db/id (:db/id client)
|
||||||
|
:client/name (:name edit_client)
|
||||||
|
:client/email (:email edit_client)
|
||||||
|
:client/address (remove-nils
|
||||||
|
{
|
||||||
|
:address/street1 (:street1 (:address edit_client))
|
||||||
|
:address/street2 (:street2 (:address edit_client))
|
||||||
|
:address/city (:city (:address edit_client))
|
||||||
|
:address/state (:state (:address edit_client))
|
||||||
|
:address/zip (:zip (:address edit_client))
|
||||||
|
|
||||||
|
})
|
||||||
|
})]
|
||||||
|
#_(into (map (fn [c] [:db/retract (:db/id user) :user/clients c]) clients-to-remove)))
|
||||||
|
clojure.pprint/pprint))
|
||||||
|
|
||||||
|
(doto (->graphql
|
||||||
|
(d-clients/get-by-id (:id edit_client)))
|
||||||
|
println)))
|
||||||
|
|
||||||
|
|
||||||
|
(defn get-client [context args value]
|
||||||
|
(->graphql
|
||||||
|
(filter #(can-see-client? (:id context) %)
|
||||||
|
(d-clients/get-all))))
|
||||||
Reference in New Issue
Block a user