lc/lc123/cloud/app/plugin/operate/sys/ScsGetUPLPlugin.java

47 lines
1.9 KiB
Java

package tqq9.lc123.cloud.app.plugin.operate.sys;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.form.events.AfterDoOperationEventArgs;
import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.AttachmentServiceHelper;
import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.sdk.plugin.Plugin;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class ScsGetUPLPlugin extends AbstractBillPlugIn implements Plugin {
@Override
public void afterDoOperation(AfterDoOperationEventArgs eventArgs) {
super.afterDoOperation(eventArgs);
List<String> fj = new ArrayList<>();
String operateKey = eventArgs.getOperateKey();
if (operateKey.equals("submit")){
String number = (String) this.getModel().getValue("number");
//获取单据信息,并查询单据中的附件字段
DynamicObject file = BusinessDataServiceHelper.loadSingle("tqq9_proxyandfactory", "id,tqq9_attachmentpanelap",
new QFilter[]{new QFilter("number", QFilter.equals, number)});
//获取单据中附件面板信息
List<Map<String, Object>> atts = AttachmentServiceHelper.getAttachments("tqq9_proxyandfactory", file.getPkValue().toString(), "tqq9_attachmentpanelap");
for (Map<String, Object> att : atts) {
String url = (String) att.get("url");
fj.add(url);
}
String fj_urls = "";
try {
fj_urls = new ObjectMapper().writeValueAsString(fj);
} catch (JsonProcessingException e) {
throw new RuntimeException(e);
}
;
this.getModel().setValue("tqq9_fjurl_tag", fj_urls);
}
}
}