欲知附件用法,且听本文分解(上)

附件可以说是我们最常用的控件之一了,但是你可能不知道,除了上传、下载、预览、删除文件等功能以外,附件其实还有很多细节满满的强大功能等待我们去发现。本期小编就为大家一一介绍~
1 适用场景
附件多用于上传文件,比如xls/doc/ppt等格式的文件,可以用来补充表单资料的信息。除了上传功能以外,我们还能通过附件控件,实现常见的文件预览。
2 如何使用
接下来我们将主要从附件大小、格式、数量配置,附件附加信息配置,附件操作按钮的权限控制以及自定义附件操作按钮四个方面入手,教大家如何进行相应的操作。
2.1 附件大小、格式、数量配置
进入开发平台【设计器】页面后,我们可以在【设计器】页面中配置附件的大小、数量以及允许上传的文件格式:

最大附件大小:附件的大小限制,单位为MB;
最大附件数:允许上传的附件数量;
扩展名:附件的类型限制,内容为文件名后缀不带".",以","或者空格隔开,例如jpg,png,gif
在设计器中配置的属性都只作用于当前控件,如果用户想要配置系统级别的附件大小和格式,可以配置系统参数。
配置路径:【配置工具】→【系统参数】→【公共参数】→【附件配置 →【附件上传大小限制】/【禁止上传附件类型】
【系统参数】页面展示如下:

对于附件大小,由控件属性以及系统参数配置项中较小的一个决定。例如:控件属性配置的最大附件大小是30M,系统参数配置的是10M,附件最终只能允许上传10M以内的文件;
而对于附件类型,控件属性设置的是白名单,系统配置的是黑名单。例如,控件属性配置的扩展名是jpg,png,gif,系统参数配置的黑名单是gif,附件最终只能允许上传jpg,png类型的文件。
2.2 附件附加信息配置
如图所示,在附件上传成功后,默认会显示"附件名称"、"大小"、"创建人"、"创建日期"和"备注"按钮。

当然,我们也可以在设计器中,通过开关控制"创建人"、"创建日期"、"备注"按钮的显示:

2.3 附件操作按钮的权限控制
附件项默认的操作包括预览、下载、重命名和删除。我们可以通过插件,根据用户的不同权限,显示不同的操作按钮。
插件的代码实现如下:
//a. 插件类实现
kd.bos.servicehelper.attachment.IAbstractAttachManagerPlugin
//b. 重写 checkAttachPerm 方法:
@Override
public List<AttachmentInfo> checkAttachPerm(List<AttachmentInfo> data) {
for (AttachmentInfo attachmentInfo : data) {
// 隐藏下载按钮
attachmentInfo.setVisibleDownload(false);
}
}2.4 自定义附件操作按钮
我们还可以添加自定义按钮,满足不同场景的需求。如下面的插件代码,添加了"分享"和"打印"两个按钮:
public class TestPluginAttachment extends AbstractBillPlugin implements AttachmentOperaClickListener {
private static final String KEY_BUTTON = "buttonap";
private static final String KEY_ATTACHMENTPANEL = "attachmentpanel";
@Override
public void registerListener(EventObject evt) {
this.addClickListeners(KEY_BUTTON);
AttachmentPanel panel = this.getControl(KEY_ATTACHMENTPANEL)
panel.addOperaClickListener(this);
}
@Override
public void click(EventObject evt) {
Control ctl = (Control) evt.getSource();
i欲知附件用法,且听本文分解(上)
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



