Hybris 隐藏具有特定状态的订单,不在后台显示

Hybris hide orders from display in backoffice with particular statuses

根据要求,我不需要在后台为除管理员以外的所有员工列出状态为 CANCELED 和 FAILED 的订单,是否有任何方法可以修改后台逻辑以便不显示具有特定状态的订单?

您可以为此使用 Flex Search Restriction。限制自动将 where 条件按项目类型添加到每个 flex 查询。您也可以在此限制中使用会话变量。

使用 SearchRestriction 实现:

INSERT_UPDATE SearchRestriction; code[unique = true]                                ; name[lang = en]; restrictedType(code); principal(uid)                ; active; generate; query
                           ; order_status_estricted                 ;                ; Order               ; vendoradministratorgroup      ; true  ; true    ; {status} IN ( {{ SELECT {os.pk} FROM {OrderStatus as os} WHERE {os.code} NOT IN ('CANCELED')  }} )