From 57a81b8273b1bd87d16d1d8137143da5db30318f Mon Sep 17 00:00:00 2001 From: csx <1981897232@qq.com> Date: Fri, 16 Jan 2026 10:14:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8F=90=E4=BA=A4=E4=BA=BA=EF=BC=9A=E9=99=88?= =?UTF-8?q?=E7=BB=8D=E9=91=AB=20=E6=97=A5=E6=9C=9F=EF=BC=9A2025/01/09=2017?= =?UTF-8?q?=EF=BC=9A30=20=E5=86=85=E5=AE=B9:=E6=8E=A8=E9=80=81=E5=85=B1?= =?UTF-8?q?=E4=BA=AB=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../plugin/form/tsgxApiMappingBillPlugin.java | 91 +++++++++++++------ .../sys/plugin/task/SharePushTaskPlugin.java | 88 +++++++++++++----- 2 files changed, 128 insertions(+), 51 deletions(-) diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/form/tsgxApiMappingBillPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/form/tsgxApiMappingBillPlugin.java index 51d5104..4c2707b 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/form/tsgxApiMappingBillPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/form/tsgxApiMappingBillPlugin.java @@ -49,24 +49,29 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { String shkd_jrrzxx = shkd_apimapping.getString("shkd_jrrzxx");//记录日志选项 DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill"); sourcebillnumber = shkd_sourcebill.getString("number"); + String shkd_djlxbm = shkd_apimapping.getString("shkd_djlxbm");//接口类型 QFilter dzhdqFilter = null; //要推送单据的默认过滤 - if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细 + if (shkd_djlxbm.equals("交易明细推送")) {//交易明细 dzhdqFilter = new QFilter("company.shkd_sfjcgx", QCP.equals, true); - dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); - } else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单 + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 + } else if (shkd_djlxbm.equals("电子回单推送")) {//电子回单 dzhdqFilter = new QFilter("ismatch", QCP.equals, true); - dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true)); - } else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额 - 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")) {//付款处理 - dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); + } else if (shkd_djlxbm.equals("余额查询推送")) {//账号余额 + dzhdqFilter = new QFilter("company.shkd_sfjcgx", QCP.equals, true); + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 + } else if (shkd_djlxbm.equals("主动付款单推送")) {//付款处理 + dzhdqFilter=new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0"));//浪潮推送状态为空或推送失败 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("billstatus", QCP.in, Arrays.asList("A"))); - } else { + } else if (shkd_djlxbm.equals("付款状态推送")) {//付款处理 + dzhdqFilter=new QFilter("shkd_lctszt", QCP.equals, "1");//浪潮推送状态推送成功 + dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); + dzhdqFilter = dzhdqFilter.and(new QFilter("billstatus", QCP.in, Arrays.asList("D"))); + }else { this.getView().showTipNotification("未找到匹配的单据类型"); return; } @@ -122,21 +127,21 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -153,21 +158,21 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -187,21 +192,21 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -222,21 +227,21 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -272,4 +277,38 @@ public class tsgxApiMappingBillPlugin extends AbstractBillPlugIn { this.getView().showTipNotification("功能成功"); } } + + public void setSuccessValue(DynamicObject bei_elecreceipt,String shkd_djlxbm){ + switch (shkd_djlxbm){ + case "交易明细推送": + case "电子回单推送": + case "余额查询推送": + case "主动付款单推送": + bei_elecreceipt.set("shkd_lctszt","1");//推送成功 + break; + case "付款状态推送": + bei_elecreceipt.set("shkd_lctszt","2");//推送成功已同步付款状态 + break; + default: + break; + + } + } + + public void setFailValue(DynamicObject bei_elecreceipt,String shkd_djlxbm){ + switch (shkd_djlxbm){ + case "交易明细推送": + case "电子回单推送": + case "余额查询推送": + case "主动付款单推送": + bei_elecreceipt.set("shkd_lctszt","0");//推送失败 + break; + case "付款状态推送": + bei_elecreceipt.set("shkd_lctszt","3");//推送成功同步付款状态失败 + break; + default: + break; + + } + } } diff --git a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/task/SharePushTaskPlugin.java b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/task/SharePushTaskPlugin.java index f3b5e4d..557cd07 100644 --- a/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/task/SharePushTaskPlugin.java +++ b/sys/shkd-sys-sys/src/main/java/shkd/sys/sys/plugin/task/SharePushTaskPlugin.java @@ -48,24 +48,29 @@ public class SharePushTaskPlugin extends AbstractTask { DynamicObject shkd_apimapping = BusinessDataServiceHelper.loadSingle(shkd_apimappingid.getLong("id"), "shkd_apimapping"); String shkd_jrrzxx = shkd_apimapping.getString("shkd_jrrzxx");//记录日志选项 DynamicObject shkd_sourcebill = shkd_apimapping.getDynamicObject("shkd_sourcebill"); + String shkd_djlxbm = shkd_apimapping.getString("shkd_djlxbm");//接口类型 sourcebillnumber = shkd_sourcebill.getString("number"); QFilter dzhdqFilter = null; //要推送单据的默认过滤 - if (sourcebillnumber.equals("bei_transdetail_cas")) {//交易明细 + if (shkd_djlxbm.equals("交易明细推送")) {//交易明细 dzhdqFilter = new QFilter("company.shkd_sfjcgx", QCP.equals, true); - dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); - } else if (sourcebillnumber.equals("bei_elecreceipt")) {//电子回单 + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 + } else if (shkd_djlxbm.equals("电子回单推送")) {//电子回单 dzhdqFilter = new QFilter("ismatch", QCP.equals, true); - dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_sfcgtsgx", QCP.equals, false)); + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 dzhdqFilter = dzhdqFilter.and(new QFilter("company.shkd_sfjcgx", QCP.equals, true)); - } else if (sourcebillnumber.equals("bei_bankbalance")) {//账号余额 - 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")) {//付款处理 - dzhdqFilter = new QFilter("shkd_sfcgtsgx", QCP.equals, false); + } else if (shkd_djlxbm.equals("余额查询推送")) {//账号余额 + dzhdqFilter = new QFilter("company.shkd_sfjcgx", QCP.equals, true); + dzhdqFilter = dzhdqFilter.and(new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0")));//浪潮推送状态为空或推送失败 + } else if (shkd_djlxbm.equals("主动付款单推送")) {//付款处理 + dzhdqFilter=new QFilter("shkd_lctszt", QCP.equals, "").or(new QFilter("shkd_lctszt", QCP.equals, "0"));//浪潮推送状态为空或推送失败 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("billstatus", QCP.in, Arrays.asList("A"))); + } else if (shkd_djlxbm.equals("付款状态推送")) {//付款处理 + dzhdqFilter=new QFilter("shkd_lctszt", QCP.equals, "1");//浪潮推送状态推送成功 + dzhdqFilter = dzhdqFilter.and(new QFilter("org.shkd_sfjcgx", QCP.equals, true)); + dzhdqFilter = dzhdqFilter.and(new QFilter("billstatus", QCP.in, Arrays.asList("D"))); } else { logger.info("未找到匹配的单据类型"); return; @@ -122,21 +127,21 @@ public class SharePushTaskPlugin extends AbstractTask { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -153,21 +158,21 @@ public class SharePushTaskPlugin extends AbstractTask { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -187,21 +192,21 @@ public class SharePushTaskPlugin extends AbstractTask { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -222,21 +227,21 @@ public class SharePushTaskPlugin extends AbstractTask { String flag = otherIsJsonRS.getString("flag"); if (resError(flag)) {//失败 resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { JSONArray datas = otherIsJsonRS.getJSONArray("data"); if (datas == null) { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } else { JSONObject data = datas.getJSONObject(0); String dataflag = data.getString("FLAG"); if (resError(dataflag)) { resultMap.put("shkd_issuccess", false);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", false); + setFailValue(bei_elecreceipt,shkd_djlxbm); } else { resultMap.put("shkd_issuccess", true);//是否成功 - bei_elecreceipt.set("shkd_sfcgtsgx", true); + setSuccessValue(bei_elecreceipt,shkd_djlxbm); } } } @@ -271,4 +276,37 @@ public class SharePushTaskPlugin extends AbstractTask { } } + public void setSuccessValue(DynamicObject bei_elecreceipt,String shkd_djlxbm){ + switch (shkd_djlxbm){ + case "交易明细推送": + case "电子回单推送": + case "余额查询推送": + case "主动付款单推送": + bei_elecreceipt.set("shkd_lctszt","1");//推送成功 + break; + case "付款状态推送": + bei_elecreceipt.set("shkd_lctszt","2");//推送成功已同步付款状态 + break; + default: + break; + + } + } + + public void setFailValue(DynamicObject bei_elecreceipt,String shkd_djlxbm){ + switch (shkd_djlxbm){ + case "交易明细推送": + case "电子回单推送": + case "余额查询推送": + case "主动付款单推送": + bei_elecreceipt.set("shkd_lctszt","0");//推送失败 + break; + case "付款状态推送": + bei_elecreceipt.set("shkd_lctszt","3");//推送成功同步付款状态失败 + break; + default: + break; + + } + } }