反写SAP

This commit is contained in:
李贵强 2025-08-29 08:49:37 +08:00
parent e5a8003150
commit 336efdb5ec
2 changed files with 32 additions and 24 deletions

View File

@ -46,18 +46,21 @@ public class BeiIntelpayBillTask extends AbstractTask implements Plugin {
// 用于批量保存 // 用于批量保存
List<DynamicObject> toSaveList = new ArrayList<>(); List<DynamicObject> toSaveList = new ArrayList<>();
for (DynamicObject beiIntelPay : beiIntelPays) { for (DynamicObject beiIntelPay : beiIntelPays) {
String number = beiIntelPay.getString("recedbillentry.e_recedbillnumber"); DynamicObjectCollection entry = beiIntelPay.getDynamicObjectCollection("recedbillentry");
if (number!=null && !"".equals(number)){ if (entry.size()!=0){
String billType = beiIntelPay.getString("recedbillentry.e_recedbilltype"); String number = entry.get(0).getString("e_recedbillnumber");
// 下查关联单据 if (number!=null && !"".equals(number)){
DynamicObject relevancyBill = BusinessDataServiceHelper.loadSingle(billType, new QFilter[]{new QFilter("billno", QCP.equals, number)}); String billType = entry.get(0).getString("e_recedbilltype");
if (relevancyBill != null) { // 下查关联单据
// 尝试从不同类型的关联单据中获取凭证号 DynamicObject relevancyBill = BusinessDataServiceHelper.loadSingle(billType, new QFilter[]{new QFilter("billno", QCP.equals, number)});
String credentialNum = findCredentialNum(relevancyBill, billType); if (relevancyBill != null) {
logger.info(beiIntelPay.getString("billno")+"查询到 " + number + "关联到SAP号:"+credentialNum); // 尝试从不同类型的关联单据中获取凭证号
if (StringUtils.isNotEmpty(credentialNum)) { String credentialNum = findCredentialNum(relevancyBill, billType);
beiIntelPay.set("shjh_credentialnums", credentialNum); logger.info(beiIntelPay.getString("billno")+"查询到 " + number + "关联到SAP号:"+credentialNum);
toSaveList.add(beiIntelPay); if (StringUtils.isNotEmpty(credentialNum)) {
beiIntelPay.set("shjh_credentialnums", credentialNum);
toSaveList.add(beiIntelPay);
}
} }
} }
} }

View File

@ -2,6 +2,7 @@ package shjh.jhzj7.fi.fi.plugin.task;
import kd.bos.context.RequestContext; import kd.bos.context.RequestContext;
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.dataentity.entity.DynamicObject;
import kd.bos.dataentity.entity.DynamicObjectCollection;
import kd.bos.exception.KDException; import kd.bos.exception.KDException;
import kd.bos.logging.Log; import kd.bos.logging.Log;
import kd.bos.logging.LogFactory; import kd.bos.logging.LogFactory;
@ -45,21 +46,25 @@ public class BeiIntelrecBillTask extends AbstractTask implements Plugin {
// 用于批量保存 // 用于批量保存
List<DynamicObject> toSaveList = new ArrayList<>(); List<DynamicObject> toSaveList = new ArrayList<>();
for (DynamicObject beiIntelRec : beiIntelRecs) { for (DynamicObject beiIntelRec : beiIntelRecs) {
String number = beiIntelRec.getString("recedbillentry.e_recedbillnumber"); DynamicObjectCollection entry = beiIntelRec.getDynamicObjectCollection("recedbillentry");
if (number!=null && !"".equals(number)){ if (entry.size()!=0){
String billType = beiIntelRec.getString("recedbillentry.e_recedbilltype"); String number = entry.get(0).getString("e_recedbillnumber");
// 下查关联单据 if (number!=null && !"".equals(number)){
DynamicObject relevancyBill = BusinessDataServiceHelper.loadSingle(billType, new QFilter[]{new QFilter("billno", QCP.equals, number)}); String billType = entry.get(0).getString("e_recedbilltype");
if (relevancyBill != null) { // 下查关联单据
// 尝试从不同类型的关联单据中获取凭证号 DynamicObject relevancyBill = BusinessDataServiceHelper.loadSingle(billType, new QFilter[]{new QFilter("billno", QCP.equals, number)});
String credentialNum = findCredentialNum(relevancyBill, billType); if (relevancyBill != null) {
logger.info(beiIntelRec.getString("billno")+"查询到 " + number + "关联到SAP号:"+credentialNum); // 尝试从不同类型的关联单据中获取凭证号
if (StringUtils.isNotEmpty(credentialNum)) { String credentialNum = findCredentialNum(relevancyBill, billType);
beiIntelRec.set("shjh_credentialnums", credentialNum); logger.info(beiIntelRec.getString("billno")+"查询到 " + number + "关联到SAP号:"+credentialNum);
toSaveList.add(beiIntelRec); if (StringUtils.isNotEmpty(credentialNum)) {
beiIntelRec.set("shjh_credentialnums", credentialNum);
toSaveList.add(beiIntelRec);
}
} }
} }
} }
} }
// 批量保存 // 批量保存
if (!toSaveList.isEmpty()) { if (!toSaveList.isEmpty()) {