Commit 29c894a2 authored by shiyl's avatar shiyl

Merge branch 'dev' of https://git.yidian-inc.com:8021/bp/ShenghuoquanBusiness into dev

# Conflicts:
#	Components/newscontent/src/main/res/values/colors.xml
parents 6c2cfb63 821c2277
...@@ -38,11 +38,11 @@ class URLs { ...@@ -38,11 +38,11 @@ class URLs {
const val authLiveIdentity = "/merchant/auth/live_identity" const val authLiveIdentity = "/merchant/auth/live_identity"
const val authComplete = "/merchant/auth/complete" const val authComplete = "/merchant/auth/complete"
const val authAuthentication = "/merchant/auth/authentication" const val authAuthentication = "/merchant/auth/authentication"
const val authMerchantCheck = "/merchant/enterprise/ent_check" const val authMerchantCheck = "/merchant/enterprise/check"
const val authBusinessLicenseCommit = "/merchant/enterprise/ent_commit" const val authBusinessLicenseCommit = "/merchant/enterprise/business"
const val authEnterpriseLegalIdentityCommit = "/merchant/enterprise/legal_commit" const val authEnterpriseLegalIdentityCommit = "/merchant/enterprise/legal"
const val authIndividualBusinessIdentityCommit = "/merchant/enterprise/ent_personal" const val authIndividualBusinessIdentityCommit = "/merchant/enterprise/employed"
const val authEnterpriseLiveIdentity = "/merchant/enterprise/live_identity" const val authEnterpriseLiveIdentity = "/merchant/enterprise/live"
const val authEnterpriseComplete = "/merchant/enterprise/complete" const val authIndividualBusinessComplete = "/merchant/enterprise/employed_complate"
} }
} }
\ No newline at end of file
...@@ -26,6 +26,7 @@ import com.yidian.shenghuoquan.newscontent.service.* ...@@ -26,6 +26,7 @@ import com.yidian.shenghuoquan.newscontent.service.*
import com.yidian.shenghuoquan.newscontent.ui.* import com.yidian.shenghuoquan.newscontent.ui.*
import com.yidian.shenghuoquan.newscontent.ui.auth.* import com.yidian.shenghuoquan.newscontent.ui.auth.*
import com.yidian.shenghuoquan.newscontent.ui.idcard.IDCardTestActivity import com.yidian.shenghuoquan.newscontent.ui.idcard.IDCardTestActivity
import com.yidian.utils.DensityUtil
import com.yidian.xpage.XPageManager import com.yidian.xpage.XPageManager
import com.yidian.xpage.node.XPageHandler import com.yidian.xpage.node.XPageHandler
import com.yidian.xpage.node.XPageNode import com.yidian.xpage.node.XPageNode
...@@ -41,6 +42,7 @@ class NewsContentApplication : YdBaseApplication() { ...@@ -41,6 +42,7 @@ class NewsContentApplication : YdBaseApplication() {
registerXPage() registerXPage()
initService() initService()
NightModeUtil.setContext(this) NightModeUtil.setContext(this)
DensityUtil.init(this)
} }
} }
......
package com.yidian.shenghuoquan.newscontent.bean
/**
* author: yinjiacheng
* date: 6/8/21 12:54 AM
* description: 提示dialog内操作项
*/
data class HintOptionBean(val option: String)
\ No newline at end of file
...@@ -11,6 +11,8 @@ class LifeAccountMerchantAuthData { ...@@ -11,6 +11,8 @@ class LifeAccountMerchantAuthData {
var businessLicenseObjectKey: String = "" var businessLicenseObjectKey: String = ""
var registrationName: String = "" var registrationName: String = ""
var registrationCode: String = "" var registrationCode: String = ""
var authRecordId: Long? = null
var lifeAccountId: Long? = null
// 营业执照相关信息 // 营业执照相关信息
var type: String? = null var type: String? = null
......
...@@ -8,7 +8,7 @@ package com.yidian.shenghuoquan.newscontent.bean ...@@ -8,7 +8,7 @@ package com.yidian.shenghuoquan.newscontent.bean
class LifeAccountPersonalAuthData { class LifeAccountPersonalAuthData {
var realName: String = "" var realName: String = ""
var idCardNum: String = "" var idCardNum: String = ""
var phoneNum: String = "" var phoneNum: String = "" // 法人手机号
var occupation: String = "" var occupation: String = ""
var idCardPortraitFaceObjectKey: String = "" var idCardPortraitFaceObjectKey: String = ""
var idCardNationalEmblemFaceObjectKey: String = "" var idCardNationalEmblemFaceObjectKey: String = ""
...@@ -20,6 +20,7 @@ class LifeAccountPersonalAuthData { ...@@ -20,6 +20,7 @@ class LifeAccountPersonalAuthData {
var idCardNationalEmblemFaceCompleteness: Int = -1 var idCardNationalEmblemFaceCompleteness: Int = -1
var liveDetectBizToken: String = "" var liveDetectBizToken: String = ""
var liveDetectObjectKey: String = "" var liveDetectObjectKey: String = ""
var liveDetectBucket: String = ""
var isFaceAuthPass: Boolean = false var isFaceAuthPass: Boolean = false
// 身份证相关信息 // 身份证相关信息
......
...@@ -16,7 +16,7 @@ import okhttp3.MultipartBody ...@@ -16,7 +16,7 @@ import okhttp3.MultipartBody
class ApiService { class ApiService {
companion object { companion object {
//获取短信验证码 // 获取短信验证码
fun sendMsgCode(apiCallback: IMobileLoginCallback, requestParams: HashMap<String, String?>) { fun sendMsgCode(apiCallback: IMobileLoginCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -35,7 +35,7 @@ class ApiService { ...@@ -35,7 +35,7 @@ class ApiService {
}) })
} }
//手机号登录登录接口 // 手机号登录登录接口
fun mobileLogin(apiCallback: IMobileLoginCallback, requestParams: HashMap<String, String?>) { fun mobileLogin(apiCallback: IMobileLoginCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -54,7 +54,7 @@ class ApiService { ...@@ -54,7 +54,7 @@ class ApiService {
}) })
} }
//获取生活号列表 // 获取生活号列表
fun getAccountList(apiCallback: IMobileLoginCallback) { fun getAccountList(apiCallback: IMobileLoginCallback) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -72,7 +72,7 @@ class ApiService { ...@@ -72,7 +72,7 @@ class ApiService {
}) })
} }
//获取活体检测接口 // 人脸检测接口
fun identifyIdOcrVerify(apiCallback: IdentifyIdOcrVerifyCallback, requestParams: HashMap<String, String?>) { fun identifyIdOcrVerify(apiCallback: IdentifyIdOcrVerifyCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -91,7 +91,7 @@ class ApiService { ...@@ -91,7 +91,7 @@ class ApiService {
}) })
} }
//获取活体检测接口 // 获取人脸检测token接口
fun authPersonalGetToken(apiCallback: AuthPersonalGetTokenCallback, requestParams: HashMap<String, String?>) { fun authPersonalGetToken(apiCallback: AuthPersonalGetTokenCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -109,7 +109,7 @@ class ApiService { ...@@ -109,7 +109,7 @@ class ApiService {
}) })
} }
//获取金山云token接口 // 获取金山云token接口
fun getKSYunToken(requestParams: HashMap<String, String?>): HttpResult<GetKSYunTokenBean.Response>? { fun getKSYunToken(requestParams: HashMap<String, String?>): HttpResult<GetKSYunTokenBean.Response>? {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -129,7 +129,7 @@ class ApiService { ...@@ -129,7 +129,7 @@ class ApiService {
return null return null
} }
//获取身份证OCR接口 // 获取身份证OCR接口
fun getIDCardOCR(apiCallback: IGetIDCardOCRCallback, requestParams: HashMap<String, String?>) { fun getIDCardOCR(apiCallback: IGetIDCardOCRCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -148,12 +148,13 @@ class ApiService { ...@@ -148,12 +148,13 @@ class ApiService {
}) })
} }
//获取金山云ObjectId // 获取金山云ObjectId
fun getKSYunObjectId(apiCallback: IGetKSYunObjectIdCallback) { fun getKSYunObjectId(apiCallback: IGetKSYunObjectIdCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp)
ServiceFactory.getInstance().createService(CommonService::class.java) ServiceFactory.getInstance().createService(CommonService::class.java)
.getKSYunObjectId(publicParamsMap) .getKSYunObjectId(publicParamsMap, privateParamsMap)
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
.subscribe(object : HttpResultSubscriber<GetKSYunObjectIdBean.Response>() { .subscribe(object : HttpResultSubscriber<GetKSYunObjectIdBean.Response>() {
override fun onSuccess(result: HttpResult<GetKSYunObjectIdBean.Response>?) { override fun onSuccess(result: HttpResult<GetKSYunObjectIdBean.Response>?) {
...@@ -166,7 +167,7 @@ class ApiService { ...@@ -166,7 +167,7 @@ class ApiService {
}) })
} }
//获取金山云Bucket // 获取金山云Bucket
fun getKSYunBucket(apiCallback: IGetKSYunBucketCallback) { fun getKSYunBucket(apiCallback: IGetKSYunBucketCallback) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -184,7 +185,7 @@ class ApiService { ...@@ -184,7 +185,7 @@ class ApiService {
}) })
} }
//获取金山云Bucket // 获取金山云Bucket
fun businessLicenseOCR(apiCallback: IBusinessLicenseOCRCallback, requestParams: HashMap<String, String?>) { fun businessLicenseOCR(apiCallback: IBusinessLicenseOCRCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -203,9 +204,7 @@ class ApiService { ...@@ -203,9 +204,7 @@ class ApiService {
}) })
} }
// 文件上传
//文件上传
fun uploadFile(apiCallback: IUploadFileCallback, requestParams: MultipartBody.Part) { fun uploadFile(apiCallback: IUploadFileCallback, requestParams: MultipartBody.Part) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -224,7 +223,7 @@ class ApiService { ...@@ -224,7 +223,7 @@ class ApiService {
}) })
} }
//pushToken绑定接口 // pushToken绑定接口
fun pushTokenAndroid(requestParams: HashMap<String, String?>) { fun pushTokenAndroid(requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -335,7 +334,7 @@ class ApiService { ...@@ -335,7 +334,7 @@ class ApiService {
}) })
} }
// 401 商户认证检查 // 401 商户认证检查接口
fun authMerchantCheck(apiCallback: IAuthMerchantCheckCallback, requestParams: HashMap<String, String?>) { fun authMerchantCheck(apiCallback: IAuthMerchantCheckCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -354,7 +353,7 @@ class ApiService { ...@@ -354,7 +353,7 @@ class ApiService {
}) })
} }
// 402 商户上传营业执照信息 // 402 商户上传营业执照信息接口
fun authBusinessLicenseCommit(apiCallback: IAuthBusinessLicenseCommitCallback, requestParams: HashMap<String, String?>) { fun authBusinessLicenseCommit(apiCallback: IAuthBusinessLicenseCommitCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -373,7 +372,7 @@ class ApiService { ...@@ -373,7 +372,7 @@ class ApiService {
}) })
} }
// 403 普通企业上传法人身份信息 // 403 普通企业上传法人身份信息接口
fun authEnterpriseLegalIdentityCommit(apiCallback: IAuthEnterpriseLegalIdentityCommitCallback, requestParams: HashMap<String, String?>) { fun authEnterpriseLegalIdentityCommit(apiCallback: IAuthEnterpriseLegalIdentityCommitCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -381,18 +380,18 @@ class ApiService { ...@@ -381,18 +380,18 @@ class ApiService {
ServiceFactory.getInstance().createService(CommonService::class.java) ServiceFactory.getInstance().createService(CommonService::class.java)
.authEnterpriseLegalIdentityCommit(publicParamsMap, privateParamsMap) .authEnterpriseLegalIdentityCommit(publicParamsMap, privateParamsMap)
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
.subscribe(object : HttpResultSubscriber<Any?>() { .subscribe(object : HttpResultSubscriber<AuthEnterpriseLegalIdentityCommitBean.Response?>() {
override fun onSuccess(result: HttpResult<Any?>?) { override fun onSuccess(result: HttpResult<AuthEnterpriseLegalIdentityCommitBean.Response?>?) {
apiCallback.authEnterpriseLegalIdentityCommitSuccess() apiCallback.authEnterpriseLegalIdentityCommitSuccess(result?.result)
} }
override fun onFailer(result: HttpResult<Any?>?) { override fun onFailer(result: HttpResult<AuthEnterpriseLegalIdentityCommitBean.Response?>?) {
apiCallback.authEnterpriseLegalIdentityCommitFailure(result?.reason) apiCallback.authEnterpriseLegalIdentityCommitFailure(result?.reason)
} }
}) })
} }
// 404 个体工商户身份认证 // 404 个体工商户身份认证接口
fun authIndividualBusinessIdentityCommit(apiCallback: IAuthIndividualBusinessIdentityCommitCallback, requestParams: HashMap<String, String?>) { fun authIndividualBusinessIdentityCommit(apiCallback: IAuthIndividualBusinessIdentityCommitCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
...@@ -430,21 +429,21 @@ class ApiService { ...@@ -430,21 +429,21 @@ class ApiService {
}) })
} }
// 410 企业认证完成认证 // 406 个体工商户认证完成接口
fun authEnterpriseComplete(apiCallback: IAuthEnterpriseCompleteCallback, requestParams: HashMap<String, String?>) { fun authIndividualBusinessComplete(apiCallback: IAuthIndividualBusinessCompleteCallback, requestParams: HashMap<String, String?>) {
val timeStamp = System.currentTimeMillis() val timeStamp = System.currentTimeMillis()
val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp) val publicParamsMap = HttpParamsUtils.getPublicParamsMap(timeStamp)
val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp) val privateParamsMap = HttpParamsUtils.getPrivateParamsMap(requestParams, timeStamp)
ServiceFactory.getInstance().createService(CommonService::class.java) ServiceFactory.getInstance().createService(CommonService::class.java)
.authEnterpriseComplete(publicParamsMap, privateParamsMap) .authIndividualBusinessComplete(publicParamsMap, privateParamsMap)
.compose(TransformUtil.defaultSchedulers()) .compose(TransformUtil.defaultSchedulers())
.subscribe(object : HttpResultSubscriber<AuthEnterpriseCompleteBean.Response?>() { .subscribe(object : HttpResultSubscriber<AuthIndividualBusinessCompleteBean.Response?>() {
override fun onSuccess(result: HttpResult<AuthEnterpriseCompleteBean.Response?>?) { override fun onSuccess(result: HttpResult<AuthIndividualBusinessCompleteBean.Response?>?) {
apiCallback.authEnterpriseCompleteSuccess(result?.result) apiCallback.authIndividualBusinessCompleteSuccess(result?.result)
} }
override fun onFailer(result: HttpResult<AuthEnterpriseCompleteBean.Response?>?) { override fun onFailer(result: HttpResult<AuthIndividualBusinessCompleteBean.Response?>?) {
apiCallback.authEnterpriseCompleteFailure(result?.reason) apiCallback.authIndividualBusinessCompleteFailure(result?.reason)
} }
}) })
} }
......
...@@ -38,7 +38,7 @@ interface CommonService { ...@@ -38,7 +38,7 @@ interface CommonService {
fun identifyIdOcrVerify(@QueryMap commonParams: Map<String, String>, @Body requestParams: Map<String, String?>): Observable<HttpResult<Any?>> fun identifyIdOcrVerify(@QueryMap commonParams: Map<String, String>, @Body requestParams: Map<String, String?>): Observable<HttpResult<Any?>>
@GET(URLs.getKSYunObjectId) @GET(URLs.getKSYunObjectId)
fun getKSYunObjectId(@QueryMap commonParams: Map<String, String>) : Observable<HttpResult<Any?>> fun getKSYunObjectId(@QueryMap commonParams: Map<String, String>, @QueryMap requestParams: Map<String, String?>) : Observable<HttpResult<Any?>>
@GET(URLs.getKSYunBucket) @GET(URLs.getKSYunBucket)
fun getKSYunBucket(@QueryMap commonParams: Map<String, String>) : Observable<HttpResult<Any?>> fun getKSYunBucket(@QueryMap commonParams: Map<String, String>) : Observable<HttpResult<Any?>>
...@@ -91,6 +91,6 @@ interface CommonService { ...@@ -91,6 +91,6 @@ interface CommonService {
@GET(URLs.authEnterpriseLiveIdentity) @GET(URLs.authEnterpriseLiveIdentity)
fun authEnterpriseLiveIdentity(@QueryMap commonParams: Map<String, String>, @QueryMap requestParams: Map<String, String?>) : Observable<HttpResult<Any?>> fun authEnterpriseLiveIdentity(@QueryMap commonParams: Map<String, String>, @QueryMap requestParams: Map<String, String?>) : Observable<HttpResult<Any?>>
@GET(URLs.authEnterpriseComplete) @GET(URLs.authIndividualBusinessComplete)
fun authEnterpriseComplete(@QueryMap commonParams: Map<String, String>, @QueryMap requestParams: Map<String, String?>) : Observable<HttpResult<Any?>> fun authIndividualBusinessComplete(@QueryMap commonParams: Map<String, String>, @QueryMap requestParams: Map<String, String?>) : Observable<HttpResult<Any?>>
} }
\ No newline at end of file
...@@ -5,7 +5,7 @@ import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthBusinessLicenseComm ...@@ -5,7 +5,7 @@ import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthBusinessLicenseComm
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 7:25 PM * date: 6/3/21 7:25 PM
* description: API /merchant/enterprise/ent_commit * description: API /merchant/enterprise/business
*/ */
interface IAuthBusinessLicenseCommitCallback { interface IAuthBusinessLicenseCommitCallback {
fun authBusinessLicenseCommitSuccess(result: AuthBusinessLicenseCommitBean.Response?) fun authBusinessLicenseCommitSuccess(result: AuthBusinessLicenseCommitBean.Response?)
......
package com.yidian.shenghuoquan.newscontent.http.callback
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthEnterpriseCompleteBean
/**
* author: yinjiacheng
* date: 6/3/21 9:12 PM
* description: API /merchant/enterprise/complete
*/
interface IAuthEnterpriseCompleteCallback {
fun authEnterpriseCompleteSuccess(result: AuthEnterpriseCompleteBean.Response?)
fun authEnterpriseCompleteFailure(message: String?)
}
\ No newline at end of file
package com.yidian.shenghuoquan.newscontent.http.callback package com.yidian.shenghuoquan.newscontent.http.callback
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthEnterpriseLegalIdentityCommitBean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 8:38 PM * date: 6/3/21 8:38 PM
* description: API /merchant/enterprise/ent_commit * description: API /merchant/enterprise/legal
*/ */
interface IAuthEnterpriseLegalIdentityCommitCallback { interface IAuthEnterpriseLegalIdentityCommitCallback {
fun authEnterpriseLegalIdentityCommitSuccess() fun authEnterpriseLegalIdentityCommitSuccess(result: AuthEnterpriseLegalIdentityCommitBean.Response?)
fun authEnterpriseLegalIdentityCommitFailure(message: String?) fun authEnterpriseLegalIdentityCommitFailure(message: String?)
} }
\ No newline at end of file
...@@ -3,7 +3,7 @@ package com.yidian.shenghuoquan.newscontent.http.callback ...@@ -3,7 +3,7 @@ package com.yidian.shenghuoquan.newscontent.http.callback
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 9:06 PM * date: 6/3/21 9:06 PM
* description: API /merchant/enterprise/live_identity * description: API /merchant/enterprise/live
*/ */
interface IAuthEnterpriseLiveIdentityCallback { interface IAuthEnterpriseLiveIdentityCallback {
fun authEnterpriseLiveIdentitySuccess() fun authEnterpriseLiveIdentitySuccess()
......
package com.yidian.shenghuoquan.newscontent.http.callback
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthIndividualBusinessCompleteBean
/**
* author: yinjiacheng
* date: 6/3/21 9:12 PM
* description: API /merchant/enterprise/employed_complate
*/
interface IAuthIndividualBusinessCompleteCallback {
fun authIndividualBusinessCompleteSuccess(result: AuthIndividualBusinessCompleteBean.Response?)
fun authIndividualBusinessCompleteFailure(message: String?)
}
\ No newline at end of file
...@@ -3,7 +3,7 @@ package com.yidian.shenghuoquan.newscontent.http.callback ...@@ -3,7 +3,7 @@ package com.yidian.shenghuoquan.newscontent.http.callback
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 8:55 PM * date: 6/3/21 8:55 PM
* description: API /merchant/enterprise/ent_personal * description: API /merchant/enterprise/employed
*/ */
interface IAuthIndividualBusinessIdentityCommitCallback { interface IAuthIndividualBusinessIdentityCommitCallback {
fun authIndividualBusinessIdentityCommitSuccess() fun authIndividualBusinessIdentityCommitSuccess()
......
...@@ -5,7 +5,7 @@ import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthMerchantCheckBean ...@@ -5,7 +5,7 @@ import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthMerchantCheckBean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 6:21 PM * date: 6/3/21 6:21 PM
* description: API /merchant/enterprise/ent_check * description: API /merchant/enterprise/check
*/ */
interface IAuthMerchantCheckCallback { interface IAuthMerchantCheckCallback {
fun authMerchantCheckSuccess(result: AuthMerchantCheckBean.Response?) fun authMerchantCheckSuccess(result: AuthMerchantCheckBean.Response?)
......
...@@ -3,12 +3,11 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean ...@@ -3,12 +3,11 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 6:23 PM * date: 6/3/21 6:23 PM
* description: API /merchant/enterprise/ent_commit * description: API /merchant/enterprise/business
*/ */
class AuthBusinessLicenseCommitBean { class AuthBusinessLicenseCommitBean {
data class Request( data class Request(
val user_id: Long,
val code: String, val code: String,
val name: String, val name: String,
val type: String?, val type: String?,
...@@ -28,10 +27,8 @@ class AuthBusinessLicenseCommitBean { ...@@ -28,10 +27,8 @@ class AuthBusinessLicenseCommitBean {
val data_from: Int, val data_from: Int,
val data_type: Int, val data_type: Int,
val life_account_id: Long?, val life_account_id: Long?,
val proxy_user_name: String?,
val mobile: String?,
val is_agent: Int?
) )
data class Response(val data: Int) data class Response(val enterprise_auth_record_id: Long)
} }
\ No newline at end of file
package com.yidian.shenghuoquan.newscontent.http.httpbean
/**
* author: yinjiacheng
* date: 6/3/21 9:08 PM
* description: API /merchant/enterprise/complete
*/
class AuthEnterpriseCompleteBean {
data class Request(val code: String)
data class Response(
val enterprise_auth_record_id: Long,
val code: String,
val name: String,
val legal_person: String,
val legal_id_card: String,
val data_type: Int,
val audit_status: Int
)
}
\ No newline at end of file
...@@ -3,9 +3,9 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean ...@@ -3,9 +3,9 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 7:37 PM * date: 6/3/21 7:37 PM
* description: API /merchant/enterprise/ent_commit * description: API /merchant/enterprise/legal
*/ */
class AuthEnterpriseLegalIdentityCommitBean() { class AuthEnterpriseLegalIdentityCommitBean {
data class Request( data class Request(
val record_id: Long, val record_id: Long,
...@@ -22,9 +22,9 @@ class AuthEnterpriseLegalIdentityCommitBean() { ...@@ -22,9 +22,9 @@ class AuthEnterpriseLegalIdentityCommitBean() {
val valid_date_end: String?, val valid_date_end: String?,
val issued_by: String?, val issued_by: String?,
val life_account_id: Long?, val life_account_id: Long?,
val proxy_user_name: String?,
val mobile: String, val mobile: String,
val is_agent: String?
) )
data class Response(val life_account_id: Long)
} }
\ No newline at end of file
...@@ -3,9 +3,10 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean ...@@ -3,9 +3,10 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 9:05 PM * date: 6/3/21 9:05 PM
* description: API /merchant/enterprise/live_identity * description: API /merchant/enterprise/live
*/ */
class AuthEnterpriseLiveIdentityBean { class AuthEnterpriseLiveIdentityBean {
data class Request(val code: String, val idcard_number: String) data class Request(val record_id: Long)
} }
\ No newline at end of file
package com.yidian.shenghuoquan.newscontent.http.httpbean
/**
* author: yinjiacheng
* date: 6/3/21 9:08 PM
* description: API /merchant/enterprise/employed_complate
*/
class AuthIndividualBusinessCompleteBean {
data class Request(val record_id: Long)
data class Response(val life_account_id: Long)
}
\ No newline at end of file
...@@ -3,13 +3,12 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean ...@@ -3,13 +3,12 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 8:41 PM * date: 6/3/21 8:41 PM
* description: API /merchant/enterprise/ent_personal * description: API /merchant/enterprise/employed
*/ */
class AuthIndividualBusinessIdentityCommitBean { class AuthIndividualBusinessIdentityCommitBean {
data class Request( data class Request(
val code: String, val record_id: Long,
val data_type: Int,
val front_img: String, val front_img: String,
val bak_img: String, val bak_img: String,
val front_completeness: Int, val front_completeness: Int,
...@@ -22,8 +21,6 @@ class AuthIndividualBusinessIdentityCommitBean { ...@@ -22,8 +21,6 @@ class AuthIndividualBusinessIdentityCommitBean {
val valid_date_start: String?, val valid_date_start: String?,
val valid_date_end: String?, val valid_date_end: String?,
val issued_by: String?, val issued_by: String?,
val proxy_user_name: String?,
val phone: String?,
val is_agent: Int?
) )
} }
\ No newline at end of file
...@@ -3,16 +3,28 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean ...@@ -3,16 +3,28 @@ package com.yidian.shenghuoquan.newscontent.http.httpbean
/** /**
* author: yinjiacheng * author: yinjiacheng
* date: 6/3/21 6:05 PM * date: 6/3/21 6:05 PM
* description: API /merchant/enterprise/ent_check * description: API /merchant/enterprise/check
*/ */
class AuthMerchantCheckBean { class AuthMerchantCheckBean {
data class Request( data class Request(
val user_id: Long,
val life_account_id: Long?, val life_account_id: Long?,
val mobile: String?,
val is_agent: Int?
) )
data class Response(val enterprise_auth_record_id: Int) data class Response(
val audit_opinion: String,
val audit_status: Int,
val code: String,
val data_type: Int,
val enterprise_auth_record_id: Int,
val entterprise_image: String,
val legal_back_id_card: String,
val legal_front_id_card: String,
val legal_id_card: String,
val legal_person: String,
val live_identity_status: Int,
val mobile: String,
val name: String
)
} }
\ No newline at end of file
...@@ -9,7 +9,8 @@ class GetIDCardOCRBean(val request: Request, val response: Response) { ...@@ -9,7 +9,8 @@ class GetIDCardOCRBean(val request: Request, val response: Response) {
data class Request( data class Request(
val posit_image_objectid: String, val posit_image_objectid: String,
val back_image_objectid: String, val back_image_objectid: String,
val bucket: String val posit_bucket: String,
val back_bucket: String
) )
data class Response( data class Response(
......
...@@ -97,6 +97,7 @@ class LifeAccountEnterpriseCertificationActivity : ...@@ -97,6 +97,7 @@ class LifeAccountEnterpriseCertificationActivity :
KS3Core.INSTANCE.uploadObject( KS3Core.INSTANCE.uploadObject(
generateUploadFile(filePath), generateUploadFile(filePath),
KS3Core.ObjectType.IMAGE, KS3Core.ObjectType.IMAGE,
KS3Core.ScenarioType.BUSINESS_LICENSE,
object : KS3Core.OnKS3TaskListener { object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
......
...@@ -188,7 +188,7 @@ class AliveTestActivity : BaseActivity<ActivityAliveLayoutBinding>(), PreCallbac ...@@ -188,7 +188,7 @@ class AliveTestActivity : BaseActivity<ActivityAliveLayoutBinding>(), PreCallbac
fos.flush() fos.flush()
fos.close() fos.close()
KS3Core.INSTANCE.uploadObject(file, object : KS3Core.OnKS3TaskListener { KS3Core.INSTANCE.uploadObject(file, KS3Core.ScenarioType.ALIVE_DETECT, object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
} }
...@@ -205,6 +205,7 @@ class AliveTestActivity : BaseActivity<ActivityAliveLayoutBinding>(), PreCallbac ...@@ -205,6 +205,7 @@ class AliveTestActivity : BaseActivity<ActivityAliveLayoutBinding>(), PreCallbac
val requestParams = HashMap<String, String?>() val requestParams = HashMap<String, String?>()
requestParams["biz_token"] = bizToken requestParams["biz_token"] = bizToken
requestParams["meglive_objectid"] = objectKey requestParams["meglive_objectid"] = objectKey
requestParams["meglive_bucket"] = bucket
ApiService.identifyIdOcrVerify(identifyIdOcrVerifyCallback, requestParams) ApiService.identifyIdOcrVerify(identifyIdOcrVerifyCallback, requestParams)
} }
......
...@@ -3,8 +3,6 @@ package com.yidian.shenghuoquan.newscontent.ui.auth ...@@ -3,8 +3,6 @@ package com.yidian.shenghuoquan.newscontent.ui.auth
import android.os.Bundle import android.os.Bundle
import android.util.Log import android.util.Log
import android.view.View import android.view.View
import com.orhanobut.hawk.Hawk
import com.yidian.common.HawkConfig
import com.yidian.common.XRouterPathConstants import com.yidian.common.XRouterPathConstants
import com.yidian.common.base.BaseActivity import com.yidian.common.base.BaseActivity
import com.yidian.shenghuoquan.newscontent.R import com.yidian.shenghuoquan.newscontent.R
...@@ -74,9 +72,7 @@ class LifeAccountAuthActivity : BaseActivity<ActivityLifeAccountAuthBinding>(), ...@@ -74,9 +72,7 @@ class LifeAccountAuthActivity : BaseActivity<ActivityLifeAccountAuthBinding>(),
} }
R.id.view_enterprise_auth -> { R.id.view_enterprise_auth -> {
// 请求企业认证信息 用于回显已填入的信息 // 请求企业认证信息 用于回显已填入的信息
val params = HashMap<String, String?>(1) ApiService.authMerchantCheck(this, hashMapOf())
params["user_id"] = Hawk.get(HawkConfig.UserId, "")
ApiService.authMerchantCheck(this, params)
} }
} }
} }
......
...@@ -21,7 +21,7 @@ object LifeAccountAuthDataManager { ...@@ -21,7 +21,7 @@ object LifeAccountAuthDataManager {
*/ */
fun generatePersonalAuthData(data: GetIDCardOCRBean.Response) { fun generatePersonalAuthData(data: GetIDCardOCRBean.Response) {
personalAuthData.idCardPortraitFaceCompleteness = data.posit.completeness personalAuthData.idCardPortraitFaceCompleteness = data.posit.completeness
personalAuthData.idCardNationalEmblemFaceCompleteness = data.posit.completeness personalAuthData.idCardNationalEmblemFaceCompleteness = data.back.completeness
personalAuthData.idCardNum = data.posit.idcard_number personalAuthData.idCardNum = data.posit.idcard_number
personalAuthData.gender = data.posit.gender personalAuthData.gender = data.posit.gender
personalAuthData.realName = data.posit.name personalAuthData.realName = data.posit.name
...@@ -80,12 +80,10 @@ object LifeAccountAuthDataManager { ...@@ -80,12 +80,10 @@ object LifeAccountAuthDataManager {
* 生成营业执照上传接口请求体 * 生成营业执照上传接口请求体
*/ */
fun generateAuthBusinessLicenseCommitRequest( fun generateAuthBusinessLicenseCommitRequest(
userId: Long,
dataType: Int, dataType: Int,
lifeAccountId: Long? lifeAccountId: Long?
): HashMap<String, String?> { ): HashMap<String, String?> {
val requestMap = HashMap<String, String?>() val requestMap = HashMap<String, String?>()
requestMap["user_id"] = userId.toString()
requestMap["code"] = merchantAuthData.registrationCode requestMap["code"] = merchantAuthData.registrationCode
requestMap["name"] = merchantAuthData.registrationName requestMap["name"] = merchantAuthData.registrationName
requestMap["type"] = merchantAuthData.type requestMap["type"] = merchantAuthData.type
...@@ -104,22 +102,18 @@ object LifeAccountAuthDataManager { ...@@ -104,22 +102,18 @@ object LifeAccountAuthDataManager {
requestMap["entterprise_image"] = merchantAuthData.businessLicenseObjectKey requestMap["entterprise_image"] = merchantAuthData.businessLicenseObjectKey
requestMap["data_from"] = Constant.DATA_FROM_B.toString() requestMap["data_from"] = Constant.DATA_FROM_B.toString()
requestMap["data_type"] = dataType.toString() requestMap["data_type"] = dataType.toString()
requestMap["life_account_id"] = lifeAccountId.toString() lifeAccountId?.let {
requestMap["proxy_user_name"] = null requestMap["life_account_id"] = it.toString()
requestMap["mobile"] = null }
requestMap["is_agent"] = null
return requestMap return requestMap
} }
/** /**
* 生成个体工商户身份上传接口请求体 * 生成个体工商户身份上传接口请求体
*/ */
fun generateAuthIndividualBusinessIdentityCommitRequest( fun generateAuthIndividualBusinessIdentityCommitRequest(): HashMap<String, String?> {
dataType: Int
): HashMap<String, String?> {
val requestMap = HashMap<String, String?>() val requestMap = HashMap<String, String?>()
requestMap["code"] = merchantAuthData.registrationCode requestMap["record_id"] = merchantAuthData.authRecordId.toString()
requestMap["data_type"] = dataType.toString()
requestMap["front_img"] = personalAuthData.idCardPortraitFaceObjectKey requestMap["front_img"] = personalAuthData.idCardPortraitFaceObjectKey
requestMap["bak_img"] = personalAuthData.idCardNationalEmblemFaceObjectKey requestMap["bak_img"] = personalAuthData.idCardNationalEmblemFaceObjectKey
requestMap["front_completeness"] = requestMap["front_completeness"] =
...@@ -134,9 +128,6 @@ object LifeAccountAuthDataManager { ...@@ -134,9 +128,6 @@ object LifeAccountAuthDataManager {
requestMap["valid_date_start"] = personalAuthData.validDateStart requestMap["valid_date_start"] = personalAuthData.validDateStart
requestMap["valid_date_end"] = personalAuthData.validDateEnd requestMap["valid_date_end"] = personalAuthData.validDateEnd
requestMap["issued_by"] = personalAuthData.issuedBy requestMap["issued_by"] = personalAuthData.issuedBy
requestMap["proxy_user_name"] = null
requestMap["phone"] = null
requestMap["is_agent"] = null
return requestMap return requestMap
} }
...@@ -144,11 +135,10 @@ object LifeAccountAuthDataManager { ...@@ -144,11 +135,10 @@ object LifeAccountAuthDataManager {
* 生成普通企业法人身份信息上传接口请求体 * 生成普通企业法人身份信息上传接口请求体
*/ */
fun generateAuthEnterpriseLegalIdentityCommitRequest( fun generateAuthEnterpriseLegalIdentityCommitRequest(
authRecordId: Long,
lifeAccountId: Long? lifeAccountId: Long?
): HashMap<String, String?> { ): HashMap<String, String?> {
val requestMap = HashMap<String, String?>() val requestMap = HashMap<String, String?>()
requestMap["record_id"] = authRecordId.toString() requestMap["record_id"] = merchantAuthData.authRecordId.toString()
requestMap["front_img"] = personalAuthData.idCardPortraitFaceObjectKey requestMap["front_img"] = personalAuthData.idCardPortraitFaceObjectKey
requestMap["bak_img"] = personalAuthData.idCardNationalEmblemFaceObjectKey requestMap["bak_img"] = personalAuthData.idCardNationalEmblemFaceObjectKey
requestMap["front_completeness"] = requestMap["front_completeness"] =
...@@ -163,10 +153,10 @@ object LifeAccountAuthDataManager { ...@@ -163,10 +153,10 @@ object LifeAccountAuthDataManager {
requestMap["valid_date_start"] = personalAuthData.validDateStart requestMap["valid_date_start"] = personalAuthData.validDateStart
requestMap["valid_date_end"] = personalAuthData.validDateEnd requestMap["valid_date_end"] = personalAuthData.validDateEnd
requestMap["issued_by"] = personalAuthData.issuedBy requestMap["issued_by"] = personalAuthData.issuedBy
requestMap["life_account_id"] = lifeAccountId.toString()
requestMap["proxy_user_name"] = null
requestMap["mobile"] = personalAuthData.phoneNum requestMap["mobile"] = personalAuthData.phoneNum
requestMap["is_agent"] = null lifeAccountId?.let {
requestMap["life_account_id"] = it.toString()
}
return requestMap return requestMap
} }
} }
\ No newline at end of file
...@@ -182,7 +182,9 @@ class LifeAccountBusinessLicenseAuthFragment : ...@@ -182,7 +182,9 @@ class LifeAccountBusinessLicenseAuthFragment :
) )
KS3Core.INSTANCE.uploadObject( KS3Core.INSTANCE.uploadObject(
File(commonPath + Constant.FILE_PATH_BUSINESS_LICENSE), File(commonPath + Constant.FILE_PATH_BUSINESS_LICENSE),
KS3Core.ObjectType.IMAGE, this KS3Core.ObjectType.IMAGE,
KS3Core.ScenarioType.BUSINESS_LICENSE,
this
) )
} }
...@@ -279,5 +281,7 @@ class LifeAccountBusinessLicenseAuthFragment : ...@@ -279,5 +281,7 @@ class LifeAccountBusinessLicenseAuthFragment :
} else { } else {
LifeAccountAuthDataManager.merchantAuthData.registrationCode = text LifeAccountAuthDataManager.merchantAuthData.registrationCode = text
} }
// 检查下一步条件
(activity as LifeAccountEnterpriseAuthActivity).checkNextCondition()
} }
} }
\ No newline at end of file
...@@ -4,8 +4,6 @@ import android.os.Bundle ...@@ -4,8 +4,6 @@ import android.os.Bundle
import android.util.Log import android.util.Log
import android.view.View import android.view.View
import androidx.fragment.app.Fragment import androidx.fragment.app.Fragment
import com.orhanobut.hawk.Hawk
import com.yidian.common.HawkConfig
import com.yidian.common.XRouterPathConstants import com.yidian.common.XRouterPathConstants
import com.yidian.common.base.BaseActivity import com.yidian.common.base.BaseActivity
import com.yidian.shenghuoquan.newscontent.R import com.yidian.shenghuoquan.newscontent.R
...@@ -15,10 +13,11 @@ import com.yidian.shenghuoquan.newscontent.constant.Constant ...@@ -15,10 +13,11 @@ import com.yidian.shenghuoquan.newscontent.constant.Constant
import com.yidian.shenghuoquan.newscontent.databinding.ActivityLifeAccountEnterpriseAuthBinding import com.yidian.shenghuoquan.newscontent.databinding.ActivityLifeAccountEnterpriseAuthBinding
import com.yidian.shenghuoquan.newscontent.http.ApiService import com.yidian.shenghuoquan.newscontent.http.ApiService
import com.yidian.shenghuoquan.newscontent.http.callback.IAuthBusinessLicenseCommitCallback import com.yidian.shenghuoquan.newscontent.http.callback.IAuthBusinessLicenseCommitCallback
import com.yidian.shenghuoquan.newscontent.http.callback.IAuthEnterpriseCompleteCallback import com.yidian.shenghuoquan.newscontent.http.callback.IAuthIndividualBusinessCompleteCallback
import com.yidian.shenghuoquan.newscontent.http.callback.IAuthEnterpriseLegalIdentityCommitCallback import com.yidian.shenghuoquan.newscontent.http.callback.IAuthEnterpriseLegalIdentityCommitCallback
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthBusinessLicenseCommitBean import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthBusinessLicenseCommitBean
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthEnterpriseCompleteBean import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthEnterpriseLegalIdentityCommitBean
import com.yidian.shenghuoquan.newscontent.http.httpbean.AuthIndividualBusinessCompleteBean
import com.yidian.shenghuoquan.newscontent.ui.dialog.BottomSelectDialog import com.yidian.shenghuoquan.newscontent.ui.dialog.BottomSelectDialog
import com.yidian.shenghuoquan.newscontent.widget.LifeAccountAuthProcessView import com.yidian.shenghuoquan.newscontent.widget.LifeAccountAuthProcessView
import com.yidian.xpage.XPageManager import com.yidian.xpage.XPageManager
...@@ -31,10 +30,17 @@ import com.yidian.xpage.XPageManager ...@@ -31,10 +30,17 @@ import com.yidian.xpage.XPageManager
class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterpriseAuthBinding>(), class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterpriseAuthBinding>(),
View.OnClickListener, BottomSelectAdapter.OnItemClickListener<BottomSelectBean>, View.OnClickListener, BottomSelectAdapter.OnItemClickListener<BottomSelectBean>,
IAuthBusinessLicenseCommitCallback, IAuthEnterpriseLegalIdentityCommitCallback, IAuthBusinessLicenseCommitCallback, IAuthEnterpriseLegalIdentityCommitCallback,
IAuthEnterpriseCompleteCallback { IAuthIndividualBusinessCompleteCallback {
companion object {
/**
* 生活号id 个人生活号主动升级企业生活号的认证流程传入
*/
const val EXTRA_LIFE_ACCOUNT_ID = "life_account_id"
}
private val fragmentList: ArrayList<Fragment> by lazy { private val fragmentList: ArrayList<Fragment> by lazy {
arrayListOf<Fragment>( arrayListOf(
LifeAccountBusinessLicenseAuthFragment(), LifeAccountBusinessLicenseAuthFragment(),
LifeAccountIDCardAuthFragment() LifeAccountIDCardAuthFragment()
) )
...@@ -45,6 +51,15 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp ...@@ -45,6 +51,15 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp
*/ */
private var curFragment: Fragment? = null private var curFragment: Fragment? = null
/**
* 当前生活号id,个人生活号升级使用
*/
private val curLifeAccountId by lazy {
intent.getSerializableExtra(XRouterPathConstants.ParamsKey)?.let {
(it as HashMap<*, *>)[EXTRA_LIFE_ACCOUNT_ID] as Long
}
}
override fun createViewBinding(): ActivityLifeAccountEnterpriseAuthBinding { override fun createViewBinding(): ActivityLifeAccountEnterpriseAuthBinding {
return ActivityLifeAccountEnterpriseAuthBinding.inflate(layoutInflater) return ActivityLifeAccountEnterpriseAuthBinding.inflate(layoutInflater)
} }
...@@ -165,26 +180,29 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp ...@@ -165,26 +180,29 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp
R.id.btn_next -> { R.id.btn_next -> {
if (viewBind.pvAuthProcess.curProcess == LifeAccountAuthProcessView.PROCESS_ENTERPRISE_QUALIFICATION) { if (viewBind.pvAuthProcess.curProcess == LifeAccountAuthProcessView.PROCESS_ENTERPRISE_QUALIFICATION) {
// TODO: 6/4/21 判断是否为个人生活号升级 // TODO: 6/4/21 判断是否为个人生活号升级
ApiService.authBusinessLicenseCommit( ApiService.authBusinessLicenseCommit(
this, this,
LifeAccountAuthDataManager.generateAuthBusinessLicenseCommitRequest( LifeAccountAuthDataManager.generateAuthBusinessLicenseCommitRequest(
Hawk.get<Long>(HawkConfig.UserId),
LifeAccountAuthDataManager.merchantAuthData.merchantType, LifeAccountAuthDataManager.merchantAuthData.merchantType,
null curLifeAccountId
) )
) )
} else if (viewBind.pvAuthProcess.curProcess == LifeAccountAuthProcessView.PROCESS_ENTERPRISE_MANAGER) { } else if (viewBind.pvAuthProcess.curProcess == LifeAccountAuthProcessView.PROCESS_ENTERPRISE_MANAGER) {
if (LifeAccountAuthDataManager.merchantAuthData.merchantType == Constant.TYPE_INDIVIDUAL_BUSINESS) { if (LifeAccountAuthDataManager.merchantAuthData.merchantType == Constant.TYPE_INDIVIDUAL_BUSINESS) {
val params = HashMap<String, String?>() ApiService.authIndividualBusinessComplete(
params["code"] = this,
LifeAccountAuthDataManager.merchantAuthData.registrationCode hashMapOf(
ApiService.authEnterpriseComplete(this, params) Pair(
"record_id",
LifeAccountAuthDataManager.merchantAuthData.authRecordId.toString()
)
)
)
} else if (LifeAccountAuthDataManager.merchantAuthData.merchantType == Constant.TYPE_COMMON_ENTERPRISE) { } else if (LifeAccountAuthDataManager.merchantAuthData.merchantType == Constant.TYPE_COMMON_ENTERPRISE) {
ApiService.authEnterpriseLegalIdentityCommit( ApiService.authEnterpriseLegalIdentityCommit(
this, this,
LifeAccountAuthDataManager.generateAuthEnterpriseLegalIdentityCommitRequest( LifeAccountAuthDataManager.generateAuthEnterpriseLegalIdentityCommitRequest(
123, null curLifeAccountId
) )
) )
} }
...@@ -209,6 +227,7 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp ...@@ -209,6 +227,7 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp
override fun authBusinessLicenseCommitSuccess(result: AuthBusinessLicenseCommitBean.Response?) { override fun authBusinessLicenseCommitSuccess(result: AuthBusinessLicenseCommitBean.Response?) {
// 营业执照提交成功 // 营业执照提交成功
LifeAccountAuthDataManager.merchantAuthData.authRecordId = result?.enterprise_auth_record_id
viewBind.pvAuthProcess.setProcess(++viewBind.pvAuthProcess.curProcess) viewBind.pvAuthProcess.setProcess(++viewBind.pvAuthProcess.curProcess)
viewBind.svMerchantType.enableSelect(false) viewBind.svMerchantType.enableSelect(false)
// 向身份信息fragment传参 // 向身份信息fragment传参
...@@ -230,13 +249,9 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp ...@@ -230,13 +249,9 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp
) )
} }
override fun authEnterpriseLegalIdentityCommitSuccess() { override fun authEnterpriseLegalIdentityCommitSuccess(result: AuthEnterpriseLegalIdentityCommitBean.Response?) {
// 普通企业法人身份信息提交成功 请求企业认证完成接口 // 普通企业法人身份信息提交成功
// TODO: 6/6/21 跳转提交成功页面 // TODO: 6/6/21 跳转提交成功页面
val params = HashMap<String, String?>()
params["code"] =
LifeAccountAuthDataManager.merchantAuthData.registrationCode
ApiService.authEnterpriseComplete(this, params)
} }
override fun authEnterpriseLegalIdentityCommitFailure(message: String?) { override fun authEnterpriseLegalIdentityCommitFailure(message: String?) {
...@@ -246,12 +261,12 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp ...@@ -246,12 +261,12 @@ class LifeAccountEnterpriseAuthActivity : BaseActivity<ActivityLifeAccountEnterp
) )
} }
override fun authEnterpriseCompleteSuccess(result: AuthEnterpriseCompleteBean.Response?) { override fun authIndividualBusinessCompleteSuccess(result: AuthIndividualBusinessCompleteBean.Response?) {
// 企业认证完成 // 个体工商户认证完成
// TODO: 6/6/21 跳转提交成功页面 // TODO: 6/6/21 跳转提交成功页面
} }
override fun authEnterpriseCompleteFailure(message: String?) { override fun authIndividualBusinessCompleteFailure(message: String?) {
Log.e( Log.e(
Constant.LIFE_ACCOUNT_AUTH_TAG, Constant.LIFE_ACCOUNT_AUTH_TAG,
"request auth enterprise complete failure, message: $message" "request auth enterprise complete failure, message: $message"
......
...@@ -349,7 +349,9 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -349,7 +349,9 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
private fun startUpload() { private fun startUpload() {
KS3Core.INSTANCE.uploadObject( KS3Core.INSTANCE.uploadObject(
File(cachePath + Constant.FILE_PATH_ID_CARD_PORTRAIT_FACE), File(cachePath + Constant.FILE_PATH_ID_CARD_PORTRAIT_FACE),
KS3Core.ObjectType.IMAGE, object : KS3Core.OnKS3TaskListener { KS3Core.ObjectType.IMAGE,
KS3Core.ScenarioType.ID_CARD,
object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
} }
...@@ -377,7 +379,9 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -377,7 +379,9 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
} }
KS3Core.INSTANCE.uploadObject( KS3Core.INSTANCE.uploadObject(
File(cachePath + Constant.FILE_PATH_ID_CARD_NATIONAL_EMBLEM_FACE), File(cachePath + Constant.FILE_PATH_ID_CARD_NATIONAL_EMBLEM_FACE),
KS3Core.ObjectType.IMAGE, object : KS3Core.OnKS3TaskListener { KS3Core.ObjectType.IMAGE,
KS3Core.ScenarioType.ID_CARD,
object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
} }
...@@ -438,8 +442,10 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -438,8 +442,10 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
LifeAccountAuthDataManager.personalAuthData.idCardPortraitFaceObjectKey LifeAccountAuthDataManager.personalAuthData.idCardPortraitFaceObjectKey
requestParams["back_image_objectid"] = requestParams["back_image_objectid"] =
LifeAccountAuthDataManager.personalAuthData.idCardNationalEmblemFaceObjectKey LifeAccountAuthDataManager.personalAuthData.idCardNationalEmblemFaceObjectKey
requestParams["bucket"] = requestParams["posit_bucket"] =
LifeAccountAuthDataManager.personalAuthData.idCardPortraitFaceBucket LifeAccountAuthDataManager.personalAuthData.idCardPortraitFaceBucket
requestParams["back_bucket"] =
LifeAccountAuthDataManager.personalAuthData.idCardNationalEmblemFaceBucket
ApiService.getIDCardOCR(this, requestParams) ApiService.getIDCardOCR(this, requestParams)
} }
...@@ -494,10 +500,15 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -494,10 +500,15 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
// 检查下一步条件 // 检查下一步条件
(activity as LifeAccountPersonalAuthActivity).checkNextCondition() (activity as LifeAccountPersonalAuthActivity).checkNextCondition()
} else { } else {
val params = HashMap<String, String?>(2) ApiService.authEnterpriseLiveIdentity(
params["code"] = LifeAccountAuthDataManager.merchantAuthData.registrationCode this,
params["idcard_number"] = LifeAccountAuthDataManager.personalAuthData.idCardNum hashMapOf(
ApiService.authEnterpriseLiveIdentity(this, params) Pair(
"record_id",
LifeAccountAuthDataManager.merchantAuthData.authRecordId.toString()
)
)
)
// 检查下一步条件 // 检查下一步条件
(activity as LifeAccountEnterpriseAuthActivity).checkNextCondition() (activity as LifeAccountEnterpriseAuthActivity).checkNextCondition()
} }
...@@ -542,6 +553,7 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -542,6 +553,7 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
) )
KS3Core.INSTANCE.uploadObject( KS3Core.INSTANCE.uploadObject(
cachePath + Constant.FILE_PATH_ALIVE_DETECT_VERIFY_DATA, cachePath + Constant.FILE_PATH_ALIVE_DETECT_VERIFY_DATA,
KS3Core.ScenarioType.ALIVE_DETECT,
this this
) )
} else { } else {
...@@ -573,10 +585,13 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -573,10 +585,13 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
objectKey?.let { objectKey?.let {
LifeAccountAuthDataManager.personalAuthData.liveDetectObjectKey = it LifeAccountAuthDataManager.personalAuthData.liveDetectObjectKey = it
} }
bucket?.let {
LifeAccountAuthDataManager.personalAuthData.liveDetectBucket = it
}
val requestParams = HashMap<String, String?>() val requestParams = HashMap<String, String?>()
requestParams["biz_token"] = LifeAccountAuthDataManager.personalAuthData.liveDetectBizToken requestParams["biz_token"] = LifeAccountAuthDataManager.personalAuthData.liveDetectBizToken
requestParams["meglive_objectid"] = requestParams["meglive_objectid"] = objectKey
LifeAccountAuthDataManager.personalAuthData.liveDetectObjectKey requestParams["meglive_bucket"] = bucket
ApiService.identifyIdOcrVerify(this, requestParams) ApiService.identifyIdOcrVerify(this, requestParams)
} }
...@@ -640,6 +655,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -640,6 +655,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
} else { } else {
LifeAccountAuthDataManager.personalAuthData.isIDCardNationalEmblemFaceUpload = false LifeAccountAuthDataManager.personalAuthData.isIDCardNationalEmblemFaceUpload = false
} }
// 检查下一步条件
(activity as LifeAccountEnterpriseAuthActivity).checkNextCondition()
} }
override fun onTextClear(from: LifeAccountAuthIdentityInfoEditView) { override fun onTextClear(from: LifeAccountAuthIdentityInfoEditView) {
...@@ -654,6 +671,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -654,6 +671,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
LifeAccountAuthDataManager.personalAuthData.phoneNum = "" LifeAccountAuthDataManager.personalAuthData.phoneNum = ""
} }
} }
// 检查下一步条件
(activity as LifeAccountEnterpriseAuthActivity).checkNextCondition()
} }
override fun onTextChange(from: LifeAccountAuthIdentityInfoEditView, text: String) { override fun onTextChange(from: LifeAccountAuthIdentityInfoEditView, text: String) {
...@@ -668,6 +687,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -668,6 +687,8 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
LifeAccountAuthDataManager.personalAuthData.phoneNum = text LifeAccountAuthDataManager.personalAuthData.phoneNum = text
} }
} }
// 检查下一步条件
(activity as LifeAccountEnterpriseAuthActivity).checkNextCondition()
} }
override fun onStartFaceAuth() { override fun onStartFaceAuth() {
...@@ -683,9 +704,7 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth ...@@ -683,9 +704,7 @@ class LifeAccountIDCardAuthFragment : BaseFragment<FragmentLifeAccountIdCardAuth
Constant.TYPE_AUTH_INDIVIDUAL_BUSINESS -> { Constant.TYPE_AUTH_INDIVIDUAL_BUSINESS -> {
ApiService.authIndividualBusinessIdentityCommit( ApiService.authIndividualBusinessIdentityCommit(
this, this,
LifeAccountAuthDataManager.generateAuthIndividualBusinessIdentityCommitRequest( LifeAccountAuthDataManager.generateAuthIndividualBusinessIdentityCommitRequest()
Constant.TYPE_INDIVIDUAL_BUSINESS
)
) )
} }
} }
......
package com.yidian.shenghuoquan.newscontent.ui.dialog
import android.content.Context
import android.os.Bundle
import android.view.View
import android.view.WindowManager
import androidx.core.view.isVisible
import com.yidian.common.base.BaseDialog
import com.yidian.shenghuoquan.newscontent.R
import com.yidian.shenghuoquan.newscontent.bean.HintOptionBean
import com.yidian.shenghuoquan.newscontent.databinding.DialogHintBinding
import com.yidian.utils.DensityUtil
/**
* author: yinjiacheng
* date: 6/8/21 12:34 AM
* description: 提示dialog
*/
class HintDialog(
context: Context,
val content: String,
val options: ArrayList<HintOptionBean>,
val callback: OnHintOptionCallback?
) :
BaseDialog<DialogHintBinding>(context), View.OnClickListener {
override fun createViewBinding(): DialogHintBinding {
return DialogHintBinding.inflate(layoutInflater)
}
override fun initView() {
viewBinding.tvContent.text = content
when (options.size) {
1 -> {
viewBinding.btnRight.text = options[0].option
viewBinding.btnLeft.isVisible = false
viewBinding.viewVerticalDivider.isVisible = false
}
2 -> {
viewBinding.btnLeft.text = options[0].option
viewBinding.btnRight.text = options[1].option
}
}
}
override fun initListener() {
viewBinding.btnLeft.setOnClickListener(this)
viewBinding.btnRight.setOnClickListener(this)
}
override fun init(savedInstanceState: Bundle?) {
super.init(savedInstanceState)
setCanceledOnTouchOutside(false)
}
override fun show() {
super.show()
val attrs = window?.attributes
attrs?.width = DensityUtil.dp2px(269f)
attrs?.height = WindowManager.LayoutParams.WRAP_CONTENT
window?.attributes = attrs
}
override fun onClick(v: View?) {
if (v?.id == R.id.btn_left) {
callback?.onLeftOption()
} else if (v?.id == R.id.btn_right) {
callback?.onRightOption()
}
}
interface OnHintOptionCallback {
/**
* 左操作项
*/
fun onLeftOption()
/**
* 右操作项
*/
fun onRightOption()
}
}
\ No newline at end of file
...@@ -79,7 +79,7 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() { ...@@ -79,7 +79,7 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() {
} }
idCardFront?.compress(Bitmap.CompressFormat.JPEG, 100, FileOutputStream(frontFile)) idCardFront?.compress(Bitmap.CompressFormat.JPEG, 100, FileOutputStream(frontFile))
idCardBack?.compress(Bitmap.CompressFormat.JPEG, 100, FileOutputStream(backFile)) idCardBack?.compress(Bitmap.CompressFormat.JPEG, 100, FileOutputStream(backFile))
KS3Core.INSTANCE.uploadObject(frontFile, object : KS3Core.OnKS3TaskListener { KS3Core.INSTANCE.uploadObject(frontFile, KS3Core.ScenarioType.ID_CARD, object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
} }
...@@ -103,7 +103,7 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() { ...@@ -103,7 +103,7 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() {
if (bucket != null) { if (bucket != null) {
idCardFrontBucket = bucket idCardFrontBucket = bucket
} }
KS3Core.INSTANCE.uploadObject(backFile, object : KS3Core.OnKS3TaskListener { KS3Core.INSTANCE.uploadObject(backFile, KS3Core.ScenarioType.ID_CARD, object : KS3Core.OnKS3TaskListener {
override fun onTaskStart() { override fun onTaskStart() {
} }
...@@ -130,7 +130,8 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() { ...@@ -130,7 +130,8 @@ class IDCardTestActivity : BaseActivity<ActivityIdcardBinding>() {
val requestParams = HashMap<String, String?>() val requestParams = HashMap<String, String?>()
requestParams["posit_image_objectid"] = idCardFrontObjectKey requestParams["posit_image_objectid"] = idCardFrontObjectKey
requestParams["back_image_objectid"] = idCardBackObjectKey requestParams["back_image_objectid"] = idCardBackObjectKey
requestParams["bucket"] = idCardFrontBucket requestParams["posit_bucket"] = idCardFrontBucket
requestParams["back_bucket"] = idCardBackBucket
ApiService.getIDCardOCR(object : IGetIDCardOCRCallback { ApiService.getIDCardOCR(object : IGetIDCardOCRCallback {
override fun getIDCardOCRSuccess(result: GetIDCardOCRBean.Response?) { override fun getIDCardOCRSuccess(result: GetIDCardOCRBean.Response?) {
Log.d(KS3Core.TAG, "name: ${result?.posit?.name}, id num: ${result?.posit?.idcard_number}") Log.d(KS3Core.TAG, "name: ${result?.posit?.name}, id num: ${result?.posit?.idcard_number}")
......
...@@ -14,7 +14,6 @@ import com.ksyun.ks3.services.request.PutObjectRequest ...@@ -14,7 +14,6 @@ import com.ksyun.ks3.services.request.PutObjectRequest
import com.yidian.common.YdBaseApplication import com.yidian.common.YdBaseApplication
import com.yidian.shenghuoquan.newscontent.http.ApiService import com.yidian.shenghuoquan.newscontent.http.ApiService
import com.yidian.shenghuoquan.newscontent.http.httpbean.GetKSYunObjectIdBean import com.yidian.shenghuoquan.newscontent.http.httpbean.GetKSYunObjectIdBean
import com.yidian.shenghuoquan.newscontent.http.httpbean.GetKSYunTokenBean
import com.yidian.shenghuoquan.newscontent.http.httpbean.IGetKSYunObjectIdCallback import com.yidian.shenghuoquan.newscontent.http.httpbean.IGetKSYunObjectIdCallback
import com.yidian.utils.MD5Util import com.yidian.utils.MD5Util
import com.yidian.yac.ftdevicefinger.core.FtDeviceFingerManager import com.yidian.yac.ftdevicefinger.core.FtDeviceFingerManager
...@@ -112,8 +111,14 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -112,8 +111,14 @@ class KS3Core private constructor(val context: Context) : AuthListener {
* 文件上传 * 文件上传
* @param path 本地文件全路径 * @param path 本地文件全路径
* @param type 文件类型 * @param type 文件类型
* @param scenario 业务场景
*/ */
fun uploadObject(path: String, type: ObjectType, listener: OnKS3TaskListener) { fun uploadObject(
path: String,
type: ObjectType,
scenario: ScenarioType,
listener: OnKS3TaskListener
) {
ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback { ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback {
override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) { override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) {
Log.d( Log.d(
...@@ -140,14 +145,15 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -140,14 +145,15 @@ class KS3Core private constructor(val context: Context) : AuthListener {
override fun getKSYunObjectIdFailure(message: String?) { override fun getKSYunObjectIdFailure(message: String?) {
Log.e(TAG, "request get KSYun objectId fail, message: $message") Log.e(TAG, "request get KSYun objectId fail, message: $message")
} }
}) }, hashMapOf(Pair("scenario", scenario.scenario)))
} }
/** /**
* 文件上传 * 文件上传
* @param path 本地文件全路径 * @param path 本地文件全路径
* @param scenario 业务场景
*/ */
fun uploadObject(path: String, listener: OnKS3TaskListener) { fun uploadObject(path: String, scenario: ScenarioType, listener: OnKS3TaskListener) {
ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback { ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback {
override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) { override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) {
Log.d( Log.d(
...@@ -166,14 +172,15 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -166,14 +172,15 @@ class KS3Core private constructor(val context: Context) : AuthListener {
override fun getKSYunObjectIdFailure(message: String?) { override fun getKSYunObjectIdFailure(message: String?) {
Log.e(TAG, "request get KSYun objectId fail, message: $message") Log.e(TAG, "request get KSYun objectId fail, message: $message")
} }
}) }, hashMapOf(Pair("scenario", scenario.scenario)))
} }
/** /**
* 文件上传 * 文件上传
* @param file 文件实体 * @param file 文件实体
* @param scenario 业务场景
*/ */
fun uploadObject(file: File, listener: OnKS3TaskListener) { fun uploadObject(file: File, scenario: ScenarioType, listener: OnKS3TaskListener) {
ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback { ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback {
override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) { override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) {
Log.d( Log.d(
...@@ -192,15 +199,21 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -192,15 +199,21 @@ class KS3Core private constructor(val context: Context) : AuthListener {
override fun getKSYunObjectIdFailure(message: String?) { override fun getKSYunObjectIdFailure(message: String?) {
Log.e(TAG, "request get KSYun objectId fail, message: $message") Log.e(TAG, "request get KSYun objectId fail, message: $message")
} }
}) }, hashMapOf(Pair("scenario", scenario.scenario)))
} }
/** /**
* 文件上传 * 文件上传
* @param file 文件实体 * @param file 文件实体
* @param type 文件类型 * @param type 文件类型
* @param scenario 业务场景
*/ */
fun uploadObject(file: File, type: ObjectType, listener: OnKS3TaskListener) { fun uploadObject(
file: File,
type: ObjectType,
scenario: ScenarioType,
listener: OnKS3TaskListener
) {
ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback { ApiService.getKSYunObjectId(object : IGetKSYunObjectIdCallback {
override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) { override fun getKSYunObjectIdSuccess(result: GetKSYunObjectIdBean.Response?) {
Log.d( Log.d(
...@@ -227,7 +240,7 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -227,7 +240,7 @@ class KS3Core private constructor(val context: Context) : AuthListener {
override fun getKSYunObjectIdFailure(message: String?) { override fun getKSYunObjectIdFailure(message: String?) {
Log.e(TAG, "request get KSYun objectId fail, message: $message") Log.e(TAG, "request get KSYun objectId fail, message: $message")
} }
}) }, hashMapOf(Pair("scenario", scenario.scenario)))
} }
/** /**
...@@ -295,6 +308,20 @@ class KS3Core private constructor(val context: Context) : AuthListener { ...@@ -295,6 +308,20 @@ class KS3Core private constructor(val context: Context) : AuthListener {
VIDEO, IMAGE VIDEO, IMAGE
} }
/**
* 业务场景的类型
*/
enum class ScenarioType(val scenario: String) {
// 身份证
ID_CARD("id_card"),
// 活体数据
ALIVE_DETECT("living_data"),
// 营业执照
BUSINESS_LICENSE("business_license")
}
/** /**
* 金山云object上传handler * 金山云object上传handler
*/ */
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="@color/color_FFFFFFFF" />
<corners android:radius="12dp" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@drawable/bg_hint_dialog">
<TextView
android:id="@+id/tv_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:padding="19dp"
android:textColor="@color/color_DE000000"
android:textSize="14sp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<View
android:id="@+id/view_horizontal_divider"
android:layout_width="match_parent"
android:layout_height="1dp"
android:background="@color/color_1A000000"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/tv_content" />
<Button
android:id="@+id/btn_left"
android:layout_width="0dp"
android:layout_height="46dp"
android:background="@null"
android:textColor="@color/color_8F000000"
android:textSize="15sp"
app:layout_constraintEnd_toStartOf="@id/btn_right"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@id/view_horizontal_divider" />
<View
android:id="@+id/view_vertical_divider"
android:layout_width="1dp"
android:layout_height="0dp"
android:background="@color/color_1A000000"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@id/btn_right"
app:layout_constraintStart_toEndOf="@id/btn_left"
app:layout_constraintTop_toBottomOf="@id/view_horizontal_divider" />
<Button
android:id="@+id/btn_right"
android:layout_width="0dp"
android:layout_height="46dp"
android:background="@null"
android:textColor="@color/color_FF1852F1"
android:textSize="15sp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toEndOf="@id/btn_left"
app:layout_constraintTop_toBottomOf="@id/view_horizontal_divider" />
</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
...@@ -42,4 +42,9 @@ ...@@ -42,4 +42,9 @@
<color name="edit_text_border_blue">#1852F1</color> <color name="edit_text_border_blue">#1852F1</color>
<color name="edit_text_border_gray">#cccccc</color> <color name="edit_text_border_gray">#cccccc</color>
<color name="color_F5F6F7">#F5F5F5</color> <color name="color_F5F6F7">#F5F5F5</color>
<color name="color_1A000000">#1A000000</color>
<color name="color_DE000000">#DE000000</color>
<color name="color_8F000000">#8F000000</color>
<color name="color_FF1852F1">#FF1852F1</color>
<color name="color_FFFFFFFF">#FFFFFFFF</color>
</resources> </resources>
\ No newline at end of file
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