zf

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

commit 11e7d6331a2b7adc0771c4e235325a6d561803d2
parent 2d7a72dbb904d8470447d9371c8d4846cd28193b
Author: Alberto Lerda <albertolerda97@gmail.com>
Date:   Thu, 15 Dec 2022 17:11:23 +0100

Zenflows.VF.EconomicResource.Domain: fix dpp

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

diff --git a/src/zenflows/vf/economic_resource/domain.ex b/src/zenflows/vf/economic_resource/domain.ex @@ -286,8 +286,8 @@ def trace_dpp_er_before(%EconomicResource{} = item, visited, depth) do if MapSet.member?(visited, {ee.__struct__, ee.id}) do {visited, children} else - {visited2, child} = trace_dpp_ee_before(ee, visited, depth + 1) - {MapSet.put(visited2, {ee.__struct__, ee.id}), [child | children]} + {visited2, child} = trace_dpp_ee_before(ee, MapSet.put(visited, {ee.__struct__, ee.id}), depth + 1) + {visited2, [child | children]} end end ) @@ -301,7 +301,7 @@ def trace_dpp_ee_before_recurse(%EconomicResource{} = item, visited, depth) do trace_dpp_er_before(item, visited, depth) end def trace_dpp_ee_before_recurse(%EconomicEvent{} = item, visited, depth) do - trace_dpp_ee_before(item, visited, depth) + trace_dpp_pr_before(item, MapSet.put(visited, {item.__struct__, item.id}), depth) end def trace_dpp_ee_before_recurse(%Process{} = item, visited, depth) do trace_dpp_pr_before(item, MapSet.put(visited, {item.__struct__, item.id}), depth) @@ -323,7 +323,7 @@ def trace_dpp_ee_before(%EconomicEvent{} = item, visited, depth) do {visited, children} else {visited2, child} = trace_dpp_ee_before_recurse(pf, visited, depth + 1) - {MapSet.put(visited2, {pf.__struct__, pf.id}), [child | children]} + {visited2, [child | children]} end end ) @@ -339,11 +339,11 @@ def trace_dpp_pr_before(item, visited, depth) do a_dpp_item = %{node: item} {visited2, children} = Process.Domain.previous(item) |> Enum.reduce({visited, []}, fn ee, {visited, children} -> - if MapSet.member?(visited, ee.id) do + if MapSet.member?(visited, {ee.__struct__, ee.id}) do {visited, children} else - {visited2, child} = trace_dpp_ee_before(ee, visited, depth + 1) - {MapSet.put(visited2, ee.id), [child | children]} + {visited2, child} = trace_dpp_ee_before(ee, MapSet.put(visited, {ee.__struct__, ee.id}), depth + 1) + {visited2, [child | children]} end end )