收入财务确认上拉支出合同结算botp插件

This commit is contained in:
xuhaihui 2026-01-04 15:12:21 +08:00
parent 1f6131e5bc
commit 250f79c628
1 changed files with 34 additions and 0 deletions

View File

@ -0,0 +1,34 @@
package zcgj.zcdev.zcdev.pr.plugin.other;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.entity.botp.plugin.AbstractConvertPlugIn;
import kd.bos.entity.botp.plugin.args.AfterBuildDrawFilterEventArgs;
import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter;
import java.util.ArrayList;
import java.util.List;
/**
* 收入财务确认上拉支出合同结算botp插件
*/
public class FinanceConfirmOutContractPlugin extends AbstractConvertPlugIn {
@Override
public void afterBuildDrawFilter(AfterBuildDrawFilterEventArgs e) {
//选单过滤
super.afterBuildDrawFilter(e);
DynamicObject targetDataEntity = e.getTargetDataEntity();//当前数据包
DynamicObjectCollection expenseReversalCollection = targetDataEntity.getDynamicObjectCollection("zcgj_expensereversal");//冲销支出结算分录
List<Long> ids = new ArrayList<>();
for (DynamicObject expenseReversa : expenseReversalCollection) {
long zcgj_expensereversaid = expenseReversa.getLong("zcgj_expensereversaid");
ids.add(zcgj_expensereversaid);
}
QFilter filter = new QFilter("id", QCP.not_in, ids);
DynamicObject zcgj_contract = targetDataEntity.getDynamicObject("zcgj_contract");//合同名称
DynamicObject project = zcgj_contract.getDynamicObject("project");
filter = filter.and(new QFilter("project", QCP.equals, project.getPkValue()));
e.setPlugFilter(filter);
}
}