支出财务确认增加工序必填判断

This commit is contained in:
哈哈哈丿 2025-07-04 10:56:16 +08:00
parent 4bf9c004ea
commit 4f1de702dd
1 changed files with 24 additions and 0 deletions

View File

@ -2,17 +2,22 @@ package zcgj.zcdev.zcdev.pr.plugin.operate;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.dataentity.utils.StringUtils;
import kd.bos.entity.ExtendedDataEntity;
import kd.bos.entity.plugin.AbstractOperationServicePlugIn;
import kd.bos.entity.plugin.AddValidatorsEventArgs;
import kd.bos.entity.plugin.PreparePropertysEventArgs;
import kd.bos.entity.validate.AbstractValidator;
import kd.bos.form.control.AbstractGrid;
public class OutContractFinaceConfirmeCkOp extends AbstractOperationServicePlugIn {
public void onPreparePropertys(PreparePropertysEventArgs e) {
super.onPreparePropertys(e);
e.getFieldKeys().add("zcgj_entryentity");
e.getFieldKeys().add("zcgj_expenseitementry");
e.getFieldKeys().add("zcgj_expenseitementry.zcgj_cbs");
}
@Override
@ -27,11 +32,30 @@ public class OutContractFinaceConfirmeCkOp extends AbstractOperationServicePlugI
ExtendedDataEntity[] extendedDataEntities = this.getDataEntities();
for (ExtendedDataEntity extendedDataEntity : extendedDataEntities) {
DynamicObject dataEntity = extendedDataEntity.getDataEntity();
DynamicObjectCollection expenseitementry = dataEntity.getDynamicObjectCollection("zcgj_expenseitementry");//发票信息
if(expenseitementry == null || expenseitementry.isEmpty()){
this.addFatalErrorMessage(extendedDataEntity, "费用项目分录不能为空!");
}else{
int i=0;
for (DynamicObject dynamicObject : expenseitementry) {
i++;
DynamicObject zcgjAccounttype = dynamicObject.getDynamicObject("zcgj_accounttype");
String number = zcgjAccounttype.getString("number");
DynamicObject cbs = dynamicObject.getDynamicObject("zcgj_cbs");
if(StringUtils.equals(number, "FL001") && cbs == null){ //生成成本时工序必录
this.addFatalErrorMessage(extendedDataEntity, String.format("费用项目分录,第%d行工序不能为空",i));
}
}
}
DynamicObjectCollection entryentity = dataEntity.getDynamicObjectCollection("zcgj_entryentity");//发票信息
if(entryentity == null || entryentity.isEmpty()){
this.addFatalErrorMessage(extendedDataEntity, "请上传合同进项发票!");
}
}
}
}
}