如何在通过插件自定义水印内容

1 业务场景
客户希望能更加灵活的设置水印内容,并且能通过在上级节点配置,达到作用于当前节点下的所有子节点的效果,如:在基础服务上配置水印内容,展示用户名+组织名,目前标准产品的水印配置功能无法满足要求。
2 实现方案
二次开发可以自己实现一个自定义的水印插件,在插件中传入自定义的水印内容(如:用户名+组织名),在水印配置页面相应节点配置后,作用于该节点下面的所有节点。例如在基础服务节点配置水印插件,基础服务上的所有的页面都应用插件定义的水印。
2.1 接口结构
自定义的水印插件需实现IWaterMarkPlugin接口:
public interface IWaterMarkPlugin {
//打开表单前修改水印内容
default void setWaterMarkInfo(LoadWaterMarkInfoEventArgs e){};
}2.2 示例代码
/**
* 案例:自定义水印插件实现水印为用户名+组织名
* 在插件中实现 IWaterMarkPlugin 接口重写setWaterMarkInfo()方法设置水印
*/
public class WaterMarkerCustomPluginTest extends AbstractFormPlugin implements IWaterMarkPlugin{
@Override
public void setWaterMarkInfo(LoadWaterMarkInfoEventArgs e) {
long userId = RequestContext.get().getCurrUserId();
DynamicObject user=BusinessDataServiceHelper.loadSingle(userId, "bos_user");
String orgName = getOrgName(use如何在通过插件自定义水印内容
1 业务场景 客户希望能更加灵活的设置水印内容,并且能通过在上级节点配置,达到作用于当前节点下的所有子节点的效果,如:在基础服务上配...
点击下载文档文档为doc格式
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
上一篇
已经是第一篇



