package fi.fa.opplugin; import com.alibaba.druid.util.StringUtils; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObjectCollection; import kd.bos.entity.plugin.AbstractOperationServicePlugIn; import kd.bos.entity.plugin.args.BeginOperationTransactionArgs; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; import java.util.ArrayList; import java.util.List; //实物卡片 public class RealCardBillOpPlugin extends AbstractOperationServicePlugIn { @Override public void beginOperationTransaction(BeginOperationTransactionArgs e) { DynamicObject[] dynamicObjects = e.getDataEntities(); for (int i = 0; i < dynamicObjects.length; i++) { if (StringUtils.equals(e.getOperationKey(),"audit")) { List ids = new ArrayList<>(); //审批通过后,如果是报销单下推的单据,则回写e卡片清单 DynamicObject info = BusinessDataServiceHelper.loadSingle(dynamicObjects[i].getPkValue(), dynamicObjects[i].getDynamicObjectType().getName()); String srcbillentityname = info.getString("srcbillentityname"); Long bxId = info.getLong("nckd_bz_id"); String number = info.getString("number");//资产编码 String name = info.getString("assetname");//资产名称 DynamicObject org = info.getDynamicObject("assetunit");//资产组织 String orgName = org.getString("name"); //报销单下推生成的实物卡片审核后回写e管家实物卡片清单 if (bxId != 0) { //查询报销单 QFilter bxFilter = new QFilter("id", QCP.equals,bxId); DynamicObject[] bxDynamicObjects = BusinessDataServiceHelper.load("er_publicreimbursebill","id",new QFilter[] {bxFilter}); for (int c=0;c