zf

zenflows testing
git clone https://s.sonu.ch/~srfsh/zf.git
Log | Files | Refs | Submodules | README | LICENSE

commit 86a9f899cd222409dc3bac2fd1228ffa2c61142b
parent 3ea89095e18d801846e75a0946eb30143722b8b5
Author: srfsh <dev@srf.sh>
Date:   Fri,  2 Dec 2022 19:08:12 +0300

Zenflows.VF.EconomicEvent.Domain: fix owners when transferring

Diffstat:
Msrc/zenflows/vf/economic_event/domain.ex | 10+++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/src/zenflows/vf/economic_event/domain.ex b/src/zenflows/vf/economic_event/domain.ex @@ -666,7 +666,7 @@ defp handle_insert(key, %{action_id: "transferCustody"} = evt, res_params) do |> Multi.update(key, Changeset.change(evt, previous_event_id: res.previous_event_id)) |> Multi.update_all("#{key}.set_and_dec", where(EconomicResource, id: ^evt.resource_inventoried_as_id), - set: [previous_event_id: evt.id], + set: [previous_event_id: evt.id, custodian_id: evt.receiver_id], inc: [ onhand_quantity_has_numerical_value: Decimal.negate(evt.resource_quantity_has_numerical_value), ]) @@ -791,7 +791,7 @@ defp handle_insert(key, %{action_id: "transferAllRights"} = evt, res_params) do |> Multi.update(key, Changeset.change(evt, previous_event_id: res.previous_event_id)) |> Multi.update_all(:set_and_dec, where(EconomicResource, id: ^evt.resource_inventoried_as_id), - set: [previous_event_id: evt.id], + set: [previous_event_id: evt.id, primary_accountable_id: evt.receiver_id], inc: [ accounting_quantity_has_numerical_value: Decimal.negate(evt.resource_quantity_has_numerical_value), ]) @@ -921,7 +921,11 @@ defp handle_insert(key, %{action_id: "transfer"} = evt, res_params) do |> Multi.update(key, Changeset.change(evt, previous_event_id: res.previous_event_id)) |> Multi.update_all("#{key}.set_and_dec", where(EconomicResource, id: ^evt.resource_inventoried_as_id), - set: [previous_event_id: evt.id], + set: [ + previous_event_id: evt.id, + primary_accountable_id: evt.receiver_id, + custodian_id: evt.receiver_id, + ], inc: [ accounting_quantity_has_numerical_value: Decimal.negate(evt.resource_quantity_has_numerical_value), onhand_quantity_has_numerical_value: Decimal.negate(evt.resource_quantity_has_numerical_value),