Java 当使用另一个按钮(HYBRIS)执行操作时,如何禁用backoffice中的按钮?
嗨,专家们,当使用另一个按钮进行操作时,如何禁用backoffice中的按钮操作 例如,当我从店面创建订单时,然后在backoffice的“订单”选项卡中为当前订单创建两个操作按钮。赞成和反对 批准订单时,我仍会看到“拒绝”按钮。审批后如何禁用此按钮 在action类(实现Java 当使用另一个按钮(HYBRIS)执行操作时,如何禁用backoffice中的按钮?,java,xml,hybris,Java,Xml,Hybris,嗨,专家们,当使用另一个按钮进行操作时,如何禁用backoffice中的按钮操作 例如,当我从店面创建订单时,然后在backoffice的“订单”选项卡中为当前订单创建两个操作按钮。赞成和反对 批准订单时,我仍会看到“拒绝”按钮。审批后如何禁用此按钮 在action类(实现CockpitAction)中,必须重写canPerform方法,根据业务逻辑返回true/false 例如,您可以参考客户的启用/禁用操作如何工作OOTB 在b2bcommercebackoffice backoffice
CockpitAction
)中,必须重写canPerform
方法,根据业务逻辑返回true/false
例如,您可以参考客户的启用/禁用操作如何工作OOTB
在b2bcommercebackoffice backoffice config.xml
中,您可以找到
<context merge-by="module" type="B2BCustomer" component="editorareaactions">
<y:actions xmlns:y="http://www.hybris.com/cockpit/config/hybris">
<y:group qualifier="common">
<y:label>actiongroup.common</y:label>
<y:action action-id="de.hybris.platform.b2bcommerce.backoffice.actions.disableb2bcustomeraction" property="currentObject"/>
<y:action action-id="de.hybris.platform.b2bcommerce.backoffice.actions.enableb2bcustomeraction" property="currentObject"/>
</y:group>
</y:actions>
</context>
actiongroup.common
现在,请参阅禁用B2B客户操作或启用B2B客户操作说明他们如何实现可以执行方法
e、 g
public boolean可执行(ActionContext ctx){
对象数据=ctx.getData();
if(data!=null&&b2b客户模型的数据实例){
B2B客户模型B2B客户模型=(B2B客户模型)数据;
UserModel currentUser=this.userService.getCurrentUser();
布尔值isActive=B2BCCustomerModel.getActive();
布尔值isUserMemberOfAdminGroup=this.userService.isMemberOfGroup(currentUser,
this.userService.getAdminUserGroup());
布尔值IsUserMemberOfB2 AdminGroup=this.userService.isMemberOfGroup(currentUser,
this.userService.getUserGroupForUID(“B2BadmingGroup”);
return(isUserMemberOfAdminGroup | | isUserMemberOfB2 AdminGroup)和&isActive;
}否则{
返回false;
}
}
public boolean canPerform(ActionContext<B2BCustomerModel> ctx) {
Object data = ctx.getData();
if (data != null && data instanceof B2BCustomerModel) {
B2BCustomerModel b2bCustomerModel = (B2BCustomerModel) data;
UserModel currentUser = this.userService.getCurrentUser();
boolean isActive = b2bCustomerModel.getActive();
boolean isUserMemberOfAdminGroup = this.userService.isMemberOfGroup(currentUser,
this.userService.getAdminUserGroup());
boolean isUserMemberOfB2BAdminGroup = this.userService.isMemberOfGroup(currentUser,
this.userService.getUserGroupForUID("b2badmingroup"));
return (isUserMemberOfAdminGroup || isUserMemberOfB2BAdminGroup) && isActive;
} else {
return false;
}
}