diff options
Diffstat (limited to 'ishtar_common/views_item.py')
-rw-r--r-- | ishtar_common/views_item.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index d80de34c7..c6110d930 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -2559,6 +2559,19 @@ def get_item( elif "name" in res: res["value"] = res.pop("name") rows.append(res) + # v4.0 patch + if getattr(model, "SELECT_GROUP_BY", False): + new_rows = OrderedDict() + for row in rows: + idx = row["id"] + if idx in new_rows: + for key in row: + if row[key] == new_rows[idx][key]: + continue + new_rows[idx][key] += " ; " + row[key] + else: + new_rows[idx] = row + rows = [row for __, row in new_rows.items()] if full == "shortcut": data = json.dumps(rows) else: |