浏览代码

重推兼容

malk 2 周之前
父节点
当前提交
3a2c66169c

+ 2 - 1
mjava-ts/src/main/java/com/malk/taisen/service/impl/NonPoServerImpl.java

@@ -372,7 +372,8 @@ public class NonPoServerImpl implements NonPoServer {
                         cn.hutool.json.JSONObject postJsonObject = jsonArray.getJSONObject(0);
                         String E_SYSMSGTYPE = postJsonObject.getStr("E_SYSMSGTYPE");//状态
                         String E_MESSAGE = postJsonObject.getStr("E_MESSAGE");//SAP005 接口 反馈值
-                        if (E_SYSMSGTYPE.equals("S")) {
+                        // prd 重复推送标记成功
+                        if (E_SYSMSGTYPE.equals("S") || "post operation had already been done, repeat is not allowed".equals(E_MESSAGE)) {
                             String e_belnr = postJsonObject.getStr("E_BELNR");
                             if (e_belnr.contains(";")) {
                                 String[] split = e_belnr.split(";");

+ 4 - 2
mjava-ts/src/main/java/com/malk/taisen/service/impl/RtrServerImpl.java

@@ -168,7 +168,8 @@ public class RtrServerImpl implements RtrServer {
                     cn.hutool.json.JSONObject postJsonObject = jsonArray.getJSONObject(0);
                     String  E_SYSMSGTYPE   =  postJsonObject.getStr("E_SYSMSGTYPE");//状态
                     String E_MESSAGE = postJsonObject.getStr("E_MESSAGE");//SAP005 接口 反馈值
-                    if ( E_SYSMSGTYPE.equals("S")) {
+                    // prd 重复推送标记成功
+                    if (E_SYSMSGTYPE.equals("S") || "post operation had already been done, repeat is not allowed".equals(E_MESSAGE)) {
                         String e_belnr = postJsonObject.getStr("E_BELNR");
                         String E_GJAHR = postJsonObject.getStr("E_GJAHR");//凭证年度
                         //   执行完加入,把更改表单凭证数据
@@ -259,7 +260,8 @@ public class RtrServerImpl implements RtrServer {
             row.put("ZUPDNR", referCode);
             try {
                 Map result = this._pushSap(detail, body, row);
-                if ("S".equals(result.get("E_SYSMSGTYPE"))) {
+                // prd 重复推送标记成功
+                if ("S".equals(result.get("E_SYSMSGTYPE")) || "post operation had already been done, repeat is not allowed".equals(result.get("E_MESSAGE"))) {
                     detail.put("selectField_mjihy3si", "成功");
                     detail.put("textField_mejezfwk", result.get("E_BELNR"));
                     detail.put("textField_l9nsavm2", result.get("E_GJAHR"));