lb:pdf文件合并功能

This commit is contained in:
bang 2025-01-18 11:54:44 +08:00
parent 9b059f9655
commit a4df8bd8e9

View File

@ -83,7 +83,11 @@ public class PDFMergeDynamicPlugin extends AbstractFormPlugin implements Plugin
String operateKey = e.getOperateKey(); String operateKey = e.getOperateKey();
switch(operateKey){ switch(operateKey){
case "refreshentry": // 刷新自动重新从父页面更新PDF文件明细 case "refreshentry": // 刷新自动重新从父页面更新PDF文件明细
initData(); IFormView parentView = this.getView().getParentView();
String parentFormName = parentView.getModel().getDataEntity().getDataEntityType().getName();
Map<String,String> attachControl = getAttachControl(parentFormName);
Set<String> attachControlKey = attachControl.keySet();
initData(attachControlKey);
break; break;
default : default :
break; break;
@ -93,30 +97,26 @@ public class PDFMergeDynamicPlugin extends AbstractFormPlugin implements Plugin
/** /**
* PDF文件合并界面初始化 * PDF文件合并界面初始化
* */ * */
private void initData(){ private void initData(Set<String> attachControlKey){
IFormView view = this.getView(); IFormView view = this.getView();
IDataModel model = view.getModel(); IDataModel model = view.getModel();
IFormView parentView = this.getView().getParentView(); IFormView parentView = this.getView().getParentView();
String parentFormName = parentView.getModel().getDataEntity().getDataEntityType().getName();
// 清除分录 // 清除分录
model.deleteEntryData("yem_entryentity"); model.deleteEntryData("yem_entryentity");
FormShowParameter formShowParameter = view.getFormShowParameter(); for (String attachKey : attachControlKey) {
String attachKey = formShowParameter.getCustomParam("srcAttachKey"); // 获取附件
if (YEM.isEmpty(attachKey))return; AttachmentPanel panel = parentView.getControl(attachKey);
if (parentView == null) return; List<Map<String, Object>> attachs = panel.getAttachmentData();
DynamicObject dataEntity = parentView.getModel().getDataEntity();// 源单实体 DynamicObjectCollection entry = model.getEntryEntity("yem_entryentity");
// 获取附件 for (Map<String, Object> attach:attachs){
AttachmentPanel panel = parentView.getControl(attachKey); String fileName = (String) attach.get("name");
List<Map<String, Object>> attachs = panel.getAttachmentData(); String url = (String) attach.get("url");
DynamicObjectCollection entry = model.getEntryEntity("yem_entryentity"); if (YEM.isEmpty(fileName)) continue;
for (Map<String, Object> attach:attachs){ if (fileName.endsWith(".pdf") || fileName.endsWith(".PDF")){
String fileName = (String) attach.get("name"); int row = model.createNewEntryRow("yem_entryentity");
String url = (String) attach.get("url"); model.setValue("yem_attachmentname",fileName,row);
if (YEM.isEmpty(fileName)) continue; model.setValue("yem_url",url,row);
if (fileName.endsWith(".pdf") || fileName.endsWith(".PDF")){ }
int row = model.createNewEntryRow("yem_entryentity");
model.setValue("yem_attachmentname",fileName,row);
model.setValue("yem_url",url,row);
} }
} }
} }