added ability to void invoices.

This commit is contained in:
Bryce Covert
2018-07-25 16:28:24 -07:00
parent 2cb540c1fa
commit 581e5e8798
6 changed files with 69 additions and 5 deletions

View File

@@ -64,7 +64,7 @@
(j/update! (get-conn) :invoices {:imported true} [] ))
(defn update [v]
(j/update! (get-conn) :invoices v ["id = ?" (:id v)])
(j/update! (get-conn) :invoices (clj->db v) ["id = ?" (:id v)])
(get-by-id (:id v)))
(defn reject []

View File

@@ -290,6 +290,9 @@
:edit_invoice {:type :invoice
:args {:invoice {:type :edit_invoice}}
:resolve :mutation/edit-invoice}
:void_invoice {:type :invoice
:args {:invoice_id {:type 'Int}}
:resolve :mutation/void-invoice}
:edit_expense_accounts {:type :invoice
:args {:invoice_id {:type 'Int}
:expense_accounts {:type '(list :edit_expense_account)}}
@@ -504,6 +507,7 @@
:mutation/edit-user gq-users/edit-user
:mutation/add-invoice gq-invoices/add-invoice
:mutation/edit-invoice gq-invoices/edit-invoice
:mutation/void-invoice gq-invoices/void-invoice
:mutation/edit-expense-accounts gq-invoices/edit-expense-accounts
:get-vendor get-vendor
:get-expense-account expense-accounts/get-expense-account

View File

@@ -39,7 +39,17 @@
_ (assert-can-see-company (:id context) (:company-id invoice))
updated-invoice (invoices/update (-> in
(update :date parse iso-date)
(assoc :outstanding_balance (- (:total in) paid-amount))))]
(assoc :outstanding-balance (- (:total in) paid-amount))))]
(-> updated-invoice
(->graphql))))
(defn void-invoice [context {id :invoice_id} value]
(let [invoice (invoices/get-by-id id)
_ (assert-can-see-company (:id context) (:company-id invoice))
updated-invoice (invoices/update {:id id
:total 0
:outstanding-balance 0
:status "voided"})]
(-> updated-invoice
(->graphql))))