prevents external ledger imports before the client was locked.

This commit is contained in:
2022-04-28 08:48:29 -07:00
parent 5446fba24c
commit 5f82871ca5
3 changed files with 34 additions and 4 deletions

View File

@@ -65,8 +65,10 @@
(defn approve-invoices [context {:keys [invoices]} _]
(assert-power-user (:id context))
(doseq [i invoices]
(assert-can-see-client (:id context) (:db/id (:invoice/client (d/entity (d/db conn) i)))))
(doseq [i invoices
:let [invoice (d/entity (d/db conn) i)]]
(assert-can-see-client (:id context) (-> invoice :invoice/client :db/id))
(assert-not-locked (-> invoice :invoice/client :db/id) (-> invoice :invoice/date)))
(let [transactions (map (fn [i] {:db/id i :invoice/import-status :import-status/imported}) invoices)]
(audit-transact transactions (:id context))
invoices))