package jnpf.bizcommon.onlyoffice.service.impl; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Component; import org.springframework.util.StringUtils; @Component @RequiredArgsConstructor public class DefaultSceneConfigBuilder implements OnlyOfficeSceneConfigBuilder { private static final String MODE_QIANPIYE = "qianpiye"; private final OnlyOfficeEditPermissionEvaluator editPermissionEvaluator; @Override public String scene() { return null; } @Override public String bizModule() { return null; } @Override public boolean guardsBusinessContext() { return false; } @Override public OnlyOfficeSceneBuildPlan build(OnlyOfficeSceneBuildContext context) { return OnlyOfficeSceneBuildPlan.builder() .editAdmission(() -> (StringUtils.hasText(context.getParam().getBizScene()) || MODE_QIANPIYE.equals(context.getParam().getMode())) && editPermissionEvaluator.canEdit(context.getParam().getBizModule(), context.getUser())) .build(); } }