lots of fixes.

This commit is contained in:
Bryce Covert
2020-04-21 07:13:42 -07:00
parent 01c776a72e
commit 9cb42be9e8
5 changed files with 108 additions and 72 deletions

View File

@@ -11,7 +11,9 @@
[auto-ap.parse.util :as parse-u]
[auto-ap.graphql.utils :refer [assert-admin]]
[auto-ap.routes.utils :refer [wrap-secure]]
[clj-time.coerce :refer [to-date]]
[clj-time.core :as time]
[clj-time.coerce :as coerce :refer [to-date]]
[ring.middleware.json :refer [wrap-json-response]]
[compojure.core :refer [GET POST context defroutes
wrap-routes]]
@@ -126,26 +128,28 @@
(defn invoice-rows->transaction [rows]
(->> rows
(mapcat (fn [{:keys [vendor-id total client-id amount date invoice-number default-location account-id check vendor]}]
(println account-id vendor)
(let [invoice #:invoice {:db/id (.toString (java.util.UUID/randomUUID))
:vendor vendor-id
:client client-id
:default-location default-location
:import-status :import-status/imported
#_#_:default-expense-account default-expense-account
:total total
:outstanding-balance (if (= "Cash" check)
0.0
total)
:status (if (= "Cash" check)
:invoice-status/paid
:invoice-status/unpaid)
:invoice-number invoice-number
:date (to-date date)
:expense-accounts [#:invoice-expense-account {:account (or account-id
(-> vendor :vendor/default-account :db/id))
:location default-location
:amount total}]}
(let [invoice (cond->
#:invoice {:db/id (.toString (java.util.UUID/randomUUID))
:vendor vendor-id
:client client-id
:default-location default-location
:import-status :import-status/imported
#_#_:default-expense-account default-expense-account
:total total
:outstanding-balance (if (= "Cash" check)
0.0
total)
:status (if (= "Cash" check)
:invoice-status/paid
:invoice-status/unpaid)
:invoice-number invoice-number
:date (to-date date)
:expense-accounts [#:invoice-expense-account {:account (or account-id
(:db/id (d-vendors/account-for-client-id vendor client-id)))
:location default-location
:amount total}]}
(:vendor/terms vendor) (assoc :invoice/due (coerce/to-date
(time/plus date (time/days (d-vendors/terms-for-client-id vendor client-id))))))
payment (if (= :invoice-status/paid (:invoice/status invoice))
#:invoice-payment {:invoice (:db/id invoice)
:amount (:invoice/total invoice)