提交人:陈绍鑫

日期:2025/01/09 17:30
内容:推送共享优化
This commit is contained in:
陈绍鑫 2026-01-09 16:15:07 +08:00
parent 3a3309cbfd
commit c1d296f06c
2 changed files with 18 additions and 7 deletions

View File

@ -12,6 +12,8 @@ import kd.bos.logging.LogFactory;
import kd.bos.orm.query.QCP; import kd.bos.orm.query.QCP;
import kd.bos.orm.query.QFilter; import kd.bos.orm.query.QFilter;
import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.BusinessDataServiceHelper;
import kd.bos.servicehelper.operation.SaveServiceHelper;
import shkd.sys.sys.mservice.ApiService;
import java.text.ParseException; import java.text.ParseException;
@ -52,14 +54,14 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细 if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细
dzhdqFilter = new QFilter("bankdetailno", QCP.not_equals, null); dzhdqFilter = new QFilter("bankdetailno", QCP.not_equals, null);
dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false));
dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单 } else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单
dzhdqFilter = new QFilter("ismatch", QCP.equals, true); dzhdqFilter = new QFilter("ismatch", QCP.equals, true);
dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false));
dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额 } else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额
dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false);
dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("cas_paybill")) {//付款处理 } else if (sourcebillnumber.equals("cas_paybill")) {//付款处理
dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false);
dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true));
@ -95,7 +97,6 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
} }
DynamicObjectCollection shkd_mapping = shkd_apimapping.getDynamicObjectCollection("shkd_mapping"); DynamicObjectCollection shkd_mapping = shkd_apimapping.getDynamicObjectCollection("shkd_mapping");
for (DynamicObject bei_elecreceiptid : bei_elecreceiptids) { for (DynamicObject bei_elecreceiptid : bei_elecreceiptids) {
DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), sourcebillnumber); DynamicObject bei_elecreceipt = BusinessDataServiceHelper.loadSingle(bei_elecreceiptid.getLong("id"), sourcebillnumber);
String saveRequestBody = getJSON(bei_elecreceipt, shkd_mapping, sourcebillnumber);//请求json String saveRequestBody = getJSON(bei_elecreceipt, shkd_mapping, sourcebillnumber);//请求json
@ -250,6 +251,13 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn {
// 单据类型 // 单据类型
// 单据编码 // 单据编码
logger.info("resultMap:" + resultMap);
if (!tiaoguo) {
ApiService.saveThePushLog(resultMap);
}
bei_elecreceipt.set("shkd_tsgxrtime", new Date());//推送共享时间
SaveServiceHelper.update(bei_elecreceipt);
} }
this.getView().showTipNotification("功能成功"); this.getView().showTipNotification("功能成功");
} }

View File

@ -49,21 +49,24 @@ public class SharePushTaskPlugin extends AbstractTask {
DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill"); DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill");
sourcebillnumber = shkd_sourcebill.getString("number"); sourcebillnumber = shkd_sourcebill.getString("number");
QFilter dzhdqFilter = null; QFilter dzhdqFilter = null;
//要推送单据的过滤 //要推送单据的默认过滤
if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细 if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细
dzhdqFilter = new QFilter("bankdetailno", QCP.not_equals, null); dzhdqFilter = new QFilter("bankdetailno", QCP.not_equals, null);
dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false));
dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单 } else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单
dzhdqFilter = new QFilter("ismatch", QCP.equals, true); dzhdqFilter = new QFilter("ismatch", QCP.equals, true);
dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false));
dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额 } else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额
dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false);
dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true));
} else if (sourcebillnumber.equals("cas_paybill")) {//付款处理 } else if (sourcebillnumber.equals("cas_paybill")) {//付款处理
dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false);
dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true));
dzhdqFilter = dzhdqFilter.and(new QFilter("paymentidentify.number", QCP.equals, "FKBS01")); dzhdqFilter = dzhdqFilter.and(new QFilter("paymentidentify.number", QCP.equals, "FKBS01"));
dzhdqFilter = dzhdqFilter.and(new QFilter("billstatus", QCP.in,Arrays.asList("B","A"))); dzhdqFilter = dzhdqFilter.and(new QFilter("billstatus", QCP.in, Arrays.asList("B", "A")));
}else { } else {
logger.info("未找到匹配的单据类型"); logger.info("未找到匹配的单据类型");
return; return;
} }