Commit 497683ff by 罗翻

Mvp结构修改,增加model的注解类和presenter的注解类

parent d96bf6c5
Showing with 757 additions and 285 deletions
......@@ -10,6 +10,8 @@
<set>
<option value="$PROJECT_DIR$" />
<option value="$PROJECT_DIR$/app" />
<option value="$PROJECT_DIR$/apt" />
<option value="$PROJECT_DIR$/lib" />
</set>
</option>
<option name="resolveModulePerSourceSet" value="false" />
......
......@@ -3,7 +3,9 @@
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
<module fileurl="file://$PROJECT_DIR$/apt/apt.iml" filepath="$PROJECT_DIR$/apt/apt.iml" />
<module fileurl="file://$PROJECT_DIR$/dayu.iml" filepath="$PROJECT_DIR$/dayu.iml" />
<module fileurl="file://$PROJECT_DIR$/lib/lib.iml" filepath="$PROJECT_DIR$/lib/lib.iml" />
</modules>
</component>
</project>
\ No newline at end of file
......@@ -52,6 +52,13 @@ android {
lintOptions {
checkReleaseBuilds false
}
lintOptions {
abortOnError false
}
dexOptions {
preDexLibraries = false
}
}
greendao {
schemaVersion 2
......@@ -93,4 +100,6 @@ 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 project(':lib')
annotationProcessor project(':apt')
}
package com.dayu.bigfish.api;
import com.app.annotation.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.base.BaseResponse;
import com.dayu.bigfish.bean.AccountBalance;
......@@ -22,7 +23,6 @@ import java.util.List;
import io.reactivex.Observable;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Multipart;
......@@ -30,12 +30,11 @@ import retrofit2.http.POST;
import retrofit2.http.Part;
import retrofit2.http.Path;
import retrofit2.http.Query;
import retrofit2.http.Streaming;
import retrofit2.http.Url;
/**
* Created by luofan on 2017/11/09.
*/
@ApiFactory
public interface APIService {
/**
* 登录
......@@ -60,24 +59,16 @@ public interface APIService {
* @return
*/
@POST("/api-base/" + "versionUpgrade")
Observable<BaseResponse<Boolean>> commitVersionInfo(@Body RequestBody requestBodyn);
Observable<BaseResponse<Boolean>> commitVersionInfo(@Body RequestBody requestBody);
/**
* 下载apk.
*
* @return
*/
@Streaming
@GET
Observable<ResponseBody> downloadApk(@Url String url);
/**
* 获取新版本号
*
* @return
*/
@GET("/api-base/" + "appVersion/newestVersion/appId/dayushifua_dayu")
Observable<BaseResponse<String>> checkVersion();
@GET("/api-base/" + "appVersion/newestVersion/appId/{packageName}")
Observable<BaseResponse<String>> checkVersion(@Path("packageName") String packageName);
/**
* 获取版本信息
......@@ -261,7 +252,7 @@ public interface APIService {
* @return
*/
@GET("/api-count/" + "ordersStatistics/total/siteId/{siteId}/engineerId/{engineerId}")
Observable<BaseResponse<OrderRecord>> getOrderRecord(@Path("siteId") int siteId,
Observable<BaseResponse<OrderRecord>> getOrderScore(@Path("siteId") int siteId,
@Path("engineerId") int engineerId);
/**
......@@ -284,7 +275,7 @@ public interface APIService {
* @return
*/
@GET("/api-order/" + "orders/findSimpleOrderVOByPage")
Observable<BaseResponse<BasePageBean<Order>>> getOrderRecord(@Query("state") String state,
Observable<BaseResponse<BasePageBean<Order>>> getOrders(@Query("state") int state,
@Query("engineerId") int engineerId,
@Query("siteId") int siteId,
@Query("page") int page,
......
......@@ -16,6 +16,11 @@ import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
import io.reactivex.ObservableEmitter;
import io.reactivex.ObservableOnSubscribe;
import io.reactivex.ObservableSource;
import io.reactivex.ObservableTransformer;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.functions.Function;
import io.reactivex.schedulers.Schedulers;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import okhttp3.Request;
......@@ -123,4 +128,18 @@ public class Api {
}
public static <T> ObservableTransformer<BaseResponse<T>, T> applySchedulers() {
return (ObservableTransformer<BaseResponse<T>, T>) transformer;
}
final static ObservableTransformer transformer = new ObservableTransformer() {
@Override
public ObservableSource apply(Observable upstream) {
return upstream.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap((Function) (response) -> flatResponse((BaseResponse<Object>) response));
}
};
}
......@@ -2,7 +2,6 @@ package com.dayu.bigfish.api;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.base.BaseResponse;
import com.dayu.bigfish.bean.AccountBalance;
import com.dayu.bigfish.bean.AlipayInfo;
import com.dayu.bigfish.bean.EngineerInfo;
......@@ -20,16 +19,8 @@ import com.dayu.bigfish.bean.VersionInfo;
import java.util.List;
import io.reactivex.Observable;
import io.reactivex.ObservableSource;
import io.reactivex.ObservableTransformer;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
import io.reactivex.functions.Consumer;
import io.reactivex.functions.Function;
import io.reactivex.schedulers.Schedulers;
import okhttp3.MultipartBody;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
/**
* Created by luofan on 2017/11/09.
......@@ -55,14 +46,14 @@ public class ApiWrapper extends Api {
}
//下载apk
public Observable<ResponseBody> downloadApk(String url) {
return getService().downloadApk(url)
.subscribeOn(Schedulers.io());
}
// public Observable<ResponseBody> downloadApk(String url) {
// return getService().downloadApk(url)
// .subscribeOn(Schedulers.io());
// }
//检查新版本
public Observable<String> CheckVersion() {
return getService().checkVersion()
return getService().checkVersion("dayushifua_dayu")
.compose(applySchedulers());
}
......@@ -170,7 +161,7 @@ public class ApiWrapper extends Api {
//获取工单记录
public Observable<OrderRecord> getOrderRecord(int siteId, int engineerId) {
return getService().getOrderRecord(siteId, engineerId)
return getService().getOrderScore(siteId, engineerId)
.compose(applySchedulers());
}
......@@ -181,9 +172,9 @@ public class ApiWrapper extends Api {
}
//获取工单记录
public Observable<BasePageBean<Order>> getOrderRecord(String state, int engineerId, int siteId, int page
public Observable<BasePageBean<Order>> getOrderRecord(int state, int engineerId, int siteId, int page
, int pageSize) {
return getService().getOrderRecord(state, engineerId, siteId, page, pageSize)
return getService().getOrders(state, engineerId, siteId, page, pageSize)
.compose(applySchedulers());
}
......@@ -204,26 +195,4 @@ public class ApiWrapper extends Api {
return getService().uploadPhoto(path, orderId, file)
.compose(applySchedulers());
}
protected <T> ObservableTransformer<BaseResponse<T>, T> applySchedulers() {
return (ObservableTransformer<BaseResponse<T>, T>) transformer;
}
final ObservableTransformer transformer = new ObservableTransformer() {
@Override
public ObservableSource apply(Observable upstream) {
return upstream.doOnSubscribe(new Consumer<Disposable>() {
@Override
public void accept(Disposable disposable) throws Exception {
}
})
.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
.flatMap((Function) (response) -> flatResponse((BaseResponse<Object>) response))
;
}
};
}
......@@ -4,29 +4,39 @@ import android.app.Activity;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.dayu.bigfish.utils.InstanceUtil;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.TUtil;
import com.dayu.bigfish.utils.ToastUtils;
import java.lang.reflect.ParameterizedType;
import butterknife.ButterKnife;
/**
* Created by luofan on 17/11/02.
*/
public abstract class BaseActivity<T extends BasePresenter, E extends BaseModel> extends AppCompatActivity {
public T mPresenter;
public E mModel;
public Activity mContext;
public abstract class BaseActivity<P extends BasePresenter> extends AppCompatActivity {
public P mPresenter;
protected Activity mActivity;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.setContentView(this.getLayoutId());
ButterKnife.bind(this);
mContext = this;
mPresenter = TUtil.getT(this, 0);
mModel = TUtil.getT(this, 1);
if (this instanceof BaseView) mPresenter.setVM(this, mModel, mContext);
mActivity = this;
// mPresenter = TUtil.getT(this, 0);
// mModel = TUtil.getT(this, 1);
// if (this instanceof BaseView) mPresenter.setVM(this, mModel, mContext);
if (this instanceof BaseView &&
this.getClass().getGenericSuperclass() instanceof ParameterizedType &&
((ParameterizedType) (this.getClass().getGenericSuperclass())).getActualTypeArguments().length > 0) {
Class mPresenterClass = (Class) ((ParameterizedType) (this.getClass()
.getGenericSuperclass())).getActualTypeArguments()[0];
mPresenter = InstanceUtil.getInstance(mPresenterClass);
if (mPresenter != null) mPresenter.setView(this, this);
}
this.initView();
}
......@@ -34,7 +44,7 @@ public abstract class BaseActivity<T extends BasePresenter, E extends BaseModel>
protected void onDestroy() {
super.onDestroy();
if (mPresenter != null) {
mPresenter.onDestroy();
mPresenter.onDetached();
}
}
......@@ -58,7 +68,7 @@ public abstract class BaseActivity<T extends BasePresenter, E extends BaseModel>
}
public void showDialog() {
ProgressUtil.startLoad(mContext, "");
ProgressUtil.startLoad(this, "");
}
public void hideDialog() {
......
......@@ -8,7 +8,9 @@ import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.dayu.bigfish.utils.TUtil;
import com.dayu.bigfish.utils.InstanceUtil;
import java.lang.reflect.ParameterizedType;
import butterknife.ButterKnife;
import butterknife.Unbinder;
......@@ -16,10 +18,9 @@ import butterknife.Unbinder;
/**
* Created by luo on 2017/11/14.
*/
public abstract class BaseFragment<T extends BasePresenter, E extends BaseModel> extends Fragment {
public abstract class BaseFragment<P extends BasePresenter> extends Fragment {
protected Context mContext;
public T mPresenter;
public E mModel;
public P mPresenter;
private Unbinder mKnife;
private boolean isVisible; //是否可见状态
private boolean isPrepared; //标志位,View已经初始化完成。
......@@ -35,11 +36,16 @@ public abstract class BaseFragment<T extends BasePresenter, E extends BaseModel>
@Override
public void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
mPresenter = TUtil.getT(this, 0);
mModel = TUtil.getT(this, 1);
isFirstLoad = true;
isPrepared = true;
if (this instanceof BaseView) mPresenter.setVM(this, mModel, mContext);
if (this instanceof BaseView &&
this.getClass().getGenericSuperclass() instanceof ParameterizedType &&
((ParameterizedType) (this.getClass().getGenericSuperclass())).getActualTypeArguments().length > 0) {
Class mPresenterClass = (Class) ((ParameterizedType) (this.getClass()
.getGenericSuperclass())).getActualTypeArguments()[0];
mPresenter = InstanceUtil.getInstance(mPresenterClass);
if (mPresenter != null) mPresenter.setView(this, getActivity());
}
}
@Nullable
......@@ -55,7 +61,7 @@ public abstract class BaseFragment<T extends BasePresenter, E extends BaseModel>
public void onDestroy() {
super.onDestroy();
mKnife.unbind();
if (mPresenter != null) mPresenter.onDestroy();
if (mPresenter != null) mPresenter.onDetached();
}
public abstract View initView(View view);
......
package com.dayu.bigfish.base;
import android.app.Activity;
import android.app.Dialog;
import android.content.Context;
import android.content.Intent;
import com.dayu.bigfish.R;
......@@ -22,23 +22,22 @@ import static com.dayu.bigfish.utils.UIUtils.getString;
/**
* Created by luofan on 17/11/02.
*/
public abstract class BasePresenter<M, T> {
protected static final String TAG = "PreBasePresenter";
protected Context mContext;
protected M mModel;
protected T mView;
public abstract class BasePresenter<V> {
protected static final String TAG = "BasePresenter";
protected Activity mActivity;
protected V mView;
protected CompositeDisposable mComDisposable = new CompositeDisposable();
public void setVM(T v, M m, Context context) {
public void setView(V v, Activity activity) {
mActivity = activity;
this.mView = v;
this.mModel = m;
this.mContext = context;
this.onStart();
this.onAttached();
}
public abstract void onStart();
public abstract void onAttached();
public void onDestroy() {
public void onDetached() {
mComDisposable.dispose();
}
......@@ -136,19 +135,19 @@ public abstract class BasePresenter<M, T> {
* 重新登录的提示框.
*/
private void showLoginDialog() {
CustomDialog dialog = new CustomDialog(mContext, R.style.custom_dialog2, getString(R.string.login_state_no)
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, getString(R.string.login_state_no)
, new CustomDialog.OnCloseListener() {
@Override
public void onClick(Dialog dialog, boolean confirm) {
if (confirm) {
UserManager.getInstance().clearUserInfo(mContext);
UserManager.getInstance().clearUserInfo(mActivity);
EMClient.getInstance().logout(true);
UserManager.getInstance().clearUserInfo(mContext);
Intent Intents = new Intent(mContext, LoginActivity.class);
UserManager.getInstance().clearUserInfo(mActivity);
Intent Intents = new Intent(mActivity, LoginActivity.class);
Intents.setFlags(
Intent.FLAG_ACTIVITY_CLEAR_TASK |
Intent.FLAG_ACTIVITY_NEW_TASK);
mContext.startActivity(Intents);
mActivity.startActivity(Intents);
} else {
}
......
......@@ -27,7 +27,7 @@ public interface WithdrawalsContract {
void modifySuccess(boolean flag);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void querAlipay(int userId);
public abstract void boundAlipay(RequestBody body);
......
package com.dayu.bigfish.presenter.Withdrawals;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.AlipayInfo;
import io.reactivex.functions.Consumer;
......@@ -8,16 +10,16 @@ import okhttp3.RequestBody;
/**
* Created by luofan on 2017/11/14.
*/
@InstanceFactory
public class WithdrawalsPresenter extends WithdrawalsContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void querAlipay(int userId) {
mModel.querAlipay(userId).subscribe(baseObserver(new Consumer<AlipayInfo>() {
ApiFactory.queryAlipay(userId).subscribe(baseObserver(new Consumer<AlipayInfo>() {
@Override
public void accept(AlipayInfo info) throws Exception {
mView.querSuccess(info);
......@@ -27,7 +29,7 @@ public class WithdrawalsPresenter extends WithdrawalsContract.Presenter {
@Override
public void boundAlipay(RequestBody body) {
mModel.boundAlipay(body).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.boundAlipay(body).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.boundSuccess(aBoolean);
......@@ -37,7 +39,7 @@ public class WithdrawalsPresenter extends WithdrawalsContract.Presenter {
@Override
public void modifyAlipay(RequestBody body) {
mModel.modifyAlipay(body).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.modifyAlipay(body).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.modifySuccess(aBoolean);
......
......@@ -23,9 +23,10 @@ public interface AccountBalanceContract {
void getBalanceError();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
/**
* 获取账户余额列表
*
* @param page
* @param pageSize
* @param accountId
......
package com.dayu.bigfish.presenter.accountbalance;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.AccountBalance;
import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/14.
*/
@InstanceFactory
public class AccountBalancePresenter extends AccountBalanceContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getAccountBalanceList(int page, int pageSize, int accountId) {
mModel.getAccountBalanceList(page, pageSize, accountId).subscribe(
basePageBean -> mView.getBalanceSuccess(basePageBean)
, error -> mView.getBalanceError());
ApiFactory.getAccountBalanceList(page, pageSize, accountId).subscribe(baseObserver(new Consumer<BasePageBean<AccountBalance>>() {
@Override
public void accept(BasePageBean<AccountBalance> accountBalanceBasePageBean) throws Exception {
mView.getBalanceSuccess(accountBalanceBasePageBean);
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
mView.getBalanceError();
}
}));
}
}
......@@ -21,7 +21,7 @@ public interface FeedBackContract {
void comfirmSuccess();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void comFirmSuggist(String comment, String userName, String mobile);
}
......
package com.dayu.bigfish.presenter.feedback;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import org.json.JSONObject;
import java.util.HashMap;
......@@ -11,11 +14,11 @@ import okhttp3.RequestBody;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class FeedBackPresenter extends FeedBackContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
......@@ -31,7 +34,7 @@ public class FeedBackPresenter extends FeedBackContract.Presenter {
params.put("suggestName", userName);
JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
mModel.comfirmSuggist(body).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.postFeedBack(body).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.comfirmSuccess();
......
......@@ -15,6 +15,6 @@ public interface HomeFirstContract {
interface View extends BaseView {
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
}
}
package com.dayu.bigfish.presenter.homefirsttab;
import com.app.annotation.apt.InstanceFactory;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class HomeFirstPresenter extends HomeFirstContract.Presenter {
@Override
public void onStart() {
}
public void onAttached() {
}
}
......@@ -42,7 +42,7 @@ public interface HomeFourContract {
void getAlipayAccountSuccess(AlipayInfo info);
}
abstract class Presenter extends BasePresenter<HomeFourContract.Model, HomeFourContract.View> {
abstract class Presenter extends BasePresenter<View> {
// //获取个人信息
// public abstract void getPersonalInfo(int userId);
//
......
package com.dayu.bigfish.presenter.homefourtab;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.AlipayInfo;
import com.dayu.bigfish.bean.EngineerInfo;
import com.dayu.bigfish.bean.OrderRecord;
import com.dayu.bigfish.bean.TodayAchievement;
import com.dayu.bigfish.bean.TodayBalance;
import io.reactivex.Observable;
import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class HomeFourPresenter extends HomeFourContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getAlipayAccount(int accountId) {
mModel.getAlipayAccount(accountId).subscribe(baseObserver(new Consumer<AlipayInfo>() {
ApiFactory.queryAlipay(accountId).subscribe(baseObserver(new Consumer<AlipayInfo>() {
@Override
public void accept(AlipayInfo info) throws Exception {
mView.getAlipayAccountSuccess(info);
......@@ -30,8 +34,8 @@ public class HomeFourPresenter extends HomeFourContract.Presenter {
@Override
public void getAllData(int userId, int siteId) {
mModel.getAllData(userId, siteId).subscribe(baseObserver(new Consumer<Object>() {
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) {
......@@ -46,4 +50,5 @@ public class HomeFourPresenter extends HomeFourContract.Presenter {
}
}));
}
}
......@@ -22,7 +22,7 @@ public interface HomeSecondContract {
void getTabNumSuccess(Tab tab);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getTabNum(int userId);
}
......
package com.dayu.bigfish.presenter.homesecondtab;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.Tab;
import io.reactivex.functions.Consumer;
......@@ -7,20 +9,23 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class HomeSecondPresenter extends HomeSecondContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getTabNum(int userId) {
mModel.getTabNum(userId).subscribe(baseObserver(new Consumer<Tab>() {
ApiFactory.getTabNum(userId).subscribe(baseObserver(new Consumer<Tab>() {
@Override
public void accept(Tab tab) throws Exception {
mView.getTabNumSuccess(tab);
}
}));
}
}
......@@ -15,6 +15,6 @@ public interface HomeThirdContract {
interface View extends BaseView {
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
}
}
package com.dayu.bigfish.presenter.homethiirdtab;
import com.app.annotation.apt.InstanceFactory;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class HomeThirdPresenter extends HomeThirdContract.Presenter {
@Override
public void onStart() {
}
@Override
public void onAttached() {
}
}
......@@ -32,7 +32,7 @@ public interface LoginContract {
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
/**
* 发送验证码.
*
......
package com.dayu.bigfish.presenter.login;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.UserInfo;
import io.reactivex.functions.Consumer;
......@@ -8,16 +10,14 @@ import io.reactivex.functions.Consumer;
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class LoginPresenter extends LoginContract.Presenter {
@Override
public void onStart() {
}
@Override
public void sendRegister(String userPhone, int type) {
mModel.sendRegister(userPhone, type).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.sendCode(userPhone, type).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.sendRegisterSuccess(aBoolean);
......@@ -28,14 +28,25 @@ public class LoginPresenter extends LoginContract.Presenter {
mView.sendRegisterFail(throwable);
}
}));
// mModel.sendRegister(userPhone, type).subscribe(baseObserver(new Consumer<Boolean>() {
// @Override
// public void accept(Boolean aBoolean) throws Exception {
// mView.sendRegisterSuccess(aBoolean);
// }
// }, new Consumer<Throwable>() {
// @Override
// public void accept(Throwable throwable) throws Exception {
// mView.sendRegisterFail(throwable);
// }
// }));
}
@Override
public void login(String userPhone, String register) {
mModel.login(userPhone, register).subscribe(baseObserver(new Consumer<UserInfo>() {
ApiFactory.login(userPhone, register).subscribe(baseObserver(new Consumer<UserInfo>() {
@Override
public void accept(UserInfo info) throws Exception {
mView.loginSuccess(info);
public void accept(UserInfo userInfo) throws Exception {
mView.loginSuccess(userInfo);
}
}, new Consumer<Throwable>() {
@Override
......@@ -43,6 +54,21 @@ public class LoginPresenter extends LoginContract.Presenter {
mView.loginFail(throwable);
}
}));
// mModel.login(userPhone, register).subscribe(baseObserver(new Consumer<UserInfo>() {
// @Override
// public void accept(UserInfo info) throws Exception {
// mView.loginSuccess(info);
// }
// }, new Consumer<Throwable>() {
// @Override
// public void accept(Throwable throwable) throws Exception {
// mView.loginFail(throwable);
// }
// }));
}
@Override
public void onAttached() {
}
}
......@@ -38,7 +38,7 @@ public interface MainContract {
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getNewVersion(String version);
public abstract void upgradeVersion(String appId, String versionCode);
......
package com.dayu.bigfish.presenter.main;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.Constants;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
......@@ -16,17 +18,18 @@ import okhttp3.RequestBody;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class MainPresenter extends MainContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getNewVersion(String version) {
mModel.getNewVersion().subscribe(baseObserver(new Consumer<String>() {
ApiFactory.checkVersion("dayushifua_dayu").subscribe(baseObserver(new Consumer<String>() {
@Override
public void accept(String s) throws Exception {
if (!version.equals(s)) {
......@@ -40,7 +43,7 @@ public class MainPresenter extends MainContract.Presenter {
@Override
public void upgradeVersion(String appId, String versionCode) {
mModel.upgradeVersion(appId, versionCode).safeSubscribe(baseObserver(new Consumer<VersionInfo>() {
ApiFactory.getVersionInfo(appId, versionCode).safeSubscribe(baseObserver(new Consumer<VersionInfo>() {
@Override
public void accept(VersionInfo info) throws Exception {
mView.getUpgradeVersionSuccess(info);
......@@ -50,7 +53,7 @@ public class MainPresenter extends MainContract.Presenter {
@Override
public void commitVersionInfo(int accoutId, String imei, String platform, String versionCode) {
if (SPUtils.get(mContext, Constants.OLD_PAKAGENUM, "").equals(mContext.getPackageName())) {
if (SPUtils.get(mActivity, Constants.OLD_PAKAGENUM, "").equals(mActivity.getPackageName())) {
return;
}
JSONObject jsonObject = new JSONObject();
......@@ -63,7 +66,7 @@ public class MainPresenter extends MainContract.Presenter {
e.printStackTrace();
}
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
mModel.commitVersionInfo(requestBody).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.commitVersionInfo(requestBody).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.commitVersionInfoSuccess();
......@@ -73,12 +76,11 @@ public class MainPresenter extends MainContract.Presenter {
@Override
public void getReceiveOrder(int state, int userId, int siteId, int pagerId, int pagerSize) {
mModel.getReceiveOrder(state, userId, siteId, pagerId, pagerSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
ApiFactory.getOrders(state, userId, siteId, pagerId, pagerSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
@Override
public void accept(BasePageBean<Order> orders) throws Exception {
mView.getReceiveOrderSuccess(orders);
}
}));
}
}
......@@ -20,7 +20,7 @@ public interface OrderDetailContract {
void getDetailInfo(OrderDetail detail);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getOrderDetailInfo(int orderId);
}
}
package com.dayu.bigfish.presenter.orderdetail;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.OrderDetail;
import io.reactivex.functions.Consumer;
......@@ -7,21 +9,23 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class OrderDetailPresenter extends OrderDetailContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getOrderDetailInfo(int orderId) {
mModel.getOrderDetailInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
ApiFactory.getOrderInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
@Override
public void accept(OrderDetail detail) throws Exception {
mView.getDetailInfo(detail);
}
}));
}
}
......@@ -20,7 +20,7 @@ public interface OrderDetailServeContract {
void getOrderServerInfo(OrderDetail detail);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getOrderServerInfo(int orderId);
}
}
package com.dayu.bigfish.presenter.orderdetailserve;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.OrderDetail;
import io.reactivex.functions.Consumer;
......@@ -7,21 +9,24 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class OrderDetailServePresenter extends OrderDetailServeContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getOrderServerInfo(int orderId) {
mModel.getOrderServerInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
ApiFactory.getOrderInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
@Override
public void accept(OrderDetail detail) throws Exception {
mView.getOrderServerInfo(detail);
}
}));
}
}
......@@ -24,7 +24,7 @@ public interface OrderErrorTabContract {
void getErrorOrderFial();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getErrorOrder(int siteId, int userId);
}
}
package com.dayu.bigfish.presenter.ordererrortab;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.ErrorOrder;
import java.util.List;
......@@ -9,17 +11,18 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class OrderErrorTabPresenter extends OrderErrorTabContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getErrorOrder(int state, int userId) {
mModel.getErrorOrder(state, userId).subscribe(baseObserver(new Consumer<List<ErrorOrder>>() {
ApiFactory.getErrorOrders(state, userId).subscribe(baseObserver(new Consumer<List<ErrorOrder>>() {
@Override
public void accept(List<ErrorOrder> errorOrder) throws Exception {
mView.getErrorOrderSuccess(errorOrder);
......@@ -31,5 +34,4 @@ public class OrderErrorTabPresenter extends OrderErrorTabContract.Presenter {
}
}));
}
}
......@@ -19,10 +19,11 @@ public interface OrderTabContract {
interface View extends BaseView {
void getWatingOrderSuccess(BasePageBean<Order> data);
void getWatingOrderFial();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getWatingOrder(int state, int userId, int siteId, int page, int pageSize);
}
}
package com.dayu.bigfish.presenter.ordertab;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
......@@ -8,17 +10,19 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class OrderTabPresenter extends OrderTabContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getWatingOrder(int state, int userId, int siteId, int page, int pageSize) {
mModel.getWatingOrder(state, userId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
// ApiFactory.getReceiveOrders(state, userId, siteId, page, pageSize)
ApiFactory.getOrders(state, userId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
@Override
public void accept(BasePageBean<Order> orderBasePageBean) throws Exception {
mView.getWatingOrderSuccess(orderBasePageBean);
......
......@@ -28,7 +28,7 @@ public interface OrderTwoTabContract {
void getWatingOrderFial();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getWatingOrder(int state, int userId, int siteId, int page, int pageSize);
public abstract Observable<Integer> startOrder(int orderId, double latitude, double longitude);
......
package com.dayu.bigfish.presenter.ordertwotab;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
......@@ -15,17 +17,18 @@ import okhttp3.RequestBody;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class OrderTwoTabPresenter extends OrderTwoTabContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getWatingOrder(int state, int userId, int siteId, int page, int pageSize) {
mModel.getWatingOrder(state, userId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
ApiFactory.getOrders(state, userId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
@Override
public void accept(BasePageBean<Order> orderBasePageBean) throws Exception {
mView.getWatingOrderSuccess(orderBasePageBean);
......@@ -46,7 +49,7 @@ public class OrderTwoTabPresenter extends OrderTwoTabContract.Presenter {
params.put("orderId", orderId);
JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
return mModel.startOrder(body);
return ApiFactory.startOrder(body);
}
@Override
......@@ -57,6 +60,6 @@ public class OrderTwoTabPresenter extends OrderTwoTabContract.Presenter {
params.put("orderId", orderId);
JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
return mModel.startServer(body);
return ApiFactory.startServer(body);
}
}
......@@ -32,7 +32,7 @@ public interface ProcessOrderContract {
void commitPhotoSuccess(List<String> list);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getOrderInfo(int orderId);
public abstract void commitOrder(List<String> imageUrl, int orderId, String editText, int engineerId,
......
package com.dayu.bigfish.presenter.processorder;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.bean.OrderDetail;
import org.json.JSONObject;
......@@ -19,17 +21,17 @@ import okhttp3.RequestBody;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class ProcessOrderPresenter extends ProcessOrderContract.Presenter {
@Override
public void onStart() {
}
public void onAttached() {
}
@Override
public void getOrderInfo(int orderId) {
mModel.getOrderInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
ApiFactory.getOrderInfo(orderId).subscribe(baseObserver(new Consumer<OrderDetail>() {
@Override
public void accept(OrderDetail detail) throws Exception {
mView.getOrderInfoSuccess(detail);
......@@ -69,7 +71,7 @@ public class ProcessOrderPresenter extends ProcessOrderContract.Presenter {
}
JSONObject jsonObject = new JSONObject(params);
RequestBody body = RequestBody.create(MediaType.parse("application/json"), jsonObject.toString());
mModel.commitOrder(body).subscribe(baseObserver(new Consumer<Integer>() {
ApiFactory.commitOrder(body).subscribe(baseObserver(new Consumer<Integer>() {
@Override
public void accept(Integer integer) throws Exception {
mView.commitOrderSuccess();
......@@ -94,7 +96,7 @@ public class ProcessOrderPresenter extends ProcessOrderContract.Presenter {
MultipartBody.Part.createFormData("fileUpload", files.get(0).getName(), requestFile);
part[i] = body;
}
mModel.commitPhoto(path, orderId, part).subscribe(baseObserver(new Consumer<List<String>>() {
ApiFactory.uploadPhoto(path, orderId, part).subscribe(baseObserver(new Consumer<List<String>>() {
@Override
public void accept(List<String> list) throws Exception {
mView.commitPhotoSuccess(list);
......
......@@ -30,7 +30,7 @@ public interface ReceivingContract {
void receiveOrderFail();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getReceiveOrder(int state, int pagerId, int pagerSize, int siteId, int userId);
public abstract void receiveOrder(int orders, int engineer);
......
package com.dayu.bigfish.presenter.receivingorder;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
......@@ -8,17 +10,17 @@ import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class ReceivingPresenter extends ReceivingContract.Presenter {
@Override
public void onStart() {
public void onAttached() {
}
@Override
public void getReceiveOrder(int state, int page, int pageSize, int siteId, int userId) {
mModel.getReceiveOrder(state, page, pageSize, siteId, userId).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
ApiFactory.getOrders(state, page, pageSize, siteId, userId).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
@Override
public void accept(BasePageBean<Order> orderBasePageBean) throws Exception {
mView.getReceiveOrderSuccess(orderBasePageBean);
......@@ -33,11 +35,12 @@ public class ReceivingPresenter extends ReceivingContract.Presenter {
@Override
public void receiveOrder(int orders, int engineer) {
mModel.receiveOrder(orders, engineer).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.receiveOrder(orders, engineer).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.receiveOrderSuccess();
}
}));
}
}
......@@ -19,7 +19,7 @@ public interface SettingContract {
void getNewVersionSuccess(String code);
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void updataVersion();
}
}
package com.dayu.bigfish.presenter.setting;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/8.
*/
@InstanceFactory
public class SettingPresenter extends SettingContract.Presenter {
@Override
public void onStart() {
}
public void onAttached() {
}
@Override
public void updataVersion() {
mModel.getNewVersionCode().subscribe(baseObserver(new Consumer<String>() {
ApiFactory.checkVersion("dayushifua_dayu").subscribe(baseObserver(new Consumer<String>() {
@Override
public void accept(String s) throws Exception {
mView.getNewVersionSuccess(s);
}
}));
}
}
......@@ -19,7 +19,7 @@ public interface SubcribeContract {
void subcribeTimeSuccess();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void subcribeTime(int orderId, String doorTime, String doorComment);
}
}
package com.dayu.bigfish.presenter.subcribeTime;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import io.reactivex.functions.Consumer;
/**
* Created by luofan on 2017/11/16.
*/
@InstanceFactory
public class SubcribeTimePresenter extends SubcribeContract.Presenter {
@Override
public void onAttached() {
}
@Override
public void subcribeTime(int orderId, String doorTime, String doorComment) {
mModel.subcribeTime(orderId, doorTime, doorComment).subscribe(baseObserver(new Consumer<Boolean>() {
ApiFactory.subcriceTime(orderId, doorTime, doorComment).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.subcribeTimeSuccess();
}
}));
}
@Override
public void onStart() {
}
}
package com.dayu.bigfish.presenter.worksRecord;
import com.apt.ApiFactory;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
......@@ -12,13 +13,13 @@ import io.reactivex.functions.Consumer;
public class WorksRecordPresenter extends WroksRecordContract.Presenter {
@Override
public void onStart() {
}
public void onAttached() {
}
@Override
public void getWorksRecord(int state, int engineerId, int siteId, int page, int pageSize) {
mModel.getWorksRecord(state, engineerId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
ApiFactory.getOrders(state, engineerId, siteId, page, pageSize).subscribe(baseObserver(new Consumer<BasePageBean<Order>>() {
@Override
public void accept(BasePageBean<Order> orderBasePageBean) throws Exception {
mView.getWorksRecord(orderBasePageBean);
......
package com.dayu.bigfish.presenter.worksRecord;
import com.app.annotation.apt.InstanceFactory;
import com.dayu.bigfish.base.BaseModel;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.base.BasePresenter;
......@@ -12,6 +13,7 @@ import io.reactivex.Observable;
/**
* Created by luo on 2016/8/4.
*/
@InstanceFactory
public interface WroksRecordContract {
interface Model extends BaseModel {
Observable<BasePageBean<Order>> getWorksRecord(int state, int engineerId, int siteId, int page, int pageSize);
......@@ -22,7 +24,7 @@ public interface WroksRecordContract {
void getWorkRecordFail();
}
abstract class Presenter extends BasePresenter<Model, View> {
abstract class Presenter extends BasePresenter<View> {
public abstract void getWorksRecord(int state, int engineerId, int siteId, int page, int pageSize);
}
}
......@@ -10,13 +10,12 @@ 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.ui.adapter.AccountBalanceAdapter;
import com.dayu.bigfish.base.BaseActivity;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.AccountBalance;
import com.dayu.bigfish.presenter.accountbalance.AccountBalanceContract;
import com.dayu.bigfish.presenter.accountbalance.AccountBalanceModel;
import com.dayu.bigfish.presenter.accountbalance.AccountBalancePresenter;
import com.dayu.bigfish.ui.adapter.AccountBalanceAdapter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.ToastUtils;
......@@ -28,7 +27,7 @@ import butterknife.OnClick;
* Created by luofan on 2017/11/1.
*/
public class AccountBalanceActivity extends BaseActivity<AccountBalancePresenter, AccountBalanceModel> implements AccountBalanceContract.View {
public class AccountBalanceActivity extends BaseActivity<AccountBalancePresenter> implements AccountBalanceContract.View {
@BindView(R.id.tv_account_balance)
TextView mAccountBalanceTv;
@BindView(R.id.recycler_balance)
......@@ -48,7 +47,7 @@ public class AccountBalanceActivity extends BaseActivity<AccountBalancePresenter
@Override
public void initView() {
initData();
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.getAccountBalanceList(mPage, mPageSize, mUserId);
}
......@@ -73,10 +72,10 @@ public class AccountBalanceActivity extends BaseActivity<AccountBalancePresenter
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.receiving_back:
mContext.finish();
mActivity.finish();
break;
case R.id.title_right:
Intent intent = new Intent(mContext, WithdrawalsActivity.class);
Intent intent = new Intent(mActivity, WithdrawalsActivity.class);
startActivity(intent);
break;
default:
......
......@@ -7,7 +7,6 @@ import android.widget.EditText;
import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseActivity;
import com.dayu.bigfish.presenter.feedback.FeedBackContract;
import com.dayu.bigfish.presenter.feedback.FeedBackModel;
import com.dayu.bigfish.presenter.feedback.FeedBackPresenter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ToastUtils;
......@@ -21,7 +20,7 @@ import butterknife.OnClick;
* Created by yu
*/
public class FeedBackActivity extends BaseActivity<FeedBackPresenter, FeedBackModel> implements FeedBackContract.View {
public class FeedBackActivity extends BaseActivity<FeedBackPresenter> implements FeedBackContract.View {
@BindView(R.id.text_content)
EditText textContent;
private String comment;
......
......@@ -13,7 +13,6 @@ import com.dayu.bigfish.base.BaseActivity;
import com.dayu.bigfish.bean.UserInfo;
import com.dayu.bigfish.managers.UserManager;
import com.dayu.bigfish.presenter.login.LoginContract;
import com.dayu.bigfish.presenter.login.LoginModel;
import com.dayu.bigfish.presenter.login.LoginPresenter;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.TimeCountUtil;
......@@ -32,7 +31,7 @@ import butterknife.OnClick;
* 2017/11/08.
*/
public class LoginActivity extends BaseActivity<LoginPresenter, LoginModel> implements LoginContract.View {
public class LoginActivity extends BaseActivity<LoginPresenter> implements LoginContract.View {
@BindView(R.id.edit_phone)
ClearEditText editPhone;
@BindView(R.id.edit_register)
......@@ -130,7 +129,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter, LoginModel> impl
}
private void dumpAgreement() {
Intent intent = new Intent(mContext, AgreementActivity.class);
Intent intent = new Intent(mActivity, AgreementActivity.class);
startActivity(intent);
}
......@@ -143,7 +142,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter, LoginModel> impl
ToastUtils.showShortToast(getString(R.string.please_input_phone_right));
return;
}
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.login(userPhone, register);
}
......@@ -157,9 +156,9 @@ public class LoginActivity extends BaseActivity<LoginPresenter, LoginModel> impl
return;
}
if (type == 1) {
TimeCountUtil timeCountUtil = new TimeCountUtil(mContext, 60000, 1000, btnRegisterSendCode);
TimeCountUtil timeCountUtil = new TimeCountUtil(mActivity, 60000, 1000, btnRegisterSendCode);
timeCountUtil.start();
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
} else if (type == 2) {
mVoiceCode.setTextColor(getResources().getColor(R.color.cl_text));
mVoiceCode.setClickable(false);
......
......@@ -28,16 +28,15 @@ import com.dayu.bigfish.bean.VersionInfo;
import com.dayu.bigfish.greendao.GreenDaoManager;
import com.dayu.bigfish.greendao.MessageSysDao;
import com.dayu.bigfish.presenter.main.MainContract;
import com.dayu.bigfish.presenter.main.MainModel;
import com.dayu.bigfish.presenter.main.MainPresenter;
import com.dayu.bigfish.rxbus.RefreReceiveData;
import com.dayu.bigfish.rxbus.RefreshReceivingNum;
import com.dayu.bigfish.rxbus.RxBus;
import com.dayu.bigfish.sqlbean.MessageSys;
import com.dayu.bigfish.ui.fragment.HomeFirstTabFragment;
import com.dayu.bigfish.ui.fragment.HomePersonFragment;
import com.dayu.bigfish.ui.fragment.HomeMessageTabFragment;
import com.dayu.bigfish.ui.fragment.HomeOrderFragment;
import com.dayu.bigfish.ui.fragment.HomePersonFragment;
import com.dayu.bigfish.utils.AppUtils;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.LocationUtils;
......@@ -63,7 +62,7 @@ import io.reactivex.functions.Consumer;
* Created by luofan on 2017/11/20.
*/
public class MainActivity extends BaseActivity<MainPresenter, MainModel> implements MainContract.View {
public class MainActivity extends BaseActivity<MainPresenter> implements MainContract.View {
@BindView(R.id.tab_first)
TextView mTabFirst;
@BindView(R.id.tab_second)
......@@ -97,9 +96,9 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
HomePersonFragment fourFragment = HomePersonFragment.newInstance();
mFragments = new Fragment[]{firstFragment, secondFragment, thirdFragment, fourFragment};
addFragment();
mAccountId = GetUserInfo.getACCOUNT_ID(mContext);
mSiteId = GetUserInfo.getSITE_ID(mContext);
String imei = AppUtils.getIMEI(mContext);
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.getReceiveOrder(Constants.WATING_ORDER, mAccountId, mSiteId, 1, 20);
......@@ -186,7 +185,7 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
mPosition = 3;
break;
case R.id.tab_get_order:
Intent intent = new Intent(mContext, ReceivingActivity.class);
Intent intent = new Intent(mActivity, ReceivingActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_bottom_in, 0);
break;
......@@ -242,7 +241,7 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
@Override
public void commitVersionInfoSuccess() {
SPUtils.put(mContext, Constants.OLD_PAKAGENUM, mContext.getPackageName());
SPUtils.put(mActivity, Constants.OLD_PAKAGENUM, mActivity.getPackageName());
}
@Override
......@@ -258,12 +257,12 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
* @param downloadPath 下载的路径
*/
private void showUpdateDialog(String upgradePrompt, String downloadPath) {
CustomDialog dialog = new CustomDialog(mContext, R.style.custom_dialog2, upgradePrompt
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, upgradePrompt
, new CustomDialog.OnCloseListener() {
@Override
public void onClick(Dialog dialog, boolean confirm) {
if (confirm) {
mProgressDialog = new ProgressDialog(mContext);//创建进度条对话
mProgressDialog = new ProgressDialog(mActivity);//创建进度条对话
mProgressDialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);//设置进度条样式为水平方向
mProgressDialog.show();//显示进度条对话框
File sdDir = Environment.getExternalStorageDirectory();
......@@ -274,14 +273,14 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
@Override
public void onSuccess(ResponseInfo<File> responseInfo) {
mProgressDialog.dismiss(); //关闭进度条对话框
Toast.makeText(mContext, "下载成功", Toast.LENGTH_SHORT).show();
Toast.makeText(mActivity, "下载成功", Toast.LENGTH_SHORT).show();
/*覆盖安装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(mContext, BuildConfig.APPLICATION_ID + ".fileProvider", responseInfo.result);
Uri contentUri = FileProvider.getUriForFile(mActivity, BuildConfig.APPLICATION_ID + ".fileProvider", responseInfo.result);
intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
} else {
intent.setDataAndType(Uri.fromFile(responseInfo.result), "application/vnd.android.package-archive");
......@@ -293,7 +292,7 @@ public class MainActivity extends BaseActivity<MainPresenter, MainModel> impleme
@Override
public void onFailure(HttpException e, String s) {
mProgressDialog.dismiss();
Toast.makeText(mContext, "下载失败", Toast.LENGTH_SHORT).show();
Toast.makeText(mActivity, "下载失败", Toast.LENGTH_SHORT).show();
}
@Override
......
......@@ -20,7 +20,6 @@ import com.dayu.bigfish.bean.OrderDetail;
import com.dayu.bigfish.greendao.GreenDaoManager;
import com.dayu.bigfish.greendao.OrderInfoDao;
import com.dayu.bigfish.presenter.processorder.ProcessOrderContract;
import com.dayu.bigfish.presenter.processorder.ProcessOrderModel;
import com.dayu.bigfish.presenter.processorder.ProcessOrderPresenter;
import com.dayu.bigfish.rxbus.OrderState;
import com.dayu.bigfish.rxbus.RxBus;
......@@ -60,7 +59,7 @@ import static com.dayu.bigfish.utils.SPUtils.get;
* on 2017/9/15.
* Created by yu
*/
public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, ProcessOrderModel> implements ProcessOrderContract.View {
public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> implements ProcessOrderContract.View {
@BindView(R.id.back_order_finish)
ImageView backOrderFinish;
......@@ -184,8 +183,8 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
public void initView() {
mOrderInfoDao = GreenDaoManager.getInstance().getmDaoSession().getOrderInfoDao();
mSelectList = new ArrayList<>();
mIvWeight = (UtilsScreen.getScreenWidth(mContext) - UtilsScreen.dip2px(mContext, 20)) / 5;
mAddIV = new ImageView(mContext);
mIvWeight = (UtilsScreen.getScreenWidth(mActivity) - UtilsScreen.dip2px(mActivity, 20)) / 5;
mAddIV = new ImageView(mActivity);
mAddIV.setLayoutParams(new ViewGroup.LayoutParams(mIvWeight, mIvWeight));
mAddIV.setImageResource(R.mipmap.settopic_pictrue);
mAddIV.setOnClickListener(v -> choosePic());
......@@ -200,7 +199,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
isPay = 1;//不支付费用
}
initData();
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.getOrderInfo(orderId);
}
......@@ -291,11 +290,11 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
break;
case R.id.submit:
if (mImages.size() != 0) {
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.commitPhoto(mImages, orderId, "mobile/business/checkApply");
} else {
getData();
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.commitOrder(null, orderId, serveValue1,
engineerId, isPay, upDoorCost, payRemark,
serveCost, cailiaoCost, otherCost);
......@@ -330,7 +329,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
private void initPhotoView() {
mLImage.removeAllViews();
for (int i = 0; i < mImages.size(); i++) {
View view = LayoutInflater.from(mContext).inflate(R.layout.item_picture_select, null);
View view = LayoutInflater.from(mActivity).inflate(R.layout.item_picture_select, null);
view.setLayoutParams(new RelativeLayout.LayoutParams(mIvWeight, mIvWeight));
view.setPadding(0, 0, 10, 0);
ImageView ivDelete = (ImageView) view.findViewById(R.id.iv_picture_delete);
......@@ -353,7 +352,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
}
public void choosePic() {
PictureSelectionModel selector = PictureSelector.create(mContext)
PictureSelectionModel selector = PictureSelector.create(mActivity)
.openGallery(PictureMimeType.ofImage())//全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()
.maxSelectNum(5 - mImages.size())// 最大图片选择数量 int
.imageSpanCount(4)// 每行显示个数 int
......@@ -392,7 +391,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
ToastUtils.showShortToast("数据提交成功");
RxBus.getDefault().post(new OrderState(ORDER_FINISH, finshPosition));
mOrderInfoDao.deleteByKey((long) orderId);
PictureFileUtils.deleteCacheDirFile(mContext);
PictureFileUtils.deleteCacheDirFile(mActivity);
finish();
}
......@@ -418,7 +417,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter, Pr
engineerId, isPay, upDoorCost, payRemark,
serveCost, cailiaoCost, otherCost);
mImages.clear();
PictureFileUtils.deleteCacheDirFile(mContext);
PictureFileUtils.deleteCacheDirFile(mActivity);
}
@Override
......
......@@ -12,7 +12,6 @@ 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.ReceivingModel;
import com.dayu.bigfish.presenter.receivingorder.ReceivingPresenter;
import com.dayu.bigfish.rxbus.RefreshReceivingNum;
import com.dayu.bigfish.rxbus.RefreshTabNum;
......@@ -34,7 +33,7 @@ import butterknife.OnClick;
* Created by yu
*/
public class ReceivingActivity extends BaseActivity<ReceivingPresenter, ReceivingModel> implements ReceivingContract.View, SwipeRefreshLayout.OnRefreshListener {
public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implements ReceivingContract.View, SwipeRefreshLayout.OnRefreshListener {
public List<Order> list;
@BindView(R.id.receiving_refersh)
SwipeRefreshLayout mRefreshLayout;
......@@ -58,9 +57,9 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter, Receivin
public void initView() {
userId = GetUserInfo.getACCOUNT_ID(this);
siteId = GetUserInfo.getSITE_ID(this);
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mContext);
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setAdapter(mAdapter);
mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
......
......@@ -12,7 +12,6 @@ import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseActivity;
import com.dayu.bigfish.managers.UserManager;
import com.dayu.bigfish.presenter.setting.SettingContract;
import com.dayu.bigfish.presenter.setting.SettingModel;
import com.dayu.bigfish.presenter.setting.SettingPresenter;
import com.dayu.bigfish.utils.DataCleanManager;
import com.dayu.bigfish.utils.ProgressUtil;
......@@ -31,7 +30,7 @@ import butterknife.OnClick;
* 2017/9/2.
*/
public class SettingActivity extends BaseActivity<SettingPresenter, SettingModel> implements SettingContract.View {
public class SettingActivity extends BaseActivity<SettingPresenter> implements SettingContract.View {
@BindView(R.id.set_message_switch)
SwitchImage setMessageSwitch;
@BindView(R.id.tv_hc)
......@@ -71,7 +70,7 @@ public class SettingActivity extends BaseActivity<SettingPresenter, SettingModel
break;
//清空缓存
case R.id.set_clear_huancun:
CustomDialog dialog = new CustomDialog(mContext, R.style.custom_dialog2, "确定要删除所有缓存数据吗?"
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, "确定要删除所有缓存数据吗?"
, new CustomDialog.OnCloseListener() {
@Override
public void onClick(Dialog dialog, boolean confirm) {
......@@ -95,7 +94,7 @@ public class SettingActivity extends BaseActivity<SettingPresenter, SettingModel
break;
//更新
case R.id.set_jiance_gengxin:
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.updataVersion();
break;
//客服电话
......
......@@ -11,7 +11,6 @@ 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.SubcribeTimeModel;
import com.dayu.bigfish.presenter.subcribeTime.SubcribeTimePresenter;
import com.dayu.bigfish.rxbus.OrderState;
import com.dayu.bigfish.rxbus.RefreshTabNum;
......@@ -28,9 +27,9 @@ import butterknife.BindView;
import butterknife.OnClick;
import static com.dayu.bigfish.R.id.title_text;
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.ui.fragment.HomeOrderFragment.ORDER_DOING;
import static com.dayu.bigfish.utils.UtilsDate.LONG_TIME_FORMAT_TWO;
import static java.lang.Integer.parseInt;
......@@ -39,7 +38,7 @@ import static java.lang.Integer.parseInt;
* on 2017/9/12.
*/
public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter, SubcribeTimeModel> implements SubcribeContract.View {
public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> implements SubcribeContract.View {
@BindView(title_text)
TextView titleText;
@BindView(R.id.et_input)
......@@ -189,7 +188,7 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter, Su
ToastUtils.showShortToast("请输入日期和时间");
return;
} else {
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
ToastUtils.showShortToast("正在提交数据......");
String time = dateUtils.stringTimeTo(textDateValue.getText().toString());
String timeValue = time + textTimeValue.getText().toString() + ":00";
......
......@@ -11,7 +11,6 @@ import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseActivity;
import com.dayu.bigfish.bean.AlipayInfo;
import com.dayu.bigfish.presenter.Withdrawals.WithdrawalsContract;
import com.dayu.bigfish.presenter.Withdrawals.WithdrawalsModel;
import com.dayu.bigfish.presenter.Withdrawals.WithdrawalsPresenter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ProgressUtil;
......@@ -32,7 +31,7 @@ import okhttp3.RequestBody;
* Created by luofan on 2017/11/1.
*/
public class WithdrawalsActivity extends BaseActivity<WithdrawalsPresenter, WithdrawalsModel> implements WithdrawalsContract.View {
public class WithdrawalsActivity extends BaseActivity<WithdrawalsPresenter> implements WithdrawalsContract.View {
@BindView(R.id.et_withdrawals_accout)
EditText mAccountEt;
@BindView(R.id.et_withdrawals_name)
......@@ -55,7 +54,7 @@ public class WithdrawalsActivity extends BaseActivity<WithdrawalsPresenter, With
@Override
public void initView() {
mUserId = GetUserInfo.getACCOUNT_ID(MyApplication.getContext());
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.querAlipay(mUserId);
}
......@@ -64,14 +63,14 @@ public class WithdrawalsActivity extends BaseActivity<WithdrawalsPresenter, With
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.receiving_back:
mContext.finish();
mActivity.finish();
break;
case R.id.tv_account_comfirm:
if (mState == 0) {
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.boundAlipay(getInfo());
} else {
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.modifyAlipay(getInfo());
}
break;
......
......@@ -17,7 +17,6 @@ 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.worksRecord.WorksRecordModel;
import com.dayu.bigfish.presenter.worksRecord.WorksRecordPresenter;
import com.dayu.bigfish.presenter.worksRecord.WroksRecordContract;
import com.dayu.bigfish.ui.adapter.OrderDoingAdapter;
......@@ -34,7 +33,7 @@ import butterknife.OnClick;
* on 2017/9/29.
*/
public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter, WorksRecordModel> implements WroksRecordContract.View {
public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter> implements WroksRecordContract.View {
@BindView(R.id.title_text)
TextView titleText;
@BindView(R.id.time_title)
......@@ -62,7 +61,7 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter, Work
@Override
public void initView() {
titleText.setText("历史工单");
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item,mContext);
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item,mActivity);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setHasFixedSize(true);
mRecyclerView.setAdapter(mAdapter);
......@@ -103,7 +102,7 @@ public class WorksRecordActivity extends BaseActivity<WorksRecordPresenter, Work
}
});
ProgressUtil.startLoad(mContext);
ProgressUtil.startLoad(mActivity);
mPresenter.getWorksRecord(Constants.FINISH_ORDER, userId, siteId, mPage, mPageSize);
}
......
......@@ -6,14 +6,13 @@ import android.view.View;
import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.presenter.homefirsttab.HomeFirstContract;
import com.dayu.bigfish.presenter.homefirsttab.HomeFirstModel;
import com.dayu.bigfish.presenter.homefirsttab.HomeFirstPresenter;
/**
* Created by luofan on 2017/11/20.
*/
public class HomeFirstTabFragment extends BaseFragment<HomeFirstPresenter, HomeFirstModel> implements HomeFirstContract.View {
public class HomeFirstTabFragment extends BaseFragment<HomeFirstPresenter> implements HomeFirstContract.View {
public static HomeFirstTabFragment newInstance() {
Bundle args = new Bundle();
......
......@@ -9,7 +9,6 @@ import android.view.View;
import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.presenter.homethiirdtab.HomeThirdContract;
import com.dayu.bigfish.presenter.homethiirdtab.HomeThirdModel;
import com.dayu.bigfish.presenter.homethiirdtab.HomeThirdPresenter;
import com.dayu.bigfish.ui.adapter.FragmentOrderAdapter;
import com.dayu.bigfish.utils.TabLayoutUtils;
......@@ -23,7 +22,7 @@ import butterknife.BindView;
* Created by luofan on 2017/11/20.
*/
public class HomeMessageTabFragment extends BaseFragment<HomeThirdPresenter, HomeThirdModel> implements HomeThirdContract.View {
public class HomeMessageTabFragment extends BaseFragment<HomeThirdPresenter> implements HomeThirdContract.View {
@BindView(R.id.message_tablayout)
TabLayout messageTablayout;
@BindView(R.id.message_view_pager)
......
......@@ -16,7 +16,6 @@ import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.bean.Tab;
import com.dayu.bigfish.presenter.homesecondtab.HomeSecondContract;
import com.dayu.bigfish.presenter.homesecondtab.HomeSecondModel;
import com.dayu.bigfish.presenter.homesecondtab.HomeSecondPresenter;
import com.dayu.bigfish.rxbus.RefreshTabNum;
import com.dayu.bigfish.rxbus.RxBus;
......@@ -40,7 +39,7 @@ import static com.dayu.bigfish.R.id.tabicon;
* Created by luofan on 2017/11/20.
*/
public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter, HomeSecondModel> implements HomeSecondContract.View {
public class HomeOrderFragment extends BaseFragment<HomeSecondPresenter> implements HomeSecondContract.View {
@BindView(R.id.home_tabLayout)
TabLayout homeTabLayout;
@BindView(R.id.view_pager)
......
......@@ -26,7 +26,6 @@ import com.dayu.bigfish.bean.OrderRecord;
import com.dayu.bigfish.bean.TodayAchievement;
import com.dayu.bigfish.bean.TodayBalance;
import com.dayu.bigfish.presenter.homefourtab.HomeFourContract;
import com.dayu.bigfish.presenter.homefourtab.HomeFourModel;
import com.dayu.bigfish.presenter.homefourtab.HomeFourPresenter;
import com.dayu.bigfish.ui.AccountBalanceActivity;
import com.dayu.bigfish.ui.SettingActivity;
......@@ -45,7 +44,7 @@ import butterknife.OnClick;
* Created by luofan on 2017/11/20.
*/
public class HomePersonFragment extends BaseFragment<HomeFourPresenter, HomeFourModel> implements HomeFourContract.View {
public class HomePersonFragment extends BaseFragment<HomeFourPresenter> implements HomeFourContract.View {
@BindView(R.id.person_circle)
CircleImageView personCircle;
@BindView(R.id.person_name)
......
......@@ -12,7 +12,6 @@ import com.dayu.bigfish.R;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.bean.OrderDetail;
import com.dayu.bigfish.presenter.orderdetail.OrderDetailContract;
import com.dayu.bigfish.presenter.orderdetail.OrderDetailModel;
import com.dayu.bigfish.presenter.orderdetail.OrderDetailPresenter;
import com.dayu.bigfish.ui.adapter.AccessoriesAdapter;
import com.dayu.bigfish.utils.ProgressUtil;
......@@ -27,7 +26,7 @@ import static com.dayu.bigfish.R.id.four_text_nine_text;
* on 2017/9/13.
*/
public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter, OrderDetailModel> implements OrderDetailContract.View {
public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> implements OrderDetailContract.View {
@BindView(R.id.two_text_two_text)
TextView twoTextTwoText;
......@@ -97,6 +96,8 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter, Ord
@Override
public View initView(View view) {
orderId = getArguments().getInt("orderId");
ProgressUtil.startLoad(mContext);
mPresenter.getOrderDetailInfo(orderId);
return view;
}
......@@ -107,8 +108,6 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter, Ord
@Override
protected void lazyLoad() {
ProgressUtil.startLoad(mContext);
mPresenter.getOrderDetailInfo(orderId);
}
@Override
......
......@@ -4,12 +4,11 @@ import android.view.View;
import android.widget.ListView;
import com.dayu.bigfish.R;
import com.dayu.bigfish.ui.adapter.ServeDatailsAdapter;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.bean.OrderDetail;
import com.dayu.bigfish.presenter.orderdetailserve.OrderDetailServeContract;
import com.dayu.bigfish.presenter.orderdetailserve.OrderDetailServeModel;
import com.dayu.bigfish.presenter.orderdetailserve.OrderDetailServePresenter;
import com.dayu.bigfish.ui.adapter.ServeDatailsAdapter;
import com.dayu.bigfish.utils.ProgressUtil;
import java.util.List;
......@@ -21,7 +20,7 @@ import butterknife.BindView;
* on 2017/9/13.
*/
public class OrderDatailsServeFragment extends BaseFragment<OrderDetailServePresenter, OrderDetailServeModel> implements OrderDetailServeContract.View {
public class OrderDatailsServeFragment extends BaseFragment<OrderDetailServePresenter> implements OrderDetailServeContract.View {
@BindView(R.id.serve_list_view)
ListView serveListView;
private int orderId;
......
......@@ -14,7 +14,6 @@ import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
import com.dayu.bigfish.presenter.ordertab.OrderTabContract;
import com.dayu.bigfish.presenter.ordertab.OrderTabModel;
import com.dayu.bigfish.presenter.ordertab.OrderTabPresenter;
import com.dayu.bigfish.rxbus.RefreshReceivingNum;
import com.dayu.bigfish.rxbus.RefreshTabNum;
......@@ -33,7 +32,7 @@ import io.reactivex.functions.Consumer;
* 待预约的Fragment
*/
public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter, OrderTabModel> implements OrderTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
public class OrderFirstTabFragment extends BaseFragment<OrderTabPresenter> implements OrderTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
@BindView(R.id.order_one_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.recyle_tab_one)
......
......@@ -14,7 +14,6 @@ import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
import com.dayu.bigfish.presenter.ordertab.OrderTabContract;
import com.dayu.bigfish.presenter.ordertab.OrderTabModel;
import com.dayu.bigfish.presenter.ordertab.OrderTabPresenter;
import com.dayu.bigfish.rxbus.RefreshTabNum;
import com.dayu.bigfish.rxbus.RxBus;
......@@ -31,7 +30,7 @@ import butterknife.BindView;
* on 2017/8/31.
*/
public class OrderFourTabFragment extends BaseFragment<OrderTabPresenter, OrderTabModel> implements OrderTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
public class OrderFourTabFragment extends BaseFragment<OrderTabPresenter> implements OrderTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
@BindView(R.id.order_one_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.recyle_tab_one)
......
......@@ -14,7 +14,6 @@ import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.base.BasePageBean;
import com.dayu.bigfish.bean.Order;
import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabContract;
import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabModel;
import com.dayu.bigfish.presenter.ordertwotab.OrderTwoTabPresenter;
import com.dayu.bigfish.rxbus.OrderState;
import com.dayu.bigfish.rxbus.RefreshTabNum;
......@@ -31,8 +30,8 @@ import butterknife.BindView;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.functions.Consumer;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_YUYUE;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_FINISH;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_YUYUE;
/**
......@@ -40,7 +39,7 @@ import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_FINISH;
* on 2017/8/31.
*/
public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter, OrderTwoTabModel> implements OrderTwoTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
public class OrderSecondTabFragment extends BaseFragment<OrderTwoTabPresenter> implements OrderTwoTabContract.View, SwipeRefreshLayout.OnRefreshListener, BaseQuickAdapter.RequestLoadMoreListener {
@BindView(R.id.order_one_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.recyle_tab_one)
......
......@@ -9,15 +9,14 @@ 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.ui.adapter.OrderThreeTabAdapter;
import com.dayu.bigfish.base.BaseFragment;
import com.dayu.bigfish.bean.ErrorOrder;
import com.dayu.bigfish.presenter.ordererrortab.OrderErrorTabContract;
import com.dayu.bigfish.presenter.ordererrortab.OrderErrorTabModel;
import com.dayu.bigfish.presenter.ordererrortab.OrderErrorTabPresenter;
import com.dayu.bigfish.rxbus.RefreshTabNum;
import com.dayu.bigfish.rxbus.RxBus;
import com.dayu.bigfish.ui.OrderDetailsActivity;
import com.dayu.bigfish.ui.adapter.OrderThreeTabAdapter;
import com.dayu.bigfish.utils.GetUserInfo;
import com.dayu.bigfish.utils.ProgressUtil;
......@@ -31,7 +30,7 @@ import butterknife.BindView;
* on 2017/8/31.
*/
public class OrderThreeTabFragment extends BaseFragment<OrderErrorTabPresenter, OrderErrorTabModel> implements OrderErrorTabContract.View, SwipeRefreshLayout.OnRefreshListener {
public class OrderThreeTabFragment extends BaseFragment<OrderErrorTabPresenter> implements OrderErrorTabContract.View, SwipeRefreshLayout.OnRefreshListener {
@BindView(R.id.order_one_refersh)
SwipeRefreshLayout mRefreshLayout;
@BindView(R.id.recyle_tab_one)
......
package com.dayu.bigfish.utils;
import com.apt.InstanceFactory;
/**
* Created by luofan on 2017/11/24.
*/
public class InstanceUtil {
/**
* 通过实例工厂去实例化相应类
*
* @param <T> 返回实例的泛型类型
* @return
*/
public static <T> T getInstance(Class clazz) {
try {
return (T) InstanceFactory.create(clazz);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
apply plugin: 'java'
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
dependencies {
compile project(':lib')
compile 'com.google.auto.service:auto-service:1.0-rc2'
compile 'com.squareup:javapoet:1.4.0'
}
// 解决build警告:编码GBK的不可映射字符
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
package com.app.apt;
import com.app.apt.processor.ApiFactoryProcessor;
import com.app.apt.processor.InstanceProcessor;
import com.google.auto.service.AutoService;
import java.util.Set;
import javax.annotation.processing.AbstractProcessor;
import javax.annotation.processing.Filer;
import javax.annotation.processing.Messager;
import javax.annotation.processing.Processor;
import javax.annotation.processing.RoundEnvironment;
import javax.annotation.processing.SupportedAnnotationTypes;
import javax.annotation.processing.SupportedSourceVersion;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.TypeElement;
import javax.lang.model.util.Elements;
/**
* Created by luofan on 2017/11/24.
*/
@AutoService(Processor.class)//自动生成 javax.annotation.processing.IProcessor 文件
@SupportedSourceVersion(SourceVersion.RELEASE_8)//java版本支持
@SupportedAnnotationTypes({//标注注解处理器支持的注解类型
"com.app.annotation.apt.InstanceFactory",
"com.app.annotation.apt.ApiFactory",
})
public class AnnotationProcessor extends AbstractProcessor {
public Filer mFiler; //文件相关的辅助类
public Elements mElements; //元素相关的辅助类
public Messager mMessager; //日志相关的辅助类
@Override
public boolean process(Set<? extends TypeElement> annotations, RoundEnvironment roundEnv) {
mFiler = processingEnv.getFiler();
mElements = processingEnv.getElementUtils();
mMessager = processingEnv.getMessager();
new ApiFactoryProcessor().process(roundEnv, this);
new InstanceProcessor().process(roundEnv, this);
return true;
}
}
package com.app.apt.inter;
import com.app.apt.AnnotationProcessor;
import javax.annotation.processing.RoundEnvironment;
/**
* Created by luofan on 2017/11/24.
* 注解处理器接口
*/
public interface IProcessor {
void process(RoundEnvironment roundEnv, AnnotationProcessor mAbstractProcessor);
}
package com.app.apt.processor;
import com.app.annotation.apt.ApiFactory;
import com.app.apt.AnnotationProcessor;
import com.app.apt.inter.IProcessor;
import com.squareup.javapoet.ClassName;
import com.squareup.javapoet.JavaFile;
import com.squareup.javapoet.MethodSpec;
import com.squareup.javapoet.TypeName;
import com.squareup.javapoet.TypeSpec;
import java.io.IOException;
import javax.annotation.processing.FilerException;
import javax.annotation.processing.RoundEnvironment;
import javax.lang.model.element.Element;
import javax.lang.model.element.ExecutableElement;
import javax.lang.model.element.TypeElement;
import javax.lang.model.element.VariableElement;
import javax.lang.model.util.ElementFilter;
import javax.tools.Diagnostic;
import static com.squareup.javapoet.TypeSpec.classBuilder;
import static javax.lang.model.element.Modifier.FINAL;
import static javax.lang.model.element.Modifier.PUBLIC;
import static javax.lang.model.element.Modifier.STATIC;
/**
* Created by luofan on 2017/11/24.
*/
public class ApiFactoryProcessor implements IProcessor {
@Override
public void process(RoundEnvironment roundEnv, AnnotationProcessor mAbstractProcessor) {
String CLASS_NAME = "ApiFactory";
TypeSpec.Builder tb = classBuilder(CLASS_NAME).addModifiers(PUBLIC, FINAL).addJavadoc("@ API工厂 此类由apt自动生成");
try {
for (TypeElement element : ElementFilter.typesIn(roundEnv.getElementsAnnotatedWith(ApiFactory.class))) {
mAbstractProcessor.mMessager.printMessage(Diagnostic.Kind.NOTE, "正在处理: " + element.toString());
for (Element e : element.getEnclosedElements()) {
ExecutableElement executableElement = (ExecutableElement) e;
MethodSpec.Builder methodBuilder =
MethodSpec.methodBuilder(e.getSimpleName().toString())
.addJavadoc("@此方法由apt自动生成")
.addModifiers(PUBLIC, STATIC);
// methodBuilder.returns(TypeName.get(executableElement.getReturnType()));
methodBuilder.returns(ClassName.get("io.reactivex", "Observable"));
String paramsString = "";
for (VariableElement ep : executableElement.getParameters()) {
methodBuilder.addParameter(TypeName.get(ep.asType()), ep.getSimpleName().toString());
paramsString += ep.getSimpleName().toString() + ",";
}
methodBuilder.addStatement(
"return $T.getService()" +
".$L($L)"
+ ".compose($T.applySchedulers())"
, ClassName.get("com.dayu.bigfish.api", "Api")
, e.getSimpleName().toString()
, paramsString.substring(0, paramsString.length() - 1)
, ClassName.get("com.dayu.bigfish.api", "Api")
);
tb.addMethod(methodBuilder.build());
}
}
JavaFile javaFile = JavaFile.builder("com.apt", tb.build()).build();// 生成源代码
javaFile.writeTo(mAbstractProcessor.mFiler);// 在 app module/build/generated/source/apt 生成一份源代码
} catch (FilerException e) {
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.app.apt.processor;
import com.app.annotation.apt.InstanceFactory;
import com.app.apt.AnnotationProcessor;
import com.app.apt.inter.IProcessor;
import com.app.apt.util.Utils;
import com.squareup.javapoet.ClassName;
import com.squareup.javapoet.CodeBlock;
import com.squareup.javapoet.JavaFile;
import com.squareup.javapoet.MethodSpec;
import com.squareup.javapoet.TypeSpec;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import javax.annotation.processing.FilerException;
import javax.annotation.processing.RoundEnvironment;
import javax.lang.model.element.TypeElement;
import javax.lang.model.util.ElementFilter;
import javax.tools.Diagnostic;
import static com.squareup.javapoet.TypeSpec.classBuilder;
import static javax.lang.model.element.Modifier.FINAL;
import static javax.lang.model.element.Modifier.PUBLIC;
import static javax.lang.model.element.Modifier.STATIC;
/**
* Created by luofan on 2017/11/24.
*/
public class InstanceProcessor implements IProcessor {
@Override
public void process(RoundEnvironment roundEnv, AnnotationProcessor mAbstractProcessor) {
String CLASS_NAME = "InstanceFactory";
TypeSpec.Builder tb = classBuilder(CLASS_NAME).addModifiers(PUBLIC, FINAL).addJavadoc("@ 实例化工厂 此类由apt自动生成");
MethodSpec.Builder methodBuilder1 = MethodSpec.methodBuilder("create")
.addJavadoc("@此方法由apt自动生成")
.returns(Object.class).addModifiers(PUBLIC, STATIC).addException(IllegalAccessException.class).addException(InstantiationException.class)
.addParameter(Class.class, "mClass");
List<ClassName> mList = new ArrayList<>();
CodeBlock.Builder blockBuilder = CodeBlock.builder();
blockBuilder.beginControlFlow(" switch (mClass.getSimpleName())");//括号开始
try {
for (TypeElement element : ElementFilter.typesIn(roundEnv.getElementsAnnotatedWith(InstanceFactory.class))) {
mAbstractProcessor.mMessager.printMessage(Diagnostic.Kind.NOTE, "正在处理: " + element.toString());
if (!Utils.isValidClass(mAbstractProcessor.mMessager, element)) return;
ClassName currentType = ClassName.get(element);
if (mList.contains(currentType)) continue;
mList.add(currentType);
// String className = null;
// try {
// Class<?> clazz = element.getAnnotation(InstanceFactory.class).value();
// className = clazz.getCanonicalName();
// } catch (MirroredTypeException mte) {
// DeclaredType classTypeMirror = (DeclaredType) mte.getTypeMirror();
// TypeElement classTypeElement = (TypeElement) classTypeMirror.asElement();
// className = classTypeElement.getQualifiedName().toString();
// } catch (Exception e) {
// }
// if (className != null && !className.equals(InstanceFactory.class.getName())) {
// blockBuilder.addStatement("case $S: return new $T()", currentType.simpleName(), Utils.getType(className));//初始化Repository
// } else {
blockBuilder.addStatement("case $S: return new $T()", currentType.simpleName(), currentType);//初始化Presenter
// }
}
blockBuilder.addStatement("default: return mClass.newInstance()");
blockBuilder.endControlFlow();
methodBuilder1.addCode(blockBuilder.build());
tb.addMethod(methodBuilder1.build());
JavaFile javaFile = JavaFile.builder(Utils.PackageName, tb.build()).build();// 生成源代码
javaFile.writeTo(mAbstractProcessor.mFiler);// 在 app module/build/generated/source/apt 生成一份源代码
} catch (FilerException e) {
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
}
package com.app.apt.util;
import javax.lang.model.element.TypeElement;
public class NoPackageNameException extends Exception {
public NoPackageNameException(TypeElement typeElement) {
super("The package of " + typeElement.getSimpleName() + " has no name");
}
}
package com.app.apt.util;
import com.squareup.javapoet.ClassName;
import javax.annotation.processing.Messager;
import javax.lang.model.element.ElementKind;
import javax.lang.model.element.PackageElement;
import javax.lang.model.element.TypeElement;
import javax.lang.model.util.Elements;
import javax.tools.Diagnostic;
import static javax.lang.model.element.Modifier.ABSTRACT;
import static javax.lang.model.element.Modifier.PUBLIC;
/**
* Created by baixiaokang on 16/8/3.
*/
public class Utils {
public static final String PackageName = "com.apt";
public static final String ANNOTATION = "@";
public static boolean isPublic(TypeElement element) {
return element.getModifiers().contains(PUBLIC);
}
public static boolean isAbstract(TypeElement element) {
return element.getModifiers().contains(ABSTRACT);
}
public static boolean isValidClass(Messager messager, TypeElement element) {
if (element.getKind() != ElementKind.CLASS) {
return false;
}
if (!isPublic(element)) {
String message = String.format("Classes annotated with %s must be public.", ANNOTATION);
messager.printMessage(Diagnostic.Kind.ERROR, message, element);
return false;
}
if (isAbstract(element)) {
String message = String.format("Classes annotated with %s must not be abstract.", ANNOTATION);
messager.printMessage(Diagnostic.Kind.ERROR, message, element);
return false;
}
return true;
}
public static String getPackageName(Elements elements, TypeElement typeElement) throws NoPackageNameException {
PackageElement pkg = elements.getPackageOf(typeElement);
if (pkg.isUnnamed()) {
throw new NoPackageNameException(typeElement);
}
return pkg.getQualifiedName().toString();
}
public static String getClassName(TypeElement typeElement) throws ClassNotFoundException {
return ClassName.get(typeElement).simpleName();
}
public static ClassName getType(String className) {
return ClassName.get(className.substring(0, className.lastIndexOf(".")),
className.substring(className.lastIndexOf(".") + 1, className.length()));
}
}
apply plugin: 'java'
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
// 解决build警告:编码GBK的不可映射字符
tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
}
Manifest-Version: 1.0
package com.app.annotation.apt;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Created by luofan on 2017/11/24.
*/
@Retention(RetentionPolicy.SOURCE)
@Target(ElementType.TYPE)
public @interface ApiFactory {
}
package com.app.annotation.apt;
/**
* Created by baixiaokang on 16/10/8.
*/
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Created by luofan on 2017/11/24.
*/
@Retention(RetentionPolicy.SOURCE)
@Target(ElementType.TYPE)
/**
* 实例化注解,会被主动添加到实例化工厂,自动生成new来替换掉反射的newInstance代码
*/
public @interface InstanceFactory {
}
include ':app'
include ':app',':lib',':apt'
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