123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package fi.gl.business;
- import kd.bos.dataentity.entity.DynamicObject;
- import kd.bos.entity.ExtendedDataEntity;
- import kd.bos.entity.validate.AbstractValidator;
- import kd.bos.exception.KDBizException;
- import kd.bos.orm.query.QCP;
- import kd.bos.orm.query.QFilter;
- import kd.bos.servicehelper.BusinessDataServiceHelper;
- import java.util.Date;
- /**
- * 凭证操作插件校验器
- * 2024-07-15 wangj
- * 主要功能:校验凭证是否日结
- */
- public class VoucherValidator extends AbstractValidator {
- @Override
- public void validate() {
- String oKey = this.getOperateKey();
- switch (oKey) {
- case "save":
- case "submit":
- case "antipost":
- case "unaudit":
- checkDatas();
- break;
- }
- }
- private void checkDatas() {
- for (ExtendedDataEntity rowDataEntity : this.getDataEntities()) {
- DynamicObject bill = rowDataEntity.getDataEntity();
- DynamicObject org = (DynamicObject) bill.get("org");
- long orgId = org.getLong("id");
- Date bizdate = bill.getDate("bookeddate");
- QFilter qFilter_org = new QFilter("nckd_org", QCP.equals,orgId);
- QFilter qFilter_bizdate = new QFilter("nckd_dailydate",QCP.equals,bizdate);
- DynamicObject[] dailybillCol = BusinessDataServiceHelper.load("nckd_gl_dailybill","id",
- new QFilter[]{qFilter_org,qFilter_bizdate});
- if(dailybillCol!=null && dailybillCol.length>0){
- String errorMessage = "当前组织对应业务日期已日结,无法新增、修改、反审核、反过账凭证";
- throw new KDBizException(errorMessage);
- }
- }
- }
- }
|