diff --git a/app/build.gradle b/app/build.gradle index c6c9a5e..e1336fd 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,8 +10,8 @@ android { applicationId "com.dskj.daikuan" minSdkVersion 23 targetSdkVersion 30 - versionCode 111 - versionName "1.1.1" + versionCode 115 + versionName "1.1.5" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" // configurations.all { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index dbe94f2..69eb4ab 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -57,16 +57,19 @@ diff --git a/app/src/main/java/com/dskj/daikuan/api/Api.java b/app/src/main/java/com/dskj/daikuan/api/Api.java index f9d30ef..78b9606 100644 --- a/app/src/main/java/com/dskj/daikuan/api/Api.java +++ b/app/src/main/java/com/dskj/daikuan/api/Api.java @@ -66,7 +66,7 @@ public class Api extends BaseApi { String text = message; LogUtils.i("OKHttp111111-----", text); }); - interceptor.setLevel(HttpLoggingInterceptor.Level.BODY); + interceptor.setLevel(HttpLoggingInterceptor.Level.NONE); builder.addInterceptor(interceptor); } return builder.build(); diff --git a/app/src/main/java/com/dskj/daikuan/api/ApiService.java b/app/src/main/java/com/dskj/daikuan/api/ApiService.java index 7b61c9d..c1c7a4c 100644 --- a/app/src/main/java/com/dskj/daikuan/api/ApiService.java +++ b/app/src/main/java/com/dskj/daikuan/api/ApiService.java @@ -34,7 +34,7 @@ import retrofit2.http.Query; public interface ApiService { // String URL ="http://192.168.110.26:39901/"; - String URL ="http://8.134.95.28:39901/"; + String URL ="http://dk.newsclub666.com/"; /**获取Access-Token*/ @@ -48,6 +48,11 @@ public interface ApiService { @POST("api/User/login") Observable> getLogin(@Field("phone") String phone, @Field("password") String password); + /**登录*/ + @FormUrlEncoded + @POST("api/User/login") + Observable> getLogin(@Field("phone") String phone, @Field("password") String password,@Field("invit_code") String invit_code); + @GET("api/Loan/getList") Observable> getList(@Query("page") int page); @@ -58,6 +63,10 @@ public interface ApiService { @GET("api/Bank/index") Observable>> BankIndex(); + @GET("api/User/logout") + Observable logout(); + + /**通讯录*/ @FormUrlEncoded @POST("api/Upload/phone") diff --git a/app/src/main/java/com/dskj/daikuan/api/BaseObserver.java b/app/src/main/java/com/dskj/daikuan/api/BaseObserver.java index 1eedcb0..c657e34 100644 --- a/app/src/main/java/com/dskj/daikuan/api/BaseObserver.java +++ b/app/src/main/java/com/dskj/daikuan/api/BaseObserver.java @@ -1,5 +1,10 @@ package com.dskj.daikuan.api; +import android.content.Intent; + +import com.dskj.daikuan.InitApp; +import com.dskj.daikuan.bean.BankBean; +import com.dskj.daikuan.ui.activity.LoginActivity; import com.google.gson.JsonParseException; import org.json.JSONException; @@ -8,6 +13,7 @@ import java.io.InterruptedIOException; import java.net.ConnectException; import java.net.UnknownHostException; import java.text.ParseException; +import java.util.List; import io.reactivex.observers.DisposableObserver; import retrofit2.HttpException; @@ -34,10 +40,16 @@ public abstract class BaseObserver extends DisposableObserver { public void onNext(T o) { try { Result model = (Result) o; + if (model.code == 1) { onSuccess(o); } else { onError(model.code,model.msg); + if(model.code == -996){ + InitApp.setToken(""); + InitApp.setUserToken(""); + reStart(); + } } } catch (Exception e) { e.printStackTrace(); @@ -47,6 +59,15 @@ public abstract class BaseObserver extends DisposableObserver { } + /*** 重新启动应用*/ + public void reStart(){ + Intent launch= InitApp.getAppContext().getPackageManager() + .getLaunchIntentForPackage(InitApp.getAppContext() + .getPackageName()); + launch.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); + InitApp.getAppContext().startActivity(launch); + } + @Override public void onError(Throwable e) { if (e instanceof HttpException) { @@ -90,7 +111,7 @@ public abstract class BaseObserver extends DisposableObserver { break; case PARSE_ERROR: - onError(PARSE_ERROR,"宇宙也是有尽头的"); + onError(PARSE_ERROR,"数据解析异常"); break; default: diff --git a/app/src/main/java/com/dskj/daikuan/ui/activity/LoginActivity.java b/app/src/main/java/com/dskj/daikuan/ui/activity/LoginActivity.java index ceb2051..31006fa 100644 --- a/app/src/main/java/com/dskj/daikuan/ui/activity/LoginActivity.java +++ b/app/src/main/java/com/dskj/daikuan/ui/activity/LoginActivity.java @@ -10,7 +10,9 @@ import com.azhon.basic.base.BaseActivity; import com.dskj.daikuan.InitApp; import com.dskj.daikuan.R; import com.dskj.daikuan.api.Api; +import com.dskj.daikuan.api.BaseObserver; import com.dskj.daikuan.api.Result; +import com.dskj.daikuan.bean.ErrorMesage; import com.dskj.daikuan.bean.UserBean; import com.dskj.daikuan.databinding.ActivityLoginBinding; import com.dskj.daikuan.utils.GsonUtils; @@ -40,13 +42,24 @@ public class LoginActivity extends BaseActivity { - if(userBean!=null){ - InitApp.setUserToken(userBean.getAuth()); - InitApp.saveString("user_bean", GsonUtils.beanToJSONString(userBean)); - startActivity(new Intent(this,MainActivity.class)); - finish(); + + }); + + dataBinding.changeType.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if(dataBinding.invcodeEt.getVisibility() ==View.VISIBLE) { + dataBinding.invcodeEt.setVisibility(View.GONE); + dataBinding.loginBt.setText("登录"); + dataBinding.changeType.setText("去注册"); + }else{ + dataBinding.invcodeEt.setVisibility(View.VISIBLE); + dataBinding.loginBt.setText("注册"); + dataBinding.changeType.setText("去登录"); + } } }); + dataBinding.loginBt.setOnClickListener(view -> { if(TextUtils.isEmpty(dataBinding.nameEt.getText().toString())){ @@ -58,8 +71,66 @@ public class LoginActivity extends BaseActivity>() { + @Override + public void onSuccess(Result feedbackResp) { + if (feedbackResp.data != null) { + InitApp.setUserToken(feedbackResp.data.getAuth()); + InitApp.saveString("user_bean", GsonUtils.beanToJSONString(feedbackResp.data)); + startActivity(new Intent(LoginActivity.this, ShenQingActivity.class)); + finish(); + } + } + + @Override + public void onError(int code, String msg) { + if (code == -1) { + dataBinding.invcodeEt.setVisibility(View.VISIBLE); + dataBinding.loginBt.setText("注册"); + dataBinding.changeType.setText("去登录"); + }else{ + ToastUtils.showShort(dataBinding.loginBt, msg); + } + } + }); + }else { + Api.getInstance().getLogin(dataBinding.nameEt.getText().toString(), dataBinding.passEt.getText().toString()) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new BaseObserver>() { + + @Override + public void onSuccess(Result feedbackResp) { + if (feedbackResp.data != null) { + InitApp.setUserToken(feedbackResp.data.getAuth()); + InitApp.saveString("user_bean", GsonUtils.beanToJSONString(feedbackResp.data)); + startActivity(new Intent(LoginActivity.this, ShenQingActivity.class)); + finish(); + } + } + + @Override + public void onError(int code, String msg) { + if (code == -1) { + dataBinding.invcodeEt.setVisibility(View.VISIBLE); + dataBinding.loginBt.setText("注册"); + dataBinding.changeType.setText("去登录"); + }else{ + ToastUtils.showShort(dataBinding.loginBt, msg); + + } + } + }); + } // startActivity(new Intent(this,MainActivity.class)); // overridePendingTransition(0,0); // finish(); diff --git a/app/src/main/java/com/dskj/daikuan/ui/activity/MainActivity.java b/app/src/main/java/com/dskj/daikuan/ui/activity/MainActivity.java index 8cd9d64..b92ceaa 100644 --- a/app/src/main/java/com/dskj/daikuan/ui/activity/MainActivity.java +++ b/app/src/main/java/com/dskj/daikuan/ui/activity/MainActivity.java @@ -124,7 +124,7 @@ public class MainActivity extends BaseActivity) feedbackResp.data.getData(); commonAdapter.setDates(lists); }else{ - lists.addAll((ArrayList) feedbackResp.data.getData()); + lists.addAll(feedbackResp.data.getData()); commonAdapter.setDates(lists); } if(lists.size() == 0){ @@ -157,19 +157,19 @@ public class MainActivity extends BaseActivity(this, R.layout.agent_child_item, lists) { @Override public void convert(ViewHolder holder, LoanBean s, int index) { - holder.setText(R.id.number_tv,"$"+s.getAmount()); - holder.setText(R.id.name_tv,"贷款时间:"+s.getCreate_time()); + holder.setText(R.id.number_tv,"RM"+s.getAmount()); + holder.setText(R.id.name_tv,"Time:"+s.getCreate_time()); // 0审核中 1通过 2失败 TextView textView = holder.getView(R.id.status_tv); textView.setTextColor(getResources().getColor(R.color.color_750000)); if(s.getStatus() == 0){ - holder.setText(R.id.status_tv,"审核中"); + holder.setText(R.id.status_tv,"processing"); }else if(s.getStatus() == 1){ - holder.setText(R.id.status_tv,"贷款成功"); + holder.setText(R.id.status_tv,"success"); }else if(s.getStatus() == 2){ - holder.setText(R.id.status_tv,"申请失败"); + holder.setText(R.id.status_tv,"fail"); textView.setTextColor(getResources().getColor(R.color.color_fe8b59)); } @@ -184,7 +184,7 @@ public class MainActivity extends BaseActivity { pageSize = 1; dataBinding.refreshLayout.setEnableLoadMore(true); @@ -198,7 +198,8 @@ public class MainActivity extends BaseActivity banks = new ArrayList<>(); ArrayList contents = new ArrayList<>(); SweetAlertDialog pDialog; - long id = -100; + int id = -100; String id_front = null; String id_back = null; int index = 0; @@ -102,8 +103,30 @@ public class ShenQingActivity extends BaseActivity finish()); - dataBinding.topLyF.titleTv.setText("贷款申请"); + dataBinding.topLyF.backButton.setOnClickListener(view -> { + SweetAlertDialog pDialog = new SweetAlertDialog(this, SweetAlertDialog.WARNING_TYPE); + pDialog.setTitleText("退出当前账号?"); + pDialog.setConfirmText("退出"); + pDialog.show(); + pDialog.setConfirmClickListener(sweetAlertDialog -> Api.getInstance().logout() + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(new BaseObserver() { + + @Override + public void onSuccess(Result feedbackResp) { + InitApp.setUserToken(""); + startActivity(new Intent(ShenQingActivity.this,LoginActivity.class)); + finish(); + } + + @Override + public void onError(int code, String msg) { + ToastUtils.showShort(dataBinding.loginBt, msg); + } + })); + }); + dataBinding.topLyF.titleTv.setText("Register"); setAnimViews(dataBinding.fullnameEt, dataBinding.icEt, dataBinding.phoneNumberEt, dataBinding.occupationEt, dataBinding.addressEt, dataBinding.beneficiaryAccountNoEt, dataBinding.salaryEt, dataBinding.loanAmountEt); @@ -112,6 +135,11 @@ public class ShenQingActivity extends BaseActivity startActivity(new Intent(ShenQingActivity.this,MainActivity.class))); + dataBinding.topLyF.backButton.setVisibility(View.VISIBLE); + dataBinding.topLyF.backButton.setImageResource(R.mipmap.tuichu_img); + dataBinding.guohuiCy.setOnClickListener(view -> { isRenXiang = false; toOpenFile(); @@ -167,14 +195,14 @@ public class ShenQingActivity extends BaseActivity { - - - }, 5000); +// new Handler().postDelayed(() -> { +// +// +// }, 5000); } private void changePush(boolean isSucc,String msg) { @@ -188,18 +216,40 @@ public class ShenQingActivity extends BaseActivity { + if(isSucc) { +// setResult(RESULT_OK); + qingkong(); + Intent intent = new Intent(ShenQingActivity.this,XiangQingActivity.class); + intent.putExtra("id",id); + startActivity(intent); } + pDialog.cancel(); + }); } } + private void qingkong() { + dataBinding.fullnameEt.setText(""); + dataBinding.icEt.setText(""); + dataBinding.phoneNumberEt.setText(""); + dataBinding.occupationEt.setText(""); + dataBinding.addressEt.setText(""); + dataBinding.beneficiaryAccountNoEt.setText(""); + dataBinding.beneficiaryBankEt.setText(""); + dataBinding.salaryEt.setText(""); + dataBinding.loanAmountEt.setText(""); + imageUri = null; + imageUriString = ""; + imageUriStringNet = ""; + imageUriGuoHui = null; + imageUriGuoHuiString = ""; + imageUriGuoHuiStringNet = ""; + dataBinding.zhengmianIv.setImageResource(R.mipmap.sfzzm); + dataBinding.fanmianIv.setImageResource(R.mipmap.sfzbm); + } + @RequiresApi(api = Build.VERSION_CODES.Q) private void toSumbit() { if (TextUtils.isEmpty(dataBinding.fullnameEt.getText().toString())) { @@ -539,7 +589,6 @@ public class ShenQingActivity extends BaseActivity1){ - changePush(true,"申请提交成功"); + changePush(true,"Application submitted successfully"); }else { changePush(false, msg); } diff --git a/app/src/main/java/com/dskj/daikuan/ui/activity/StartUpActivity.java b/app/src/main/java/com/dskj/daikuan/ui/activity/StartUpActivity.java index 9546ea6..cc0b287 100644 --- a/app/src/main/java/com/dskj/daikuan/ui/activity/StartUpActivity.java +++ b/app/src/main/java/com/dskj/daikuan/ui/activity/StartUpActivity.java @@ -62,7 +62,7 @@ public class StartUpActivity extends BaseActivity finish()); - dataBinding.topLyF.titleTv.setText("详情"); + dataBinding.topLyF.titleTv.setText("Loan Info"); id = getIntent().getIntExtra("id",0); - + dataBinding.topLyF.menuTv.setVisibility(View.VISIBLE); + dataBinding.topLyF.menuTv.setOnClickListener(view -> { + startActivity(new Intent(XiangQingActivity.this,MainActivity.class)); +// finish(); + }); } @Override @@ -89,13 +94,13 @@ public class XiangQingActivity extends BaseActivity + android:visibility="visible" />