package tqq9.lc123.cloud.app.api.plugin; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import kd.bos.openapi.api.plugin.ApiSavePlugin; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 单据操作插件 */ public class CostAdjustSavePlugin implements ApiSavePlugin { private final static Log logger = LogFactory.getLog(CostAdjustSavePlugin.class); @Override public List> preHandleRequestData(List> reqData) { for (Map reqDatum : reqData) { List> entryentity = (List>) reqDatum.get("entryentity"); for (Map entryMap : entryentity) { HashMap material = (HashMap)entryMap.get("material"); String number = material.get("number").toString(); DynamicObject bd_material = BusinessDataServiceHelper.loadSingle("bd_material", new QFilter[]{new QFilter("number", QCP.equals, number)}); String baseunit_number = bd_material.getString("baseunit.number"); HashMap baseunit = new HashMap<>(); baseunit.put("number", baseunit_number); entryMap.put("baseunit",baseunit); } reqDatum.put("entryentity", entryentity); } return ApiSavePlugin.super.preHandleRequestData(reqData); } }