diff --git a/annotation_lib/build/libs/annotation_lib.jar b/annotation_lib/build/libs/annotation_lib.jar
new file mode 100644
index 0000000..9b3ca90
Binary files /dev/null and b/annotation_lib/build/libs/annotation_lib.jar differ
diff --git a/app/build.gradle b/app/build.gradle
index e7172e8..ea56753 100755
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -19,8 +19,8 @@ android {
         applicationId "com.dayu.bigfish"
         minSdkVersion 16
         targetSdkVersion 23
-        versionCode 4
-        versionName "1.0.3"
+        versionCode 5
+        versionName "1.1.0"
         testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
         multiDexEnabled true
     }
@@ -77,7 +77,8 @@ dependencies {
     })
 
     testCompile 'junit:junit:4.12'
-
+    //mutidex
+    compile 'com.android.support:multidex:1.0.2'
 
     compile 'com.android.support:design:25.0.0'
     //注解工具
@@ -100,6 +101,7 @@ dependencies {
     compile 'com.squareup.retrofit2:converter-gson:2.3.0'
     compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0'
     compile 'com.squareup.okhttp3:logging-interceptor:3.8.0'
+    compile 'com.github.lzyzsd:jsbridge:1.0.4'
 
 
     annotationProcessor project(':apt')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 3075345..4b5b01d 100755
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -68,8 +68,20 @@
                 android:resource="@xml/file_paths"/>
         </provider>
 
+        <!--<provider-->
+        <!--android:name="android.support.v4.content.FileProvider"-->
+        <!--android:authorities="${applicationId}.provider"-->
+        <!--android:exported="false"-->
+        <!--android:grantUriPermissions="true">-->
+        <!--<meta-data-->
+        <!--android:name="android.support.FILE_PROVIDER_PATHS"-->
+        <!--android:resource="@xml/file_paths"/>-->
+        <!--</provider>-->
 
-        <activity android:name=".SplashActivity">
+        <activity
+            android:name=".SplashActivity"
+            android:screenOrientation="portrait"
+            >
             <intent-filter>
                 <action android:name="android.intent.action.MAIN"/>
                 <category android:name="android.intent.category.LAUNCHER"/>
@@ -113,25 +125,71 @@
             </intent-filter>
         </receiver>
 
-        <activity android:name=".ui.LoginActivity"/>
+        <activity
+            android:name=".ui.LoginActivity"
+            android:screenOrientation="portrait"
+            />
         <activity
             android:name=".ui.ReceivingActivity"
             android:theme="@style/Transparent"
             />
-        <activity android:name=".ui.SettingActivity"/>
-        <activity android:name=".ui.SubcribeTimeActivity"/>
-        <activity android:name=".ui.OrderDetailsActivity"/>
-        <activity android:name=".ui.ProcessOrderActivity"/>
-        <activity android:name=".ui.PreviewActivty"/>
-        <activity android:name=".ui.AboutUs"/>
-        <activity android:name=".ui.FeedBackActivity"/>
-        <activity android:name=".ui.WorksRecordActivity"/>
-        <activity android:name=".ui.AccountBalanceActivity"/>
-        <activity android:name=".ui.WithdrawalsActivity"/>
-        <activity android:name=".ui.AgreementActivity"/>
-        <activity android:name=".ui.MainActivity"/>
-        <activity android:name=".ui.SystemMesDetailActivity"/>
-        <activity android:name=".ui.SopWebViewActivity"/>
+        <activity
+            android:name=".ui.SettingActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.SubcribeTimeActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.OrderDetailsActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.ProcessOrderActivity"
+            android:screenOrientation="portrait"
+            android:launchMode="singleTask"
+            />
+        <activity
+            android:name=".ui.PreviewActivty"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.AboutUs"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.FeedBackActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.OrderRecordActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.AccountBalanceActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.WithdrawalsActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.AgreementActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.MainActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.SystemMesDetailActivity"
+            android:screenOrientation="portrait"
+            />
+        <activity
+            android:name=".ui.SopWebViewActivity"
+            android:screenOrientation="portrait"
+            />
 
         <service android:name=".api.DownloadService"/>
 
diff --git a/app/src/main/java/com/dayu/bigfish/Constants.java b/app/src/main/java/com/dayu/bigfish/Constants.java
index bc8d6ee..d5c922a 100755
--- a/app/src/main/java/com/dayu/bigfish/Constants.java
+++ b/app/src/main/java/com/dayu/bigfish/Constants.java
@@ -23,10 +23,13 @@ public class Constants {
     public static final int DEBUGLEVEL = LogUtils.LEVEL_ALL;
     public static final String BASE_URL = "http://47.94.101.239:3112";
     public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply";
+    public final static String WEB_SOP = "http://192.168.1.117:8080/#/sop";
+
     /**************************正式环境*******************************/
 //    public static final int DEBUGLEVEL = LogUtils.LEVEL_OFF;
 //    public static final String BASE_URL = "https://mobile.dayu.ai";
 //    public final static String UP_PHOTO = "/file/uploadMore?targetPath=online/sp/mobile/android/business/checkApply";
+//    public final static String WEB_SOP = "http://192.168.1.117:8080/#/sop";
     /*****************/
     public static final String LOGIN_URL = "/check";
     //登录时发送验证码的URL
@@ -71,11 +74,11 @@ public class Constants {
     public final static String UPGRADE_VERSION = "/api-base/" + "appVersion/versionInfo";
     public final static String COMMIT_VERSION_INFO = "/api-base/" + "versionUpgrade";
     //分页获取工单
-    public final static String ORDERS =  "/api-order/" + "orders/findSimpleOrderVOByPage";
+    public final static String ORDERS = "/api-order/" + "orders/findSimpleOrderVOByPage";
     //获取首页tab状态的数量
-    public final static String TAB_NUM ="/api-order/" + "orders/{userId}/count";
+    public final static String TAB_NUM = "/api-order/" + "orders/{userId}/count";
     //环信
-    public final static String MESSAGE_HX =  "/api-message/" + "hXMessage";
+    public final static String MESSAGE_HX = "/api-message/" + "hXMessage";
     //获取支付宝信息
 
 
@@ -94,6 +97,7 @@ public class Constants {
     public final static String ACCOUNT_ID = "accountId";
     public final static String ORDER_ID = "orderId";
     public final static String TOKEN = "token";
+    public final static String ORDER_POSTION = "order_position";
     //是否显示去设置alipay账户de对话框
     public final static String IS_SHOW_ALIPAY_DILAOG = "is_show_alipay_dialog";
     //上个版本号
@@ -109,5 +113,26 @@ public class Constants {
     public final static int CANCLE_ORDER = 6;
     public final static int FINISH_ORDER = 5;
 
-
+    public enum orderState {
+        /**
+         * 待接单状态.
+         */
+        WATING_ORDER,
+        /**
+         * 待预约.
+         */
+        APPOIMENT_ORDER,
+        /**
+         * 待服务.
+         */
+        WATING_SERVER,
+        /**
+         * 已取消.
+         */
+        CANCLE_ORDER,
+        /**
+         * 订单完成.
+         */
+        FINISH_ORDER
+    }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/MyApplication.java b/app/src/main/java/com/dayu/bigfish/MyApplication.java
index bbc1936..4bd5285 100755
--- a/app/src/main/java/com/dayu/bigfish/MyApplication.java
+++ b/app/src/main/java/com/dayu/bigfish/MyApplication.java
@@ -1,15 +1,14 @@
 package com.dayu.bigfish;
 
 import android.app.ActivityManager;
-import android.app.Application;
 import android.content.Context;
 import android.content.IntentFilter;
 import android.net.ConnectivityManager;
 import android.net.wifi.WifiManager;
 import android.os.Handler;
+import android.support.multidex.MultiDex;
+import android.support.multidex.MultiDexApplication;
 
-import com.amap.api.location.AMapLocationClient;
-import com.amap.api.location.AMapLocationListener;
 import com.dayu.bigfish.greendao.GreenDaoManager;
 import com.dayu.bigfish.utils.LocationUtils;
 import com.dayu.bigfish.utils.NetworkConnectChangedReceiver;
@@ -25,16 +24,12 @@ import java.util.List;
  * on 2017/8/20.
  */
 
-public class MyApplication extends Application {
+public class MyApplication extends MultiDexApplication {
     private static Context mContext;
     private static Handler mHandler;
     private static int mMainThreadId;
     // 记录环信是否已经初始化
     private boolean isInit = false;
-    //声明AMapLocationClient类对象
-    public AMapLocationClient mLocationClient = null;
-    //声明定位回调监听器
-    public AMapLocationListener mLocationListener;
 
     /**
      * 程序的入口方法
@@ -47,6 +42,7 @@ public class MyApplication extends Application {
         filter.addAction(WifiManager.NETWORK_STATE_CHANGED_ACTION);
         filter.addAction(ConnectivityManager.CONNECTIVITY_ACTION);
         registerReceiver(new NetworkConnectChangedReceiver(), filter);
+        MultiDex.install(this);
         //上下文
         mContext = getApplicationContext();
         // 主线程的Handler
diff --git a/app/src/main/java/com/dayu/bigfish/SplashActivity.java b/app/src/main/java/com/dayu/bigfish/SplashActivity.java
index e0dc919..32b906c 100755
--- a/app/src/main/java/com/dayu/bigfish/SplashActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/SplashActivity.java
@@ -21,18 +21,17 @@ import android.view.WindowManager;
 import android.widget.Toast;
 
 import com.dayu.bigfish.bean.InformBean;
-import com.dayu.bigfish.utils.managers.UserManager;
 import com.dayu.bigfish.bean.event.RefreReceiveData;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.ui.LoginActivity;
 import com.dayu.bigfish.ui.MainActivity;
 import com.dayu.bigfish.ui.views.CustomDialog;
+import com.dayu.bigfish.utils.managers.UserManager;
 import com.google.gson.Gson;
 import com.hyphenate.EMConnectionListener;
 import com.hyphenate.EMError;
 import com.hyphenate.EMMessageListener;
-import com.hyphenate.chat.EMClient;
 import com.hyphenate.chat.EMMessage;
 import com.hyphenate.util.NetUtils;
 
@@ -59,9 +58,9 @@ public class SplashActivity extends AppCompatActivity {
         setContentView(R.layout.activity_main);
         mActivity = this;
         //注册环信消息监听
-        EMClient.getInstance().chatManager().addMessageListener(msgListener);
+//        EMClient.getInstance().chatManager().addMessageListener(msgListener);
         //注册一个监听连接状态的listener
-        EMClient.getInstance().addConnectionListener(new MyConnectionListener());
+//        EMClient.getInstance().addConnectionListener(new MyConnectionListener());
 
         if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//判断当前系统的SDK版本是否大于23
             if (!(checkSelfPermission(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED)
@@ -94,7 +93,7 @@ public class SplashActivity extends AppCompatActivity {
             //收到消息
             for (EMMessage list : messages) {
                 //异步刷新各Tab状态数量
-                RxBus.getDefault().post(new RefreshTabNum(0));
+                RxBus.getDefault().post(new RefreshTab(0));
                 //打开消息列表界面
                 Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                 intent.putExtra(Constants.DUMP_INDEX, 3);
diff --git a/app/src/main/java/com/dayu/bigfish/api/Api.java b/app/src/main/java/com/dayu/bigfish/api/Api.java
index 4d64715..1a0eb40 100755
--- a/app/src/main/java/com/dayu/bigfish/api/Api.java
+++ b/app/src/main/java/com/dayu/bigfish/api/Api.java
@@ -54,7 +54,7 @@ public class Api {
             TokenInterceptord tokenInterceptord = new TokenInterceptord();
             OkHttpClient okHttpClient = new OkHttpClient.Builder()
                     .addInterceptor(httpLoggingInterceptor)
-//                    .addInterceptor(tokenInterceptord)
+                    .addInterceptor(tokenInterceptord)
                     .connectTimeout(DEFAULT_TIMEOUT, TimeUnit.SECONDS)
                     .build();
 
diff --git a/app/src/main/java/com/dayu/bigfish/api/ServerException.java b/app/src/main/java/com/dayu/bigfish/api/ServerException.java
index 0b0b316..2abc91e 100644
--- a/app/src/main/java/com/dayu/bigfish/api/ServerException.java
+++ b/app/src/main/java/com/dayu/bigfish/api/ServerException.java
@@ -17,7 +17,7 @@ public class ServerException extends Exception {
     private void processCode(int code) {
         switch (code) {
             case 1:
-                message = "访问失败";
+                message = "获取数据失败";
                 break;
             default:
                 break;
diff --git a/app/src/main/java/com/dayu/bigfish/base/BaseActivity.java b/app/src/main/java/com/dayu/bigfish/base/BaseActivity.java
index da4ded9..4cdf53d 100755
--- a/app/src/main/java/com/dayu/bigfish/base/BaseActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/base/BaseActivity.java
@@ -11,6 +11,7 @@ import com.dayu.bigfish.utils.ToastUtils;
 import java.lang.reflect.ParameterizedType;
 
 import butterknife.ButterKnife;
+import io.reactivex.disposables.CompositeDisposable;
 
 /**
  * Created by luofan on 17/11/02.
@@ -18,6 +19,7 @@ import butterknife.ButterKnife;
 public abstract class BaseActivity<P extends BasePresenter> extends AppCompatActivity {
     public P mPresenter;
     protected Activity mActivity;
+    protected CompositeDisposable mDisposable = new CompositeDisposable();
 
     @Override
     public void onCreate(Bundle savedInstanceState) {
@@ -30,11 +32,7 @@ public abstract class BaseActivity<P extends BasePresenter> extends AppCompatAct
                 ((ParameterizedType) (this.getClass().getGenericSuperclass())).getActualTypeArguments().length > 0) {
             Class mPresenterClass = (Class) ((ParameterizedType) (this.getClass()
                     .getGenericSuperclass())).getActualTypeArguments()[0];
-//            if (MemoryCacheManager.get(mPresenterClass.getSimpleName()) != null) {
-//                mPresenter = (P) MemoryCacheManager.get(mPresenterClass.getSimpleName());
-//            } else {
-                mPresenter = InstanceUtil.getInstance(mPresenterClass);
-//                MemoryCacheManager.add(mPresenterClass.getSimpleName(), mPresenter);
+            mPresenter = InstanceUtil.getInstance(mPresenterClass);
 //            }
             if (mPresenter != null) mPresenter.setView(this, mActivity);
         }
@@ -47,12 +45,9 @@ public abstract class BaseActivity<P extends BasePresenter> extends AppCompatAct
         if (mPresenter != null) {
             mPresenter.onDetached();
         }
+        mDisposable.dispose();
     }
 
-    @Override
-    protected void onResume() {
-        super.onResume();
-    }
 
     @Override
     public void setContentView(int layoutResID) {
diff --git a/app/src/main/java/com/dayu/bigfish/base/BaseFragment.java b/app/src/main/java/com/dayu/bigfish/base/BaseFragment.java
index 1e05fdc..b0e5af6 100755
--- a/app/src/main/java/com/dayu/bigfish/base/BaseFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/base/BaseFragment.java
@@ -1,6 +1,8 @@
 package com.dayu.bigfish.base;
 
+import android.app.Activity;
 import android.content.Context;
+import android.os.Build;
 import android.os.Bundle;
 import android.support.annotation.Nullable;
 import android.support.v4.app.Fragment;
@@ -16,25 +18,46 @@ import java.lang.reflect.ParameterizedType;
 
 import butterknife.ButterKnife;
 import butterknife.Unbinder;
+import io.reactivex.disposables.CompositeDisposable;
 
 /**
  * Created by luo on 2017/11/14.
  */
 public abstract class BaseFragment<P extends BasePresenter> extends Fragment {
-    protected Context mContext;
+    protected Activity mActivity;
     public P mPresenter;
     private Unbinder mKnife;
     private boolean isVisible;                  //是否可见状态
     private boolean isPrepared;                 //标志位,View已经初始化完成。
     private boolean isFirstLoad = true;
+    protected CompositeDisposable mDisposable = new CompositeDisposable();
 
+    @Override
+    public void onAttach(Context context) {
+        super.onAttach(context);
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
+            onAttachToContext((Activity) context);
+        }
+    }
+
+    @SuppressWarnings("deprecation")
+    @Override
+    public void onAttach(Activity activity) {
+        super.onAttach(activity);
+        if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
+            onAttachToContext(activity);
+        }
+    }
+
+    private void onAttachToContext(Activity context) {
+        mActivity = context;
+    }
 
     @Override
     public void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         isFirstLoad = true;
         isPrepared = true;
-        mContext = getActivity();
         if (this instanceof BaseView &&
                 this.getClass().getGenericSuperclass() instanceof ParameterizedType &&
                 ((ParameterizedType) (this.getClass().getGenericSuperclass())).getActualTypeArguments().length > 0) {
@@ -59,6 +82,7 @@ public abstract class BaseFragment<P extends BasePresenter> extends Fragment {
         super.onDestroy();
         mKnife.unbind();
         if (mPresenter != null) mPresenter.onDetached();
+        mDisposable.dispose();
     }
 
     public abstract View initView(View view);
@@ -119,7 +143,7 @@ public abstract class BaseFragment<P extends BasePresenter> extends Fragment {
     }
 
     public void showDialog() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
     }
 
     public void hideDialog() {
diff --git a/app/src/main/java/com/dayu/bigfish/base/BaseWebViewActivity.java b/app/src/main/java/com/dayu/bigfish/base/BaseWebViewActivity.java
new file mode 100644
index 0000000..93b0b19
--- /dev/null
+++ b/app/src/main/java/com/dayu/bigfish/base/BaseWebViewActivity.java
@@ -0,0 +1,103 @@
+package com.dayu.bigfish.base;
+
+import android.os.Build;
+import android.os.Bundle;
+import android.support.v7.app.AppCompatActivity;
+import android.view.KeyEvent;
+import android.view.View;
+import android.webkit.WebChromeClient;
+import android.webkit.WebSettings;
+import android.widget.ImageView;
+
+import com.dayu.bigfish.Constants;
+import com.dayu.bigfish.R;
+import com.dayu.bigfish.base.jsbridge.BridgeWebView;
+
+import butterknife.BindView;
+import butterknife.ButterKnife;
+
+/**
+ * Created by luofan on 2017/11/27.
+ */
+
+public abstract class BaseWebViewActivity extends AppCompatActivity {
+    @BindView(R.id.webView)
+    BridgeWebView mWebView;
+    @BindView(R.id.receiving_back)
+    ImageView mBackTitle;
+
+    @Override
+    protected void onCreate(Bundle savedInstanceState) {
+        super.onCreate(savedInstanceState);
+        this.setContentView(R.layout.activity_webview_layout);
+        ButterKnife.bind(this);
+        mBackTitle.setOnClickListener(o -> finish());
+        initWebView();
+        initListener();
+    }
+
+    private void initWebView() {
+        WebSettings settings = mWebView.getSettings();
+        // >= 19(SDK4.4)启动硬件加速,否则启动软件加速
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
+            mWebView.setLayerType(View.LAYER_TYPE_HARDWARE, null);
+            settings.setLoadsImagesAutomatically(true); //支持自动加载图片
+        } else {
+            mWebView.setLayerType(View.LAYER_TYPE_SOFTWARE, null);
+            settings.setLoadsImagesAutomatically(false);
+        }
+
+        settings.setUseWideViewPort(true);//设定支持viewport
+        settings.setLoadWithOverviewMode(true);//自适应屏幕
+        settings.setDomStorageEnabled(true);
+        settings.setSaveFormData(true);
+        //settings.setSupportMultipleWindows(true);
+        settings.setAppCacheEnabled(true);
+        settings.setCacheMode(WebSettings.LOAD_NO_CACHE); //优先使用缓存
+
+        settings.setJavaScriptEnabled(true); //启用支持javascript
+        settings.setJavaScriptCanOpenWindowsAutomatically(true);
+
+        settings.setSupportZoom(true);//设定支持缩放
+        settings.setBuiltInZoomControls(true);  //make sure your pinch zoom is enabled
+        settings.setDisplayZoomControls(false);//don't show the zoom controls
+        //5.0 以上 webView图片不显示  以下没问题
+        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+            settings.setMixedContentMode(WebSettings.MIXED_CONTENT_ALWAYS_ALLOW);
+        }
+        mWebView.setVerticalScrollbarOverlay(false); //指定的垂直滚动条有叠加样式
+        mWebView.setVerticalScrollBarEnabled(true);
+        mWebView.setOverScrollMode(View.OVER_SCROLL_NEVER); // 取消WebView中滚动或拖动到顶部、底部时的阴影
+        mWebView.setScrollBarStyle(View.SCROLLBARS_INSIDE_OVERLAY); // 取消滚动条白边效果
+        mWebView.requestFocus();
+        mWebView.setWebChromeClient(new WebChromeClient());
+        mWebView.loadUrl(Constants.WEB_SOP);
+    }
+
+
+    public abstract void initListener();
+
+
+    //返回
+    @Override
+    public boolean onKeyDown(int keyCode, KeyEvent event) {
+        if ((keyCode == KeyEvent.KEYCODE_BACK) && mWebView.canGoBack()) {
+            mWebView.goBack();
+            return true;
+        }
+        return super.onKeyDown(keyCode, event);
+    }
+
+    public void onResume() {//
+        super.onResume();
+        mWebView.onResume();
+    }
+
+    @Override
+    protected void onDestroy() {
+        super.onDestroy();
+        mWebView.stopLoading();//音频退出
+        mWebView.destroy();
+    }
+
+}
diff --git a/app/src/main/java/com/dayu/bigfish/bean/Order.java b/app/src/main/java/com/dayu/bigfish/bean/Order.java
index b96f2ba..f6a4556 100644
--- a/app/src/main/java/com/dayu/bigfish/bean/Order.java
+++ b/app/src/main/java/com/dayu/bigfish/bean/Order.java
@@ -47,6 +47,7 @@ public class Order {
     private String spuId;
     private int excptionCode;
     private String appointmentTime;
+    private int sopStatus;
 
     public int getSubStatus() {
         return subStatus;
@@ -224,4 +225,12 @@ public class Order {
         this.appointmentTime = appointmentTime;
     }
 
+    public int getSopStatus() {
+        return sopStatus;
+    }
+
+    public void setSopStatus(int sopStatus) {
+        this.sopStatus = sopStatus;
+    }
+
 }
diff --git a/app/src/main/java/com/dayu/bigfish/bean/OrderDetail.java b/app/src/main/java/com/dayu/bigfish/bean/OrderDetail.java
index 7d31146..9faae76 100644
--- a/app/src/main/java/com/dayu/bigfish/bean/OrderDetail.java
+++ b/app/src/main/java/com/dayu/bigfish/bean/OrderDetail.java
@@ -124,8 +124,16 @@ public class OrderDetail {
     private String sn;
     private String spuName;
     private String spuId;
+    private int anyContacts;
     private List<accessories> accessories;
 
+    public int getAnyContacts() {
+        return anyContacts;
+    }
+
+    public void setAnyContacts(int anyContacts) {
+        this.anyContacts = anyContacts;
+    }
 
     public int getId() {
         return id;
diff --git a/app/src/main/java/com/dayu/bigfish/bean/OrderRecord.java b/app/src/main/java/com/dayu/bigfish/bean/OrderRecord.java
index 6f53940..a9ac0da 100644
--- a/app/src/main/java/com/dayu/bigfish/bean/OrderRecord.java
+++ b/app/src/main/java/com/dayu/bigfish/bean/OrderRecord.java
@@ -10,32 +10,31 @@ public class OrderRecord {
      * 累计收益 : 0
      * 工单记录 : 0
      */
+    private double cumulativeIncome;
+    private int orderRecord;
+    private double score;
 
-    private double 评分;
-    private double 累计收益;
-    private int 工单记录;
-
-    public double get评分() {
-        return 评分;
+    public double getScore() {
+        return score;
     }
 
-    public void set评分(int 评分) {
-        this.评分 = 评分;
+    public void setScore(double score) {
+        this.score = score;
     }
 
-    public double get累计收益() {
-        return 累计收益;
+    public double getCumulativeIncome() {
+        return cumulativeIncome;
     }
 
-    public void set累计收益(int 累计收益) {
-        this.累计收益 = 累计收益;
+    public void setCumulativeIncome(double cumulativeIncome) {
+        this.cumulativeIncome = cumulativeIncome;
     }
 
-    public int get工单记录() {
-        return 工单记录;
+    public int getOrderRecord() {
+        return orderRecord;
     }
 
-    public void set工单记录(int 工单记录) {
-        this.工单记录 = 工单记录;
+    public void setOrderRecord(int orderRecord) {
+        this.orderRecord = orderRecord;
     }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/bean/TodayAchievement.java b/app/src/main/java/com/dayu/bigfish/bean/TodayAchievement.java
index 07cb6de..bcf1d99 100644
--- a/app/src/main/java/com/dayu/bigfish/bean/TodayAchievement.java
+++ b/app/src/main/java/com/dayu/bigfish/bean/TodayAchievement.java
@@ -1,20 +1,17 @@
 package com.dayu.bigfish.bean;
 
-import com.google.gson.annotations.SerializedName;
-
 /**
  * Created by luofan on 2017/11/14.
  */
 
 public class TodayAchievement {
-    @SerializedName("今日业绩(元)")
-    private int achievenment; // FIXME check this code
+    private int achievement;
 
-    public int getAchievenment() {
-        return achievenment;
+    public int getAchievement() {
+        return achievement;
     }
 
-    public void setAchievenment(int _$208) {
-        this.achievenment = achievenment;
+    public void setAchievement(int achievement) {
+        this.achievement = achievement;
     }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshTabNum.java b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshApoiment.java
similarity index 88%
rename from app/src/main/java/com/dayu/bigfish/bean/event/RefreshTabNum.java
rename to app/src/main/java/com/dayu/bigfish/bean/event/RefreshApoiment.java
index 6865f03..cd02b00 100755
--- a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshTabNum.java
+++ b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshApoiment.java
@@ -5,10 +5,10 @@ package com.dayu.bigfish.bean.event;
  * on 2017/10/11.
  */
 
-public class RefreshTabNum {
+public class RefreshApoiment {
     private int tabNum;
 
-    public RefreshTabNum(int tabNum) {
+    public RefreshApoiment(int tabNum) {
         this.tabNum = tabNum;
     }
     public int getTabNum() {
diff --git a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshCancle.java b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshCancle.java
new file mode 100755
index 0000000..42f0063
--- /dev/null
+++ b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshCancle.java
@@ -0,0 +1,21 @@
+package com.dayu.bigfish.bean.event;
+
+/**
+ * 刷新各tab状态的数量
+ * on 2017/10/11.
+ */
+
+public class RefreshCancle {
+    private int tabNum;
+
+    public RefreshCancle(int tabNum) {
+        this.tabNum = tabNum;
+    }
+    public int getTabNum() {
+        return tabNum;
+    }
+
+    public void setTabNum(int tabNum) {
+        this.tabNum = tabNum;
+    }
+}
diff --git a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshError.java b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshError.java
new file mode 100755
index 0000000..725d3f8
--- /dev/null
+++ b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshError.java
@@ -0,0 +1,21 @@
+package com.dayu.bigfish.bean.event;
+
+/**
+ * 刷新各tab状态的数量
+ * on 2017/10/11.
+ */
+
+public class RefreshError {
+    private int tabNum;
+
+    public RefreshError(int tabNum) {
+        this.tabNum = tabNum;
+    }
+    public int getTabNum() {
+        return tabNum;
+    }
+
+    public void setTabNum(int tabNum) {
+        this.tabNum = tabNum;
+    }
+}
diff --git a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshServe.java b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshServe.java
new file mode 100755
index 0000000..0a2ab53
--- /dev/null
+++ b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshServe.java
@@ -0,0 +1,21 @@
+package com.dayu.bigfish.bean.event;
+
+/**
+ * 刷新各tab状态的数量
+ * on 2017/10/11.
+ */
+
+public class RefreshServe {
+    private int tabNum;
+
+    public RefreshServe(int tabNum) {
+        this.tabNum = tabNum;
+    }
+    public int getTabNum() {
+        return tabNum;
+    }
+
+    public void setTabNum(int tabNum) {
+        this.tabNum = tabNum;
+    }
+}
diff --git a/app/src/main/java/com/dayu/bigfish/bean/event/RefreshTab.java b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshTab.java
new file mode 100755
index 0000000..31a231a
--- /dev/null
+++ b/app/src/main/java/com/dayu/bigfish/bean/event/RefreshTab.java
@@ -0,0 +1,21 @@
+package com.dayu.bigfish.bean.event;
+
+/**
+ * 刷新各tab状态的数量
+ * on 2017/10/11.
+ */
+
+public class RefreshTab {
+    private int tabNum;
+
+    public RefreshTab(int tabNum) {
+        this.tabNum = tabNum;
+    }
+    public int getTabNum() {
+        return tabNum;
+    }
+
+    public void setTabNum(int tabNum) {
+        this.tabNum = tabNum;
+    }
+}
diff --git a/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourContract.java b/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourContract.java
index 209ff59..0eebe8a 100755
--- a/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourContract.java
+++ b/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourContract.java
@@ -27,18 +27,6 @@ public interface HomeFourContract {
     }
 
     abstract class Presenter extends BasePresenter<View> {
-        //        //获取个人信息
-//        public abstract void getPersonalInfo(int userId);
-//
-//        //获取工程师今日业绩
-//        public abstract void getAchievement(int siteId, int userId);
-//
-//        //获取累计业绩,工单记录
-//        public abstract void getOrderRecord(int siteId, int userId);
-//
-//        //账户余额
-//        public abstract void getAcountBalance(int accountId);
-//
         //获取工程师的alipayAcccount
         public abstract void getAlipayAccount(int accountId);
 
diff --git a/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourPresenter.java b/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourPresenter.java
index 4e91ae9..6975393 100644
--- a/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourPresenter.java
+++ b/app/src/main/java/com/dayu/bigfish/presenter/homefourtab/HomeFourPresenter.java
@@ -35,20 +35,18 @@ public class HomeFourPresenter extends HomeFourContract.Presenter {
     @Override
     public void getAllData(int userId, int siteId) {
         Observable.mergeDelayError(ApiFactory.getEngineerInfo(userId), ApiFactory.getAchievement(siteId, userId),
-                ApiFactory.getOrderScore(siteId, userId), ApiFactory.getTodayBalance(userId)).subscribe(baseObserver(new Consumer<Object>() {
-            @Override
-            public void accept(Object o) throws Exception {
-                if (o instanceof EngineerInfo) {
-                    mView.getPersonalInfoSuccess((EngineerInfo) o);
-                } else if (o instanceof TodayAchievement) {
-                    mView.getAchievementSuccess((TodayAchievement) o);
-                } else if (o instanceof OrderRecord) {
-                    mView.getOrderRecordSuccess((OrderRecord) o);
-                } else if (o instanceof TodayBalance) {
-                    mView.getAccountBalanceSuccess((TodayBalance) o);
-                }
-            }
-        }));
+                ApiFactory.getOrderScore(siteId, userId), ApiFactory.getTodayBalance(userId)).subscribe(
+                        baseObserver(o -> {
+                    if (o instanceof EngineerInfo) {
+                        mView.getPersonalInfoSuccess((EngineerInfo) o);
+                    } else if (o instanceof TodayAchievement) {
+                        mView.getAchievementSuccess((TodayAchievement) o);
+                    } else if (o instanceof OrderRecord) {
+                        mView.getOrderRecordSuccess((OrderRecord) o);
+                    } else if (o instanceof TodayBalance) {
+                        mView.getAccountBalanceSuccess((TodayBalance) o);
+                    }
+                }));
     }
 
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/MainActivity.java b/app/src/main/java/com/dayu/bigfish/ui/MainActivity.java
index 09a3bd3..cef8b24 100644
--- a/app/src/main/java/com/dayu/bigfish/ui/MainActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/MainActivity.java
@@ -1,9 +1,6 @@
 package com.dayu.bigfish.ui;
 
-import android.app.Dialog;
 import android.content.Intent;
-import android.content.pm.PackageInfo;
-import android.content.pm.PackageManager;
 import android.net.Uri;
 import android.os.Build;
 import android.os.Environment;
@@ -87,11 +84,11 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
         mAccountId = GetUserInfo.getACCOUNT_ID(mActivity);
         mSiteId = GetUserInfo.getSITE_ID(mActivity);
         String imei = AppUtils.getIMEI(mActivity);
-        mPresenter.commitVersionInfo(mAccountId, imei, "2", getPackageNum());
-        mPresenter.getNewVersion(getPackageNum());
+        mPresenter.commitVersionInfo(mAccountId, imei, "2", AppUtils.getPackageNum(mActivity));
+        mPresenter.getNewVersion(AppUtils.getPackageNum(mActivity));
         mPresenter.getReceiveOrder(Constants.WATING_ORDER, mAccountId, mSiteId, 1, 20);
         //动态刷新主页接单数量-->显示
-        RxBus.getDefault().toObservable(RefreReceiveData.class)
+        mDisposable.add(RxBus.getDefault().toObservable(RefreReceiveData.class)
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new Consumer<RefreReceiveData>() {
                     @Override
@@ -100,24 +97,15 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
                             mPresenter.getReceiveOrder(Constants.WATING_ORDER, mAccountId, mSiteId, 1, 20);
                         }
                     }
-                });
-        RxBus.getDefault().toObservable(RefreshReceivingNum.class)
+                }));
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshReceivingNum.class)
                 .observeOn(AndroidSchedulers.mainThread())
                 .subscribe(new Consumer<RefreshReceivingNum>() {
                     @Override
                     public void accept(RefreshReceivingNum refreshReceivingNum) throws Exception {
-                        mReceivingNum -= 1;
-                        if (mReceivingNum < 0) {
-                            mReceivingNum = 0;
-                        }
-                        if (refreshReceivingNum.getTabNum() != -1) {
-                            mGetOrderTv.setText(refreshReceivingNum.getTabNum() + "");
-                        } else {
-                            mGetOrderTv.setText(mReceivingNum + "");
-                        }
-
+                        mGetOrderTv.setText(refreshReceivingNum.getTabNum() + "");
                     }
-                });
+                }));
 //        int index = getIntent().getIntExtra(Constants.DUMP_INDEX, 1);
         showHideFragment(mFragments[1], mFragments[mPosition]);
         mPosition = 1;
@@ -204,7 +192,6 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
 
     @Override
     public void noNeedUpdate() {
-        ToastUtils.showShortToast("当前是最新版本,无需更新");
     }
 
     @Override
@@ -231,44 +218,42 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
      */
     private void showUpdateDialog(String upgradePrompt, String downloadPath, int type) {
         CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, upgradePrompt
-                , new CustomDialog.OnCloseListener() {
-            @Override
-            public void onClick(Dialog dialog, boolean confirm) {
-                if (confirm) {
-                    File sdDir = Environment.getExternalStorageDirectory();
-                    File file = new File(sdDir, "dayu" + ".apk");
-                    if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
-                        DownloadService.startUpdateService(mActivity, downloadPath, file.getAbsolutePath(), new onDownloadListener() {
-                            @Override
-                            public void onDownloadSuccess(File file) {
-                                //安装apk
-                                Intent intent = new Intent(Intent.ACTION_VIEW);
-                                intent.addCategory("android.intent.category.DEFAULT");
-                                //  判断是否是AndroidN以及更高的版本
-                                if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M) {
-                                    intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
-                                    Uri contentUri = FileProvider.getUriForFile(mActivity, BuildConfig.APPLICATION_ID + ".fileProvider", file);
-                                    intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
-                                } else {
-                                    intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
-                                    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-                                }
-                                mActivity.startActivity(intent);
+                , (dialog1, confirm) -> {
+            if (confirm) {
+                File sdDir = Environment.getExternalStorageDirectory();
+                File file = new File(sdDir, "dayu" + ".apk");
+                if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
+                    ToastUtils.showShortToast("正在下载中,请稍后...");
+                    DownloadService.startUpdateService(mActivity, downloadPath, file.getAbsolutePath(), new onDownloadListener() {
+                        @Override
+                        public void onDownloadSuccess(File file) {
+                            //安装apk
+                            Intent intent = new Intent(Intent.ACTION_VIEW);
+                            intent.addCategory("android.intent.category.DEFAULT");
+                            //  判断是否是AndroidN以及更高的版本
+                            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.M) {
+                                intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
+                                Uri contentUri = FileProvider.getUriForFile(mActivity, BuildConfig.APPLICATION_ID + ".fileProvider", file);
+                                intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
+                            } else {
+                                intent.setDataAndType(Uri.fromFile(file), "application/vnd.android.package-archive");
+                                intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                             }
+                            mActivity.startActivity(intent);
+                        }
 
-                            @Override
-                            public void onDownloadFail() {
-                                ToastUtils.showShortToast("下载失败");
-                            }
-                        });
-                    }
-                } else {
-                    if (type == 2) {
-                        finish();
-                    }
+                        @Override
+                        public void onDownloadFail() {
+                            ToastUtils.showShortToast("下载失败");
+                        }
+                    });
+                }
+            } else {
+                if (type == 2) {
+                    finish();
                 }
-                dialog.dismiss();
             }
+            dialog1.dismiss();
         });
         dialog.setTitle("有新版本")
                 .setNegativeButton("下次再说")
@@ -276,19 +261,6 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
         dialog.show();
     }
 
-    /**
-     * 获取当前应用的版本号
-     */
-    public String getPackageNum() {
-        try {
-            PackageInfo packageInfo = this.getPackageManager().getPackageInfo(this.getPackageName(), 0);
-            String packageName = packageInfo.versionName;
-            return packageName;
-        } catch (PackageManager.NameNotFoundException e) {
-            e.printStackTrace();
-            return "解析版本号失败";
-        }
-    }
 
     @Override
     protected void onDestroy() {
diff --git a/app/src/main/java/com/dayu/bigfish/ui/WorksRecordActivity.java b/app/src/main/java/com/dayu/bigfish/ui/OrderRecordActivity.java
similarity index 77%
rename from app/src/main/java/com/dayu/bigfish/ui/WorksRecordActivity.java
rename to app/src/main/java/com/dayu/bigfish/ui/OrderRecordActivity.java
index 05f7169..6ed647c 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/WorksRecordActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/OrderRecordActivity.java
@@ -1,6 +1,7 @@
 package com.dayu.bigfish.ui;
 
 import android.content.Intent;
+import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.text.Editable;
@@ -33,7 +34,7 @@ import butterknife.OnClick;
  * on 2017/9/29.
  */
 
-public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> implements WroksRecordContract.View {
+public class OrderRecordActivity extends BaseActivity<WorksRecordPresenter> implements WroksRecordContract.View, BaseQuickAdapter.RequestLoadMoreListener, SwipeRefreshLayout.OnRefreshListener {
     @BindView(R.id.title_text)
     TextView titleText;
     @BindView(R.id.time_title)
@@ -41,9 +42,11 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
     @BindView(R.id.et_seacher)
     EditText etSeacher;
     @BindView(R.id.time_seacher)
-    RelativeLayout timeSeacher;
-    @BindView(R.id.rv)
+    RelativeLayout mSeacher;
+    @BindView(R.id.rl_record)
     RecyclerView mRecyclerView;
+    @BindView(R.id.receiving_refersh)
+    SwipeRefreshLayout mRefreshLayout;
     public ArrayList<Order> mList = new ArrayList<>();
     private int siteId = GetUserInfo.getSITE_ID(MyApplication.getContext());
     private int userId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
@@ -51,6 +54,7 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
     private int mPage = 1;
     private int mPageSize = 20;
     private int mTotalPage = 1;
+    private int mRefreshState = 1;
 
     @Override
     public int getLayoutId() {
@@ -61,29 +65,16 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
     @Override
     public void initView() {
         titleText.setText("历史工单");
-        mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item,mActivity);
+        mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
-        mRecyclerView.setHasFixedSize(true);
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
-
-        mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
-            @Override
-            public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
-                Order data = (Order) adapter.getData().get(position);
-                dumpDetail(data.getId());
-            }
+        mRefreshLayout.setOnRefreshListener(this);
+        mAdapter.setOnLoadMoreListener(this, mRecyclerView);
+        mAdapter.setOnItemClickListener((adapter, view, position) -> {
+            Order data = (Order) adapter.getData().get(position);
+            dumpDetail(data.getId());
         });
-
-
-        mAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
-            @Override
-            public void onLoadMoreRequested() {
-                mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
-            }
-        }, mRecyclerView);
-
-
         etSeacher.addTextChangedListener(new TextWatcher() {
 
             @Override
@@ -102,6 +93,7 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
             }
 
         });
+        mAdapter.setEnableLoadMore(false);
         ProgressUtil.startLoad(mActivity);
         mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
     }
@@ -131,10 +123,10 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
                 break;
             case R.id.iv_saecher:
                 timeTitle.setVisibility(View.GONE);
-                timeSeacher.setVisibility(View.VISIBLE);
+                mSeacher.setVisibility(View.VISIBLE);
                 break;
             case R.id.quit:
-                timeSeacher.setVisibility(View.GONE);
+                mSeacher.setVisibility(View.GONE);
                 timeTitle.setVisibility(View.VISIBLE);
                 mAdapter.notifyDataSetChanged();
                 break;
@@ -142,33 +134,62 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> impl
     }
 
     public void dumpDetail(int id) {
-        Intent intent = new Intent(WorksRecordActivity.this, OrderDetailsActivity.class);
+        Intent intent = new Intent(OrderRecordActivity.this, OrderDetailsActivity.class);
         intent.putExtra("orderId", id + "");
         startActivity(intent);
     }
 
     @Override
     public void getWorksRecord(BasePageBean<Order> oredrs) {
-        if (oredrs.getData() != null) {
+        mTotalPage = oredrs.getTotalPages();
+        mPageSize = oredrs.getPageSize();
+        if (mRefreshState == 1) {
+            mRefreshLayout.setRefreshing(false);
+            mAdapter.setNewData(oredrs.getData());
             mList.clear();
             mList.addAll(oredrs.getData());
-            mTotalPage = oredrs.getTotalPages();
-            mPageSize = oredrs.getPageSize();
+            mAdapter.setEnableLoadMore(true);
+        } else {
+            mList.addAll(oredrs.getData());
             mAdapter.addData(oredrs.getData());
-            if (mPage == mTotalPage) {
-                mAdapter.loadMoreEnd();
-            } else {
-                mAdapter.loadMoreComplete();
-                mPage += 1;
-            }
-            mAdapter.notifyDataSetChanged();
+        }
+        if (mPage >= mTotalPage) {
+            mAdapter.loadMoreEnd();
         } else {
-            mAdapter.setEmptyView(R.layout.tips_loading_failed);
+            mAdapter.loadMoreComplete();
+        }
+        mPage += 1;
+        if (oredrs.getData().size() == 0) {
+            mAdapter.setEmptyView(R.layout.tips_empty);
         }
     }
 
     @Override
     public void getWorkRecordFail() {
+        mAdapter.loadMoreFail();
+        mAdapter.setEnableLoadMore(true);
         mAdapter.setEmptyView(R.layout.tips_loading_failed);
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
+        });
+    }
+
+    @Override
+    public void onLoadMoreRequested() {
+        mRefreshState = 2;
+        mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
+    }
+
+    @Override
+    public void onRefresh() {
+        refresh();
+    }
+
+    public void refresh() {
+        mRefreshState = 1;
+        mPage = 1;
+        mAdapter.setEnableLoadMore(false);
+        mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
     }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/ProcessOrderActivity.java b/app/src/main/java/com/dayu/bigfish/ui/ProcessOrderActivity.java
index 8d397aa..deeeaeb 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/ProcessOrderActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/ProcessOrderActivity.java
@@ -18,6 +18,7 @@ import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseActivity;
 import com.dayu.bigfish.bean.OrderDetail;
 import com.dayu.bigfish.bean.event.OrderState;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.bean.sqlbean.OrderInfo;
 import com.dayu.bigfish.greendao.GreenDaoManager;
@@ -52,6 +53,7 @@ import static com.dayu.bigfish.R.id.et_up_input;
 import static com.dayu.bigfish.R.id.image_switch;
 import static com.dayu.bigfish.R.id.text_six_value;
 import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_FINISH;
+import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_NOCONTACT_FINISH;
 import static com.dayu.bigfish.utils.SPUtils.get;
 
 /**
@@ -165,8 +167,6 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
     private String payRemark;
     private Boolean isSwitch;
     private String categoryName; //产品名称
-    private String token;
-    private String value;
     private int finshPosition;
     private int mIvWeight;
     private ImageView mAddIV;
@@ -174,6 +174,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
     private List<LocalMedia> mSelectList;
     private ArrayList<String> mImages = new ArrayList<>();
     private OrderInfoDao mOrderInfoDao;
+    private int mAnyContacts;
 
     @Override
     public int getLayoutId() {
@@ -207,9 +208,8 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
 
     public void initData() {
         Intent intent = getIntent();
-        value = intent.getStringExtra("orderId");
-        finshPosition = intent.getIntExtra("position", 0);
-        orderId = Integer.parseInt(value);
+        orderId = intent.getIntExtra(Constants.ORDER_ID, 0);
+        finshPosition = intent.getIntExtra(Constants.ORDER_POSTION, 0);
         engineerId = GetUserInfo.getACCOUNT_ID(this);
         Query query = mOrderInfoDao.queryBuilder().where(OrderInfoDao.Properties.Id.eq(orderId),
                 OrderInfoDao.Properties.EngineerId.eq(engineerId))
@@ -303,12 +303,20 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
                 }
                 break;
             case R.id.tv_modify_sop:
+                dumpSOPActivity(orderId, finshPosition);
                 break;
             default:
                 break;
         }
     }
 
+    private void dumpSOPActivity(int id, int adapterPosition) {
+        Intent intent = new Intent(mActivity, SopWebViewActivity.class);
+        intent.putExtra(Constants.ORDER_ID, id);
+        intent.putExtra(Constants.ORDER_POSTION, adapterPosition);
+        mActivity.startActivity(intent);
+    }
+
     private void getData() {
         serveValue1 = etInput.getText().toString();
         upDoorCost = editDoorValue.getText().toString();
@@ -391,7 +399,14 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
     @Override
     public void commitOrderSuccess() {
         ToastUtils.showShortToast("数据提交成功");
-        RxBus.getDefault().post(new OrderState(ORDER_FINISH, finshPosition));
+        int status = 0;
+        if (mAnyContacts == 0) {
+            status = ORDER_NOCONTACT_FINISH;
+            RxBus.getDefault().post(new RefreshTab(1));
+        } else if (mAnyContacts == 1) {
+            status = ORDER_FINISH;
+        }
+        RxBus.getDefault().post(new OrderState(status, finshPosition));
         mOrderInfoDao.deleteByKey((long) orderId);
         PictureFileUtils.deleteCacheDirFile(mActivity);
         finish();
@@ -402,6 +417,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
         brandName = detail.getBrandName();
         serveName = detail.getProviderName();
         categoryName = detail.getCategoryName();
+        mAnyContacts = detail.getAnyContacts();
         textOneValue.setText(categoryName);
         textTwoValue.setText(brandName);
         textSixValue.setText(serveName);
diff --git a/app/src/main/java/com/dayu/bigfish/ui/ReceivingActivity.java b/app/src/main/java/com/dayu/bigfish/ui/ReceivingActivity.java
index 7abce08..f0fc44f 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/ReceivingActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/ReceivingActivity.java
@@ -3,7 +3,7 @@ package com.dayu.bigfish.ui;
 import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
-import android.view.View;
+import android.widget.TextView;
 
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.dayu.bigfish.Constants;
@@ -11,11 +11,12 @@ import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseActivity;
 import com.dayu.bigfish.base.BasePageBean;
 import com.dayu.bigfish.bean.Order;
-import com.dayu.bigfish.presenter.receivingorder.ReceivingContract;
-import com.dayu.bigfish.presenter.receivingorder.ReceivingPresenter;
+import com.dayu.bigfish.bean.event.RefreshApoiment;
 import com.dayu.bigfish.bean.event.RefreshReceivingNum;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
+import com.dayu.bigfish.presenter.receivingorder.ReceivingContract;
+import com.dayu.bigfish.presenter.receivingorder.ReceivingPresenter;
 import com.dayu.bigfish.ui.adapter.OrderDoingAdapter;
 import com.dayu.bigfish.utils.GetUserInfo;
 import com.dayu.bigfish.utils.ProgressUtil;
@@ -33,12 +34,14 @@ import butterknife.OnClick;
  * Created by yu
  */
 
-public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implements ReceivingContract.View, SwipeRefreshLayout.OnRefreshListener {
+public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implements ReceivingContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
     public List<Order> list;
     @BindView(R.id.receiving_refersh)
     SwipeRefreshLayout mRefreshLayout;
     @BindView(R.id.receiving_listview)
     RecyclerView mRecyclerView;
+    @BindView(R.id.order_title_num)
+    TextView mTitle;
     private int userId;
     private int siteId;
     private int mPage = 1;
@@ -46,41 +49,33 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
     private int mTotalPage = 1;
     private OrderDoingAdapter mAdapter;
     private int mRefreshState = 1; //1:刷新,2:下拉加载
+    private int mTotalRows;
 
 
     @Override
     public int getLayoutId() {
-        return R.layout.activity_receiving;
+        return R.layout.activity_recycleview;
     }
 
     @Override
     public void initView() {
         userId = GetUserInfo.getACCOUNT_ID(this);
         siteId = GetUserInfo.getSITE_ID(this);
-        ProgressUtil.startLoad(mActivity);
-        mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
+        mTitle.setText("待结单列表");
         mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         mRefreshLayout.setOnRefreshListener(this);
-
-        mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
-            @Override
-            public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
-                Order order = (Order) adapter.getItem(position);
-                if (view.getId() == R.id.item_text_phone) {
-                    mPresenter.receiveOrder(order.getId(), userId);
-                }
+        ProgressUtil.startLoad(mActivity);
+        mAdapter.setEnableLoadMore(false);
+        mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
+        mAdapter.setOnItemChildClickListener((adapter, view, position) -> {
+            Order order = (Order) adapter.getItem(position);
+            if (view.getId() == R.id.item_text_phone) {
+                mPresenter.receiveOrder(order.getId(), userId);
             }
         });
-        mAdapter.setOnLoadMoreListener(new BaseQuickAdapter.RequestLoadMoreListener() {
-            @Override
-            public void onLoadMoreRequested() {
-                mRefreshState = 2;
-                mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
-            }
-        }, mRecyclerView);
     }
 
     @OnClick(R.id.receiving_back)
@@ -93,37 +88,48 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
     public void getReceiveOrderSuccess(BasePageBean<Order> orders) {
         mTotalPage = orders.getTotalPages();
         mPageSize = orders.getPageSize();
-        RxBus.getDefault().post(new RefreshReceivingNum(orders.getTotalRows()));
-        if (orders.getData() != null && orders.getData().size() != 0) {
-            if (mRefreshState == 1) {
-                mRefreshLayout.setRefreshing(false);
-                mAdapter.setNewData(orders.getData());
-            } else {
-                mAdapter.addData(orders.getData());
-            }
-            if (mPage == mTotalPage) {
-                mAdapter.loadMoreEnd();
-            } else {
-                mAdapter.loadMoreComplete();
-                mPage += 1;
-            }
-        } else {
+        mTotalRows = orders.getTotalRows();
+        RxBus.getDefault().post(new RefreshReceivingNum(mTotalRows));
+        if (mRefreshState == 1) {
             mRefreshLayout.setRefreshing(false);
+            mAdapter.setNewData(orders.getData());
+            mAdapter.loadMoreEnd();
+            mAdapter.setEnableLoadMore(true);
+        } else {
+            mAdapter.addData(orders.getData());
+        }
+        if (mPage == mTotalPage) {
+            mAdapter.loadMoreEnd();
+        } else {
+            mAdapter.loadMoreComplete();
+            mPage += 1;
+        }
+        mPage += 1;
+        if (orders.getData().size() == 0) {
             mAdapter.setEmptyView(R.layout.tips_empty);
         }
     }
 
     @Override
     public void getReceiveOrderFail() {
+        mRefreshLayout.setRefreshing(false);
+        mAdapter.setEnableLoadMore(true);
         mAdapter.setEmptyView(R.layout.tips_loading_failed);
+        mAdapter.loadMoreFail();
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            refresh();
+        });
     }
 
     @Override
     public void receiveOrderSuccess() {
+        int num = mTotalRows - 1;
         ToastUtils.showShortToast("接单成功");
         //接单成功,刷新首页tab状态数量
-        RxBus.getDefault().post(new RefreshTabNum(0));
-        RxBus.getDefault().post(new RefreshReceivingNum(-1));
+        RxBus.getDefault().post(new RefreshTab(0));
+        RxBus.getDefault().post(new RefreshApoiment(-1));
+        RxBus.getDefault().post(new RefreshReceivingNum(num < 0 ? 0 : num));
         finish();
     }
 
@@ -134,8 +140,13 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
 
     @Override
     public void onRefresh() {
+        refresh();
+    }
+
+    public void refresh() {
         mRefreshState = 1;
         mPage = 1;
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
     }
 
@@ -145,4 +156,10 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
         super.finish();
         overridePendingTransition(0, R.anim.slide_bottom_out);
     }
+
+    @Override
+    public void onLoadMoreRequested() {
+        mRefreshState = 2;
+        mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
+    }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/SettingActivity.java b/app/src/main/java/com/dayu/bigfish/ui/SettingActivity.java
index 7f33cd4..20bf81c 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/SettingActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/SettingActivity.java
@@ -10,20 +10,22 @@ import android.widget.TextView;
 
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseActivity;
-import com.dayu.bigfish.utils.managers.UserManager;
 import com.dayu.bigfish.presenter.setting.SettingContract;
 import com.dayu.bigfish.presenter.setting.SettingPresenter;
+import com.dayu.bigfish.ui.views.CustomDialog;
+import com.dayu.bigfish.ui.views.SwitchImage;
 import com.dayu.bigfish.utils.DataCleanManager;
 import com.dayu.bigfish.utils.ProgressUtil;
 import com.dayu.bigfish.utils.ToastUtils;
-import com.dayu.bigfish.ui.views.CustomDialog;
-import com.dayu.bigfish.ui.views.SwitchImage;
+import com.dayu.bigfish.utils.managers.UserManager;
 import com.hyphenate.chat.EMClient;
 
 import java.io.File;
+import java.util.concurrent.TimeUnit;
 
 import butterknife.BindView;
 import butterknife.OnClick;
+import io.reactivex.Observable;
 
 /**
  * 设置页面
@@ -75,7 +77,8 @@ public class SettingActivity extends BaseActivity<SettingPresenter> implements S
                     @Override
                     public void onClick(Dialog dialog, boolean confirm) {
                         if (confirm) {
-                            //清理缓存
+                            ProgressUtil.startLoad(mActivity, "正在清理...");
+                            Observable.timer(2, TimeUnit.SECONDS).subscribe(along -> ProgressUtil.stopLoad());
                             DataCleanManager.deleteFolderFile(Environment.getExternalStorageDirectory() + "/Android/data/com.dayu.bigfish/cache", false);
                             try {
                                 tvHc.setText(DataCleanManager.getCacheSize(new File(Environment.getExternalStorageDirectory() + "/Android/data/com.dayu.bigfish/cache")));
diff --git a/app/src/main/java/com/dayu/bigfish/ui/SopWebViewActivity.java b/app/src/main/java/com/dayu/bigfish/ui/SopWebViewActivity.java
index ac52dcb..1d89e11 100644
--- a/app/src/main/java/com/dayu/bigfish/ui/SopWebViewActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/SopWebViewActivity.java
@@ -1,19 +1,26 @@
 package com.dayu.bigfish.ui;
 
+import android.content.Intent;
+import android.net.Uri;
 import android.os.Build;
 import android.os.Bundle;
 import android.support.v7.app.AppCompatActivity;
-import android.util.Log;
 import android.view.KeyEvent;
 import android.view.View;
+import android.webkit.ValueCallback;
 import android.webkit.WebChromeClient;
 import android.webkit.WebSettings;
+import android.webkit.WebView;
+import android.widget.ImageView;
+import android.widget.ProgressBar;
 
 import com.dayu.bigfish.Constants;
 import com.dayu.bigfish.R;
-import com.dayu.bigfish.base.jsbridge.BridgeHandler;
-import com.dayu.bigfish.base.jsbridge.BridgeWebView;
-import com.dayu.bigfish.base.jsbridge.CallBackFunction;
+import com.dayu.bigfish.bean.event.OrderState;
+import com.dayu.bigfish.bean.event.RxBus;
+import com.github.lzyzsd.jsbridge.BridgeHandler;
+import com.github.lzyzsd.jsbridge.BridgeWebView;
+import com.github.lzyzsd.jsbridge.CallBackFunction;
 
 import org.json.JSONException;
 import org.json.JSONObject;
@@ -21,6 +28,8 @@ import org.json.JSONObject;
 import butterknife.BindView;
 import butterknife.ButterKnife;
 
+import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_SOP_FINISH;
+
 /**
  * Created by luofan on 2017/11/27.
  */
@@ -28,16 +37,27 @@ import butterknife.ButterKnife;
 public class SopWebViewActivity extends AppCompatActivity {
     @BindView(R.id.webView)
     BridgeWebView mWebView;
-    private int mToken;
+    @BindView(R.id.receiving_back)
+    ImageView mBackTitle;
+    private String mToken;
     private int mOrderId;
+    private int mPositon;
+    private ProgressBar pb;
+    ValueCallback<Uri> mUploadMessage;
+    ValueCallback<Uri[]> uploadMessageAboveL;
+    int RESULT_CODE = 0;
+    int RESULT_CODE_FOR_Lollipop = 1;
+
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         this.setContentView(R.layout.activity_webview_layout);
         ButterKnife.bind(this);
-        mToken = getIntent().getIntExtra(Constants.TOKEN, 0);
+        mToken = getIntent().getStringExtra(Constants.TOKEN);
         mOrderId = getIntent().getIntExtra(Constants.ORDER_ID, 0);
+        mPositon = getIntent().getIntExtra(Constants.ORDER_POSTION, 0);
+        mBackTitle.setOnClickListener(o -> finish());
         initWebView();
     }
 
@@ -77,36 +97,135 @@ public class SopWebViewActivity extends AppCompatActivity {
         mWebView.requestFocus();
         mWebView.setDefaultHandler(new MyHandler());
 
-        mWebView.setWebChromeClient(new WebChromeClient());
+        mWebView.setWebChromeClient(new WebChromeClient() {
+            public void openFileChooser(ValueCallback<Uri> uploadMsg, String AcceptType, String capture) {
+                this.openFileChooser(uploadMsg);
+            }
+
+            public void openFileChooser(ValueCallback<Uri> uploadMsg, String AcceptType) {
+                this.openFileChooser(uploadMsg);
+            }
 
-        mWebView.loadUrl("http://192.168.1.117:8080/#/");
-        //h5回调结果
-        mWebView.registerHandler("HandleTestIng", new BridgeHandler() {
+            public void openFileChooser(ValueCallback<Uri> uploadMsg) {
+                openFileChooserImpl(uploadMsg);
+            }
 
             @Override
-            public void handler(String data, CallBackFunction function) {
-                Log.i("", "handler = submitFromWeb, data from web = " + data);
-                function.onCallBack("测试1111");
+            public boolean onShowFileChooser(WebView webView, ValueCallback<Uri[]> uploadMsg, FileChooserParams fileChooserParams) {
+                openFileChooserImplForAndroid5(uploadMsg);
+                return true;
             }
 
+            @Override
+            public void onProgressChanged(WebView view, int newProgress) {
+//                pb.setProgress(newProgress);
+//                if (newProgress >= 100) {
+//                    pb.setVisibility(View.GONE);
+//                }
+            }
         });
 
+        mWebView.loadUrl(Constants.WEB_SOP);
+
         JSONObject jsonObject = new JSONObject();
         try {
-//            jsonObject.put("id", mOrderId);
+            jsonObject.put("id", mOrderId);
             jsonObject.put("token", mToken);
         } catch (JSONException e) {
             e.printStackTrace();
         }
         String json = jsonObject.toString();
+
+        mWebView.registerHandler("handleSaveSop", new BridgeHandler() {
+
+            @Override
+            public void handler(String data, CallBackFunction function) {
+                if ("1".equals(data)) {
+                    RxBus.getDefault().post(new OrderState(ORDER_SOP_FINISH, mPositon));
+                    Intent intent = new Intent(SopWebViewActivity.this, ProcessOrderActivity.class);
+                    intent.putExtra(Constants.ORDER_ID, mOrderId);
+                    intent.putExtra(Constants.ORDER_POSTION, mPositon);
+                    startActivity(intent);
+                    finish();
+                }
+            }
+
+        });
+
+        mWebView.registerHandler("handleCancelSop", new BridgeHandler() {
+
+            @Override
+            public void handler(String data, CallBackFunction function) {
+                finish();
+            }
+        });
+
         mWebView.callHandler("getToken", json, new CallBackFunction() {
             @Override
             public void onCallBack(String data) {
-                Log.d("webview", data);
             }
         });
     }
 
+    private void openFileChooserImpl(ValueCallback<Uri> uploadMsg) {
+        mUploadMessage = uploadMsg;
+        Intent i = new Intent(Intent.ACTION_GET_CONTENT);
+        i.addCategory(Intent.CATEGORY_OPENABLE);
+        i.setType("image/*");
+        startActivityForResult(Intent.createChooser(i, "文件选择"), RESULT_CODE);
+    }
+
+    /*android 5.0*/
+    private void openFileChooserImplForAndroid5(ValueCallback<Uri[]> uploadMsg) {
+        uploadMessageAboveL = uploadMsg;
+        Intent contentSelectionIntent = new Intent(Intent.ACTION_GET_CONTENT);
+        contentSelectionIntent.addCategory(Intent.CATEGORY_OPENABLE);
+        contentSelectionIntent.setType("image/*");
+
+        Intent chooserIntent = new Intent(Intent.ACTION_CHOOSER);
+        chooserIntent.putExtra(Intent.EXTRA_INTENT, contentSelectionIntent);
+        chooserIntent.putExtra(Intent.EXTRA_TITLE, "图片选择");
+
+        startActivityForResult(chooserIntent, RESULT_CODE_FOR_Lollipop);
+    }
+
+    /**
+     * 上传文件回调
+     */
+    @Override
+    protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
+        if (requestCode == RESULT_CODE) {
+            onActivityResultBelowL(intent, resultCode);
+        } else if (requestCode == RESULT_CODE_FOR_Lollipop) {
+            onActivityResultAboveL(intent, resultCode);
+        }
+    }
+
+    /**
+     * 5.0 L 以下 上传图片成功后的回调
+     */
+    public void onActivityResultBelowL(Intent intent, int resultCode) {
+        if (null == mUploadMessage)
+            return;
+        Uri result = intent == null || resultCode != RESULT_OK ? null : intent.getData();
+        mUploadMessage.onReceiveValue(result);
+        mUploadMessage = null;
+    }
+
+    /**
+     * 5.0 L以上  上传图片成功后的回调
+     */
+    public void onActivityResultAboveL(Intent intent, int resultCode) {
+        if (null == uploadMessageAboveL)
+            return;
+        Uri result = (intent == null || resultCode != RESULT_OK) ? null : intent.getData();
+        if (result != null) {
+            uploadMessageAboveL.onReceiveValue(new Uri[]{result});
+        } else {
+            uploadMessageAboveL.onReceiveValue(new Uri[]{});
+        }
+        uploadMessageAboveL = null;
+    }
 
     private class MyHandler implements BridgeHandler {
         @Override
@@ -127,7 +246,7 @@ public class SopWebViewActivity extends AppCompatActivity {
         return super.onKeyDown(keyCode, event);
     }
 
-    public void onResume() {//
+    public void onResume() {
         super.onResume();
         mWebView.onResume();
     }
@@ -135,8 +254,7 @@ public class SopWebViewActivity extends AppCompatActivity {
     @Override
     protected void onDestroy() {
         super.onDestroy();
-        mWebView.stopLoading();//音频退出
+        mWebView.stopLoading();
         mWebView.destroy();
     }
-
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/SubcribeTimeActivity.java b/app/src/main/java/com/dayu/bigfish/ui/SubcribeTimeActivity.java
index 559ae89..1a71e7f 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/SubcribeTimeActivity.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/SubcribeTimeActivity.java
@@ -2,6 +2,7 @@ package com.dayu.bigfish.ui;
 
 import android.content.Intent;
 import android.graphics.Color;
+import android.text.TextUtils;
 import android.view.View;
 import android.widget.EditText;
 import android.widget.TextView;
@@ -10,11 +11,13 @@ import com.bigkoo.pickerview.TimePickerView;
 import com.dayu.bigfish.Constants;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseActivity;
-import com.dayu.bigfish.presenter.subcribeTime.SubcribeContract;
-import com.dayu.bigfish.presenter.subcribeTime.SubcribeTimePresenter;
 import com.dayu.bigfish.bean.event.OrderState;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
+import com.dayu.bigfish.bean.event.RefreshApoiment;
+import com.dayu.bigfish.bean.event.RefreshServe;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
+import com.dayu.bigfish.presenter.subcribeTime.SubcribeContract;
+import com.dayu.bigfish.presenter.subcribeTime.SubcribeTimePresenter;
 import com.dayu.bigfish.utils.DateUtils;
 import com.dayu.bigfish.utils.ProgressUtil;
 import com.dayu.bigfish.utils.ToastUtils;
@@ -31,7 +34,6 @@ import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_DOING;
 import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_YUYUE;
 import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.SUBCRIBE_TIME;
 import static com.dayu.bigfish.utils.UtilsDate.LONG_TIME_FORMAT_TWO;
-import static java.lang.Integer.parseInt;
 
 /**
  * 修改预约上门时间
@@ -64,10 +66,9 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
     @Override
     public void initView() {
         Intent intent = getIntent();
-        String value = intent.getStringExtra("orderId");
-        finshPosition = intent.getIntExtra("position", 0);
+        orderId = intent.getIntExtra(Constants.ORDER_ID, 0);
+        finshPosition = intent.getIntExtra(Constants.ORDER_POSTION, 0);
         mState = intent.getIntExtra(Constants.ORDER_STATE, 0);
-        orderId = parseInt(value);
         if (mState == 2) {
             titleText.setText(getString(R.string.tv_home_tab_one_subscribe_time));
         } else if (mState == 3) {
@@ -83,7 +84,9 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
         finish();
         if (mState == SUBCRIBE_TIME) {
             ToastUtils.showShortToast("预约时间成功,请移至待服务列表查看");
-            RxBus.getDefault().post(new RefreshTabNum(1));
+            RxBus.getDefault().post(new RefreshTab(1));
+            RxBus.getDefault().post(new RefreshApoiment(1));
+            RxBus.getDefault().post(new RefreshServe(1));
         } else if (mState == ORDER_YUYUE || mState == ORDER_DOING) {
             RxBus.getDefault().post(new OrderState(ORDER_YUYUE, finshPosition));
         }
@@ -103,6 +106,10 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
                 selectDay();
                 break;
             case R.id.time_two:
+                if (TextUtils.isEmpty(textDateValue.getText().toString())) {
+                    ToastUtils.showShortToast("请先输入日期");
+                    return;
+                }
                 selectTime();
                 break;
         }
@@ -128,7 +135,7 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
                 .setSubmitText("确定")//确认按钮文字
                 .setContentSize(20)//滚轮文字大小
                 .setTitleSize(20)//标题文字大小
-//                      .setTitleText("请选择时间")//标题文字
+//                .setTitleText("请选择时间")//标题文字
                 .setOutSideCancelable(true)//点击屏幕,点在控件外部范围时,是否取消显示
                 .isCyclic(true)//是否循环滚动
                 .setTextColorCenter(Color.BLACK)//设置选中项的颜色
@@ -168,7 +175,7 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
                 .setSubmitText("确定")//确认按钮文字
                 .setContentSize(20)//滚轮文字大小
                 .setTitleSize(20)//标题文字大小
-//                        .setTitleText("请选择时间")//标题文字
+//                .setTitleText("请选择日期")//标题文字
                 .setOutSideCancelable(true)//点击屏幕,点在控件外部范围时,是否取消显示
                 .isCyclic(true)//是否循环滚动
                 .setTextColorCenter(Color.BLACK)//设置选中项的颜色
@@ -195,12 +202,4 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
             mPresenter.subcribeTime(orderId, timeValue, edValue);
         }
     }
-
-
-    @Override
-    public void onDestroy() {
-        super.onDestroy();
-        //  EventBus.getDefault().unregister(this);
-    }
-
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/adapter/OrderDoingAdapter.java b/app/src/main/java/com/dayu/bigfish/ui/adapter/OrderDoingAdapter.java
index 82204e9..806fd73 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/adapter/OrderDoingAdapter.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/adapter/OrderDoingAdapter.java
@@ -18,7 +18,6 @@ import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabPresenter;
 import com.dayu.bigfish.ui.ProcessOrderActivity;
 import com.dayu.bigfish.ui.SopWebViewActivity;
 import com.dayu.bigfish.ui.SubcribeTimeActivity;
-import com.dayu.bigfish.utils.GetUserInfo;
 import com.dayu.bigfish.utils.LocationUtils;
 import com.dayu.bigfish.utils.ProgressUtil;
 import com.dayu.bigfish.utils.UtilsDate;
@@ -88,11 +87,11 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
             holder.setText(R.id.item_time, dateTime);
             holder.getView(R.id.item_time).setVisibility(View.VISIBLE);
         }
-        if (TextUtils.isEmpty(item.getCustomerName())) {
+        if (item.getAnyContacts() == 0) {
             holder.setText(R.id.item_text_user_name, "无联系人");
             holder.getView(R.id.item_text_user_phone).setVisibility(View.GONE);
             haveCustomer = false;
-        } else {
+        } else if (item.getAnyContacts() == 1) {
             holder.setText(R.id.item_text_user_name, item.getCustomerName());
             holder.setText(R.id.item_text_user_phone, item.getCustomerMobile());
             holder.getView(R.id.item_text_user_phone).setVisibility(View.VISIBLE);
@@ -144,14 +143,14 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
             case 4://待处理
                 holder.setText(R.id.item_updata_time, "需要再次上门");
                 holder.setText(R.id.tv_item_process, "处理工单");
+                if (!haveCustomer) {
+                    holder.getView(R.id.item_text_phone).setVisibility(View.GONE);
+                    holder.getView(R.id.order_line_one).setVisibility(View.GONE);
+                } else {
+                    holder.getView(R.id.item_text_phone).setVisibility(View.VISIBLE);
+                    holder.getView(R.id.order_line_one).setVisibility(View.VISIBLE);
+                }
                 if (item.getSubStatus() == 6) {
-                    if (!haveCustomer) {
-                        holder.getView(R.id.item_text_phone).setVisibility(View.GONE);
-                        holder.getView(R.id.order_line_one).setVisibility(View.GONE);
-                    } else {
-                        holder.getView(R.id.item_text_phone).setVisibility(View.VISIBLE);
-                        holder.getView(R.id.order_line_one).setVisibility(View.VISIBLE);
-                    }
                     holder.setText(R.id.tv_error_state, "[等待验收]");
                     holder.setTextColor(R.id.tv_error_state, mActivity.getResources().getColor(R.color.cl_tab_line));
                     holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
@@ -168,22 +167,22 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
                     }
                 }
                 break;
-            case 5://已完成
-                holder.setText(R.id.tv_error_state, "[已完成]");
-                holder.setTextColor(R.id.tv_error_state, mActivity.getResources().getColor(R.color.cl_tab_line));
-                holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
-                holder.getView(R.id.item_updata_time).setVisibility(View.GONE);
-                holder.getView(R.id.tv_item_process).setVisibility(View.GONE);
-                holder.getView(R.id.order_line_one).setVisibility(View.GONE);
-                holder.getView(R.id.order_line_two).setVisibility(View.GONE);
-                if (!haveCustomer) {
-                    holder.getView(R.id.ll_bottom).setVisibility(View.GONE);
-                    holder.getView(R.id.item_bottom_line).setVisibility(View.GONE);
-                } else {
-                    holder.getView(R.id.ll_bottom).setVisibility(View.VISIBLE);
-                    holder.getView(R.id.item_bottom_line).setVisibility(View.VISIBLE);
-                }
-                break;
+//            case 5://已完成
+//                holder.setText(R.id.tv_error_state, "[已完成]");
+//                holder.setTextColor(R.id.tv_error_state, mActivity.getResources().getColor(R.color.cl_tab_line));
+//                holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
+//                holder.getView(R.id.item_updata_time).setVisibility(View.GONE);
+//                holder.getView(R.id.tv_item_process).setVisibility(View.GONE);
+//                holder.getView(R.id.order_line_one).setVisibility(View.GONE);
+//                holder.getView(R.id.order_line_two).setVisibility(View.GONE);
+//                if (!haveCustomer) {
+//                    holder.getView(R.id.ll_bottom).setVisibility(View.GONE);
+//                    holder.getView(R.id.item_bottom_line).setVisibility(View.GONE);
+//                } else {
+//                    holder.getView(R.id.ll_bottom).setVisibility(View.VISIBLE);
+//                    holder.getView(R.id.item_bottom_line).setVisibility(View.VISIBLE);
+//                }
+//                break;
             default:
                 break;
         }
@@ -216,22 +215,15 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
         mHolder = h;
         int position = mHolder.getAdapterPosition();
         if (mItem.getStatus() == 4 && mItem.getSubStatus() == 3) {
-//            dumpProcessActivity(mItem.getId(), position);
-            Intent intent = new Intent(mActivity, SopWebViewActivity.class);
-            intent.putExtra(Constants.ORDER_ID, mItem.getId());
-            intent.putExtra(Constants.ACCOUNT_ID, GetUserInfo.getToken(mContext));
-            mActivity.startActivity(intent);
+            dumpProcessActivity(mItem.getId(), position);
         } else if (mItem.getStatus() == 4 && mItem.getSubStatus() == 4) {
-            Intent intent = new Intent(mActivity, SopWebViewActivity.class);
-            intent.putExtra(Constants.ORDER_ID, mItem.getId());
-            intent.putExtra(Constants.ACCOUNT_ID, GetUserInfo.getToken(mContext));
-            mActivity.startActivity(intent);
+            if (mItem.getSopStatus() == 1) {//sop启用
+                dumpSOPActivity(mItem.getId(), position);
+            } else if (mItem.getSopStatus() == 0) {
+                dumpProcessActivity(mItem.getId(), position);
+            }
         } else if (mItem.getStatus() == 4 && mItem.getSubStatus() == 5) {
-//            dumpProcessActivity(mItem.getId(), position);
-            Intent intent = new Intent(mActivity, SopWebViewActivity.class);
-            intent.putExtra(Constants.ORDER_ID, mItem.getId());
-            intent.putExtra(Constants.ACCOUNT_ID, GetUserInfo.getToken(mContext));
-            mActivity.startActivity(intent);
+            dumpProcessActivity(mItem.getId(), position);
         }
         if (mItem.getStatus() == 4) {
             return;
@@ -240,8 +232,14 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
         LocationUtils.getCurrentLocation(new LocationUtils.MyLocationListener() {
             @Override
             public void result(AMapLocation location) {
+                double latitude = 0;
+                double longitude = 0;
+                if (location != null) {
+                    latitude = location.getLatitude();
+                    longitude = location.getLongitude();
+                }
                 if (mItem.getStatus() == 3 && mItem.getSubStatus() == 1) {
-                    mPresenter.startOrder(mItem.getId(), 0, 0)
+                    mPresenter.startOrder(mItem.getId(), latitude, longitude)
                             .observeOn(AndroidSchedulers.mainThread())
                             .subscribe(mPresenter.baseObserver(new Consumer<Integer>() {
                                 @Override
@@ -253,7 +251,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
                                 }
                             }));
                 } else if (mItem.getStatus() == 3 && mItem.getSubStatus() == 2) {
-                    mPresenter.startServer(mItem.getId(), 0, 0)
+                    mPresenter.startServer(mItem.getId(), latitude, longitude)
                             .observeOn(AndroidSchedulers.mainThread())
                             .subscribe(mPresenter.baseObserver(new Consumer<Integer>() {
                                 @Override
@@ -261,7 +259,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
                                     LocationUtils.stop();
                                     ProgressUtil.stopLoad();
                                     mItem.setStatus(4);
-                                    mItem.setSubStatus(3);
+                                    mItem.setSubStatus(integer);
                                     mHolder.setText(R.id.tv_item_process, "处理工单");
                                     mHolder.setText(R.id.item_updata_time, "需要再次上门");
                                 }
@@ -274,19 +272,27 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
 
     private void dumpSubcribeTimeActivity(int id, int adapterPosition, int state) {
         Intent intent = new Intent(mContext, SubcribeTimeActivity.class);
-        intent.putExtra("orderId", id + "");
-        intent.putExtra("position", adapterPosition);
+        intent.putExtra(Constants.ORDER_ID, id);
+        intent.putExtra(Constants.ORDER_POSTION, adapterPosition);
         intent.putExtra(Constants.ORDER_STATE, state);
         mContext.startActivity(intent);
     }
 
     private void dumpProcessActivity(int id, int adapterPosition) {
         Intent intent = new Intent(mContext, ProcessOrderActivity.class);
-        intent.putExtra("orderId", id + "");
-        intent.putExtra("position", adapterPosition);
+        intent.putExtra(Constants.ORDER_ID, id);
+        intent.putExtra(Constants.ORDER_POSTION, adapterPosition);
         mContext.startActivity(intent);
     }
 
+    private void dumpSOPActivity(int id, int adapterPosition) {
+        Intent intent = new Intent(mActivity, SopWebViewActivity.class);
+        intent.putExtra(Constants.ORDER_ID, id);
+        intent.putExtra(Constants.ORDER_POSTION, adapterPosition);
+        mActivity.startActivity(intent);
+    }
+
+
     public void initPresenter(OrderTwoTabPresenter presenter) {
         mPresenter = presenter;
     }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/BigFishMessageFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/BigFishMessageFragment.java
index 60f45d1..6f79923 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/BigFishMessageFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/BigFishMessageFragment.java
@@ -4,7 +4,6 @@ import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
-import android.widget.RelativeLayout;
 
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
@@ -29,8 +28,6 @@ public class BigFishMessageFragment extends BaseFragment<SysMessagePresenter> im
     RecyclerView mRecyclerView;
     @BindView(R.id.receiving_refersh)
     SwipeRefreshLayout mRefreshLayout;
-    @BindView(R.id.message_view)
-    RelativeLayout messageView;
     private SystemMessageAdapter mAdapter;
     private String hxUserId;
     private int mPage = 1;
@@ -41,8 +38,8 @@ public class BigFishMessageFragment extends BaseFragment<SysMessagePresenter> im
 
     @Override
     public View initView(View view) {
-        hxUserId = GetUserInfo.getHxUserId(getActivity());
-        ProgressUtil.startLoad(getActivity());
+        hxUserId = GetUserInfo.getHxUserId(mActivity);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
         mAdapter = new SystemMessageAdapter(R.layout.message_adapter);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
@@ -81,13 +78,11 @@ public class BigFishMessageFragment extends BaseFragment<SysMessagePresenter> im
             }
         } else {
             mRefreshLayout.setRefreshing(false);
-            messageView.setVisibility(View.VISIBLE);
         }
     }
 
     @Override
     public void getHxMessageFail() {
-        messageView.setVisibility(View.VISIBLE);
     }
 
     @Override
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/HomeOrderFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/HomeOrderFragment.java
index 2c4abc1..100e544 100644
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/HomeOrderFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/HomeOrderFragment.java
@@ -1,6 +1,5 @@
 package com.dayu.bigfish.ui.fragment;
 
-import android.app.Activity;
 import android.content.Intent;
 import android.content.res.AssetManager;
 import android.graphics.Typeface;
@@ -15,11 +14,11 @@ import android.widget.TextView;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
 import com.dayu.bigfish.bean.Tab;
+import com.dayu.bigfish.bean.event.RefreshTab;
+import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.presenter.homesecondtab.HomeSecondContract;
 import com.dayu.bigfish.presenter.homesecondtab.HomeSecondPresenter;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
-import com.dayu.bigfish.bean.event.RxBus;
-import com.dayu.bigfish.ui.WorksRecordActivity;
+import com.dayu.bigfish.ui.OrderRecordActivity;
 import com.dayu.bigfish.ui.adapter.FragmentHomeAdapter;
 import com.dayu.bigfish.utils.GetUserInfo;
 import com.dayu.bigfish.utils.ProgressUtil;
@@ -41,7 +40,7 @@ import static com.dayu.bigfish.R.id.tabicon;
 
 public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> implements HomeSecondContract.View {
     @BindView(R.id.home_tabLayout)
-    TabLayout homeTabLayout;
+    TabLayout mTabLayout;
     @BindView(R.id.view_pager)
     ViewPager mViewPager;
     @BindView(R.id.title_right)
@@ -49,8 +48,6 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
     public List<Fragment> list_fragments;
     private FragmentHomeAdapter adapter;
     private int userId;
-    private String imageUrl;
-    private int siteId;
     private TextView mTabNumTv;
     private TextView mTabTextTv;
     private int mSelectedTab;
@@ -58,9 +55,11 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
     public final static int SUBCRIBE_TIME = 2;//预约上门时间
     public final static int ORDER_YUYUE = 3;//修改预约时间
     public final static int ORDER_DOING = 4;//再次上门时间
-    public final static int ORDER_FINISH = 5;//已完成
+    public final static int ORDER_SOP_FINISH = 5;//SOP已完成
+    public final static int ORDER_FINISH = 6;//已完成
+    public final static int ORDER_NOCONTACT_FINISH = 7;//无联系人已完成
     private int mTabIndex;
-    private Activity mActivity;
+    private String[] tabDesc = new String[]{"待预约", "待服务", "异常单", "已取消"};
 
     public static HomeOrderFragment newInstance() {
         Bundle args = new Bundle();
@@ -71,8 +70,6 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
 
     @Override
     public View initView(View view) {
-        mActivity = getActivity();
-        imageUrl = GetUserInfo.getUserHead(mActivity);
         init();
         initData();
         return view;
@@ -96,22 +93,14 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
 
     public void init() {
         userId = GetUserInfo.getACCOUNT_ID(mActivity);
-        siteId = GetUserInfo.getSITE_ID(mActivity);
-        RxBus.getDefault().toObservable(RefreshTabNum.class)
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshTab.class)
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new Consumer<RefreshTabNum>() {
+                .subscribe(new Consumer<RefreshTab>() {
                     @Override
-                    public void accept(RefreshTabNum refreshTabNum) throws Exception {
-                        if (refreshTabNum.getTabNum() == 0) {
-                            //请求网络,刷新Tab
-                            initNetWorkTabNum(userId, 0);
-                        } else if (refreshTabNum.getTabNum() == 1) {
-                            initNetWorkTabNum(userId, 1);
-                        } else if (refreshTabNum.getTabNum() == -1) {
-                            initNetWorkTabNum(userId, -1);
-                        }
+                    public void accept(RefreshTab refreshTabNum) throws Exception {
+                        initNetWorkTabNum(userId, refreshTabNum.getTabNum());
                     }
-                });
+                }));
     }
 
     public void initData() {
@@ -122,14 +111,14 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
         list_fragments.add(new OrderFourTabFragment());
         adapter = new FragmentHomeAdapter(getFragmentManager(), list_fragments);
         mViewPager.setAdapter(adapter);
-        homeTabLayout.setupWithViewPager(mViewPager);
-        homeTabLayout.setTabMode(TabLayout.MODE_FIXED);
+        mTabLayout.setupWithViewPager(mViewPager);
+        mTabLayout.setTabMode(TabLayout.MODE_FIXED);
         mViewPager.setOffscreenPageLimit(4);
         mViewPager.setCurrentItem(0);
-        homeTabLayout.post(() -> {
-            TabLayoutUtils.setIndicator(homeTabLayout, 15, 15, R.color.cl_order_item_line_bg, mActivity);
+        mTabLayout.post(() -> {
+            TabLayoutUtils.setIndicator(mTabLayout, 15, 15, R.color.cl_order_item_line_bg, mActivity);
         });
-        homeTabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
+        mTabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
             /**
              * tab的状态监听器,此方法是当tab被选中的回调
              * @param  tab 当前被选中的tab
@@ -209,43 +198,25 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
      * 将网络请求到的数据展示到tab上
      */
     private void setTabNum(Tab tab, int myTabIndex) {
+        String[] tabNum = new String[]{tab.getReservation() + "", tab.getPendingservice() + "",
+                tab.getError() + "", tab.getCanceled() + ""};
         if (isFirstAddTab) {
-            homeTabLayout.removeAllTabs();
-            homeTabLayout.addTab(homeTabLayout.newTab().setCustomView(CreatTab(tab.getReservation() + "", "待预约")));
-            homeTabLayout.addTab(homeTabLayout.newTab().setCustomView(CreatTab(tab.getPendingservice() + "", "待服务")));
-            homeTabLayout.addTab(homeTabLayout.newTab().setCustomView(CreatTab(tab.getError() + "", "异常单")));
-            homeTabLayout.addTab(homeTabLayout.newTab().setCustomView(CreatTab(tab.getCanceled() + "", "已取消")));
+            mTabLayout.removeAllTabs();
+            mTabLayout.addTab(mTabLayout.newTab().setCustomView(CreatTab(tabNum[0], tabDesc[0])));
+            mTabLayout.addTab(mTabLayout.newTab().setCustomView(CreatTab(tabNum[1], tabDesc[1])));
+            mTabLayout.addTab(mTabLayout.newTab().setCustomView(CreatTab(tabNum[2], tabDesc[2])));
+            mTabLayout.addTab(mTabLayout.newTab().setCustomView(CreatTab(tabNum[3], tabDesc[3])));
             isFirstAddTab = false;
         } else {
-            int num = 0;
-            String text = null;
-            switch (mSelectedTab) {
-                case 0:
-                    num = tab.getReservation();
-                    text = "待预约";
-                    break;
-                case 1:
-                    num = tab.getPendingservice();
-                    text = "待服务";
-                    break;
-                case 2:
-                    num = tab.getError();
-                    text = "异常单";
-                    break;
-                case 3:
-                    num = tab.getCanceled();
-                    text = "已取消";
-                    break;
-                default:
-                    break;
-            }
-            if (mTabNumTv != null && mTabTextTv != null) {
-                mTabNumTv.setText(num + "");
-                mTabTextTv.setText(text);
+            for (int i = 0; i < mTabLayout.getTabCount(); i++) {
+                TextView tv = (TextView) mTabLayout.getTabAt(i).getCustomView().findViewById(R.id.tabtext);
+                TextView tvIcon = (TextView) mTabLayout.getTabAt(i).getCustomView().findViewById(R.id.tabicon);
+                tv.setText(tabNum[i]);
+                tvIcon.setText(tabDesc[i]);
             }
             if (myTabIndex != -1) {
                 mViewPager.setCurrentItem(myTabIndex);
-                homeTabLayout.getTabAt(myTabIndex).select();
+                mTabLayout.getTabAt(myTabIndex).select();
             }
         }
     }
@@ -260,10 +231,9 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
 
         View newtab = LayoutInflater.from(mActivity).inflate(R.layout.activity_home_tab, null);
         TextView textView_number = (TextView) newtab.findViewById(R.id.tabtext);
-        AssetManager mgr = mActivity.getAssets();//得到AssetManager
-        //设置字体的为DIN Alternate Bol格式
-        Typeface tf = Typeface.createFromAsset(mgr, "fonts/DIN Alternate Bold.ttf");//根据路径得到Typeface
-        textView_number.setTypeface(tf);//设置字体
+        AssetManager mgr = mActivity.getAssets();
+        Typeface tf = Typeface.createFromAsset(mgr, "fonts/DIN Alternate Bold.ttf");
+        textView_number.setTypeface(tf);
         textView_number.setText(number);
         TextView textView = (TextView) newtab.findViewById(tabicon);
         textView.setText(iconID);
@@ -275,7 +245,7 @@ public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> impleme
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.title_right:
-                Intent intent = new Intent(mActivity, WorksRecordActivity.class);
+                Intent intent = new Intent(mActivity, OrderRecordActivity.class);
                 mActivity.startActivity(intent);
                 break;
         }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/HomePersonFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/HomePersonFragment.java
index 9f56318..acbab80 100644
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/HomePersonFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/HomePersonFragment.java
@@ -1,5 +1,6 @@
 package com.dayu.bigfish.ui.fragment;
 
+import android.app.Dialog;
 import android.content.Intent;
 import android.content.res.AssetManager;
 import android.graphics.Bitmap;
@@ -28,14 +29,14 @@ import com.dayu.bigfish.bean.TodayBalance;
 import com.dayu.bigfish.presenter.homefourtab.HomeFourContract;
 import com.dayu.bigfish.presenter.homefourtab.HomeFourPresenter;
 import com.dayu.bigfish.ui.AccountBalanceActivity;
+import com.dayu.bigfish.ui.OrderRecordActivity;
 import com.dayu.bigfish.ui.SettingActivity;
 import com.dayu.bigfish.ui.WithdrawalsActivity;
-import com.dayu.bigfish.ui.WorksRecordActivity;
+import com.dayu.bigfish.ui.views.CircleImageView;
+import com.dayu.bigfish.ui.views.CustomDialog;
 import com.dayu.bigfish.utils.GetUserInfo;
 import com.dayu.bigfish.utils.ProgressUtil;
 import com.dayu.bigfish.utils.SPUtils;
-import com.dayu.bigfish.ui.views.CircleImageView;
-import com.dayu.bigfish.ui.views.CommomDialog;
 
 import butterknife.BindView;
 import butterknife.OnClick;
@@ -78,7 +79,6 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
     private String userPhone;
     private String evaluate;
     private int mAccountBalance;
-    private boolean isFirst = true;
 
     public static HomePersonFragment newInstance() {
         Bundle args = new Bundle();
@@ -91,13 +91,13 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
     public View initView(View view) {
         userId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
         siteId = GetUserInfo.getSITE_ID(MyApplication.getContext());
-        AssetManager mgr = mContext.getAssets();
+        AssetManager mgr = mActivity.getAssets();
         Typeface tf = Typeface.createFromAsset(mgr, "fonts/DIN Alternate Bold.ttf");
         textYejiNum.setTypeface(tf);
         textJiedanNum.setTypeface(tf);
         textLeijiNum.setTypeface(tf);
         textGongdanNum.setTypeface(tf);
-        imageUrl = GetUserInfo.getUserHead(mContext);
+        imageUrl = GetUserInfo.getUserHead(mActivity);
         if (TextUtils.isEmpty(imageUrl)) {
             personCircle.setImageResource(R.mipmap.user_head);
         } else {
@@ -119,23 +119,24 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
 
     @Override
     protected void lazyLoad() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getAllData(userId, siteId);
+        mPresenter.getAlipayAccount(userId);
     }
 
     @OnClick({R.id.person_setting, R.id.rl_gd, R.id.rl_yue})
     public void onViewClicked(View view) {
         switch (view.getId()) {
             case R.id.person_setting:
-                Intent intentSetting = new Intent(mContext, SettingActivity.class);
+                Intent intentSetting = new Intent(mActivity, SettingActivity.class);
                 startActivity(intentSetting);
                 break;
             case R.id.rl_gd:
-                Intent intent = new Intent(mContext, WorksRecordActivity.class);
+                Intent intent = new Intent(mActivity, OrderRecordActivity.class);
                 startActivity(intent);
                 break;
             case R.id.rl_yue:
-                Intent intent1 = new Intent(mContext, AccountBalanceActivity.class);
+                Intent intent1 = new Intent(mActivity, AccountBalanceActivity.class);
                 intent1.putExtra(Constants.ACCOUNT_BALANCE, mAccountBalance);
                 startActivity(intent1);
             default:
@@ -146,7 +147,7 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
     public void fillData(EngineerInfo info) {
         userName = info.getRealName();
         personName.setText(userName);
-        SPUtils.put(mContext, "USER_NAME", userName);
+        SPUtils.put(mActivity, "USER_NAME", userName);
         if (info.getGender() == 1) {
             personSex.setText("男");
         } else if (info.getGender() == 0) {
@@ -157,24 +158,26 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
         personAge.setText(info.getAge() + "岁");
         userPhone = info.getMobile();
         personPhone.setText(userPhone);
-        SPUtils.put(mContext, "USER_PHONE", userPhone);
+        SPUtils.put(mActivity, "USER_PHONE", userPhone);
     }
 
     private void showAlertDialog() {
-        CommomDialog dialog = new CommomDialog(mContext, R.style.custom_dialog2);
-        dialog.setOnDialogClickListener(new CommomDialog.OnDialogClickListener() {
+        CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, "您还没有设置账户"
+                , new CustomDialog.OnCloseListener() {
             @Override
-            public void onRightClickListener() {
-                Intent intent = new Intent(mContext, WithdrawalsActivity.class);
-                startActivity(intent);
+            public void onClick(Dialog dialog, boolean confirm) {
+                if (confirm) {
+                    Intent intent = new Intent(mActivity, WithdrawalsActivity.class);
+                    startActivity(intent);
+                    dialog.dismiss();
+                } else {
+                }
                 dialog.dismiss();
             }
-
-            @Override
-            public void onLeftClickListener() {
-
-            }
         });
+        dialog.setTitle("提示")
+                .setNegativeButton("暂不设置")
+                .setPositiveButton("前往设置");
         dialog.show();
     }
 
@@ -185,18 +188,18 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
 
     @Override
     public void getAchievementSuccess(TodayAchievement achievement) {
-        textYejiNum.setText(achievement.getAchievenment() + "");
+        textYejiNum.setText(achievement.getAchievement() + "");
     }
 
     @Override
     public void getOrderRecordSuccess(OrderRecord record) {
         //累计业绩
-        textLeijiNum.setText(record.get累计收益() + "");
+        textLeijiNum.setText(record.getCumulativeIncome() + "");
         //工单记录
-        textGongdanNum.setText(record.get工单记录() + "");
+        textGongdanNum.setText(record.getOrderRecord() + "");
         //个人评分
-        personEvaluate.setText(record.get评分() + "分");
-        evaluate = record.get评分() + "";
+        personEvaluate.setText(record.getScore() + "分");
+        evaluate = record.getScore() + "";
         drawStars(personEvaluateXing, evaluate, "5");
     }
 
@@ -216,10 +219,10 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
 
     @Override
     public void getAlipayAccountSuccess(AlipayInfo info) {
-        boolean isShow = (boolean) SPUtils.get(mContext, Constants.IS_SHOW_ALIPAY_DILAOG, true);
-        if (isShow) {
+        boolean isShow = (boolean) SPUtils.get(mActivity, Constants.IS_SHOW_ALIPAY_DILAOG, true);
+        if (isShow && TextUtils.isEmpty(info.getAlipayAccount())) {
             showAlertDialog();
-            SPUtils.put(mContext, Constants.IS_SHOW_ALIPAY_DILAOG, false);
+            SPUtils.put(mActivity, Constants.IS_SHOW_ALIPAY_DILAOG, false);
         }
     }
 
@@ -263,8 +266,8 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
                 ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
         layoutParams.setMargins(3, 0, 3, 0);
         for (int i = 0; i < beginNum; i++) {
-            ImageView starImg = new ImageView(mContext);
-            Bitmap bm = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.
+            ImageView starImg = new ImageView(mActivity);
+            Bitmap bm = BitmapFactory.decodeResource(mActivity.getResources(), R.mipmap.
                     person_xingxing);
             starImg.setImageBitmap(bm);
             starLinearLayout.addView(starImg, layoutParams);
@@ -272,16 +275,16 @@ public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implemen
 
 
         if (isNedHalf) {
-            ImageView starImg = new ImageView(mContext);
-            Bitmap bm = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.
+            ImageView starImg = new ImageView(mActivity);
+            Bitmap bm = BitmapFactory.decodeResource(mActivity.getResources(), R.mipmap.
                     person_banxing);
             starImg.setImageBitmap(bm);
             starLinearLayout.addView(starImg, layoutParams);
         }
 
         for (int i = 0; i < endNum; i++) {
-            ImageView starImg = new ImageView(mContext);
-            Bitmap bm = BitmapFactory.decodeResource(mContext.getResources(), R.mipmap.
+            ImageView starImg = new ImageView(mActivity);
+            Bitmap bm = BitmapFactory.decodeResource(mActivity.getResources(), R.mipmap.
                     person_xing);
             starImg.setImageBitmap(bm);
             starLinearLayout.addView(starImg, layoutParams);
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsFragment.java
index 3b19bd6..4e99401 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsFragment.java
@@ -96,7 +96,7 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
     @Override
     public View initView(View view) {
         orderId = getArguments().getInt("orderId");
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getOrderDetailInfo(orderId);
         return view;
     }
@@ -236,7 +236,7 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
         }
         if (dataBean.getAccessories() != null && dataBean.getAccessories().size() != 0) {
             mAdapter = new AccessoriesAdapter(R.layout.item_accessories_layout);
-            mAccessories.setLayoutManager(new LinearLayoutManager(mContext));
+            mAccessories.setLayoutManager(new LinearLayoutManager(mActivity));
             mAccessories.setAdapter(mAdapter);
             mAdapter.setNewData(dataBean.getAccessories());
         }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsServeFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsServeFragment.java
index 5a8f1fb..5086b8e 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsServeFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderDatailsServeFragment.java
@@ -30,7 +30,7 @@ public class OrderDatailsServeFragment extends BaseFragment<OrderDetailServePres
     public View initView(View view) {
         orderId = getArguments().getInt("orderId");
         mAdapter = new ServeDatailsAdapter(R.layout.serve_datails_item);
-        mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        mRecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         return null;
@@ -43,7 +43,7 @@ public class OrderDatailsServeFragment extends BaseFragment<OrderDetailServePres
 
     @Override
     protected void lazyLoad() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getOrderServerInfo(orderId);
     }
 
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFirstTabFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFirstTabFragment.java
index 66c2f0a..b8c6b32 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFirstTabFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFirstTabFragment.java
@@ -8,16 +8,15 @@ import android.view.View;
 
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.dayu.bigfish.Constants;
-import com.dayu.bigfish.MyApplication;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
 import com.dayu.bigfish.base.BasePageBean;
 import com.dayu.bigfish.bean.Order;
+import com.dayu.bigfish.bean.event.RefreshApoiment;
+import com.dayu.bigfish.bean.event.RefreshTab;
+import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.presenter.ordertab.OrderTabContract;
 import com.dayu.bigfish.presenter.ordertab.OrderTabPresenter;
-import com.dayu.bigfish.bean.event.RefreshReceivingNum;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
-import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.ui.OrderDetailsActivity;
 import com.dayu.bigfish.ui.adapter.OrderDoingAdapter;
 import com.dayu.bigfish.utils.GetUserInfo;
@@ -38,8 +37,8 @@ public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter> imple
     @BindView(R.id.recyle_tab_one)
     RecyclerView mRecyclerView;
     private OrderDoingAdapter mAdapter;
-    private int siteId = GetUserInfo.getSITE_ID(MyApplication.getContext());
-    private int userId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
+    private int siteId;
+    private int userId;
     private int mTotalPage;
     private int mPageSize = 10;
     private int mPage = 1;
@@ -48,13 +47,16 @@ public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter> imple
 
     @Override
     public View initView(View view) {
-        mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, getActivity());
-        mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        siteId = GetUserInfo.getSITE_ID(mActivity);
+        userId = GetUserInfo.getACCOUNT_ID(mActivity);
+        mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
+        mRecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         mRefreshLayout.setOnRefreshListener(this);
         mAdapter.setOnLoadMoreListener(this, mRecyclerView);
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getWatingOrder(Constants.APPOIMENT_ORDER, userId, siteId, mPage, mPageSize);
         initListener();
         return view;
@@ -66,61 +68,67 @@ public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter> imple
 
     @Override
     public int getLayoutId() {
-        return R.layout.fragment_tab_one;
+        return R.layout.fragment_tab_order;
     }
 
 
     public void initListener() {
-        RxBus.getDefault().toObservable(RefreshReceivingNum.class)
+//        mDisposable.add(RxBus.getDefault().toObservable(RefreshReceivingNum.class)
+//                .observeOn(AndroidSchedulers.mainThread())
+//                .subscribe(new Consumer<RefreshReceivingNum>() {
+//                    @Override
+//                    public void accept(RefreshReceivingNum refreshReceivingNum) throws Exception {
+//                        if (refreshReceivingNum.getTabNum() == -1) {
+//                            mAdapter.setEnableLoadMore(false);
+//                            ProgressUtil.startLoad(mActivity);
+//                            mPresenter.getWatingOrder(Constants.APPOIMENT_ORDER, userId, siteId, mPage, mPageSize);
+//                        }
+//                    }
+//                }));
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshApoiment.class)
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new Consumer<RefreshReceivingNum>() {
+                .subscribe(new Consumer<RefreshApoiment>() {
                     @Override
-                    public void accept(RefreshReceivingNum refreshReceivingNum) throws Exception {
-                        ProgressUtil.startLoad(mContext);
+                    public void accept(RefreshApoiment refreshNum) throws Exception {
+                        mPage = 1;
+                        mAdapter.setEnableLoadMore(false);
+                        ProgressUtil.startLoad(mActivity);
                         mPresenter.getWatingOrder(Constants.APPOIMENT_ORDER, userId, siteId, mPage, mPageSize);
                     }
-                });
-        mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
-            @Override
-            public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
-                Order order = (Order) adapter.getItem(position);
-                Intent intent = new Intent(mContext, OrderDetailsActivity.class);
-                intent.putExtra("orderId", order.getId() + "");
-                startActivity(intent);
-            }
+                }));
+        mAdapter.setOnItemClickListener((adapter, view, position) -> {
+            Order order = (Order) adapter.getItem(position);
+            Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
+            intent.putExtra("orderId", order.getId() + "");
+            startActivity(intent);
         });
-        mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
-            @Override
-            public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
-                Order order = (Order) adapter.getItem(position);
-                Intent intent = new Intent(getContext(), OrderDetailsActivity.class);
-                intent.putExtra("orderId", order.getId() + "");
-                startActivity(intent);
-            }
+        mAdapter.setOnItemChildClickListener((adapter, view, position) -> {
+            Order order = (Order) adapter.getItem(position);
+            Intent intent = new Intent(getContext(), OrderDetailsActivity.class);
+            intent.putExtra("orderId", order.getId() + "");
+            startActivity(intent);
         });
     }
 
     @Override
     public void getWatingOrderSuccess(BasePageBean<Order> data) {
-        RxBus.getDefault().post(new RefreshTabNum(-1));
+        RxBus.getDefault().post(new RefreshTab(-1));
         mTotalPage = data.getTotalPages();
         mPageSize = data.getPageSize();
-        if (data.getData() != null && data.getData().size() != 0) {
-            if (mRefreshState == 1) {
-                mRefreshLayout.setRefreshing(false);
-                mAdapter.setNewData(data.getData());
-            } else {
-                mAdapter.addData(data.getData());
-            }
-            if (mPage == mTotalPage) {
-                mAdapter.loadMoreEnd();
-            } else {
-                mAdapter.loadMoreComplete();
-                mPage += 1;
-            }
-            mAdapter.notifyDataSetChanged();
-        } else {
+        if (mRefreshState == 1) {
             mRefreshLayout.setRefreshing(false);
+            mAdapter.setNewData(data.getData());
+            mAdapter.setEnableLoadMore(true);
+        } else {
+            mAdapter.addData(data.getData());
+        }
+        if (mPage == mTotalPage) {
+            mAdapter.loadMoreEnd();
+        } else {
+            mAdapter.loadMoreComplete();
+        }
+        mPage += 1;
+        if (data.getData().size() == 0) {
             mAdapter.setEmptyView(R.layout.tips_empty);
         }
     }
@@ -130,13 +138,24 @@ public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter> imple
         if (mRefreshState == 1) {
             mRefreshLayout.setRefreshing(false);
             mAdapter.setEmptyView(R.layout.tips_loading_failed);
+            mAdapter.setEnableLoadMore(true);
         }
+        mAdapter.loadMoreFail();
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            refresh();
+        });
     }
 
     @Override
     public void onRefresh() {
+        refresh();
+    }
+
+    public void refresh() {
         mRefreshState = 1;
         mPage = 1;
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getWatingOrder(Constants.APPOIMENT_ORDER, userId, siteId, mPage, mPageSize);
     }
 
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFourTabFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFourTabFragment.java
index 7d3c24c..f30e7b4 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFourTabFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderFourTabFragment.java
@@ -8,21 +8,23 @@ import android.view.View;
 
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.dayu.bigfish.Constants;
-import com.dayu.bigfish.MyApplication;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
 import com.dayu.bigfish.base.BasePageBean;
 import com.dayu.bigfish.bean.Order;
+import com.dayu.bigfish.bean.event.RefreshCancle;
+import com.dayu.bigfish.bean.event.RefreshTab;
+import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.presenter.ordertab.OrderTabContract;
 import com.dayu.bigfish.presenter.ordertab.OrderTabPresenter;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
-import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.ui.OrderDetailsActivity;
 import com.dayu.bigfish.ui.adapter.OrderFourTabAdapter;
 import com.dayu.bigfish.utils.GetUserInfo;
 import com.dayu.bigfish.utils.ProgressUtil;
 
 import butterknife.BindView;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.functions.Consumer;
 
 
 /**
@@ -36,8 +38,8 @@ public class OrderFourTabFragment extends BaseFragment<OrderTabPresenter> implem
     @BindView(R.id.recyle_tab_one)
     RecyclerView mRecyclerView;
     private OrderFourTabAdapter mAdapter;
-    private int siteId = GetUserInfo.getSITE_ID(MyApplication.getContext());
-    private int userId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
+    private int siteId;
+    private int userId;
     private int mTotalPage;
     private int mPageSize = 10;
     private int mPage = 1;
@@ -45,12 +47,13 @@ public class OrderFourTabFragment extends BaseFragment<OrderTabPresenter> implem
 
     @Override
     public View initView(View view) {
+        siteId = GetUserInfo.getSITE_ID(mActivity);
+        userId = GetUserInfo.getACCOUNT_ID(mActivity);
         mAdapter = new OrderFourTabAdapter(R.layout.fragment_order_cancle_item);
-        mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        mRecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         mRefreshLayout.setOnRefreshListener(this);
-        mAdapter.setOnLoadMoreListener(this, mRecyclerView);
         initListener();
         return view;
     }
@@ -62,67 +65,88 @@ public class OrderFourTabFragment extends BaseFragment<OrderTabPresenter> implem
 
     @Override
     public int getLayoutId() {
-        return R.layout.fragment_tab_one;
+        return R.layout.fragment_tab_order;
     }
 
     protected void initData() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getWatingOrder(Constants.CANCLE_ORDER, userId, siteId, mPage, mPageSize);
     }
 
     public void initListener() {
-        mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
-            @Override
-            public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
-                Order order = (Order) adapter.getItem(position);
-                Intent intent = new Intent(mContext, OrderDetailsActivity.class);
-                intent.putExtra("orderId", order.getId() + "");
-                startActivity(intent);
-            }
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshCancle.class)
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new Consumer<RefreshCancle>() {
+                    @Override
+                    public void accept(RefreshCancle refreshNum) throws Exception {
+                        mPage = 1;
+                        ProgressUtil.startLoad(mActivity);
+                        refresh();
+                    }
+                }));
+        mAdapter.setOnItemClickListener((adapter, view, position) -> {
+            Order order = (Order) adapter.getItem(position);
+            Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
+            intent.putExtra("orderId", order.getId() + "");
+            startActivity(intent);
         });
     }
 
 
     @Override
     public void getWatingOrderSuccess(BasePageBean<Order> data) {
-        RxBus.getDefault().post(new RefreshTabNum(-1));
+        RxBus.getDefault().post(new RefreshTab(-1));
         mTotalPage = data.getTotalPages();
         mPageSize = data.getPageSize();
-        if (data.getData() != null && data.getData().size() != 0) {
-            if (mRefreshState == 1) {
-                mRefreshLayout.setRefreshing(false);
-                mAdapter.setNewData(data.getData());
-            } else {
-                mAdapter.addData(data.getData());
-            }
-            if (mPage == mTotalPage) {
-                mAdapter.loadMoreEnd();
-            } else {
-                mAdapter.loadMoreComplete();
-                mPage += 1;
-            }
-            mAdapter.notifyDataSetChanged();
-        } else {
+        if (mRefreshState == 1) {
             mRefreshLayout.setRefreshing(false);
+            mAdapter.setNewData(data.getData());
+            mAdapter.setEnableLoadMore(true);
+        } else {
+            mAdapter.addData(data.getData());
+        }
+        if (mPage >= mTotalPage) {
+            mAdapter.loadMoreEnd();
+        } else {
+            mAdapter.loadMoreComplete();
+        }
+        mPage += 1;
+        if (data.getData().size() == 0) {
             mAdapter.setEmptyView(R.layout.tips_empty);
         }
     }
 
     @Override
     public void getWatingOrderFial() {
-        mAdapter.setEmptyView(R.layout.tips_loading_failed);
+        if (mRefreshLayout.isRefreshing()) {
+            mRefreshLayout.setRefreshing(false);
+            mAdapter.setEmptyView(R.layout.tips_loading_failed);
+        }
+        mAdapter.setEnableLoadMore(true);
+        mAdapter.loadMoreFail();
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            refresh();
+        });
     }
 
     @Override
     public void onRefresh() {
+        refresh();
+    }
+
+    public void refresh() {
         mRefreshState = 1;
         mPage = 1;
-        mPresenter.getWatingOrder(Constants.CANCLE_ORDER, siteId, userId, mPage, mPageSize);
+        mAdapter.setEnableLoadMore(false);
+        mPresenter.getWatingOrder(Constants.CANCLE_ORDER, userId, siteId, mPage, mPageSize);
     }
 
+
     @Override
     public void onLoadMoreRequested() {
         mRefreshState = 2;
-        mPresenter.getWatingOrder(Constants.CANCLE_ORDER, siteId, userId, mPage, mPageSize);
+        mPresenter.getWatingOrder(Constants.CANCLE_ORDER, userId, siteId, mPage, mPageSize);
     }
 }
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderSecondTabFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderSecondTabFragment.java
index 2495219..6ededb7 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderSecondTabFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderSecondTabFragment.java
@@ -6,24 +6,21 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
 
-import com.amap.api.location.AMapLocation;
 import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.dayu.bigfish.Constants;
-import com.dayu.bigfish.MyApplication;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
 import com.dayu.bigfish.base.BasePageBean;
 import com.dayu.bigfish.bean.Order;
 import com.dayu.bigfish.bean.event.OrderState;
-import com.dayu.bigfish.bean.event.RefreReceiveData;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
+import com.dayu.bigfish.bean.event.RefreshServe;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabContract;
 import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabPresenter;
 import com.dayu.bigfish.ui.OrderDetailsActivity;
 import com.dayu.bigfish.ui.adapter.OrderDoingAdapter;
 import com.dayu.bigfish.utils.GetUserInfo;
-import com.dayu.bigfish.utils.LocationUtils;
 import com.dayu.bigfish.utils.ProgressUtil;
 
 import java.util.ArrayList;
@@ -34,6 +31,8 @@ import io.reactivex.android.schedulers.AndroidSchedulers;
 import io.reactivex.functions.Consumer;
 
 import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_FINISH;
+import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_NOCONTACT_FINISH;
+import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_SOP_FINISH;
 import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_YUYUE;
 
 
@@ -48,19 +47,21 @@ public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter> i
     @BindView(R.id.recyle_tab_one)
     RecyclerView mRecyclerView;
     private OrderDoingAdapter mAdapter;
-    private int siteId = GetUserInfo.getSITE_ID(MyApplication.getContext());
-    private int userId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
+    private int siteId;
+    private int userId;
     private int mTotalPage;
-    private int mPageSize = 10;
+    private int mPageSize = 20;
     private int mPage = 1;
     private int mRefreshState = 1; //1:刷新,private int mRefreshState;
     private List<Order> mDatas;
 
     @Override
     public View initView(View view) {
+        siteId = GetUserInfo.getSITE_ID(mActivity);
+        userId = GetUserInfo.getACCOUNT_ID(mActivity);
         mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, getActivity());
         mAdapter.initPresenter(mPresenter);
-        mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        mRecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         mRefreshLayout.setOnRefreshListener(this);
@@ -72,84 +73,48 @@ public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter> i
 
     @Override
     public int getLayoutId() {
-        return R.layout.fragment_tab_one;
+        return R.layout.fragment_tab_order;
     }
 
     public void initListener() {
-        RxBus.getDefault().toObservable(OrderState.class).observeOn(AndroidSchedulers.mainThread())
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshServe.class)
                 .observeOn(AndroidSchedulers.mainThread())
-                .subscribe(new Consumer<OrderState>() {
+                .subscribe(new Consumer<RefreshServe>() {
                     @Override
-                    public void accept(OrderState orderState) throws Exception {
-                        Order order = mDatas.get(orderState.getPosition());
-                        if (orderState.getState() == ORDER_YUYUE) {
-                            order.setSubStatus(1);
-                            order.setStatus(3);
-                        } else if (orderState.getState() == ORDER_FINISH) {
-                            order.setSubStatus(6);
-                            order.setStatus(4);
-                        }
-                        mAdapter.setNewData(mDatas);
-                        mAdapter.loadMoreEnd();
+                    public void accept(RefreshServe refreshNum) throws Exception {
+                        mPage = 1;
+                        mAdapter.setEnableLoadMore(false);
+                        ProgressUtil.startLoad(mActivity);
+                        mPresenter.getWatingOrder(Constants.WATING_SERVER, userId, siteId, mPage, mPageSize);
                     }
-                });
-
-        mAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
-            @Override
-            public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
-                Order order = (Order) adapter.getItem(position);
-                Intent intent = new Intent(mContext, OrderDetailsActivity.class);
-                intent.putExtra("orderId", order.getId() + "");
-                startActivity(intent);
-            }
-        });
-        RxBus.getDefault().toObservable(RefreReceiveData.class).subscribe(new Consumer<RefreReceiveData>() {
-            @Override
-            public void accept(RefreReceiveData refreReceiveData) throws Exception {
-                int a = refreReceiveData.getReceive();
-                processClick(a);
-            }
+                }));
+        mDisposable.add(RxBus.getDefault().toObservable(OrderState.class).observeOn(AndroidSchedulers.mainThread())
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(orderState -> {
+                    Order order = mDatas.get(orderState.getPosition());
+                    if (orderState.getState() == ORDER_YUYUE) {
+                        order.setSubStatus(1);
+                        order.setStatus(3);
+                    } else if (orderState.getState() == ORDER_FINISH) {
+                        order.setSubStatus(6);
+                        order.setStatus(4);
+                    } else if (orderState.getState() == ORDER_SOP_FINISH) {
+                        order.setSubStatus(5);
+                        order.setStatus(4);
+                    } else if (orderState.getState() == ORDER_NOCONTACT_FINISH) {
+                        mDatas.remove(order);
+                    }
+                    mAdapter.setNewData(mDatas);
+                    mAdapter.loadMoreEnd();
+                }));
+        mAdapter.setOnItemClickListener((adapter, view, position) -> {
+            Order order = (Order) adapter.getItem(position);
+            Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
+            intent.putExtra("orderId", order.getId() + "");
+            startActivity(intent);
         });
     }
 
-    int holder = 0;
-
-    private void processClick(int a) {
-        holder = a;
-        ProgressUtil.startLoad(mContext);
-        LocationUtils.getCurrentLocation(new LocationUtils.MyLocationListener() {
-            @Override
-            public void result(AMapLocation location) {
-                if (mDatas.get(holder).getStatus() == 3 && mDatas.get(holder).getSubStatus() == 1) {
-                    mPresenter.startOrder(mDatas.get(holder).getId(), 0, 0)
-                            .observeOn(AndroidSchedulers.mainThread())
-                            .subscribe(mPresenter.baseObserver(new Consumer<Integer>() {
-                                @Override
-                                public void accept(Integer integer) throws Exception {
-                                    ProgressUtil.stopLoad();
-                                    mDatas.get(holder).setSubStatus(2);
-                                    mAdapter.setNewData(mDatas);
-                                    mAdapter.loadMoreEnd();
-                                }
-                            }));
-                } else if (mDatas.get(holder).getStatus() == 3 && mDatas.get(holder).getSubStatus() == 2) {
-                    mPresenter.startServer(mDatas.get(holder).getId(), 0, 0)
-                            .observeOn(AndroidSchedulers.mainThread())
-                            .subscribe(mPresenter.baseObserver(new Consumer<Integer>() {
-                                @Override
-                                public void accept(Integer integer) throws Exception {
-                                    LocationUtils.stop();
-                                    ProgressUtil.stopLoad();
-                                    mDatas.get(holder).setStatus(4);
-                                    mDatas.get(holder).setSubStatus(3);
-                                    mAdapter.setNewData(mDatas);
-                                    mAdapter.loadMoreEnd();
-                                }
-                            }));
-                }
-            }
-        });
-    }
 
     @Override
     public void onResume() {
@@ -158,39 +123,34 @@ public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter> i
 
     @Override
     protected void lazyLoad() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getWatingOrder(Constants.WATING_SERVER, userId, siteId, mPage, mPageSize);
     }
 
     @Override
     public void getWatingOrderSuccess(BasePageBean<Order> data) {
-        RxBus.getDefault().post(new RefreshTabNum(-1));
+        RxBus.getDefault().post(new RefreshTab(-1));
         mTotalPage = data.getTotalPages();
         mPageSize = data.getPageSize();
-        if (data.getData() != null && data.getData().size() != 0) {
-            if (mRefreshState == 1) {
-                mRefreshLayout.setRefreshing(false);
-                mAdapter.setNewData(data.getData());
-                mDatas.clear();
-                mDatas.addAll(data.getData());
-            } else {
-                mDatas.addAll(data.getData());
-                mAdapter.addData(data.getData());
-            }
-            if (mPage == mTotalPage) {
-                mAdapter.loadMoreEnd();
-            } else {
-                mAdapter.loadMoreComplete();
-                mPage += 1;
-            }
-            mAdapter.notifyDataSetChanged();
+        if (mRefreshState == 1) {
+            mRefreshLayout.setRefreshing(false);
+            mAdapter.setNewData(data.getData());
+            mDatas.clear();
+            mDatas.addAll(data.getData());
+            mAdapter.setEnableLoadMore(true);
+        } else {
+            mDatas.addAll(data.getData());
+            mAdapter.addData(data.getData());
+        }
+        if (mPage >= mTotalPage) {
+            mAdapter.loadMoreEnd();
         } else {
-            if (mRefreshLayout.isRefreshing()) {
-                mRefreshLayout.setRefreshing(false);
-            }
-            if (mDatas.size() == 0) {
-                mAdapter.setEmptyView(R.layout.tips_empty);
-            }
+            mAdapter.loadMoreComplete();
+        }
+        mPage += 1;
+        if (data.getData().size() == 0) {
+            mAdapter.setEmptyView(R.layout.tips_empty);
         }
     }
 
@@ -198,17 +158,29 @@ public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter> i
     public void getWatingOrderFial() {
         if (mRefreshLayout.isRefreshing()) {
             mRefreshLayout.setRefreshing(false);
+            mAdapter.setEmptyView(R.layout.tips_loading_failed);
         }
+        mAdapter.loadMoreFail();
+        mAdapter.setEnableLoadMore(true);
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            referesh();
+        });
     }
 
-    @Override
-    public void onRefresh() {
+    public void referesh() {
         mRefreshState = 1;
         mPage = 1;
+        mAdapter.setEnableLoadMore(false);
         mPresenter.getWatingOrder(Constants.WATING_SERVER, userId, siteId, mPage, mPageSize);
     }
 
     @Override
+    public void onRefresh() {
+        referesh();
+    }
+
+    @Override
     public void onLoadMoreRequested() {
         mRefreshState = 2;
         mPresenter.getWatingOrder(Constants.WATING_SERVER, userId, siteId, mPage, mPageSize);
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderThreeTabFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderThreeTabFragment.java
index 74f689c..4ff9567 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderThreeTabFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/OrderThreeTabFragment.java
@@ -6,12 +6,12 @@ import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
 
-import com.chad.library.adapter.base.BaseQuickAdapter;
 import com.dayu.bigfish.MyApplication;
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
 import com.dayu.bigfish.bean.ErrorOrder;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
+import com.dayu.bigfish.bean.event.RefreshError;
+import com.dayu.bigfish.bean.event.RefreshTab;
 import com.dayu.bigfish.bean.event.RxBus;
 import com.dayu.bigfish.presenter.ordererrortab.OrderErrorTabContract;
 import com.dayu.bigfish.presenter.ordererrortab.OrderErrorTabPresenter;
@@ -23,6 +23,8 @@ import com.dayu.bigfish.utils.ProgressUtil;
 import java.util.List;
 
 import butterknife.BindView;
+import io.reactivex.android.schedulers.AndroidSchedulers;
+import io.reactivex.functions.Consumer;
 
 
 /**
@@ -43,7 +45,7 @@ public class OrderThreeTabFragment extends BaseFragment<OrderErrorTabPresenter> 
     @Override
     public View initView(View view) {
         mAdapter = new OrderThreeTabAdapter(R.layout.fragment_order_error_item);
-        mRecyclerView.setLayoutManager(new LinearLayoutManager(mContext));
+        mRecyclerView.setLayoutManager(new LinearLayoutManager(mActivity));
         mRecyclerView.setAdapter(mAdapter);
         mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
         mRefreshLayout.setOnRefreshListener(this);
@@ -58,39 +60,44 @@ public class OrderThreeTabFragment extends BaseFragment<OrderErrorTabPresenter> 
 
     @Override
     public int getLayoutId() {
-        return R.layout.fragment_tab_one;
+        return R.layout.fragment_tab_order;
     }
 
     public void initListener() {
-        mAdapter.setOnItemChildClickListener(new BaseQuickAdapter.OnItemChildClickListener() {
-            @Override
-            public void onItemChildClick(BaseQuickAdapter adapter, View view, int position) {
-                ErrorOrder order = (ErrorOrder) adapter.getItem(position);
-                Intent intent = new Intent(mContext, OrderDetailsActivity.class);
-                intent.putExtra("orderId", order.getId() + "");
-                startActivity(intent);
-            }
+        mDisposable.add(RxBus.getDefault().toObservable(RefreshError.class)
+                .observeOn(AndroidSchedulers.mainThread())
+                .subscribe(new Consumer<RefreshError>() {
+                    @Override
+                    public void accept(RefreshError refreshNum) throws Exception {
+                        ProgressUtil.startLoad(mActivity);
+                        mPresenter.getErrorOrder(userId, siteId);
+                    }
+                }));
+        mAdapter.setOnItemChildClickListener((adapter, view, position) -> {
+            ErrorOrder order = (ErrorOrder) adapter.getItem(position);
+            Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
+            intent.putExtra("orderId", order.getId() + "");
+            startActivity(intent);
         });
     }
 
     public void initData() {
-        ProgressUtil.startLoad(mContext);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getErrorOrder(userId, siteId);
     }
 
 
     @Override
     public void getErrorOrderSuccess(List<ErrorOrder> data) {
-        RxBus.getDefault().post(new RefreshTabNum(-1));
+        RxBus.getDefault().post(new RefreshTab(-1));
         if (mRefreshLayout.isRefreshing()) {
             mRefreshLayout.setRefreshing(false);
+            mAdapter.loadMoreEnd();
         }
-        if (data.size() != 0) {
-            mAdapter.setNewData(data);
-        } else {
+        mAdapter.setNewData(data);
+        if (data.size() == 0) {
             mAdapter.setEmptyView(R.layout.tips_empty);
         }
-
     }
 
     @Override
@@ -98,6 +105,10 @@ public class OrderThreeTabFragment extends BaseFragment<OrderErrorTabPresenter> 
         if (mRefreshLayout.isRefreshing()) {
             mRefreshLayout.setRefreshing(false);
         }
+        mAdapter.getEmptyView().setOnClickListener(v -> {
+            ProgressUtil.startLoad(mActivity);
+            mPresenter.getErrorOrder(userId, siteId);
+        });
         mAdapter.setEmptyView(R.layout.tips_loading_failed);
     }
 
diff --git a/app/src/main/java/com/dayu/bigfish/ui/fragment/SystemMessageFragment.java b/app/src/main/java/com/dayu/bigfish/ui/fragment/SystemMessageFragment.java
index bec3323..3f3a3dd 100755
--- a/app/src/main/java/com/dayu/bigfish/ui/fragment/SystemMessageFragment.java
+++ b/app/src/main/java/com/dayu/bigfish/ui/fragment/SystemMessageFragment.java
@@ -4,7 +4,6 @@ import android.support.v4.widget.SwipeRefreshLayout;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.View;
-import android.widget.RelativeLayout;
 
 import com.dayu.bigfish.R;
 import com.dayu.bigfish.base.BaseFragment;
@@ -29,8 +28,6 @@ public class SystemMessageFragment extends BaseFragment<SysMessagePresenter> imp
     RecyclerView mRecyclerView;
     @BindView(R.id.receiving_refersh)
     SwipeRefreshLayout mRefreshLayout;
-    @BindView(R.id.message_view)
-    RelativeLayout messageView;
     private SystemMessageAdapter mAdapter;
     private String hxUserId;
     private int mPage = 1;
@@ -41,8 +38,8 @@ public class SystemMessageFragment extends BaseFragment<SysMessagePresenter> imp
 
     @Override
     public View initView(View view) {
-        hxUserId = GetUserInfo.getHxUserId(getActivity());
-        ProgressUtil.startLoad(getActivity());
+        hxUserId = GetUserInfo.getHxUserId(mActivity);
+        ProgressUtil.startLoad(mActivity);
         mPresenter.getHxMessage(hxUserId, 1, mPage, mPageSize);
         mAdapter = new SystemMessageAdapter(R.layout.message_adapter);
         mRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
@@ -81,13 +78,11 @@ public class SystemMessageFragment extends BaseFragment<SysMessagePresenter> imp
             }
         } else {
             mRefreshLayout.setRefreshing(false);
-            messageView.setVisibility(View.VISIBLE);
         }
     }
 
     @Override
     public void getHxMessageFail() {
-        messageView.setVisibility(View.VISIBLE);
     }
 
     @Override
diff --git a/app/src/main/java/com/dayu/bigfish/ui/views/CommomDialog.java b/app/src/main/java/com/dayu/bigfish/ui/views/CommomDialog.java
deleted file mode 100644
index 3739171..0000000
--- a/app/src/main/java/com/dayu/bigfish/ui/views/CommomDialog.java
+++ /dev/null
@@ -1,85 +0,0 @@
-package com.dayu.bigfish.ui.views;
-
-import android.app.Dialog;
-import android.content.Context;
-import android.os.Bundle;
-import android.view.View;
-import android.widget.TextView;
-
-import com.dayu.bigfish.R;
-
-public class CommomDialog extends Dialog implements View.OnClickListener {
-    private Context mContext;
-    private String rightText;
-    private String leftText;
-    private TextView mContentTv;
-    private TextView mRightTv;
-    private TextView mLeftTv;
-    private OnDialogClickListener listener;
-
-    public CommomDialog(Context context) {
-        super(context);
-        this.mContext = context;
-    }
-
-    public CommomDialog(Context context, int themeResId) {
-        super(context, themeResId);
-        this.mContext = context;
-    }
-
-    public void setRightBtn(String name) {
-        mRightTv.setText(name);
-    }
-
-    public void setLeftBtn(String name) {
-        mLeftTv.setText(name);
-    }
-
-    public void setcontentText(String name) {
-        mContentTv.setText(name);
-    }
-
-
-    @Override
-    protected void onCreate(Bundle savedInstanceState) {
-        super.onCreate(savedInstanceState);
-        setContentView(R.layout.dayu_dialog);
-        setCanceledOnTouchOutside(false);
-        initView();
-    }
-
-    private void initView() {
-        mContentTv = (TextView) findViewById(R.id.dialog_title);
-        mRightTv = (TextView) findViewById(R.id.dialog_right_btn);
-        mRightTv.setOnClickListener(this);
-        mLeftTv = (TextView) findViewById(R.id.dialog_left_btn);
-        mLeftTv.setOnClickListener(this);
-    }
-
-    @Override
-    public void onClick(View v) {
-        switch (v.getId()) {
-            case R.id.dialog_left_btn:
-                if (listener != null) {
-                    listener.onLeftClickListener();
-                }
-                this.dismiss();
-                break;
-            case R.id.dialog_right_btn:
-                if (listener != null) {
-                    listener.onRightClickListener();
-                }
-                break;
-        }
-    }
-
-    public void setOnDialogClickListener(OnDialogClickListener listener) {
-        this.listener = listener;
-    }
-
-    public interface OnDialogClickListener {
-        void onRightClickListener();
-
-        void onLeftClickListener();
-    }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/dayu/bigfish/ui/views/MyTextView.java b/app/src/main/java/com/dayu/bigfish/ui/views/MyTextView.java
deleted file mode 100755
index 5d7a423..0000000
--- a/app/src/main/java/com/dayu/bigfish/ui/views/MyTextView.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package com.dayu.bigfish.ui.views;
-
-import android.content.Context;
-import android.util.AttributeSet;
-import android.widget.TextView;
-
-/**
- * 自定义View,无限滑动
- */
-
-public class MyTextView extends TextView {
-    public MyTextView(Context context) {
-        super(context);
-    }
-
-    public MyTextView(Context context, AttributeSet attrs) {
-        super(context, attrs);
-    }
-
-    public MyTextView(Context context, AttributeSet attrs, int defStyleAttr) {
-        super(context, attrs, defStyleAttr);
-    }
-    @Override
-    public boolean isFocused() {
-        return true;
-    }
-}
-
diff --git a/app/src/main/java/com/dayu/bigfish/ui/views/RefershAdapter.java b/app/src/main/java/com/dayu/bigfish/ui/views/RefershAdapter.java
deleted file mode 100755
index d3084ea..0000000
--- a/app/src/main/java/com/dayu/bigfish/ui/views/RefershAdapter.java
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.dayu.bigfish.ui.views;
-
-/**
- * Created by yu on 2017/9/16.
- */
-
-public interface RefershAdapter {
-    void refershAdapter();
-}
diff --git a/app/src/main/java/com/dayu/bigfish/utils/LocationUtils.java b/app/src/main/java/com/dayu/bigfish/utils/LocationUtils.java
index 07bd4ae..bd46c94 100644
--- a/app/src/main/java/com/dayu/bigfish/utils/LocationUtils.java
+++ b/app/src/main/java/com/dayu/bigfish/utils/LocationUtils.java
@@ -16,6 +16,7 @@ public class LocationUtils {
     public static AMapLocationClientOption mLocationOption = null;
     public static AMapLocation sLocation = null;
     private static boolean flag = true;
+    private static int count;
 
     /**
      * @param context
@@ -70,6 +71,7 @@ public class LocationUtils {
      * @Description: 获取位置,重新发起获取位置请求
      */
     public static void getCurrentLocation(final MyLocationListener listener) {
+        count = 3;
         if (mlocationClient == null) {
             return;
         }
@@ -85,10 +87,12 @@ public class LocationUtils {
                     mlocationClient.stopLocation();
                     sLocation = location;
                     listener.result(location);
-                } else if (location == null && flag) {
-                    //获取定位数据失败
-//                    ToastUtils.showShortToast("获取定位失败");
-                    mlocationClient.stopLocation();
+                    count = 10000;
+                } else if ((location == null)) {
+                    if (count <= 0) {
+                        mlocationClient.stopLocation();
+                        listener.result(location);
+                    }
                 }
             }
         });
diff --git a/app/src/main/java/com/dayu/bigfish/utils/NetworkConnectChangedReceiver.java b/app/src/main/java/com/dayu/bigfish/utils/NetworkConnectChangedReceiver.java
index c6c257b..7a60ee2 100644
--- a/app/src/main/java/com/dayu/bigfish/utils/NetworkConnectChangedReceiver.java
+++ b/app/src/main/java/com/dayu/bigfish/utils/NetworkConnectChangedReceiver.java
@@ -13,9 +13,6 @@ import android.net.wifi.WifiManager;
 import android.os.Parcelable;
 import android.util.Log;
 
-import com.dayu.bigfish.bean.event.RxBus;
-import com.dayu.bigfish.bean.event.RefreshTabNum;
-
 /**
  * 网络改变监控广播
  * <p>
@@ -75,8 +72,8 @@ public class NetworkConnectChangedReceiver extends BroadcastReceiver {
                 if (NetworkInfo.State.CONNECTED == info.getState() && info.isAvailable()) {
                     if (info.getType() == ConnectivityManager.TYPE_WIFI
                             || info.getType() == ConnectivityManager.TYPE_MOBILE) {
-//                        EventBus.getDefault().post(new RefreshTabNum(0));
-                        RxBus.getDefault().post(new RefreshTabNum(0) );
+//                        EventBus.getDefault().post(new RefreshTab(0));
+//                        RxBus.getDefault().post(new RefreshTab(0) );
                     }
                 } else {
 
diff --git a/app/src/main/java/com/dayu/bigfish/utils/managers/UserManager.java b/app/src/main/java/com/dayu/bigfish/utils/managers/UserManager.java
index 614318b..659d745 100755
--- a/app/src/main/java/com/dayu/bigfish/utils/managers/UserManager.java
+++ b/app/src/main/java/com/dayu/bigfish/utils/managers/UserManager.java
@@ -57,9 +57,9 @@ public class UserManager {
     }
 
     public void saveUserInfo(Context context, UserInfo info) {
-//        if (!TextUtils.isEmpty(info.getToken())) {
+        if (!TextUtils.isEmpty(info.getToken())) {
             SPUtils.put(context, "ACCESS_TOKEN", info.getToken());
-//        }
+        }
         SPUtils.put(context, "ACCOUNT_ID", info.getAccountId());
         SPUtils.put(context, "SITE_ID", info.getSiteId());
         SPUtils.put(context, "HXUSER_ID", info.getHxAccount());
diff --git a/app/src/main/res/layout/activity_order_finish.xml b/app/src/main/res/layout/activity_order_finish.xml
index a4de327..95d9542 100755
--- a/app/src/main/res/layout/activity_order_finish.xml
+++ b/app/src/main/res/layout/activity_order_finish.xml
@@ -30,6 +30,7 @@
         android:gravity="center"
         android:text="标准操作已完成,点击此处进行查看或修改"
         android:textColor="@color/white"
+        android:visibility="gone"
         android:textSize="13.3sp"/>
 
     <ImageView
@@ -79,13 +80,15 @@
                         android:id="@+id/text_one_value"
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
-                        android:layout_centerVertical="true"
-                        android:layout_marginLeft="@dimen/dp_21.3"
-                        android:layout_toRightOf="@id/text_one_text"
-                        android:text="产品名称"
+                        android:layout_alignBaseline="@+id/text_one_text"
+                        android:layout_alignBottom="@+id/text_one_text"
+                        android:layout_marginLeft="22dp"
+                        android:layout_marginStart="22dp"
+                        android:layout_toEndOf="@+id/text_one_text"
+                        android:layout_toRightOf="@+id/text_one_text"
+                        android:text="暂无"
                         android:textColor="@color/cl_selector_hui"
-                        android:textSize="@dimen/sp_15"
-                        />
+                        android:textSize="@dimen/sp_15"/>
                 </RelativeLayout>
 
                 <ImageView
@@ -120,7 +123,7 @@
                         android:layout_centerVertical="true"
                         android:layout_marginLeft="@dimen/dp_21.3"
                         android:layout_toRightOf="@id/text_two_text"
-                        android:text="品牌名称"
+                        android:text="暂无"
                         android:textColor="@color/cl_selector_hui"
                         android:textSize="@dimen/sp_15"
                         />
@@ -159,7 +162,7 @@
                         android:layout_centerVertical="true"
                         android:layout_marginLeft="@dimen/dp_21.3"
                         android:layout_toRightOf="@id/text_six_text"
-                        android:text="服务类型"
+                        android:text="暂无"
                         android:textColor="@color/cl_selector_hui"
                         android:textSize="@dimen/sp_15"
                         />
@@ -513,6 +516,7 @@
                     android:layout_marginRight="@dimen/dp_13.3"
                     android:layout_marginTop="15.7dp"
                     android:orientation="horizontal"
+                    android:visibility="gone"
                     >
 
                     <TextView
diff --git a/app/src/main/res/layout/activity_receiving.xml b/app/src/main/res/layout/activity_recycleview.xml
similarity index 98%
rename from app/src/main/res/layout/activity_receiving.xml
rename to app/src/main/res/layout/activity_recycleview.xml
index 1d66b33..db807be 100755
--- a/app/src/main/res/layout/activity_receiving.xml
+++ b/app/src/main/res/layout/activity_recycleview.xml
@@ -13,7 +13,6 @@
         <TextView
             android:id="@+id/order_title_num"
             style="@style/text_title"
-            android:text="待接单列表"
             />
 
         <ImageView
diff --git a/app/src/main/res/layout/activity_updata_subscribe_time.xml b/app/src/main/res/layout/activity_updata_subscribe_time.xml
index 309c69e..4d69300 100755
--- a/app/src/main/res/layout/activity_updata_subscribe_time.xml
+++ b/app/src/main/res/layout/activity_updata_subscribe_time.xml
@@ -66,7 +66,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:textColor="@color/cl_selector_hui"
-                android:text="@string/tv_home_tab_updata_subscribe_data"
+                android:hint="@string/tv_home_tab_updata_subscribe_data"
                 android:textSize="@dimen/sp_15"
                 />
         </RelativeLayout>
@@ -100,7 +100,7 @@
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:textColor="@color/cl_selector_hui"
-                android:text="@string/tv_home_tab_updata_subscribe_time_two"
+                android:hint="@string/tv_home_tab_updata_subscribe_time_two"
                 android:textSize="@dimen/sp_15"
                 />
         </RelativeLayout>
diff --git a/app/src/main/res/layout/activity_webview_layout.xml b/app/src/main/res/layout/activity_webview_layout.xml
index 65e66dd..3ec4154 100644
--- a/app/src/main/res/layout/activity_webview_layout.xml
+++ b/app/src/main/res/layout/activity_webview_layout.xml
@@ -24,9 +24,9 @@
         style="@style/card_line"
         />
 
-    <com.dayu.bigfish.base.jsbridge.BridgeWebView
+    <com.github.lzyzsd.jsbridge.BridgeWebView
         android:id="@+id/webView"
         android:layout_width="match_parent"
         android:layout_height="match_parent">
-    </com.dayu.bigfish.base.jsbridge.BridgeWebView>
+    </com.github.lzyzsd.jsbridge.BridgeWebView>
 </LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_worksheet_record.xml b/app/src/main/res/layout/activity_worksheet_record.xml
index a44f08d..da50df4 100755
--- a/app/src/main/res/layout/activity_worksheet_record.xml
+++ b/app/src/main/res/layout/activity_worksheet_record.xml
@@ -1,7 +1,8 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:orientation="vertical" android:layout_width="match_parent"
-    android:layout_height="match_parent">
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical">
 
     <RelativeLayout
         android:layout_width="wrap_content"
@@ -14,17 +15,17 @@
             <TextView
                 android:id="@+id/title_text"
                 style="@style/text_title"
-                android:text="工单记录" />
+                android:text="工单记录"/>
 
             <ImageView
                 android:id="@+id/receiving_back"
-                style="@style/title_image_back" />
+                style="@style/title_image_back"/>
 
             <ImageView
                 android:layout_width="match_parent"
                 android:layout_height="@dimen/dp_6"
                 android:layout_alignParentBottom="true"
-                android:src="@drawable/line_shape" />
+                android:src="@drawable/line_shape"/>
 
             <ImageView
                 android:id="@+id/iv_saecher"
@@ -33,7 +34,7 @@
                 android:layout_alignParentRight="true"
                 android:layout_centerVertical="true"
                 android:layout_marginRight="20dp"
-                android:src="@mipmap/seacher" />
+                android:src="@mipmap/seacher"/>
         </RelativeLayout>
 
         <RelativeLayout
@@ -49,12 +50,12 @@
                 android:layout_marginLeft="10dp"
                 android:layout_toRightOf="@+id/iv"
                 android:background="@null"
-                android:hint="搜索客户手机号码" />
+                android:hint="搜索客户手机号码"/>
 
             <ImageView
                 android:id="@+id/iv"
                 style="@style/title_image_back"
-                android:src="@mipmap/seacher" />
+                android:src="@mipmap/seacher"/>
 
             <TextView
                 android:id="@+id/quit"
@@ -67,17 +68,27 @@
                 android:text="取消"
                 android:textColor="@color/cl_black"
                 android:textSize="@dimen/dp_18"
-                android:textStyle="bold" />
+                android:textStyle="bold"/>
+
             <ImageView
                 android:layout_width="match_parent"
                 android:layout_height="@dimen/dp_6"
                 android:layout_alignParentBottom="true"
-                android:src="@drawable/line_shape" />
+                android:src="@drawable/line_shape"/>
         </RelativeLayout>
 
     </RelativeLayout>
-    <android.support.v7.widget.RecyclerView
-        android:id="@+id/rv"
+
+    <android.support.v4.widget.SwipeRefreshLayout
+        android:id="@+id/receiving_refersh"
         android:layout_width="match_parent"
-        android:layout_height="match_parent"/>
+        android:layout_height="match_parent">
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/rl_record"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:background="#f5f5f5"
+            />
+    </android.support.v4.widget.SwipeRefreshLayout>
 </LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_message_system.xml b/app/src/main/res/layout/fragment_message_system.xml
index f059f22..8a889da 100755
--- a/app/src/main/res/layout/fragment_message_system.xml
+++ b/app/src/main/res/layout/fragment_message_system.xml
@@ -22,34 +22,4 @@
                 />
         </RelativeLayout>
     </android.support.v4.widget.SwipeRefreshLayout>
-
-    <RelativeLayout
-        android:id="@+id/message_view"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_centerHorizontal="true"
-        android:layout_centerVertical="true"
-        android:visibility="gone"
-        >
-
-        <ImageView
-            android:id="@+id/message_image_empty"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:src="@mipmap/yu"
-            />
-
-        <TextView
-            android:id="@+id/message_textView_empty"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_below="@id/message_image_empty"
-            android:layout_centerHorizontal="true"
-            android:layout_marginTop="@dimen/dp_17"
-            android:text="暂无通知"
-            android:textColor="@color/cl_login_clearedittext_hint"
-            android:textSize="@dimen/sp_13.3"
-            />
-    </RelativeLayout>
-
 </RelativeLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_order_datails.xml b/app/src/main/res/layout/fragment_order_datails.xml
index 47a00a8..79f08bd 100755
--- a/app/src/main/res/layout/fragment_order_datails.xml
+++ b/app/src/main/res/layout/fragment_order_datails.xml
@@ -208,33 +208,40 @@
 
             </RelativeLayout>
 
-            <TextView
+            <LinearLayout
+                android:id="@+id/ll_fujian"
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content"
                 android:layout_below="@id/rl_info_detail"
                 android:layout_marginLeft="@dimen/dp_13"
                 android:layout_marginTop="@dimen/dp_13"
-                android:text="附        件"
-                android:textColor="@color/cl_order_text_one"
-                android:textSize="@dimen/sp_13.3"/>
+                android:orientation="horizontal"
+                >
 
+                <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="附        件"
+                    android:textColor="@color/cl_order_text_one"
+                    android:textSize="@dimen/sp_13.3"/>
 
-            <android.support.v7.widget.RecyclerView
-                android:id="@+id/tv_fujian"
-                android:layout_width="wrap_content"
-                android:layout_height="wrap_content"
-                android:layout_below="@id/rl_info_detail"
-                android:layout_marginLeft="@dimen/dp_10"
-                android:layout_marginTop="@dimen/dp_13"
-                android:layout_toRightOf="@id/text_foure">
 
-            </android.support.v7.widget.RecyclerView>
+                <android.support.v7.widget.RecyclerView
+                    android:id="@+id/tv_fujian"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:layout_marginLeft="@dimen/dp_13"
+                    android:layout_toRightOf="@id/text_foure">
+
+                </android.support.v7.widget.RecyclerView>
+            </LinearLayout>
+
 
             <ImageView
                 android:id="@+id/line_one"
                 android:layout_width="@dimen/dp_333"
                 android:layout_height="@dimen/dp_0.3"
-                android:layout_below="@id/tv_fujian"
+                android:layout_below="@id/ll_fujian"
                 android:layout_centerHorizontal="true"
                 android:layout_marginTop="@dimen/dp_12"
                 android:background="@color/cl_order_item_line_bg"/>
@@ -491,7 +498,7 @@
                 android:layout_width="match_parent"
                 android:layout_height="wrap_content"
                 android:layout_below="@id/line_three"
-                android:visibility="gone"
+                android:visibility="visible"
                 >
 
                 <TextView
@@ -640,6 +647,8 @@
                     android:layout_marginLeft="@dimen/dp_10"
                     android:layout_marginTop="@dimen/dp_13"
                     android:layout_toRightOf="@id/four_text_ten"
+                    android:ellipsize="end"
+                    android:maxLines="2"
                     android:text="...."
                     android:textColor="@color/cl_home_title_text_color"
                     android:textSize="@dimen/sp_13.3"/>
diff --git a/app/src/main/res/layout/fragment_orderdoing_item.xml b/app/src/main/res/layout/fragment_orderdoing_item.xml
index 9eed27a..047525a 100755
--- a/app/src/main/res/layout/fragment_orderdoing_item.xml
+++ b/app/src/main/res/layout/fragment_orderdoing_item.xml
@@ -130,7 +130,7 @@
                     android:text="[预约超时]"
                     android:textColor="@color/cl_tab_read"
                     android:textSize="@dimen/size_login_hint_text"
-                    android:visibility="gone"
+                    android:visibility="visible"
                     />
             </LinearLayout>
 
diff --git a/app/src/main/res/layout/fragment_tab_one.xml b/app/src/main/res/layout/fragment_tab_order.xml
similarity index 100%
rename from app/src/main/res/layout/fragment_tab_one.xml
rename to app/src/main/res/layout/fragment_tab_order.xml
diff --git a/app/src/main/res/layout/item_accessories_layout.xml b/app/src/main/res/layout/item_accessories_layout.xml
index a6853b4..2fa17cf 100644
--- a/app/src/main/res/layout/item_accessories_layout.xml
+++ b/app/src/main/res/layout/item_accessories_layout.xml
@@ -8,6 +8,7 @@
         android:id="@+id/tv_accessories_name"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
+        android:layout_marginBottom="5dp"
         android:text="122233ed"
         android:textColor="@color/cl_receiving_order_item_data"
         android:textSize="@dimen/sp_13.3"
diff --git a/app/src/main/res/layout/message_adapter.xml b/app/src/main/res/layout/message_adapter.xml
index 1e69ac4..6025221 100755
--- a/app/src/main/res/layout/message_adapter.xml
+++ b/app/src/main/res/layout/message_adapter.xml
@@ -45,28 +45,41 @@
             android:textStyle="bold"
             />
 
-        <TextView
-            android:id="@+id/message_text_content"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
+        <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
             android:layout_alignLeft="@id/line_textView"
             android:layout_centerVertical="true"
             android:layout_marginLeft="@dimen/dp_16"
-            android:text="工单被改派"
-            android:textColor="@color/cl_home_title_text_color"
-            android:textSize="@dimen/sp_13.3"
-            />
+            android:gravity="center_vertical"
+            android:orientation="horizontal"
+            >
+
+            <TextView
+                android:id="@+id/message_text_content"
+                android:layout_width="0dp"
+                android:layout_height="wrap_content"
+                android:layout_weight="1"
+                android:ellipsize="end"
+                android:maxLines="2"
+                android:text="工单被改派架飞机按揭房就发了埃及法放假放假放辣椒放辣椒放辣椒放辣椒发件方拉法基垃圾费拉法基房间爱了几分"
+                android:textColor="@color/cl_home_title_text_color"
+                android:textSize="@dimen/sp_13.3"
+                />
+
+            <TextView
+                android:id="@+id/iv"
+                android:layout_width="wrap_content"
+                android:layout_height="wrap_content"
+                android:layout_alignParentRight="true"
+                android:layout_centerVertical="true"
+                android:layout_marginRight="@dimen/dp_21.3"
+                android:layout_toRightOf="@id/message_text_content"
+                android:text="未读"
+                android:textColor="@color/cl_tab_read"
+                android:textSize="@dimen/sp_10"
+                />
+        </LinearLayout>
 
-        <TextView
-            android:id="@+id/iv"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:layout_alignParentRight="true"
-            android:layout_centerVertical="true"
-            android:layout_marginRight="@dimen/dp_21.3"
-            android:text="未读"
-            android:textColor="@color/cl_tab_read"
-            android:textSize="@dimen/sp_10"
-            />
     </RelativeLayout>
 </RelativeLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/serve_datails_item.xml b/app/src/main/res/layout/serve_datails_item.xml
index d7c4dd2..6d91df0 100755
--- a/app/src/main/res/layout/serve_datails_item.xml
+++ b/app/src/main/res/layout/serve_datails_item.xml
@@ -29,7 +29,7 @@
             android:textSize="@dimen/sp_13.3"
             />
 
-        <com.dayu.bigfish.ui.views.MyTextView
+        <TextView
             android:id="@+id/item_text"
             android:layout_width="0dp"
             android:layout_height="wrap_content"