diff --git a/shkd-cosmic-debug/src/main/java/kd/fi/er/botp/ConvertBillPlugln.java b/shkd-cosmic-debug/src/main/java/kd/fi/er/botp/ConvertBillPlugln.java new file mode 100644 index 0000000..6573572 --- /dev/null +++ b/shkd-cosmic-debug/src/main/java/kd/fi/er/botp/ConvertBillPlugln.java @@ -0,0 +1,105 @@ +package kd.fi.er.botp; + +import kd.bos.dataentity.entity.DynamicObject; +import kd.bos.dataentity.entity.DynamicObjectCollection; +import kd.bos.entity.ExtendedDataEntity; +import kd.bos.entity.ExtendedDataEntitySet; +import kd.bos.entity.botp.plugin.AbstractConvertPlugIn; +import kd.bos.entity.botp.plugin.args.AfterConvertEventArgs; +import kd.bos.entity.botp.runtime.ConvertConst; +import kd.bos.orm.query.QFilter; +import kd.bos.servicehelper.BusinessDataServiceHelper; +import kd.scm.pds.common.util.TemplateUtil; +import kd.sdk.plugin.Plugin; + +import java.math.BigDecimal; +import java.util.List; + +/** + * 单据转换插件 + */ +public class ConvertBillPlugln extends AbstractConvertPlugIn implements Plugin { + @Override + public void afterConvert(AfterConvertEventArgs e) { + super.afterConvert(e); + //采购合同 + ExtendedDataEntitySet targetExtDataEntitySet = e.getTargetExtDataEntitySet(); + ExtendedDataEntity[] entities = targetExtDataEntitySet.FindByEntityKey(getTgtMainType().getName()); + for (ExtendedDataEntity entity : entities) { + List srcRows = (List) entity.getValue(ConvertConst.ConvExtDataKey_SourceRows); + DynamicObject srcRow = srcRows.get(0); + Object sourceBillPK = e.getFldProperties().get("id").getValue(srcRow); + ////付款处理单据 + DynamicObject contract = entity.getDataEntity(); + //对公报销 + DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(sourceBillPK, getSrcMainType().getName()); + DynamicObjectCollection accountentry = dynamicObject.getDynamicObjectCollection("accountentry"); + BigDecimal orireceiveamount = accountentry.get(0).getBigDecimal("orireceiveamount"); //实付金额 + + DynamicObjectCollection writeoffmoney = dynamicObject.getDynamicObjectCollection("writeoffmoney"); //预付 + DynamicObjectCollection expenseentryentity = dynamicObject.getDynamicObjectCollection("expenseentryentity"); //预付 + + BigDecimal yuf = BigDecimal.ZERO; //预付金额 + for(int i=0;i