diff --git a/app/helpers/solver_helper.py b/app/helpers/solver_helper.py index d4a78b6..437b46e 100644 --- a/app/helpers/solver_helper.py +++ b/app/helpers/solver_helper.py @@ -29,11 +29,20 @@ def build_constraints(solver_run: SolverRun, problem: LpProblem, item.attribute_exists(attribute) for item in solver_run.items ])) - problem += lpSum([ - con[item.id] * items[item.id] for item in solver_run.items + problem += lpSum( + [ + len(bundle.items_with_attribute(attribute)) * bundles[bundle.id] for bundle in solver_run.bundles + ] + + [ + con[item.id] * items[item.id] for item in solver_run.unbundled_items ]) >= round( total_form_items * (min / 100)), f'{attribute.id} - {attribute.value} - min' + # problem += lpSum([ + # con[item.id] * items[item.id] for item in solver_run.items + # ]) >= round( + # total_form_items * + # (min / 100)), f'{attribute.id} - {attribute.value} - min' problem += lpSum([ con[item.id] * items[item.id] for item in solver_run.items ]) <= round(