税额校验

This commit is contained in:
程小伟 2025-04-14 13:38:19 +08:00
parent c85a07cf45
commit 3f1eaa90c1
1 changed files with 38 additions and 0 deletions
code/zcdev/zcgj-zcdev-zcdev-pr/src/main/java/zcgj/zcdev/zcdev/pr/plugin/form

View File

@ -0,0 +1,38 @@
package zcgj.zcdev.zcdev.pr.plugin.form;
import kd.bos.bill.AbstractBillPlugIn;
import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.entity.datamodel.events.ChangeData;
import kd.bos.entity.datamodel.events.PropertyChangedArgs;
import kd.sdk.plugin.Plugin;
import java.math.BigDecimal;
public class TotaltaxValidationBillPlugin extends AbstractBillPlugIn implements Plugin {
@Override
public void propertyChanged(PropertyChangedArgs e) {
super.propertyChanged(e);
String name = e.getProperty().getName();
if (name.equals("totaltax")) {
ChangeData changeData = e.getChangeSet()[0];
BigDecimal newTotaltax = (BigDecimal) changeData.getNewValue();
//获取单据体当前税额值进行累加
BigDecimal totaltax1 = new BigDecimal(0);
DynamicObjectCollection listmodelentry = this.getModel().getEntryEntity("listmodelentry");
for (DynamicObject dy : listmodelentry) {
DynamicObjectCollection dyEntrys = dy.getDynamicObjectCollection("listentry");
for (DynamicObject dyEntry : dyEntrys) {
BigDecimal thistax = dyEntry.getBigDecimal("thistax");
totaltax1 = totaltax1.add(thistax);
}
}
//如果不相等将算出来的值赋给tataltax
if (!totaltax1.equals(newTotaltax)) {
this.getModel().setValue("totaltax", totaltax1);
}
}
}
}