Commit d822891d by 罗翻

增加jswebview

parent 0acbf33c
Showing with 1203 additions and 892 deletions
......@@ -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')
......
......@@ -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"/>
......
......@@ -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
}
}
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
......
......@@ -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);
......
......@@ -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();
......
......@@ -17,7 +17,7 @@ public class ServerException extends Exception {
private void processCode(int code) {
switch (code) {
case 1:
message = "访问失败";
message = "获取数据失败";
break;
default:
break;
......
......@@ -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) {
......
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() {
......
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();
}
}
......@@ -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;
}
}
......@@ -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;
......
......@@ -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;
}
}
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;
}
}
......@@ -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() {
......
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;
}
}
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;
}
}
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;
}
}
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;
}
}
......@@ -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);
......
......@@ -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);
}
}));
}
}
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() {
......
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);
}
}
......@@ -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);
......
......@@ -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);
}
}
......@@ -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")));
......
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();
}
}
......@@ -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);
}
}
......@@ -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;
}
......
......@@ -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
......
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;
}
......
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);
......
......@@ -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());
}
......
......@@ -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);
}
......
......@@ -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);
}
......
......@@ -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);
}
}
......@@ -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);
......
......@@ -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);
}
......
......@@ -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
......
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
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;
}
}
package com.dayu.bigfish.ui.views;
/**
* Created by yu on 2017/9/16.
*/
public interface RefershAdapter {
void refershAdapter();
}
......@@ -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);
}
}
}
});
......
......@@ -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 {
......
......@@ -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());
......
......@@ -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
......
......@@ -13,7 +13,6 @@
<TextView
android:id="@+id/order_title_num"
style="@style/text_title"
android:text="待接单列表"
/>
<ImageView
......
......@@ -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>
......
......@@ -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
<?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
......@@ -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
......@@ -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"/>
......
......@@ -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>
......
......@@ -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"
......
......@@ -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
......@@ -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"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment