Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
android
/
dayu
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
0fe74658
authored
Jun 25, 2018
by
罗翻
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'dev' into test
parents
91d9a40d
f3836898
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
221 additions
and
54 deletions
IDCardLib/src/main/res/layout/liveness_layout.xml
app/src/main/java/com/dayu/bigfish/presenter/main/MainContract.java
app/src/main/java/com/dayu/bigfish/presenter/main/MainPresenter.java
baseSDK/src/main/java/com/dayu/common/Constants.java
baseSDK/src/main/res/values/strings.xml
orderCenter/src/main/java/com/dayu/order/api/protocol/OrderDetail.java
orderCenter/src/main/java/com/dayu/order/presenter/multipleprocess/MultipleProcessPresenter.java
orderCenter/src/main/java/com/dayu/order/presenter/orderliveness/OrderLivenessPresenter.java
orderCenter/src/main/res/layout/liveness_layout.xml
userCenter/src/main/java/com/dayu/usercenter/presenter/login/LoginContract.java
userCenter/src/main/java/com/dayu/usercenter/presenter/login/LoginPresenter.java
IDCardLib/src/main/res/layout/liveness_layout.xml
View file @
0fe74658
<?xml version="1.0" encoding="utf-8"?>
<layout>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<RelativeLayout
android:id=
"@+id/liveness_layout_rootRel"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
...
...
app/src/main/java/com/dayu/bigfish/presenter/main/MainContract.java
View file @
0fe74658
...
...
@@ -78,5 +78,11 @@ public interface MainContract {
*/
public
abstract
void
dumpReceActivity
();
/**
* 获取用户信息.
* @param accountId
*/
public
abstract
void
getUserInfo
(
int
accountId
);
}
}
app/src/main/java/com/dayu/bigfish/presenter/main/MainPresenter.java
View file @
0fe74658
...
...
@@ -7,6 +7,7 @@ import com.dayu.bigfish.api.ApiFactory;
import
com.dayu.common.Constants
;
import
com.dayu.event.UserInfo
;
import
com.dayu.order.api.OrderApiFactory
;
import
com.dayu.usercenter.api.UserApiFactory
;
import
com.dayu.utils.AppUtils
;
import
com.dayu.utils.SPUtils
;
import
com.dayu.utils.UserManager
;
...
...
@@ -43,6 +44,7 @@ public class MainPresenter extends MainContract.Presenter {
getNewVersion
(
AppUtils
.
getPackageNum
());
getReceiveOrder
(
Constants
.
WATING_ORDER
,
mAccountId
,
mSiteId
,
1
,
20
);
getHxNum
(
mUser
.
getHxAccount
());
getUserInfo
(
Integer
.
parseInt
(
mUser
.
getAccountId
()));
}
...
...
@@ -100,4 +102,10 @@ public class MainPresenter extends MainContract.Presenter {
mView
.
dumpReceActivity
();
}
@Override
public
void
getUserInfo
(
int
accountId
)
{
UserApiFactory
.
getEngineerInfo
(
accountId
).
subscribe
(
baseObserver
(
engineerInfo
->
SPUtils
.
put
(
"USER_IDENTITY"
,
engineerInfo
.
getIdentity
())));
}
}
baseSDK/src/main/java/com/dayu/common/Constants.java
View file @
0fe74658
...
...
@@ -12,16 +12,16 @@ public class Constants {
/**
* 测试环境配置.
*/
public
static
final
int
LOG_LEVEL
=
LogUtils
.
LEVEL_ALL
;
public
static
final
String
ENVIROMENT
=
"debug"
;
public
static
final
String
BASE_URL
=
"http://47.94.101.239:3112"
;
public
final
static
String
UP_PHOTO
=
"/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply"
;
public
final
static
String
WEB_SOP
=
"http://47.94.101.239:9004/#/sop"
;
public
final
static
String
CHECK_MULTI_WEB_SOP
=
"http://47.94.101.239:9004/#/manyServiceResult"
;
public
final
static
String
MULTI_WEB_SOP
=
"http://47.94.101.239:9004/#/manySop"
;
public
final
static
String
WEB_SOP_DETAIL
=
"http://47.94.101.239:9004/#/sopdetail"
;
public
final
static
String
WEB_ZHI_SHI
=
"http://47.94.101.239:9004/#/detail"
;
public
static
final
boolean
IS_DEBUG
=
true
;
//
public static final int LOG_LEVEL = LogUtils.LEVEL_ALL;
//
public static final String ENVIROMENT = "debug";
//
public static final String BASE_URL = "http://47.94.101.239:3112";
//
public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply";
//
public final static String WEB_SOP = "http://47.94.101.239:9004/#/sop";
//
public final static String CHECK_MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manyServiceResult";
//
public final static String MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manySop";
//
public final static String WEB_SOP_DETAIL = "http://47.94.101.239:9004/#/sopdetail";
//
public final static String WEB_ZHI_SHI = "http://47.94.101.239:9004/#/detail";
//
public static final boolean IS_DEBUG = true;
/**
* uat环境配置.
...
...
@@ -40,16 +40,16 @@ public class Constants {
/**
* 正式环境.
*/
//
public static final String ENVIROMENT = "release";
//
public static final int LOG_LEVEL = LogUtils.LEVEL_ALL;
//
public static final String BASE_URL = "https://mobile.kf.ai";
//
public final static String UP_PHOTO = "/file/uploadMore?targetPath=online/sp/mobile/android/business/checkApply";
//
public final static String WEB_SOP = "https://sop.kf.ai/#/sop";
//
public final static String WEB_SOP_DETAIL = "https://sop.kf.ai/#/sopdetail";
//
public final static String WEB_ZHI_SHI = "https://sop.kf.ai/#/detail";
//
public final static String CHECK_MULTI_WEB_SOP = "https://sop.kf.ai/#/manyServiceResult";
//
public final static String MULTI_WEB_SOP = "https://sop.kf.ai/#/manySop";
//
public static final boolean IS_DEBUG = false;
public
static
final
String
ENVIROMENT
=
"release"
;
public
static
final
int
LOG_LEVEL
=
LogUtils
.
LEVEL_ALL
;
public
static
final
String
BASE_URL
=
"https://mobile.kf.ai"
;
public
final
static
String
UP_PHOTO
=
"/file/uploadMore?targetPath=online/sp/mobile/android/business/checkApply"
;
public
final
static
String
WEB_SOP
=
"https://sop.kf.ai/#/sop"
;
public
final
static
String
WEB_SOP_DETAIL
=
"https://sop.kf.ai/#/sopdetail"
;
public
final
static
String
WEB_ZHI_SHI
=
"https://sop.kf.ai/#/detail"
;
public
final
static
String
CHECK_MULTI_WEB_SOP
=
"https://sop.kf.ai/#/manyServiceResult"
;
public
final
static
String
MULTI_WEB_SOP
=
"https://sop.kf.ai/#/manySop"
;
public
static
final
boolean
IS_DEBUG
=
false
;
/**
* 演示环境
...
...
baseSDK/src/main/res/values/strings.xml
View file @
0fe74658
...
...
@@ -352,7 +352,6 @@
<string
name=
"click_and_signature"
>
点击此处让客户去签名
</string>
<!--消息-->
<string
name=
"message_system"
>
系统通知
</string>
<string
name=
"message_dayu"
>
大鱼通知
</string>
...
...
@@ -457,7 +456,15 @@
<string
name=
"certificaiton_notice"
>
 
1.
    
请摘下帽子口罩,不要遮挡面部\n
2.
    
保证光线充足,保持水平拍摄\n
3.
    
镜头对准您的脸,按提示操作\n
</string>
<string
name=
"cert_name_identity_not_match"
>
身份证号码与姓名不匹配
</string>
<string
name=
"cert_no_identity_record"
>
没有此身份证号码的记录
</string>
<string
name=
"cert_error_name"
>
姓名位数或编码有误
</string>
<string
name=
"cert_invalid_identity"
>
身份证号码无效
</string>
<string
name=
"cert_error_data"
>
数据源错误,请联系客服
</string>
<string
name=
"cert_pic_low_quality"
>
校验图像质量低于阈值
</string>
<string
name=
"cert_pic_big"
>
上传的图像太大
</string>
<string
name=
"cert_multi_face"
>
图像中发现有多张脸
</string>
<string
name=
"crt_no_face"
>
没有识别出人脸
</string>
<!--error-->
<string
name=
"not_show"
>
not_show
</string>
...
...
orderCenter/src/main/java/com/dayu/order/api/protocol/OrderDetail.java
View file @
0fe74658
...
...
@@ -69,7 +69,7 @@ public class OrderDetail implements Serializable {
private
int
spuId
;
private
Integer
anyContacts
;
private
Integer
kaCompanyId
;
private
Integer
createdSource
;
//1.
服务商自己填写的工单2.厂商系统派3.ka系统4.多任务
private
Integer
createdSource
;
//1.
自建单2.厂商系统派3.ka系统4.多任务5,sp的eu报修
private
List
<
accessories
>
accessories
;
private
List
<
Spu
>
spus
;
private
Integer
needEsignature
;
//1:需要2:不需要.
...
...
orderCenter/src/main/java/com/dayu/order/presenter/multipleprocess/MultipleProcessPresenter.java
View file @
0fe74658
...
...
@@ -69,7 +69,7 @@ public class MultipleProcessPresenter extends MultipleProcessContract.Presenter
public
void
process
()
{
File
file
=
new
File
(
SignatureActivity
.
path
);
if
(
mNeedEsignature
==
1
&&
!
file
.
exists
())
{
if
(
mNeedEsignature
!=
null
&&
mNeedEsignature
==
1
&&
!
file
.
exists
())
{
ToastUtils
.
showShortToast
(
R
.
string
.
signature_name
);
return
;
}
...
...
@@ -96,7 +96,7 @@ public class MultipleProcessPresenter extends MultipleProcessContract.Presenter
parts
=
packPhoto
(
imageUrl
);
mView
.
showDialog
();
BaseApiFactory
.
uploadPhoto
(
parts
).
subscribe
(
baseObserver
(
list
->
{
if
(
mNeedEsignature
==
1
)
{
if
(
mNeedEsignature
!=
null
&&
mNeedEsignature
==
1
)
{
mView
.
showDialog
();
File
file
=
new
File
(
SignatureActivity
.
path
);
RequestBody
requestFile
=
RequestBody
.
create
(
MediaType
.
parse
(
"multipart/form-data"
),
file
);
...
...
@@ -112,7 +112,7 @@ public class MultipleProcessPresenter extends MultipleProcessContract.Presenter
}
}));
}
else
{
if
(
mNeedEsignature
==
1
)
{
if
(
mNeedEsignature
!=
null
&&
mNeedEsignature
==
1
)
{
mView
.
showDialog
();
File
file
=
new
File
(
SignatureActivity
.
path
);
RequestBody
requestFile
=
RequestBody
.
create
(
MediaType
.
parse
(
"multipart/form-data"
),
file
);
...
...
@@ -191,7 +191,7 @@ public class MultipleProcessPresenter extends MultipleProcessContract.Presenter
}
mView
.
setRepairType
();
mNeedEsignature
=
detail
.
getNeedEsignature
();
if
(
mNeedEsignature
==
1
)
{
if
(
mNeedEsignature
!=
null
&&
mNeedEsignature
==
1
)
{
mView
.
showSignature
();
}
Integer
isPay
=
detail
.
getIsPay
();
...
...
orderCenter/src/main/java/com/dayu/order/presenter/orderliveness/OrderLivenessPresenter.java
View file @
0fe74658
...
...
@@ -104,6 +104,24 @@ public class OrderLivenessPresenter extends OrderLivenessContract.Presenter {
ToastUtils
.
showShortToast
(
R
.
string
.
server_error
);
}
else
if
(
"DETECT_ERROR00005"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
please_upload_identity_front
);
}
else
if
(
"ID_NUMBER_NAME_NOT_MATCH"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_name_identity_not_match
);
}
else
if
(
"NO_SUCH_ID_NUMBER"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_no_identity_record
);
}
else
if
(
"INVALID_NAME_FORMAT"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_error_name
);
}
else
if
(
"INVALID_IDCARD_NUMBER"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_invalid_identity
);
}
else
if
(
"DATA_SOURCE_ERROR"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_error_data
);
}
else
if
(
"LOW_QUALITY"
.
equals
(
responeThrowable
.
subCode
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_pic_low_quality
);
}
else
if
((
responeThrowable
.
subCode
).
startsWith
(
"INVALID_IMAGE_SIZE"
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_pic_big
);
}
else
if
((
responeThrowable
.
subCode
).
startsWith
(
"MULTIPLE_FACES"
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
cert_multi_face
);
}
else
if
((
responeThrowable
.
subCode
).
startsWith
(
"NO_FACE_FOUND"
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
crt_no_face
);
}
else
{
ToastUtils
.
showShortToast
(
R
.
string
.
certification_not_pass
);
}
...
...
orderCenter/src/main/res/layout/liveness_layout.xml
0 → 100644
View file @
0fe74658
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<RelativeLayout
android:id=
"@+id/liveness_layout_rootRel"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<TextureView
android:id=
"@+id/liveness_layout_textureview"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
/>
<com.megvii.idcardlib.view.AutoRatioImageview
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:src=
"@drawable/liveness_layout_camera_mask"
/>
<com.megvii.idcardlib.FaceMask
android:id=
"@+id/liveness_layout_facemask"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:visibility=
"gone"
/>
<com.megvii.idcardlib.view.AutoRatioImageview
android:id=
"@+id/liveness_layout_head_mask"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_centerHorizontal=
"true"
android:src=
"@drawable/liveness_layout_head_mask"
/>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_below=
"@id/liveness_layout_head_mask"
android:background=
"#F6F5F4"
>
<include
android:id=
"@+id/activity_main_bottomTitle"
layout=
"@layout/bottom_title_layout"
android:layout_width=
"match_parent"
android:layout_height=
"40dip"
android:layout_alignParentBottom=
"true"
android:visibility=
"gone"
/>
<include
android:id=
"@+id/liveness_layout_first_layout"
layout=
"@layout/liveness_detection_step"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_above=
"@+id/activity_main_bottomTitle"
android:layout_marginBottom=
"15dip"
android:layout_marginTop=
"15dip"
android:visibility=
"invisible"
/>
<include
android:id=
"@+id/liveness_layout_second_layout"
layout=
"@layout/liveness_detection_step"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_above=
"@+id/activity_main_bottomTitle"
android:layout_marginBottom=
"15dip"
android:layout_marginTop=
"15dip"
android:visibility=
"gone"
/>
<LinearLayout
android:id=
"@+id/liveness_layout_bottom_tips_head"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_above=
"@+id/activity_main_bottomTitle"
android:layout_centerHorizontal=
"true"
android:gravity=
"center"
android:orientation=
"vertical"
android:visibility=
"visible"
>
<TextView
android:id=
"@+id/liveness_layout_promptText"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"5dip"
android:text=
"@string/meglive_prompt"
android:textColor=
"#00ACDF"
android:textSize=
"16dp"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"8dip"
android:src=
"@drawable/liveness_phoneimage"
/>
</LinearLayout>
<RelativeLayout
android:id=
"@+id/detection_step_timeoutRel"
android:layout_width=
"35dip"
android:layout_height=
"35dip"
android:layout_alignParentRight=
"true"
android:layout_margin=
"5dip"
android:visibility=
"invisible"
>
<TextView
android:id=
"@+id/detection_step_timeout_garden"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:text=
"10"
android:textColor=
"#00BEE2"
android:textSize=
"20sp"
/>
<com.megvii.idcardlib.view.CircleProgressBar
android:id=
"@+id/detection_step_timeout_progressBar"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_centerInParent=
"true"
/>
</RelativeLayout>
</RelativeLayout>
<ImageView
android:layout_width=
"70dp"
android:layout_height=
"70dp"
android:layout_alignParentRight=
"true"
android:layout_alignParentTop=
"true"
android:layout_marginRight=
"20dp"
android:scaleType=
"centerInside"
android:src=
"@drawable/liveness_faceppinside"
android:visibility=
"gone"
/>
<ProgressBar
android:id=
"@+id/liveness_layout_progressbar"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:visibility=
"invisible"
/>
</RelativeLayout>
</layout>
\ No newline at end of file
userCenter/src/main/java/com/dayu/usercenter/presenter/login/LoginContract.java
View file @
0fe74658
...
...
@@ -3,6 +3,7 @@ package com.dayu.usercenter.presenter.login;
import
com.dayu.base.ui.presenter.BasePresenter
;
import
com.dayu.common.BaseView
;
import
com.dayu.event.UserInfo
;
import
com.dayu.widgets.listener.OnCloseListener
;
...
...
@@ -40,6 +41,11 @@ public interface LoginContract {
public
abstract
void
login
();
/**
* 跳转到主界面并保存用户信息.
*/
public
abstract
void
dumpAndSave
(
UserInfo
info
);
/**
* 跳转到用户须知.
*/
public
abstract
void
dumpAgreement
();
...
...
@@ -52,13 +58,5 @@ public interface LoginContract {
*/
public
abstract
void
loginHx
(
String
hxAccount
,
String
hxPwd
);
/**
* 跳转到主界面.
*
*/
public
abstract
void
dump
();
public
abstract
void
getUserInfo
(
int
accountId
);
}
}
userCenter/src/main/java/com/dayu/usercenter/presenter/login/LoginPresenter.java
View file @
0fe74658
...
...
@@ -5,13 +5,13 @@ import android.text.TextUtils;
import
com.alibaba.android.arouter.launcher.ARouter
;
import
com.dayu.common.BaseApplication
;
import
com.dayu.event.UserInfo
;
import
com.dayu.provider.router.RouterPath
;
import
com.dayu.usercenter.R
;
import
com.dayu.usercenter.api.UserApiFactory
;
import
com.dayu.usercenter.ui.activity.AgreementActivity
;
import
com.dayu.usercenter.ui.activity.IdentityCertificationActivity
;
import
com.dayu.utils.LogUtils
;
import
com.dayu.utils.SPUtils
;
import
com.dayu.utils.ToastUtils
;
import
com.dayu.utils.UIUtils
;
import
com.dayu.utils.UserManager
;
...
...
@@ -72,9 +72,7 @@ public class LoginPresenter extends LoginContract.Presenter {
UserApiFactory
.
login
(
userName
.
get
(),
password
.
get
()).
subscribe
(
baseObserver
(
userInfo
->
{
if
(
userInfo
.
getDetectStatus
()
==
1
)
{
loginHx
(
userInfo
.
getHxAccount
(),
userInfo
.
getHxPwd
());
UserManager
.
getInstance
().
saveUser
(
userInfo
);
mView
.
showDialog
();
getUserInfo
(
Integer
.
parseInt
(
userInfo
.
getAccountId
()));
dumpAndSave
(
userInfo
);
}
else
if
(
userInfo
.
getDetectStatus
()
==
2
||
userInfo
.
getDetectStatus
()
==
3
)
{
showLoginDialog
();
UserManager
.
getInstance
().
saveUser
(
userInfo
);
...
...
@@ -106,6 +104,12 @@ public class LoginPresenter extends LoginContract.Presenter {
}
}
@Override
public
void
dumpAndSave
(
UserInfo
info
)
{
UserManager
.
getInstance
().
saveUser
(
info
);
ARouter
.
getInstance
().
build
(
RouterPath
.
PATH_MAIN
).
navigation
();
}
private
void
showLoginDialog
()
{
mView
.
showLoginDialog
((
dialog
,
confirm
)
->
{
if
(
confirm
)
{
...
...
@@ -115,19 +119,6 @@ public class LoginPresenter extends LoginContract.Presenter {
}
@Override
public
void
dump
()
{
ARouter
.
getInstance
().
build
(
RouterPath
.
PATH_MAIN
).
navigation
();
}
@Override
public
void
getUserInfo
(
int
accountId
)
{
UserApiFactory
.
getEngineerInfo
(
accountId
).
subscribe
(
baseObserver
(
engineerInfo
->
{
SPUtils
.
put
(
"USER_IDENTITY"
,
engineerInfo
.
getIdentity
());
dump
();
}));
}
@Override
public
void
dumpAgreement
()
{
mView
.
startActivity
(
AgreementActivity
.
class
);
MobclickAgent
.
onEvent
(
BaseApplication
.
getContext
(),
"customer_agreement"
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment