Обычно в Hybris есть модельные перехватчики, такие как PrepareInterceptor, то есть при изменении модели ее можно перехватить. На этом этапе у меня проблема. Я хотел бы перехватить, когда произойдет изменение, связанное с CategoryProductRelation. В результате этого ни CategoryModel, ни ProductModel не меняются. Изменяется только строка в таблице cat2prodrel. Это не ситуация с изменением модели. Есть ли у вас какие-либо предложения по перехвату при изменении CategoryProductRelation?




Я решил свою проблему. В моем случае я импортирую INSERT_UPDATE и REMOVE CategoryProductRelation impex. Да, это правда, что ни CategoryModel, ни ProductModel не меняются во время этих операций, но LinkModel изменяется. Я написал перехватчик удаления для операции REMOVE и прослушиватель после сохранения для операции INSERT_UPDATE, посмотрев на 'typeCode'. Вот мое решение.
AfterSaveListener для операции INSERT_UPDATE
.....
//'143' is a typeCode of CategoryProductRelation
if (pk.getTypeCode()==143){
Object model= modelService.get(pk);
if (model instanceof LinkModel){
......
}
.....
}
Перехватчик (RemoveInterceptor) для операции УДАЛИТЬ
......
if (model instanceof LinkModel){
final LinkModel linkModel = (LinkModel) model;
PK pk=linkModel.getPk();
.....
}
.....