目标成本评审审核操作插件,系统二开,去除审核通过后反写工序成本清单是否启用逻辑/工序成本预算单审核通过后“是否启用”赋值逻辑
This commit is contained in:
parent
fb120d58c8
commit
f60593547b
|
@ -0,0 +1,60 @@
|
|||
package zcgj.zcdev.zcdev.pr.plugin.operate;
|
||||
|
||||
import kd.bos.dataentity.entity.DynamicObject;
|
||||
import kd.bos.entity.operate.result.OperationResult;
|
||||
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
|
||||
import kd.bos.entity.plugin.args.AfterOperationArgs;
|
||||
import kd.bos.orm.query.QFilter;
|
||||
import kd.bos.servicehelper.BusinessDataServiceHelper;
|
||||
import kd.bos.servicehelper.operation.SaveServiceHelper;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
//工序成本预算单审核通过后“是否启用”赋值
|
||||
public class AimCostBillAuditOp extends AbstractOperationServicePlugIn {
|
||||
public void afterExecuteOperationTransaction(AfterOperationArgs e) {
|
||||
super.afterExecuteOperationTransaction(e);
|
||||
String operationKey = e.getOperationKey();//操作标识
|
||||
DynamicObject[] dataEntities = e.getDataEntities();
|
||||
List<DynamicObject> modifiedEntities = new ArrayList<>();
|
||||
for (DynamicObject model : dataEntities) {
|
||||
long id = model.getLong("id");
|
||||
QFilter f1 = new QFilter("id", "=", id);
|
||||
DynamicObject dataEntity = BusinessDataServiceHelper.loadSingle("ecco_aimcostbillcbs", new QFilter[]{f1});//工序成本预算单
|
||||
if (dataEntity == null) {
|
||||
continue;
|
||||
}
|
||||
if (dataEntity.getString("billstatus").equals("C") && operationKey.equals("audit")) {
|
||||
//单据状态为已审核且操作标识为审核
|
||||
dataEntity.set("isenable", true);//是否启用
|
||||
BigDecimal versionno;
|
||||
String zcgj_periodyear = dataEntity.getString("zcgj_periodyear");//年份
|
||||
DynamicObject project = dataEntity.getDynamicObject("project");//项目
|
||||
versionno = dataEntity.getBigDecimal("versionno");//版本号
|
||||
if (versionno != null && versionno.compareTo(BigDecimal.ONE) > 0) {
|
||||
versionno = versionno.subtract(BigDecimal.ONE);//版本号减1
|
||||
}
|
||||
QFilter filter = new QFilter("zcgj_periodyear", "=", zcgj_periodyear);
|
||||
filter.and(new QFilter("project", "=", project.getPkValue()));
|
||||
filter.and(new QFilter("versionno", "=", versionno));
|
||||
DynamicObject ecco_aimcostbillcbs = BusinessDataServiceHelper.loadSingle("ecco_aimcostbillcbs", new QFilter[]{filter});
|
||||
if (ecco_aimcostbillcbs != null) {
|
||||
ecco_aimcostbillcbs.set("isenable", false);//是否启用
|
||||
modifiedEntities.add(ecco_aimcostbillcbs);
|
||||
}
|
||||
} else {
|
||||
dataEntity.set("isenable", false);//是否启用
|
||||
}
|
||||
modifiedEntities.add(dataEntity);
|
||||
}
|
||||
if (!modifiedEntities.isEmpty()) {
|
||||
try {
|
||||
SaveServiceHelper.save(modifiedEntities.toArray(new DynamicObject[0]));
|
||||
} catch (Exception ex) {
|
||||
throw new RuntimeException(ex);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -29,6 +29,7 @@ import kd.ec.cost.common.enums.CostReviewFromTypeEnum;
|
|||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
|
||||
//目标成本评审审核操作插件,系统二开,去除审核通过后反写工序成本清单是否启用逻辑
|
||||
public class AimCostReviewOpExt extends AbstractOperationServicePlugIn {
|
||||
public AimCostReviewOpExt() {
|
||||
}
|
||||
|
@ -106,7 +107,7 @@ public class AimCostReviewOpExt extends AbstractOperationServicePlugIn {
|
|||
}).collect(Collectors.toSet());
|
||||
QFilter idFilter = new QFilter(AimcostcbsConstant.ID_ENTITY_PK, "in", cbsCostIds);
|
||||
DynamicObject[] cbsCostEntities = BusinessDataServiceHelper.load("ecco_aimcostbillcbs", "project,unitproject,isenable,versionno", new QFilter[]{idFilter});
|
||||
this.invokeCbsCostAudit(cbsCostEntities);
|
||||
// this.invokeCbsCostAudit(cbsCostEntities);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue