Files
integreat/src/clj/auto_ap/graphql/ezcater.clj
Bryce ba87805d4c Add vendor pre-population for bulk code and individual edit forms
- Add vendor-changed HTMX handlers for both bulk code and individual edit
- Pre-populate default account at 100% when vendor is selected and no accounts exist
- Fix render-accounts-section to render from step-params correctly
- Change bulk code vendor-changed from hx-get to hx-post to include form data
- Add routes for vendor-changed endpoints
- Update e2e tests to cover vendor pre-population
- Run lein cljfmt fix across codebase
2026-05-21 14:45:19 -07:00

42 lines
1.2 KiB
Clojure

(ns auto-ap.graphql.ezcater
(:require
[auto-ap.datomic :refer [conn]]
[auto-ap.graphql.utils :refer [assert-admin attach-tracing-resolvers]]
[clojure.string :as str]
[datomic.api :as dc]))
(defn search [context args _]
(assert-admin (:id context))
(for [[id name] (dc/q '[:find ?i ?n
:in $ ?s
:where [?i :ezcater-caterer/name ?n]
[(clojure.string/upper-case ?n) ?n2]
[(clojure.string/includes? ?n2 ?s)]]
(dc/db conn)
(str/upper-case (:query args)))]
{:name name
:id id}))
(def objects
{:ezcater_caterer {:fields {:name {:type 'String}
:id {:type :id}}}})
(def queries
{:search_ezcater_caterer {:type '(list :search_result)
:args {:query {:type 'String}}
:resolve :search-ezcater-caterer}})
(def enums
{})
(def resolvers
{:search-ezcater-caterer search})
(defn attach [schema]
(->
(merge-with merge schema
{:objects objects
:queries queries
:enums enums})
(attach-tracing-resolvers resolvers)))