you can now change types.
This commit is contained in:
@@ -29,3 +29,16 @@
|
||||
[:= :i.id :nonexist.invoice-id]]
|
||||
:where [:and [:= :nonexist.id nil]
|
||||
[:not= :v.default-expense-account nil]] }] })))
|
||||
|
||||
(defn replace-for-invoice [invoice-id expense-accounts]
|
||||
(j/db-do-prepared (get-conn)
|
||||
(sql/format {:delete-from [:invoices-expense-accounts :i]
|
||||
:where [:= :i.invoice-id invoice-id] }))
|
||||
|
||||
(println expense-accounts)
|
||||
(j/insert-multi! (get-conn)
|
||||
:invoices_expense_accounts
|
||||
(doto (->> expense-accounts
|
||||
(map (fn [x] (assoc x :invoice-id invoice-id)))
|
||||
(map clj->db ))
|
||||
println)) )
|
||||
|
||||
@@ -160,6 +160,11 @@
|
||||
:role {:type 'String}
|
||||
:companies {:type '(list Int)}}}
|
||||
|
||||
:edit_expense_account
|
||||
{:fields {:id {:type 'Int}
|
||||
:expense_account_id {:type 'Int}
|
||||
:amount {:type 'String}}}
|
||||
|
||||
:add_invoice
|
||||
{:fields {:id {:type 'Int}
|
||||
:invoice_number {:type 'String}
|
||||
@@ -180,7 +185,11 @@
|
||||
|
||||
:add_invoice {:type :invoice
|
||||
:args {:invoice {:type :add_invoice}}
|
||||
:resolve :mutation/add-invoice}}})
|
||||
:resolve :mutation/add-invoice}
|
||||
:edit_expense_accounts {:type :invoice
|
||||
:args {:invoice_id {:type 'Int}
|
||||
:expense_accounts {:type '(list :edit_expense_account)}}
|
||||
:resolve :mutation/edit-expense-accounts}}})
|
||||
|
||||
|
||||
|
||||
@@ -327,6 +336,7 @@
|
||||
:mutation/print-checks print-checks
|
||||
:mutation/edit-user gq-users/edit-user
|
||||
:mutation/add-invoice gq-invoices/add-invoice
|
||||
:mutation/edit-expense-accounts gq-invoices/edit-expense-accounts
|
||||
:get-vendor get-vendor
|
||||
:get-expense-account expense-accounts/get-expense-account
|
||||
:get-expense-account-parent expense-accounts/get-parent})
|
||||
|
||||
@@ -21,3 +21,12 @@
|
||||
(defn get-invoices-expense-accounts [context args value]
|
||||
(->graphql
|
||||
(invoices-expense-accounts/get-for-invoice (:id value))))
|
||||
|
||||
(defn edit-expense-accounts [context args value]
|
||||
(invoices-expense-accounts/replace-for-invoice (:invoice_id args) (map (fn [{:keys [id expense_account_id amount]}]
|
||||
{
|
||||
:expense-account-id expense_account_id
|
||||
:amount (Double/parseDouble amount)} )
|
||||
(:expense_accounts args)))
|
||||
(->graphql
|
||||
(invoices/get-by-id (:invoice_id args))))
|
||||
|
||||
Reference in New Issue
Block a user