Bladeren bron

1.修改Android Apex Drivers网络请求。

Pen Li 7 jaren geleden
bovenliggende
commit
a2187c7fb1

+ 14 - 0
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/ApexDriverApplication.java

@@ -86,6 +86,20 @@ public class ApexDriverApplication extends Application {
         return null;
     }
 
+    public String encryptString(String string) {
+        if (string == null) {
+            return null;
+        }
+        return AESUtil.encrypt(secretKey,string);
+    }
+
+    public String decryptString(String string) {
+        if (string == null) {
+            return null;
+        }
+        return AESUtil.decrypt(secretKey, string);
+    }
+
     public void logout() {
         user = null;
         password = null;

+ 29 - 2
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Detail/DetailActivity.java

@@ -56,9 +56,15 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
 
 
     private final static String IntentOrderIDKey = "orderID";
+    private final static  String IntentOrderStatusKey = "orderStatus";
+    private final static  String IntentOrderType2Key = "orderType2";
+
     private final static  String SaveDataKey = "DetailSaveJSON";
+    private final static  String SaveOrderIDKey = "DetailSaveOrderID";
+    private final static  String SaveOrderStatusKey = "DetailSaveOrderStatus";
+    private final static  String SaveOrderType2Key = "DetailSaveOrderType2";
 
-    public static Intent build(Context context, String orderID) {
+    public static Intent build(Context context, String orderID,int status,String type2) {
 
         if (context == null) {
             return null;
@@ -68,10 +74,17 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
         if (orderID != null) {
             intent.putExtra(IntentOrderIDKey,orderID);
         }
+        if (type2 != null) {
+            intent.putExtra(IntentOrderType2Key,type2);
+        }
+        intent.putExtra(IntentOrderStatusKey,status);
         return intent;
     }
 
     private String mOrderID;
+    private String mOrderType2;
+    private int mOrderStatus;
+
     private Context mCtx = this;
     private DetailActivity self = this;
     private ExpandableListView mListView;
@@ -94,6 +107,9 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
         }
 
         mOrderID = getIntent().getStringExtra(IntentOrderIDKey);
+        mOrderType2 = getIntent().getStringExtra(IntentOrderType2Key);
+        mOrderStatus = getIntent().getIntExtra(IntentOrderStatusKey,0);
+
         mHandler = new DetailHandler(this);
 
         mListView = findViewById(R.id.detail_list_view);
@@ -134,6 +150,10 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
 
             }
 
+            mOrderID = savedInstanceState.getString(SaveOrderIDKey);
+            mOrderType2 = savedInstanceState.getString(SaveOrderType2Key);
+            mOrderStatus = savedInstanceState.getInt(SaveOrderStatusKey);
+
         } else {
             loadData();
         }
@@ -146,6 +166,13 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
         if (mJson != null) {
             outState.putString(SaveDataKey,mJson.toString());
         }
+        if (mOrderID != null) {
+            outState.putString(SaveOrderIDKey,mOrderID);
+        }
+        if (mOrderType2 != null) {
+            outState.putString(SaveOrderType2Key,mOrderType2);
+        }
+        outState.putInt(SaveOrderStatusKey,mOrderStatus);
     }
 
     @Override
@@ -253,7 +280,7 @@ public class DetailActivity extends AppCompatActivity implements DetailAdapter.D
             @Override
             public void run() {
 
-                JSONObject json = com.usai.redant.apexdrivers.Network.Network.requestOrderDetail(mCtx,mOrderID);
+                JSONObject json = com.usai.redant.apexdrivers.Network.Network.requestOrderDetail(mCtx,mOrderID,mOrderStatus,mOrderType2);
 
                 Message msg = new Message();
                 msg.what = DetailHandler.DetailActionReloadData;

+ 2 - 1
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Home/HomeFragment.java

@@ -97,7 +97,7 @@ public class HomeFragment extends Fragment {
                     mSelectedModel.setSelection(true);
                 }
 
-                Intent intent = DetailActivity.build(mCtx,orderModel.orderID);
+                Intent intent = DetailActivity.build(mCtx,orderModel.orderID,orderModel.status,orderModel.order_type2);
                 mCtx.startActivity(intent);
 
                 return false;
@@ -556,6 +556,7 @@ public class HomeFragment extends Fragment {
                     model.containerNo = order.optString("containerNo");
                     model.date = order.optString("date");
                     model.orderID = order.optString("orderID");
+                    model.order_type2 = order.optString("order_type2");
 
                     orderArr.add(model);
                 }

+ 26 - 26
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Home/HomeMoreActivity.java

@@ -228,7 +228,7 @@ public class HomeMoreActivity extends AppCompatActivity implements AbsListView.O
                     mSelectedModel.setSelection(true);
                 }
 
-                Intent intent = DetailActivity.build(mContext,orderModel.orderID);
+                Intent intent = DetailActivity.build(mContext,orderModel.orderID,orderModel.status,orderModel.order_type2);
                 mContext.startActivity(intent);
 
             }
@@ -345,36 +345,36 @@ public class HomeMoreActivity extends AppCompatActivity implements AbsListView.O
 
     private void handleJson(JSONObject json, int option) {
 
-        if (json == null) {
-            return;
-        }
-
-        JSONArray orders = json.optJSONArray("orders");
-        if (orders != null) {
-            if (option != LoadDataOptionLoadMore) {
-                mOrders.clear();
-            }
+        if (json != null) {
+            JSONArray orders = json.optJSONArray("orders");
+            if (orders != null) {
+                if (option != LoadDataOptionLoadMore) {
+                    mOrders.clear();
+                }
 
-            for (int i = 0; i < orders.length(); i++) {
-                JSONObject order = orders.optJSONObject(i);
-                if (order != null) {
-                    HomeOrderModel model = new HomeOrderModel();
-                    model.status = order.optInt("status", 0);
-                    model.title = order.optString("title");
-                    model.orderNo = order.optString("orderNo");
-                    model.containerNo = order.optString("containerNo");
-                    model.date = order.optString("date");
-                    model.orderID = order.optString("orderID");
-
-                    mOrders.add(model);
+                for (int i = 0; i < orders.length(); i++) {
+                    JSONObject order = orders.optJSONObject(i);
+                    if (order != null) {
+                        HomeOrderModel model = new HomeOrderModel();
+                        model.status = order.optInt("status", 0);
+                        model.title = order.optString("title");
+                        model.orderNo = order.optString("orderNo");
+                        model.containerNo = order.optString("containerNo");
+                        model.date = order.optString("date");
+                        model.orderID = order.optString("orderID");
+                        model.order_type2 = order.optString("order_type2");
+
+                        mOrders.add(model);
+                    }
                 }
             }
-
-            Message msg = new Message();
-            msg.what = HomeMoreHandler.HomeActionLoadData;
-            mHandler.sendMessage(msg);
         }
 
+
+
+        Message msg = new Message();
+        msg.what = HomeMoreHandler.HomeActionLoadData;
+        mHandler.sendMessage(msg);
     }
 
     private void loadData(final int option) {

+ 2 - 1
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Home/HomeOrderModel.java

@@ -2,7 +2,7 @@ package com.usai.redant.apexdrivers.Home;
 
 public class HomeOrderModel {
 
-    static final int OrderStatusFinish = 0;
+    static final int OrderStatusFinish = 3;
     static final int OrderStatusProcessing = 1;
     static final int OrderStatusNew = 2;
 
@@ -13,6 +13,7 @@ public class HomeOrderModel {
     String date;
     String orderID;
     boolean selected;
+    String order_type2;
 
     OrderModelDelegate delegate;
 

+ 72 - 8
ApexDrivers/app/src/main/java/com/usai/redant/apexdrivers/Network/Network.java

@@ -7,6 +7,7 @@ import android.os.Bundle;
 import android.util.Log;
 
 
+import com.usai.redant.apexdrivers.ApexDriverApplication;
 import com.usai.redant.apexdrivers.R;
 
 import org.json.JSONException;
@@ -20,8 +21,29 @@ import static java.lang.Thread.sleep;
 
 public class Network extends com.usai.redant.rautils.Utils.Network {
 
-    public static String URL_HOST = "";
-    private static boolean FAKE_DATA = true;
+    private static final String URL_HOST = "http://192.168.0.124:8080";
+    private static final String URL_LOGIN = URL_HOST  + "/j/mobile/login.mo/";
+    private static final String URL_HOME = URL_HOST + "/j/mobile/truckPage.mo/";
+    private static final String URL_MORE_ORDER = URL_HOST + "/j/mobile/morePickupOrders.mo/";
+    private static final String URL_DETAIL = URL_HOST + "/j/mobile/orderDetails.mo/";
+    private static final String URL_UPDATE = URL_HOST + "/j/mobile/actionDetails.mo/";
+
+    private static boolean FAKE_DATA = false;
+
+    private static void prepareParams(Bundle params) {
+        if (params == null) {
+            params = new Bundle();
+        }
+        String user = ApexDriverApplication.sharedApplication().encryptUser();
+        String password = ApexDriverApplication.sharedApplication().encryptPassword();
+
+        if (user != null && user.length() > 0 && password != null && password.length() != 0) {
+            params.putString("name","WMoy059hzweXPSC74plhBA==");
+            params.putString("password","CzADM7u51eNR7ScfQtJw7w==");
+        }
+
+        params.putString("platform","android");
+    }
 
     public static boolean NetworkIsAvailable(Application application) {
         return com.usai.redant.rautils.Utils.Network.isNetworkAvailable(application);
@@ -84,7 +106,36 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
     }
 
     public static int login(String user, String password) {
-        return RESULT_TRUE;
+
+        Bundle params = new Bundle();
+
+        user = ApexDriverApplication.sharedApplication().encryptString(user);
+        password = ApexDriverApplication.sharedApplication().encryptString(password);
+
+        if (user != null) {
+            params.putString("name","WMoy059hzweXPSC74plhBA=="); // "WMoy059hzweXPSC74plhBA=="
+        }
+        if (password != null) {
+            params.putString("password","CzADM7u51eNR7ScfQtJw7w=="); // "CzADM7u51eNR7ScfQtJw7w=="
+        }
+
+        prepareParams(params);
+
+        String jsonStr = getJson(URL_LOGIN,params);
+        if (jsonStr == null || jsonStr.isEmpty()) {
+            return RESULT_NET_ERROR;
+        }
+
+        try {
+            JSONObject json = new JSONObject(jsonStr);
+            int result = json.getInt("result");
+
+            return result;
+
+        } catch (JSONException e) {
+            e.printStackTrace();
+            return RESULT_ERROR;
+        }
     }
 
     public static JSONObject requestOrderList(Context context) {
@@ -99,7 +150,9 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
         }
 
         Bundle params = new Bundle();
-        String jsonStr = getJson(URL_HOST,params);
+
+        prepareParams(params);
+        String jsonStr = getJson(URL_HOME,params);
         if (jsonStr == null || jsonStr.isEmpty()) {
             return null;
         }
@@ -125,7 +178,12 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
         }
 
         Bundle params = new Bundle();
-        String jsonStr = getJson(URL_HOST,params);
+        params.putInt("type",orderType);
+        params.putInt("offset",offset);
+        params.putInt("limit",limit);
+
+        prepareParams(params);
+        String jsonStr = getJson(URL_MORE_ORDER,params);
         if (jsonStr == null || jsonStr.isEmpty()) {
             return null;
         }
@@ -140,7 +198,7 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
 
     }
 
-    public static JSONObject requestOrderDetail(Context context,String orderID) {
+    public static JSONObject requestOrderDetail(Context context,String orderID,int status,String type2) {
 
         if (FAKE_DATA) {
             try {
@@ -157,8 +215,13 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
 
         Bundle params = new Bundle();
         params.putString("orderID",orderID);
+        if (type2 != null) {
+            params.putString("orderType2",type2);
+        }
+        params.putInt("orderType",status);
 
-        String jsonStr = getJson(URL_HOST,params);
+        prepareParams(params);
+        String jsonStr = getJson(URL_DETAIL,params);
         if (jsonStr == null || jsonStr.isEmpty()) {
             return null;
         }
@@ -190,7 +253,8 @@ public class Network extends com.usai.redant.rautils.Utils.Network {
         Bundle params = new Bundle();
         params.putString("orderID",orderID);
 
-        String jsonStr = getJson(URL_HOST,params);
+        prepareParams(params);
+        String jsonStr = getJson(URL_UPDATE,params);
         if (jsonStr == null || jsonStr.isEmpty()) {
             return null;
         }