Commit f81156d8 by sikang

bug fix

parent 13d4f873
...@@ -17,7 +17,6 @@ import retrofit2.Response; ...@@ -17,7 +17,6 @@ import retrofit2.Response;
import tech.starwin.LibConfig; import tech.starwin.LibConfig;
import tech.starwin.impl.HttpObserver; import tech.starwin.impl.HttpObserver;
import tech.starwin.mvp.IView; import tech.starwin.mvp.IView;
import tech.starwin.mvp.api.UploadApi;
import tech.starwin.network.ServiceGenerator; import tech.starwin.network.ServiceGenerator;
/** /**
...@@ -26,18 +25,18 @@ import tech.starwin.network.ServiceGenerator; ...@@ -26,18 +25,18 @@ import tech.starwin.network.ServiceGenerator;
public class BasePresenter<T> { public class BasePresenter<T> {
protected String TAG; protected String TAG;
protected IView view; protected IView view;
protected T apiService; Class<T> serviceClz;
/** /**
* 使用默认的HttpClient * 使用默认的HttpClient
*/ */
public BasePresenter(Class<T> service) { public BasePresenter(Class<T> serviceClz) {
TAG = getClass().getSimpleName(); TAG = getClass().getSimpleName();
apiService = ServiceGenerator.getService(service); this.serviceClz = serviceClz;
} }
protected T getApiService() { protected T getApiService() {
return apiService; return ServiceGenerator.getService(serviceClz);
} }
@SuppressLint("CheckResult") @SuppressLint("CheckResult")
...@@ -49,7 +48,7 @@ public class BasePresenter<T> { ...@@ -49,7 +48,7 @@ public class BasePresenter<T> {
* 处理请求 * 处理请求
*/ */
protected <T> void handleRequest(Observable<T> observable, Observer<T> observer) { protected <T> void handleRequest(Observable<T> observable, Observer<T> observer) {
if(DeviceInfo.isReviewMachine(LibConfig.getContext())){ if (DeviceInfo.isReviewMachine(LibConfig.getContext())) {
return; return;
} }
observable = view == null ? observable : observable.compose(view.bindToLifecycle()); observable = view == null ? observable : observable.compose(view.bindToLifecycle());
...@@ -60,7 +59,7 @@ public class BasePresenter<T> { ...@@ -60,7 +59,7 @@ public class BasePresenter<T> {
protected <T> void handleRequest(final String action, Observable<T> observable) { protected <T> void handleRequest(final String action, Observable<T> observable) {
if(DeviceInfo.isReviewMachine(LibConfig.getContext())){ if (DeviceInfo.isReviewMachine(LibConfig.getContext())) {
return; return;
} }
observable = view == null ? observable : observable.compose(view.bindToLifecycle()); observable = view == null ? observable : observable.compose(view.bindToLifecycle());
......
...@@ -34,14 +34,14 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -34,14 +34,14 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
* 获取贷款额度、贷款周期 可选范围 * 获取贷款额度、贷款周期 可选范围
*/ */
public void getLoanRange(String action) { public void getLoanRange(String action) {
handleRequest(action, apiService.getLoanRange()); handleRequest(action, getApiService().getLoanRange());
} }
/** /**
* 验证贷款资格 * 验证贷款资格
*/ */
public void checkQualification(String action) { public void checkQualification(String action) {
handleRequest(action, apiService.isQualification()); handleRequest(action, getApiService().isQualification());
} }
/** /**
...@@ -49,28 +49,28 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -49,28 +49,28 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
*/ */
public void getCertifyProgress(String action) { public void getCertifyProgress(String action) {
boolean tdFlag = !TextUtils.isEmpty(LibConfig.TONGDUN_PARENT_KEY); boolean tdFlag = !TextUtils.isEmpty(LibConfig.TONGDUN_PARENT_KEY);
handleRequest(action, apiService.getCertifyProgress(tdFlag)); handleRequest(action, getApiService().getCertifyProgress(tdFlag));
} }
/** /**
* 获取贷款详情 * 获取贷款详情
*/ */
public void getLoanDetail(String action, ProductBean productBean) { public void getLoanDetail(String action, ProductBean productBean) {
handleRequest(action, apiService.getLoanAmoutData(productBean.getCheckedAmount(), productBean.getCheckedPeriod(), productBean.getPeriodUnit(), productBean.getId())); handleRequest(action, getApiService().getLoanAmoutData(productBean.getCheckedAmount(), productBean.getCheckedPeriod(), productBean.getPeriodUnit(), productBean.getId()));
} }
/** /**
* 获取最新的贷款申请信息 * 获取最新的贷款申请信息
*/ */
public void getLatestLoanApp(String action) { public void getLatestLoanApp(String action) {
handleRequest(action, apiService.getLatestLoanApp()); handleRequest(action, getApiService().getLatestLoanApp());
} }
/** /**
* 获取贷款记录 * 获取贷款记录
*/ */
public void getLoanHistory(String action) { public void getLoanHistory(String action) {
handleRequest(apiService.getLoanAppAll(), new HttpObserver<List<HistoryLoanAppInfoBean>>() { handleRequest(getApiService().getLoanAppAll(), new HttpObserver<List<HistoryLoanAppInfoBean>>() {
@Override @Override
public void onStart() { public void onStart() {
view.onHttpStart(action, true); view.onHttpStart(action, true);
...@@ -98,7 +98,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -98,7 +98,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
* 取消贷款 * 取消贷款
*/ */
public void cancelLoan(String action, String loanAppId) { public void cancelLoan(String action, String loanAppId) {
handleRequest(apiService.cancelLoan(loanAppId), new HttpObserver<ResponseBody>() { handleRequest(getApiService().cancelLoan(loanAppId), new HttpObserver<ResponseBody>() {
@Override @Override
public void onStart() { public void onStart() {
view.onHttpStart(action, true); view.onHttpStart(action, true);
...@@ -128,9 +128,9 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -128,9 +128,9 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
*/ */
public void getProductList(String action) { public void getProductList(String action) {
if (TextUtils.isEmpty(LoginManager.get().getToken())) { if (TextUtils.isEmpty(LoginManager.get().getToken())) {
handleRequest(action, apiService.getProductsDefault()); handleRequest(action, getApiService().getProductsDefault());
} else { } else {
handleRequest(action, apiService.getProducts()); handleRequest(action, getApiService().getProducts());
} }
} }
...@@ -139,7 +139,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -139,7 +139,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
*/ */
public void getBankList(String action) { public void getBankList(String action) {
handleRequest(action, apiService.getBankList()); handleRequest(action, getApiService().getBankList());
} }
...@@ -147,7 +147,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -147,7 +147,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
* 申请贷款 * 申请贷款
*/ */
public void applyLoan(String action, LatestLoanAppBean loanInfo) { public void applyLoan(String action, LatestLoanAppBean loanInfo) {
Observable<ResponseBody> observable = apiService.addBank(loanInfo.getLoanAppId(), Observable<ResponseBody> observable = getApiService().addBank(loanInfo.getLoanAppId(),
loanInfo.getBankCode(), loanInfo.getBankCode(),
loanInfo.getCardNo(), loanInfo.getCardNo(),
loanInfo.getApplyFor(), loanInfo.getApplyFor(),
...@@ -183,7 +183,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -183,7 +183,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
* 获取付款方式 * 获取付款方式
*/ */
public void getDepostMethods(String action) { public void getDepostMethods(String action) {
handleRequest(action, apiService.getDepostMethods()); handleRequest(action, getApiService().getDepostMethods());
} }
...@@ -191,7 +191,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -191,7 +191,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
* 是否授权数据 * 是否授权数据
*/ */
public void getHarvestGrant(String action) { public void getHarvestGrant(String action) {
handleRequest(action, apiService.getHarvestGrant()); handleRequest(action, getApiService().getHarvestGrant());
} }
...@@ -200,7 +200,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> { ...@@ -200,7 +200,7 @@ public class LoanPresenter extends BasePresenter<LoanApi> {
*/ */
public void getRepayOrder(String action, LatestLoanAppBean loanAppBean, final double payAmount, final String repayMethodorBank) { public void getRepayOrder(String action, LatestLoanAppBean loanAppBean, final double payAmount, final String repayMethodorBank) {
handleRequest(action, handleRequest(action,
apiService.getRepayOrder(loanAppBean.getLoanAppId(), getApiService().getRepayOrder(loanAppBean.getLoanAppId(),
"IDR", "IDR",
repayMethodorBank, repayMethodorBank,
payAmount payAmount
......
...@@ -67,7 +67,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -67,7 +67,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
* 身份证ocr识别,直接使用Bitmap * 身份证ocr识别,直接使用Bitmap
*/ */
private void identityOcr(final String action, MultipartBody.Part filePart) { private void identityOcr(final String action, MultipartBody.Part filePart) {
handleRequest(apiService.identityOcr(filePart), handleRequest(getApiService().identityOcr(filePart),
new HttpObserver<OcrResultBean>() { new HttpObserver<OcrResultBean>() {
@Override @Override
public void onStart() { public void onStart() {
...@@ -134,7 +134,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -134,7 +134,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
public void faceVerify(final String action, String androidId, String faceData, double amount, int day, long productId, String method) { public void faceVerify(final String action, String androidId, String faceData, double amount, int day, long productId, String method) {
handleRequest( handleRequest(
apiService.faceVerify( getApiService().faceVerify(
"PAYDAY", amount, day, "D", null, null, "PAYDAY", amount, day, "D", null, null,
MultipartBodyMaker.makeSimplePart("delta", faceData), MultipartBodyMaker.makeSimplePart("delta", faceData),
androidId, androidId,
...@@ -172,7 +172,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -172,7 +172,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
public void faceVerifyWithoutSDK(final String action, Context context, double amount, int day, long productId) { public void faceVerifyWithoutSDK(final String action, Context context, double amount, int day, long productId) {
Observable observable = Observable.fromArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10) Observable observable = Observable.fromArray(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
.flatMap((Function<Integer, ObservableSource<BasicAck>>) integer -> .flatMap((Function<Integer, ObservableSource<BasicAck>>) integer ->
apiService.faceVerify("PAYDAY", amount, day, "D", null, null, getApiService().faceVerify("PAYDAY", amount, day, "D", null, null,
MultipartBodyMaker.makeSimplePart("delta", "null"), AppInfoUtils.getAndroidID(context), productId, MultipartBodyMaker.makeSimplePart("delta", "null"), AppInfoUtils.getAndroidID(context), productId,
!TextUtils.isEmpty(LibConfig.TONGDUN_PARENT_KEY), "yitu" !TextUtils.isEmpty(LibConfig.TONGDUN_PARENT_KEY), "yitu"
).onErrorReturn(throwable -> new BasicAck())) ).onErrorReturn(throwable -> new BasicAck()))
...@@ -210,7 +210,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -210,7 +210,7 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
*/ */
public void uploadFirebaseToken(String action, String token) { public void uploadFirebaseToken(String action, String token) {
if (!TextUtils.isEmpty(token)) { if (!TextUtils.isEmpty(token)) {
handleRequest(action, apiService.uploadFirebaseToken(token)); handleRequest(action, getApiService().uploadFirebaseToken(token));
} }
} }
...@@ -233,14 +233,14 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -233,14 +233,14 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
index++; index++;
} }
} }
handleRequest(action, apiService.uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", file), "EXTRA", index, "ADD")); handleRequest(action, getApiService().uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", file), "EXTRA", index, "ADD"));
} }
/** /**
* 删除其他证件照 * 删除其他证件照
*/ */
public void deleteOtherPhoto(String action, int photoIndex) { public void deleteOtherPhoto(String action, int photoIndex) {
handleRequest(action, apiService.uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", "null"), "EXTRA", photoIndex, "DELETE")); handleRequest(action, getApiService().uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", "null"), "EXTRA", photoIndex, "DELETE"));
} }
......
...@@ -21,6 +21,7 @@ public class ServiceGenerator { ...@@ -21,6 +21,7 @@ public class ServiceGenerator {
private static final int TIME_OUT = 15; private static final int TIME_OUT = 15;
private static Map<String, Retrofit> retrofitMap; private static Map<String, Retrofit> retrofitMap;
private static Map<String, Object> serviceMap;
private static OkHttpClient okHttpClient; private static OkHttpClient okHttpClient;
static { static {
...@@ -59,7 +60,19 @@ public class ServiceGenerator { ...@@ -59,7 +60,19 @@ public class ServiceGenerator {
.build(); .build();
retrofitMap.put(baseUrl, retrofit); retrofitMap.put(baseUrl, retrofit);
} }
return retrofitMap.get(baseUrl).create(serviceClz);
if (serviceMap == null) {
serviceMap = new HashMap<>();
}
String key = baseUrl + serviceClz.getName();
Object service = serviceMap.get(key);
if (service == null) {
service = retrofitMap.get(baseUrl).create(serviceClz);
serviceMap.put(key, service);
}
return (T) service;
} }
......
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 to comment