
# 1 业务场景
自定义附件的预览、下载、重命名和删除按钮的可见性和锁定性。
# 2 解决方案
通过二开的方式实现
附件按钮的可见性可以通过visible指令进行控制,visible指令在LoadData请求的响应中发给前端,从而实现对附件按钮可见性的设置。

# 3 操作步骤
## 3.1 可见性
每一个visible指令由四个数字构成,四个数字依次对应预览、下载、重命名、删除四个附件按钮。1代表可见,0代表不可见。可以在afterBindData事件中自定义visible指令,实现对附件按钮的隐藏。代码demo如下
```java
public class TestPlugin extends AbstractBillPlugIn {
@Override
public void afterBindData(EventObject e) {
super.afterBindData(e);
AttachmentPanel panel = this.getControl("attachmentpanel");
List<Map<String, Object>> attachmentData = panel.getAttachmentData();
/*List<String> hiddenBtnList = new ArrayList<>();
hiddenBtnList.add("print");//加入需要隐藏的自定义按钮标识*/
for (Map<String, Object> attachmentMap : attachmentData) {
String visiablePreview = "1";//是否显示预览按钮
String visiableDownload = "0";//是否显示下载按钮
String visiableRename = "1";//是否显示重命名按钮
String visiableDelete = "1";//是否显示删除按钮