Browse Source

1、修改泛微对接,删除待办增加补偿机制

wanghaiwu 5 days ago
parent
commit
206132361a

+ 10 - 3
main/java/kd/cosmic/jkjt/msg/ecology/EcologyOpPlugin.java

@@ -45,7 +45,7 @@ public class EcologyOpPlugin extends AbstractOperationServicePlugIn implements P
                 String id = dynamicObjects[i].getPkValue().toString();
                 DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(id, KEY_ENTITY_LOG);
                 Boolean needSend = false;
-                if(dynamicObject.getString("nckd_logtype").matches("1|5")
+                if(dynamicObject.getString("nckd_logtype").matches("1|5|6")
                     && "fail".equals(dynamicObject.getString("nckd_sendstatus"))){
                     needSend = true;
                 }
@@ -56,7 +56,14 @@ public class EcologyOpPlugin extends AbstractOperationServicePlugIn implements P
 
                 JSONObject fanweiBodyData = JSONObject.parseObject(dynamicObject.getString("nckd_senddata_tag"));
 //                FANWEI_URL = dynamicObject.getString("nckd_sendurl");
-                String url = FANWEI_URL + "/rest/ofs/ReceiveRequestInfoByJson";
+                String url = "";
+                String logType = dynamicObject.getString("nckd_logtype");
+                if("1".equals(logType) || "5".equals(logType)){
+                    url = FANWEI_URL + "/rest/ofs/ReceiveRequestInfoByJson";
+                } else if("6".equals(logType)){
+                    url = FANWEI_URL + "/rest/ofs/deleteUserRequestInfoByJson";
+                }
+
                 JSONObject result = doPostByHttpClient(url, fanweiBodyData);
                 if (result == null) {
                     throw new KDException(WFErrorCode.httpRequestWrongResponse(), new Object[]{result != null ? result.toJSONString() : "result is null!"});
@@ -99,7 +106,7 @@ public class EcologyOpPlugin extends AbstractOperationServicePlugIn implements P
             ////将错误信息返回到前端
             e.setCancelMessage(errMsg.toString());
             e.setCancel(true);
-            System.out.println("EcologyOpPlugin 错误信息:" + errMsg.toString());
+            logger.info("EcologyOpPlugin 错误信息:" + errMsg.toString());
         }
     }
 

+ 13 - 1
main/java/kd/cosmic/jkjt/msg/ecology/FanweiCommonUtil.java

@@ -185,18 +185,30 @@ public final class FanweiCommonUtil {
                 fanweiBodyData.put("flowid", flowid);
                 fanweiBodyData.put("userid", personNo);
 
+                String receiverLong = user.getString("name") + "(" + user.getString("number") + ")";;
+                String title = "";
+                String oaId = fanweiBodyData.getString("flowid");
+
+                String uuid = saveLogData(receiverLong, title, oaId, info.getContent(), fanweiBodyData.toString(), "6", FANWEI_URL);
+
+                logger.info("泛微deleteToDo start , body is:" + fanweiBodyData.toJSONString());
+
                 String url = FANWEI_URL + "/rest/ofs/deleteUserRequestInfoByJson";
                 JSONObject result = doPostByHttpClient(url, fanweiBodyData);
                 if (result == null) {
                     throw new KDException(WFErrorCode.httpRequestWrongResponse(), new Object[]{result != null ? result.toJSONString() : "result is null!"});
                 }
 
+                String sendStatus = "fail";
                 //失败
                 if(!"1".equals(result.getString("operResult"))){
                     logger.info("泛微deleteToDo is fail :" + result.getString("message"));
+                } else {
+                    sendStatus = "success";
                 }
+                updateLogData(uuid, result.toJSONString(), sendStatus);
 
-                logger.info("泛微deleteToDo is ok , url is:" + info.getUrl());
+                logger.info("泛微deleteToDo is success , url is:" + info.getUrl());
             } catch (Exception var15) {
                 logger.info(var15.getMessage());
                 String message = ResManager.loadKDString("泛微创建待办失败,原因:%s", "WFErrorCode_10001", "bos-wf-engine", new Object[0]);

+ 9 - 2
main/java/kd/cosmic/jkjt/msg/ecology/RefreshFanWeiMsgStatusTask.java

@@ -34,7 +34,7 @@ public class RefreshFanWeiMsgStatusTask extends AbstractTask {
             return;
         }
 
-        QFilter qFilter = new QFilter("nckd_logtype", QCP.in, new String[]{"1", "5"});
+        QFilter qFilter = new QFilter("nckd_logtype", QCP.in, new String[]{"1", "5", "6"});
         qFilter.and(new QFilter("nckd_sendstatus", QCP.equals, "fail"));
 
         DynamicObject[] dynamicObjects = BusinessDataServiceHelper.load(KEY_ENTITY_LOG, "id", new QFilter[]{qFilter});
@@ -49,7 +49,14 @@ public class RefreshFanWeiMsgStatusTask extends AbstractTask {
 
                 JSONObject fanweiBodyData = JSONObject.parseObject(dynamicObject.getString("nckd_senddata_tag"));
 //                FANWEI_URL = dynamicObject.getString("nckd_sendurl");
-                String url = FANWEI_URL + "/rest/ofs/ReceiveRequestInfoByJson";
+                String url = "";
+                String logType = dynamicObject.getString("nckd_logtype");
+                if("1".equals(logType) || "5".equals(logType)){
+                    url = FANWEI_URL + "/rest/ofs/ReceiveRequestInfoByJson";
+                } else if("6".equals(logType)){
+                    url = FANWEI_URL + "/rest/ofs/deleteUserRequestInfoByJson";
+                }
+
                 JSONObject result = doPostByHttpClient(url, fanweiBodyData);
                 if (result == null) {
                     throw new KDException(WFErrorCode.httpRequestWrongResponse(), new Object[]{result != null ? result.toJSONString() : "result is null!"});