Merge branch 'staging' into add-scheduled-payment-filter

This commit is contained in:
Bryce Covert
2021-01-06 19:12:55 -08:00
5 changed files with 125 additions and 94 deletions

View File

@@ -1,22 +1,18 @@
(ns auto-ap.routes.exports
(:require
[auto-ap.datomic.clients :as d-clients]
[auto-ap.datomic.vendors :as d-vendors]
[auto-ap.datomic.ledger :as d-ledger]
[auto-ap.datomic.transactions :as d-transactions]
[auto-ap.utils :refer [by]]
[auto-ap.parse :as parse]
[auto-ap.graphql :as graphql]
[auto-ap.graphql.utils :refer [<-graphql ->graphql assert-admin]]
[auto-ap.routes.utils :refer [wrap-secure]]
[clj-time.coerce :refer [to-date]]
[ring.middleware.json :refer [wrap-json-response]]
[compojure.core :refer [GET POST context defroutes wrap-routes]]
[clojure.string :as str]
[venia.core :as venia]
[clojure.tools.logging :as log]
[clj-time.core :as time]
[clj-time.coerce :as coerce]))
(:require [auto-ap.datomic :refer [conn]]
[auto-ap.datomic.clients :as d-clients]
[auto-ap.datomic.ledger :as d-ledger]
[auto-ap.datomic.transactions :as d-transactions]
[auto-ap.datomic.vendors :as d-vendors]
[auto-ap.graphql :as graphql]
[auto-ap.graphql.utils :refer [->graphql <-graphql assert-admin]]
[auto-ap.routes.utils :refer [wrap-secure]]
[clj-time.coerce :as coerce :refer [to-date]]
[clj-time.core :as time]
[compojure.core :refer [context defroutes GET wrap-routes]]
[datomic.api :as d]
[ring.middleware.json :refer [wrap-json-response]]
[venia.core :as venia]))
(defroutes routes
(wrap-routes
@@ -168,14 +164,41 @@
(GET "/transactions/export" {:keys [query-params identity]}
(assert-admin identity)
(let [[transactions] (d-transactions/get-graphql {:client-code (query-params "client-code")
#_#_:original-id (Integer/parseInt (query-params "original"))
:count Integer/MAX_VALUE})
]
#_#_:original-id (Integer/parseInt (query-params "original"))
:count Integer/MAX_VALUE})]
(map (comp ->graphql (fn [i]
(-> i
(update :transaction/date to-date)
(update :transaction/post-date to-date))))
transactions))))
transactions)))
(GET "/transactions/export2" {:keys [query-params identity]}
(assert-admin identity)
(let [db (d/db conn)]
(->>
(d/query {:query {:find ['?e]
:in ['$ '?client-code]
:where ['[?e :transaction/client ?client-code]]}
:args [db [:client/code (query-params "client-code")]]})
(map first)
(map (fn [e]
(let [e (d/entity db e)
client (:transaction/client e)
bank-account (:transaction/bank-account e)]
{:id (:db/id e)
:date (:transaction/date e)
:post_date (:transaction/post-date e)
:client { :code (:client/code client)
:id (:db/id client)
:name (:client/name client)}
:amount (:transaction/amount e)
:description_original (:transaction/description-original e)
:approval_status (:transaction/approval-status e)
:bank_account {:name (:bank-account/name bank-account)
:code (:bank-account/code bank-account)
:id (:db/id bank-account)}})))))))
wrap-secure)