Commit d1065a36 by sikang

添加多张证件照

parent acd39c95
package com.common.bean;
import java.io.Serializable;
import java.util.List;
/**
* Created by SiKang on 2019/3/21.
*/
public class PhotoListBean implements Serializable {
private List<Photo> files;// [
public class Photo {
private String fileType;// "KTP_PHOTO",
private int index;// 0,
private String url;// "string"
public String getFileType() {
return fileType;
}
public void setFileType(String fileType) {
this.fileType = fileType;
}
public int getIndex() {
return index;
}
public void setIndex(int index) {
this.index = index;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
}
public List<Photo> getFiles() {
return files;
}
public void setFiles(List<Photo> files) {
this.files = files;
}
}
...@@ -66,5 +66,6 @@ public class RecyclerViewHolder extends RecyclerView.ViewHolder { ...@@ -66,5 +66,6 @@ public class RecyclerViewHolder extends RecyclerView.ViewHolder {
} }
} }
...@@ -16,6 +16,7 @@ import retrofit2.http.Query; ...@@ -16,6 +16,7 @@ import retrofit2.http.Query;
import com.common.bean.BasicAck; import com.common.bean.BasicAck;
import com.common.bean.OcrResultBean; import com.common.bean.OcrResultBean;
import com.common.bean.PhotoListBean;
import com.common.bean.RecordFilesResponse; import com.common.bean.RecordFilesResponse;
/** /**
...@@ -58,17 +59,17 @@ public interface UploadApi { ...@@ -58,17 +59,17 @@ public interface UploadApi {
/*@PUT("/loanapp/verify/face") face++*/ /*@PUT("/loanapp/verify/face") face++*/
@PUT("/loanapp/verify/yitu") @PUT("/loanapp/verify/yitu")
Observable<BasicAck> faceVerify(@Query("loanType") String loanType, Observable<BasicAck> faceVerify(@Query("loanType") String loanType,
@Query("amount") double amount, @Query("amount") double amount,
@Query("period") int period, @Query("period") int period,
@Query("periodUnit") String periodUnit, @Query("periodUnit") String periodUnit,
@Part MultipartBody.Part imageBest, @Part MultipartBody.Part imageBest,
@Part MultipartBody.Part imageEnv, @Part MultipartBody.Part imageEnv,
@Part MultipartBody.Part delta, @Part MultipartBody.Part delta,
@Query("imei") String imei, @Query("imei") String imei,
@Query("productId") long productId, @Query("productId") long productId,
@Query("thirdpartyDataFlag")Boolean thirdpartyDataFlag, @Query("thirdpartyDataFlag") Boolean thirdpartyDataFlag,
@Query("method") String method, @Query("method") String method,
@Header("X-AUTH-TOKEN") String token); @Header("X-AUTH-TOKEN") String token);
/** /**
...@@ -79,5 +80,12 @@ public interface UploadApi { ...@@ -79,5 +80,12 @@ public interface UploadApi {
Observable<OcrResultBean> identityOcr(@Part MultipartBody.Part part, @Header("X-AUTH-TOKEN") String token); Observable<OcrResultBean> identityOcr(@Part MultipartBody.Part part, @Header("X-AUTH-TOKEN") String token);
/**
* 上传其他证明图片
* @param action ADD:添加、 MODIFY:更新 、DELETE:删除
*/
@Multipart
@PUT("/record/files-extra")
Observable<ResponseBody> uploadOtherPhoto(@Part MultipartBody.Part file, @Query("fileType") String fileType, @Query("fileIndex") int fileIndex, @Query("fileAction") String action);
} }
\ No newline at end of file
...@@ -34,6 +34,7 @@ import com.common.bean.InviteePersonBean; ...@@ -34,6 +34,7 @@ import com.common.bean.InviteePersonBean;
import com.common.bean.LoaningAmoutBean; import com.common.bean.LoaningAmoutBean;
import com.common.bean.MsgInboxBean; import com.common.bean.MsgInboxBean;
import com.common.bean.PersonalInfoServerBean; import com.common.bean.PersonalInfoServerBean;
import com.common.bean.PhotoListBean;
import com.common.bean.RecordFilesResponse; import com.common.bean.RecordFilesResponse;
import com.common.bean.RegionBean; import com.common.bean.RegionBean;
import com.common.bean.SysDictBean; import com.common.bean.SysDictBean;
...@@ -338,6 +339,12 @@ public interface UserApi { ...@@ -338,6 +339,12 @@ public interface UserApi {
@GET("banner/message") @GET("banner/message")
Observable<List<BannerMessageDto>> getBannerMsg(); Observable<List<BannerMessageDto>> getBannerMsg();
/**
* 获取其他证明图片列表
*/
@GET("/record/files-extra")
Observable<PhotoListBean> getPhotoList();
/** /**
* 提交第三方数据 * 提交第三方数据
......
...@@ -4,10 +4,12 @@ import android.content.Context; ...@@ -4,10 +4,12 @@ import android.content.Context;
import android.support.annotation.NonNull; import android.support.annotation.NonNull;
import android.text.TextUtils; import android.text.TextUtils;
import com.common.bean.PhotoListBean;
import com.google.gson.Gson; import com.google.gson.Gson;
import java.io.File; import java.io.File;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
import io.reactivex.ObservableSource; import io.reactivex.ObservableSource;
...@@ -180,4 +182,35 @@ public class UploadPresenter extends BasePresenter<UploadApi> { ...@@ -180,4 +182,35 @@ public class UploadPresenter extends BasePresenter<UploadApi> {
handleRequest(action, apiService.uploadFirebaseToken(token)); handleRequest(action, apiService.uploadFirebaseToken(token));
} }
} }
/**
* 上传其他证件照
*/
public void uploadOtherPhoto(String action, File file, List<PhotoListBean.Photo> photoList) {
int index = 0;
while (true) {
boolean isEffective = true;
for (PhotoListBean.Photo photo : photoList) {
if (index == photo.getIndex()) {
isEffective = false;
}
}
if (isEffective) {
break;
} else {
index++;
}
}
handleRequest(action, apiService.uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", file), "EXTRA", index, "ADD"));
}
/**
* 删除其他证件照
*/
public void deleteOtherPhoto(String action, int photoIndex) {
handleRequest(action, apiService.uploadOtherPhoto(MultipartBodyMaker.makeSimplePart("file", "null"), "EXTRA", photoIndex, "DELETE"));
}
} }
...@@ -576,6 +576,12 @@ public class UserPresenter extends BasePresenter<UserApi> { ...@@ -576,6 +576,12 @@ public class UserPresenter extends BasePresenter<UserApi> {
handleRequest(action, apiService.submitContactList(contactBeans)); handleRequest(action, apiService.submitContactList(contactBeans));
} }
/**
* 获取其他照片
* */
public void getPhotoList(String action) {
handleRequest(action, apiService.getPhotoList());
}
/** /**
* 公告 * 公告
......
...@@ -9,6 +9,7 @@ import java.util.Map; ...@@ -9,6 +9,7 @@ import java.util.Map;
import java.util.concurrent.TimeUnit; import java.util.concurrent.TimeUnit;
import okhttp3.OkHttpClient; import okhttp3.OkHttpClient;
import okhttp3.logging.HttpLoggingInterceptor;
import retrofit2.Retrofit; import retrofit2.Retrofit;
import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory; import retrofit2.adapter.rxjava2.RxJava2CallAdapterFactory;
import retrofit2.converter.gson.GsonConverterFactory; import retrofit2.converter.gson.GsonConverterFactory;
...@@ -25,14 +26,19 @@ public class ServiceGenerator { ...@@ -25,14 +26,19 @@ public class ServiceGenerator {
private static Map<String, Object> serviceMap; private static Map<String, Object> serviceMap;
static { static {
HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
logging.setLevel(HttpLoggingInterceptor.Level.BODY);
okHttpClient = new OkHttpClient.Builder() okHttpClient = new OkHttpClient.Builder()
.connectTimeout(TIME_OUT, TimeUnit.SECONDS) .connectTimeout(TIME_OUT, TimeUnit.SECONDS)
.writeTimeout(TIME_OUT, TimeUnit.SECONDS) .writeTimeout(TIME_OUT, TimeUnit.SECONDS)
.readTimeout(TIME_OUT, TimeUnit.SECONDS) .readTimeout(TIME_OUT, TimeUnit.SECONDS)
.addInterceptor(new DefaultHeaderAddInterceptor()) .addInterceptor(new DefaultHeaderAddInterceptor())
.addInterceptor(new FirebaseHeaderInterceptor()) .addInterceptor(new FirebaseHeaderInterceptor())
.addInterceptor(logging)
.build(); .build();
serviceMap = new HashMap<>(); serviceMap = new HashMap<>();
} }
......
...@@ -187,7 +187,6 @@ public class InfoTranslator { ...@@ -187,7 +187,6 @@ public class InfoTranslator {
} }
/** /**
* 亲属关系 * 亲属关系
*/ */
...@@ -226,10 +225,13 @@ public class InfoTranslator { ...@@ -226,10 +225,13 @@ public class InfoTranslator {
} }
private static StringAdapter.Item newItem(Context context, String value, int info) { private static StringAdapter.Item newItem(Context context, String value, int info) {
return new StringAdapter.Item(value, context.getString(info)); return new StringAdapter.Item(value, context.getString(info));
} }
private static StringAdapter.Item newItem(Context context, String value, String info) {
return new StringAdapter.Item(value, info);
}
} }
...@@ -57,6 +57,9 @@ ...@@ -57,6 +57,9 @@
<string name="text_no_photo">Mohon unggah foto dan mencobanya lagi</string> <string name="text_no_photo">Mohon unggah foto dan mencobanya lagi</string>
<string name="more_photo_tip">Anda perlu mengunggah setidaknya dua foto</string>
<string name="certify_not_pass">Anda harus menyelesaikan sertifikasi berikut\n</string> <string name="certify_not_pass">Anda harus menyelesaikan sertifikasi berikut\n</string>
<string name="text_loan_amount_statement">Silahkan Pilih Jumlah Pinjaman</string> <string name="text_loan_amount_statement">Silahkan Pilih Jumlah Pinjaman</string>
...@@ -125,6 +128,8 @@ ...@@ -125,6 +128,8 @@
<string name="text_next_step">Langkah berikutnya</string> <string name="text_next_step">Langkah berikutnya</string>
<string name="text_add_photo">Tambahkan lebih banyak foto</string>
<string name="text_title_system_message">Pesan Sistem</string> <string name="text_title_system_message">Pesan Sistem</string>
<string name="text_customer_service_hotline">Hubungi Kami</string> <string name="text_customer_service_hotline">Hubungi Kami</string>
...@@ -246,6 +251,16 @@ ...@@ -246,6 +251,16 @@
<item>Tanggal jatuh tempo dijadwalkan 7 hari atau 14 hari setelah tanggal pengeluaran pinjaman (berdasarkan jangka waktu pinjaman yang telah anda pilih sebelumnya). Setelah pinjaman berhasil, anda dapat memeriksa tanggal jatuh tempo pinjaman pada halaman utama app.</item> <item>Tanggal jatuh tempo dijadwalkan 7 hari atau 14 hari setelah tanggal pengeluaran pinjaman (berdasarkan jangka waktu pinjaman yang telah anda pilih sebelumnya). Setelah pinjaman berhasil, anda dapat memeriksa tanggal jatuh tempo pinjaman pada halaman utama app.</item>
</string-array> </string-array>
<string-array name="photo_type" formatted="false">
<item>Slip Gaji</item>
<item>ID Pekerjaan</item>
<item>SIUP/SKU</item>
<item>Kartu Keluarga</item>
<item>NPWP</item>
</string-array>
<string name="delete_photo_tip">Anda yakin ingin menghapusnya?</string>
<string name="text_title_loanraiders">Cara meminjam</string> <string name="text_title_loanraiders">Cara meminjam</string>
<string name="text_loanraiders_step2">Di halaman utama app, pilih jumlah pinjaman dan tenggat pinjaman</string> <string name="text_loanraiders_step2">Di halaman utama app, pilih jumlah pinjaman dan tenggat pinjaman</string>
......
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