From 4a7837c46a5d10755ba1eeb29f833c3eaa8a703e Mon Sep 17 00:00:00 2001
From: 吴学文 <wuxuewen@wuxuewendeMacBook-Pro.local>
Date: 星期三, 20 三月 2019 00:02:06 +0800
Subject: [PATCH] 开发登录界面完成,登录逻辑 后期完善

---
 java110-core/src/main/java/com/java110/core/factory/DataTransactionFactory.java |   72 +++++++++++++++++++++++++++++++++---
 1 files changed, 66 insertions(+), 6 deletions(-)

diff --git a/java110-core/src/main/java/com/java110/core/factory/DataTransactionFactory.java b/java110-core/src/main/java/com/java110/core/factory/DataTransactionFactory.java
index 01c28ba..1c72cb3 100644
--- a/java110-core/src/main/java/com/java110/core/factory/DataTransactionFactory.java
+++ b/java110-core/src/main/java/com/java110/core/factory/DataTransactionFactory.java
@@ -1,19 +1,17 @@
 package com.java110.core.factory;
 
-import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.JSONPath;
 import com.java110.common.constant.MappingConstant;
 import com.java110.common.constant.OrderTypeCdConstant;
 import com.java110.common.constant.ResponseConstant;
 import com.java110.common.constant.StatusConstant;
-import com.java110.common.util.Assert;
 import com.java110.common.util.DateUtil;
-import com.java110.common.util.SequenceUtil;
 import com.java110.common.util.StringUtil;
 import com.java110.core.context.DataFlow;
 import com.java110.core.context.DataFlowContext;
-import com.java110.entity.service.PageData;
+import com.java110.core.context.PageData;
 
 import java.util.Date;
 import java.util.Map;
@@ -49,6 +47,54 @@
             responseInfo.put("business",business);
         }
         return responseInfo;
+    }
+
+    /**
+     * 涓氬姟鏄惁閮芥垚鍔熶簡
+     * @param response true 鎴愬姛 false 澶辫触
+     * @return
+     */
+    public static boolean isSuccessBusiness(JSONObject response){
+        Object obj = JSONPath.eval(response,"$.orders.response.code");
+
+        if(obj != null && obj instanceof String && ResponseConstant.RESULT_CODE_SUCCESS.equals(obj.toString())){
+            Object businessObj = JSONPath.eval(response,"$.business");
+            if(businessObj == null){
+                return true;
+            }
+
+            if(businessObj instanceof JSONObject){
+                JSONObject businessJson = (JSONObject) businessObj;
+                if(!businessJson.containsKey("response")){ //杩欓噷杩斿洖鍗忚閿欒锛屾垜浠涓烘槸鎴愬姛
+                    return true;
+                }
+                if(businessJson.getJSONObject("response").containsKey("code")
+                        && ResponseConstant.RESULT_CODE_SUCCESS.equals(businessJson.getJSONObject("response").getString("code"))){
+                    return true;
+                }
+            }
+
+            if(businessObj instanceof JSONArray){
+                JSONArray businessJsons = (JSONArray) businessObj;
+                if(businessJsons == null || businessJsons.size() == 0){
+                    return true;
+                }
+                JSONObject businessJson = null;
+                for (int businessIndex = 0;businessIndex < businessJsons.size();businessIndex++) {
+                    businessJson = businessJsons.getJSONObject(businessIndex);
+                    if (!businessJson.containsKey("response")) { //杩欓噷杩斿洖鍗忚閿欒锛屾垜浠涓烘槸鎴愬姛
+                        continue;
+                    }
+                    if (businessJson.getJSONObject("response").containsKey("code")
+                            && !ResponseConstant.RESULT_CODE_SUCCESS.equals(businessJson.getJSONObject("response").getString("code"))) {
+                        return false;
+                    }
+                }
+                return true;
+            }
+        }
+
+        return false;
     }
 
     /**
@@ -221,7 +267,7 @@
 
 
     /**
-     * 鍒涘缓璇锋眰 center 鎶ユ枃 鍒嗚鎴怞SON
+     * 鍒涘缓璇锋眰 order 鎶ユ枃 鍒嗚鎴怞SON
      * @param appId
      * @return
      */
@@ -230,7 +276,7 @@
         JSONObject paramIn = JSONObject.parseObject("{\"orders\":{},\"business\":[]}");
         JSONObject orders = paramIn.getJSONObject("orders");
         orders.put("appId",appId);
-        orders.put("transactionId", SequenceUtil.getTransactionId());
+        orders.put("transactionId", GenerateCodeFactory.getTransactionId());
         orders.put("userId",userId);
         orders.put("orderTypeCd",orderTypeCd);
         orders.put("requestTime",DateUtil.getNowDefault());
@@ -381,4 +427,18 @@
         return paramOut;
     }
 
+    /**
+     * ID鐢熸垚璇锋眰鎶ユ枃
+     * @param transactionId
+     * @return
+     */
+    public static JSONObject createCodeRequestJson(String transactionId, String prefix,String name){
+        JSONObject paramOut = JSONObject.parseObject("{}");
+        paramOut.put("transactionId",transactionId);
+        paramOut.put("prefix",prefix);
+        paramOut.put("name",name);
+        paramOut.put("requestTime",DateUtil.getNowDefault());
+        return paramOut;
+    }
+
 }

--
Gitblit v1.8.0