Ситуация такая: у меня есть роль hr-role у которой есть политика уровня строк, доступ к обновлению объекта employee только если EmployeeType.SUBCONTRACTOR_LEGAL_ENTITY, при переходе на эту страницу из приложения всё работает нормально, но при переходе по ссылке возникает ошибка Cannot get unfetched attribute [employeeType] from detached, буду очень благодарен помощи
по ссылке переходит, но при изменении полей в сущности, изменения не сохраняются.
Пробовал в методе onAfterShow с помощью dataManager доставать сущность, ошибка не пропадает
Хм.. тогда пока-что сложно сказать что не так. Можете сделать тестовый проект?
И полный stacktrace скинуть.
employeePredicate(dataManager: DataManager) - dataManager скорее должен браться из applicationContext. Судя по коду PredicateRowLevelPolicyExtractor он канечно должен ставится но в лог должен warn падать)
На всякий случай уточню. Как я вижу вы работаете с Котлином. У вас другие политки работают? Ибо есть такая проблема
Но сам EmployeeType это enum:
enum class EmployeeType(private val id: String) : EnumClass {
SIBERIAN_EMPLOYEE(“A”),
SUBCONTRACTOR_INDIVIDUAL(“B”),
SUBCONTRACTOR_LEGAL_ENTITY(“C”);
override fun getId() = id
companion object {
@JvmStatic
fun fromId(id: String): EmployeeType? = EmployeeType.values().find { it.id == id }
}