Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
R
RvApp
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lify
RvApp
Commits
71275687
Commit
71275687
authored
Jun 13, 2019
by
youjj
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
40cd2a05
46c5bda4
Changes
30
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
30 changed files
with
2102 additions
and
209 deletions
+2102
-209
AndroidManifest.xml
RvClient/src/main/AndroidManifest.xml
+16
-0
ApiConfig.java
RvHome/src/main/java/com/rv/home/rv/module/ApiConfig.java
+2
-0
AllOrderFragment.java
...v/home/rv/module/ui/main/home/order/AllOrderFragment.java
+144
-3
CompletedFragment.java
.../home/rv/module/ui/main/home/order/CompletedFragment.java
+6
-4
EvaluationActivity.java
...home/rv/module/ui/main/home/order/EvaluationActivity.java
+15
-2
ForPaymentFragment.java
...home/rv/module/ui/main/home/order/ForPaymentFragment.java
+2
-2
GetOnTheCarQRCodeActivity.java
.../module/ui/main/home/order/GetOnTheCarQRCodeActivity.java
+212
-0
HaveToTravelFragment.java
...me/rv/module/ui/main/home/order/HaveToTravelFragment.java
+13
-2
OrderDetailActivity.java
...ome/rv/module/ui/main/home/order/OrderDetailActivity.java
+17
-10
PickUpTheCarQRCodeActivity.java
...module/ui/main/home/order/PickUpTheCarQRCodeActivity.java
+225
-0
ToTravelFragment.java
...v/home/rv/module/ui/main/home/order/ToTravelFragment.java
+16
-2
TravelOrderDetailsActivity.java
...module/ui/main/home/order/TravelOrderDetailsActivity.java
+22
-15
OrderListBean.java
...home/rv/module/ui/main/home/order/bean/OrderListBean.java
+4
-3
shape_rv_bg_purple.xml
RvHome/src/main/res/drawable/shape_rv_bg_purple.xml
+5
-0
activity_get_on_the_car_qrcode.xml
...me/src/main/res/layout/activity_get_on_the_car_qrcode.xml
+223
-0
activity_pick_up_the_car_qrcode.xml
...e/src/main/res/layout/activity_pick_up_the_car_qrcode.xml
+238
-0
rv_act_evaluation.xml
RvHome/src/main/res/layout/rv_act_evaluation.xml
+4
-2
rv_item_order_for_payment.xml
RvHome/src/main/res/layout/rv_item_order_for_payment.xml
+115
-96
rv_item_order_to_travel.xml
RvHome/src/main/res/layout/rv_item_order_to_travel.xml
+74
-58
AndroidManifest.xml
RvMine/src/main/AndroidManifest.xml
+0
-1
MineActivity.java
RvMine/src/main/java/com/rv/rvmine/MineActivity.java
+83
-7
UserInfo.java
RvMine/src/main/java/com/rv/rvmine/bean/UserInfo.java
+189
-0
IDCardCertificationActivity.java
...a/com/rv/rvmine/personal/IDCardCertificationActivity.java
+323
-1
SuccessfulCertificationActivity.java
...m/rv/rvmine/personal/SuccessfulCertificationActivity.java
+52
-0
UserInfoEvent.java
...src/main/java/com/rv/rvmine/rxbusevent/UserInfoEvent.java
+6
-0
PersonalInformationActivity.java
...a/com/rv/rvmine/traveler/PersonalInformationActivity.java
+37
-0
activity_idcard_certification.xml
RvMine/src/main/res/layout/activity_idcard_certification.xml
+2
-1
activity_personal_information.xml
RvMine/src/main/res/layout/activity_personal_information.xml
+21
-0
activity_successful_certification.xml
...src/main/res/layout/activity_successful_certification.xml
+34
-0
colors.xml
RvWrapper/src/main/res/values/colors.xml
+2
-0
No files found.
RvClient/src/main/AndroidManifest.xml
View file @
71275687
...
...
@@ -260,6 +260,12 @@
android:name=
"com.rv.home.rv.module.ui.main.home.CarDetailMapActivity"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
"com.rv.home.rv.module.ui.main.home.order.PickUpTheCarQRCodeActivity"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
"com.rv.home.rv.module.ui.main.home.order.GetOnTheCarQRCodeActivity"
android:screenOrientation=
"portrait"
/>
<!--=================================================================-->
<!-- 旅行模块 -->
...
...
@@ -378,6 +384,16 @@
<activity
android:name=
"com.rv.home.rv.module.ui.main.home.order.TravelOrderDetailsActivity"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
/>
<!--个人资料-->
<activity
android:name=
"com.rv.rvmine.traveler.PersonalInformationActivity"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
/>
<!--认证成功-->
<activity
android:name=
"com.rv.rvmine.personal.SuccessfulCertificationActivity"
android:launchMode=
"singleTask"
android:screenOrientation=
"portrait"
/>
<!--=================================================================-->
...
...
RvHome/src/main/java/com/rv/home/rv/module/ApiConfig.java
View file @
71275687
...
...
@@ -42,6 +42,8 @@ public class ApiConfig {
public
static
String
HTTP_URL_BASEORDER_CANCEL
=
RvFrameConfig
.
VEHICLE_ORDER
+
"baseOrder/cancel/"
;
//重置密码
public
static
String
HTTP_URL_CAR_TYPE_TRAVELORDERDETAIL
=
RvFrameConfig
.
HOST
+
"/h5/appHtml/view/travelOrderDetail.html"
;
//旅游订单详情页
public
static
String
HTTP_URL_CAR_TYPE_COSTDETAIL
=
RvFrameConfig
.
HOST
+
"/h5/appHtml/view/costDetail.html"
;
//费用明细
public
static
String
HTTP_URL_APP_USER_INFO
=
RvFrameConfig
.
ADMIN_POST
+
"app/user/info"
;
//获取用户信息
public
static
String
HTTP_URL_CERTIFICATE
=
RvFrameConfig
.
VEHICLE_UPLOAD
+
"certif/app/Certificate"
;
//实名认证
}
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/AllOrderFragment.java
View file @
71275687
...
...
@@ -11,14 +11,20 @@ import com.chad.library.adapter.base.entity.MultiItemEntity;
import
com.frame.rv.config.RvFrameConfig
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.base.BaseFragment
;
import
com.ruiwenliu.wrapper.util.ViewHolder
;
import
com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshLayout
;
import
com.ruiwenliu.wrapper.weight.refresh.SimpleRefreshView
;
import
com.rv.home.R
;
import
com.rv.home.R2
;
import
com.rv.home.rv.module.ApiConfig
;
import
com.rv.home.rv.module.basic.presenter.CommonPresenter
;
import
com.rv.home.rv.module.ui.main.home.bean.OrderPayBean
;
import
com.rv.home.rv.module.ui.main.home.dialog.PaymentTypeSelection
;
import
com.rv.home.rv.module.ui.main.home.order.adapter.OrderListAdapter
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
com.tencent.mm.opensdk.modelpay.PayReq
;
import
com.tencent.mm.opensdk.openapi.IWXAPI
;
import
com.tencent.mm.opensdk.openapi.WXAPIFactory
;
import
com.yuyife.okgo.OkGoUtil
;
import
java.util.ArrayList
;
...
...
@@ -42,6 +48,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
OrderListAdapter
mAdapter
;
private
int
mPage
;
private
int
countPage
;
private
IWXAPI
api
;
public
static
AllOrderFragment
getInstance
(
int
type
)
{
Bundle
bundl
=
new
Bundle
();
...
...
@@ -58,7 +65,7 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
@Override
protected
void
initView
(
Bundle
savedInstanceState
)
{
api
=
WXAPIFactory
.
createWXAPI
(
_mActivity
,
RvFrameConfig
.
APP_ID
);
recyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
_mActivity
));
mAdapter
=
new
OrderListAdapter
(
new
ArrayList
<
MultiItemEntity
>());
mAdapter
.
setOnLoadMoreListener
(
this
,
recyclerView
);
...
...
@@ -71,12 +78,47 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
if
(
1
==
dataBean
.
getType
())
{
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getOrderAmount
(),
dataBean
.
getType
()
),
1
);
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
),
1
);
}
else
if
(
2
==
dataBean
.
getType
()){
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getType
()
),
2
);
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
),
2
);
}
}
});
mAdapter
.
setOnItemChildClickListener
(
new
BaseQuickAdapter
.
OnItemChildClickListener
()
{
@Override
public
void
onItemChildClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
int
id
=
view
.
getId
();
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
// 0–删除 1–创建订单 2–取消 3–待付款 4–待出行 5–出行中(进行中) 6–已完成
switch
(
dataBean
.
getStatusX
()){
case
3
:
if
(
id
==
R
.
id
.
tv_process
){
payShowSelect
(
dataBean
.
getNo
(),
dataBean
.
getOrderAmount
());
}
else
if
(
id
==
R
.
id
.
tv_camp_process
){
payShowSelect
(
dataBean
.
getNo
(),
dataBean
.
getOrderAmount
());
}
break
;
case
4
:
if
(
id
==
R
.
id
.
tv_process
){
startActivity
(
PickUpTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
else
if
(
id
==
R
.
id
.
tv_camp_process
){
startActivity
(
GetOnTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
break
;
case
5
:
if
(
id
==
R
.
id
.
tv_process
){
}
else
if
(
id
==
R
.
id
.
tv_camp_process
){
startActivity
(
GetOnTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
break
;
case
6
:
break
;
}
}
});
}
@Override
...
...
@@ -90,6 +132,9 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
case
0
:
processData
((
OrderListBean
)
result
);
break
;
case
1
:
pay
((
OrderPayBean
)
result
);
break
;
}
}
...
...
@@ -150,5 +195,101 @@ public class AllOrderFragment extends BaseFragment<CommonPresenter> implements B
}
/**
* 支付类型选择
*/
private
void
payShowSelect
(
final
String
no
,
final
double
orderAmount
)
{
PaymentTypeSelection
dialog
=
new
PaymentTypeSelection
(
_mActivity
)
{
@Override
public
void
helper
(
final
ViewHolder
helper
)
{
super
.
helper
(
helper
);
helper
.
setText
(
R
.
id
.
tv_amount
,
String
.
format
(
"¥%1$s"
,
orderAmount
));
helper
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
int
id
=
v
.
getId
();
if
(
id
==
R
.
id
.
iv_close
){
dismiss
();
}
else
if
(
id
==
R
.
id
.
ll_item_wechat
){
helper
.
setChecked
(
R
.
id
.
rb_wechat
,
true
);
helper
.
setChecked
(
R
.
id
.
rb_alipay
,
false
);
}
else
if
(
id
==
R
.
id
.
ll_item_alipay
){
showToast
(
"该功能还没有开通!"
);
}
else
if
(
id
==
R
.
id
.
tv_pay_immediately
){
dismiss
();
createOrder
(
no
,
1
,
1
);
}
}
},
R
.
id
.
iv_close
,
R
.
id
.
ll_item_wechat
,
R
.
id
.
ll_item_alipay
,
R
.
id
.
tv_pay_immediately
);
}
};
dialog
.
setCanceledOnTouchOutside
(
false
);
dialog
.
show
();
}
private
void
createOrder
(
String
orderNo
,
int
payWay
,
int
type
)
{
Map
<
String
,
Object
>
headMap
=
new
LinkedHashMap
<>();
headMap
.
put
(
"Authorization"
,
OkGoUtil
.
getToken
());
mPresenter
.
postBodyData
(
RvFrameConfig
.
VEHICLE_ORDER
,
1
,
ApiConfig
.
HTTP_URL_PAY_THE_CALLBACK
,
OrderPayBean
.
class
,
new
payBody
(
orderNo
,
payWay
,
type
),
headMap
,
true
);
}
public
class
payBody
{
private
String
orderNo
;
private
int
payWay
;
private
int
type
;
public
payBody
(
String
orderNo
,
int
payWay
,
int
type
)
{
this
.
orderNo
=
orderNo
;
this
.
payWay
=
payWay
;
this
.
type
=
type
;
}
public
String
getOrderNo
()
{
return
orderNo
;
}
public
void
setOrderNo
(
String
orderNo
)
{
this
.
orderNo
=
orderNo
;
}
public
int
getPayWay
()
{
return
payWay
;
}
public
void
setPayWay
(
int
payWay
)
{
this
.
payWay
=
payWay
;
}
public
int
getType
()
{
return
type
;
}
public
void
setType
(
int
type
)
{
this
.
type
=
type
;
}
}
private
void
pay
(
OrderPayBean
data
)
{
try
{
PayReq
req
=
new
PayReq
();
req
.
appId
=
data
.
getData
().
getAppid
();
req
.
partnerId
=
data
.
getData
().
getPartnerid
();
req
.
prepayId
=
data
.
getData
().
getPrepayid
();
req
.
nonceStr
=
data
.
getData
().
getNoncestr
();
req
.
timeStamp
=
data
.
getData
().
getTimestamp
();
req
.
packageValue
=
data
.
getData
().
getPackageX
();
req
.
sign
=
data
.
getData
().
getSign
();
req
.
extData
=
"app data"
;
// optional
api
.
sendReq
(
req
);
}
catch
(
Exception
e
)
{
showToast
(
"异常"
);
}
}
}
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/CompletedFragment.java
View file @
71275687
...
...
@@ -69,10 +69,12 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
mAdapter
.
setOnItemChildClickListener
(
new
BaseQuickAdapter
.
OnItemChildClickListener
()
{
@Override
public
void
onItemChildClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
int
i
=
view
.
getId
();
if
(
i
==
R
.
id
.
tv_process
)
{
startActivityForResult
(
EvaluationActivity
.
getIntent
(
_mActivity
),
TYPE_REQUEST_EVALUATION
);
startActivityForResult
(
EvaluationActivity
.
getIntent
(
_mActivity
,
dataBean
),
TYPE_REQUEST_EVALUATION
);
}
else
if
(
i
==
R
.
id
.
tv_camp_process
){
startActivityForResult
(
EvaluationActivity
.
getIntent
(
_mActivity
,
dataBean
),
TYPE_REQUEST_EVALUATION
);
}
}
});
...
...
@@ -82,9 +84,9 @@ public class CompletedFragment extends BaseFragment<CommonPresenter>implements B
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
if
(
1
==
dataBean
.
getType
())
{
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getOrderAmount
(),
dataBean
.
getType
()
),
1
);
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
),
1
);
}
else
if
(
2
==
dataBean
.
getType
()){
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getType
()
),
2
);
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
),
2
);
}
}
});
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/EvaluationActivity.java
View file @
71275687
...
...
@@ -17,7 +17,9 @@ import android.widget.TextView;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.frame.rv.config.RvFrameConfig
;
import
com.frame.base.glide.GlideManager
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.util.TimeManager
;
import
com.ruiwenliu.wrapper.util.listener.TextChangedListener
;
import
com.rv.home.R
;
import
com.rv.home.R2
;
...
...
@@ -30,6 +32,7 @@ import com.rv.home.rv.module.basic.dialog.PickerDialog;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.home.rv.module.ui.main.home.bean.ImageUploadBean
;
import
com.rv.home.rv.module.ui.main.home.order.adapter.EvaluationAdapter
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
java.io.File
;
import
java.util.ArrayList
;
...
...
@@ -72,9 +75,11 @@ public class EvaluationActivity extends BaseStatusActivity<PickerPresenter> {
private
EvaluationAdapter
mAdapter
;
private
List
<
String
>
listImg
;
private
OrderListBean
.
DataBeanX
.
DataBean
dataBean
;
public
static
Intent
getIntent
(
Context
context
)
{
return
new
Intent
(
context
,
EvaluationActivity
.
class
);
public
static
Intent
getIntent
(
Context
context
,
OrderListBean
.
DataBeanX
.
DataBean
dataBean
)
{
return
new
Intent
(
context
,
EvaluationActivity
.
class
)
.
putExtra
(
"dataBean"
,
dataBean
);
}
...
...
@@ -91,6 +96,14 @@ public class EvaluationActivity extends BaseStatusActivity<PickerPresenter> {
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
titleView
.
setTitle
(
mActivity
.
getString
(
R
.
string
.
rv_to_appointment_evaluation
));
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
intent
.
getSerializableExtra
(
"dataBean"
);
if
(
dataBean
!=
null
){
tvName
.
setText
(
dataBean
.
getName
());
GlideManager
.
getInstance
(
mActivity
).
loadImage
(
dataBean
.
getPicture
(),
ivCar
);
}
intiEt
();
listImg
=
new
ArrayList
<>();
mAdapter
=
new
EvaluationAdapter
();
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/ForPaymentFragment.java
View file @
71275687
...
...
@@ -79,9 +79,9 @@ public class ForPaymentFragment extends BaseFragment<CommonPresenter> implements
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
if
(
1
==
dataBean
.
getType
())
{
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getOrderAmount
(),
dataBean
.
getType
()
),
1
);
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
),
1
);
}
else
if
(
2
==
dataBean
.
getType
()){
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getType
()
),
2
);
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
),
2
);
}
}
});
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/GetOnTheCarQRCodeActivity.java
0 → 100644
View file @
71275687
package
com
.
rv
.
home
.
rv
.
module
.
ui
.
main
.
home
.
order
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.graphics.Bitmap
;
import
android.graphics.BitmapFactory
;
import
android.graphics.Canvas
;
import
android.os.Bundle
;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.TextView
;
import
com.frame.base.glide.GlideManager
;
import
com.google.zxing.BarcodeFormat
;
import
com.google.zxing.EncodeHintType
;
import
com.google.zxing.WriterException
;
import
com.google.zxing.common.BitMatrix
;
import
com.google.zxing.qrcode.QRCodeWriter
;
import
com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.util.TimeManager
;
import
com.ruiwenliu.wrapper.weight.TitleView
;
import
com.rv.home.R
;
import
com.rv.home.R2
;
import
com.rv.home.rv.module.basic.BaseStatusActivity
;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
java.util.HashMap
;
import
java.util.Map
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
/**
* 出示上车二维码
*/
public
class
GetOnTheCarQRCodeActivity
extends
BaseStatusActivity
<
PickerPresenter
>
{
@BindView
(
R2
.
id
.
iv_zxing
)
ImageView
ivZxing
;
@BindView
(
R2
.
id
.
iv_back
)
ImageView
ivBack
;
@BindView
(
R2
.
id
.
tv_center
)
TextView
tvCenter
;
@BindView
(
R2
.
id
.
iv_customer_service
)
TextView
ivCustomerService
;
@BindView
(
R2
.
id
.
iv_goods
)
ImageView
ivGoods
;
@BindView
(
R2
.
id
.
tv_car_type
)
TextView
tvCarType
;
@BindView
(
R2
.
id
.
tv_get_time
)
TextView
tvGetTime
;
@BindView
(
R2
.
id
.
tv_out_address
)
TextView
tvOutAddress
;
@BindView
(
R2
.
id
.
tv_get_address
)
TextView
tvGetAddress
;
private
OrderListBean
.
DataBeanX
.
DataBean
dataBean
;
public
static
Intent
getIntent
(
Context
context
,
OrderListBean
.
DataBeanX
.
DataBean
dataBean
)
{
return
new
Intent
(
context
,
GetOnTheCarQRCodeActivity
.
class
)
.
putExtra
(
"dataBean"
,
dataBean
);
}
@Override
protected
int
setLayout
()
{
return
R
.
layout
.
activity_get_on_the_car_qrcode
;
}
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
showTitle
(
false
);
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
intent
.
getSerializableExtra
(
"dataBean"
);
if
(
dataBean
!=
null
)
{
tvCarType
.
setText
(
dataBean
.
getName
());
OrderListBean
.
DataBeanX
.
DataBean
.
OrderTourDetail
detail
=
dataBean
.
getOrderTourDetail
();
if
(
detail
!=
null
)
{
tvGetTime
.
setText
(
TimeManager
.
stampToDate
(
String
.
valueOf
(
detail
.
getStartTime
()))+
"-"
+
TimeManager
.
stampToDate
(
String
.
valueOf
(
detail
.
getEndTime
())));
tvGetAddress
.
setText
(
detail
.
getStartAddr
());
tvOutAddress
.
setText
(
detail
.
getEndAddr
());
GlideManager
.
getInstance
(
mActivity
).
loadImage
(
dataBean
.
getPicture
(),
ivGoods
);
}
}
//生成带中间图标的二维码
Bitmap
success
=
createQRImage
(
"33333333333333333333333"
,
100
,
100
,
BitmapFactory
.
decodeResource
(
getResources
(),
R
.
mipmap
.
ic_launcher
));
ivZxing
.
setImageBitmap
(
success
);
}
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
}
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
// TODO: add setContentView(...) invocation
ButterKnife
.
bind
(
this
);
}
@OnClick
({
R2
.
id
.
iv_back
,
R2
.
id
.
iv_customer_service
})
public
void
onViewClicked
(
View
view
)
{
int
id
=
view
.
getId
();
if
(
id
==
R
.
id
.
iv_back
)
{
finish
();
}
else
if
(
id
==
R
.
id
.
iv_customer_service
)
{
}
}
public
static
Bitmap
createQRImage
(
String
content
,
int
widthPix
,
int
heightPix
,
Bitmap
logoBm
)
{
try
{
//配置参数
Map
<
EncodeHintType
,
Object
>
hints
=
new
HashMap
<>();
hints
.
put
(
EncodeHintType
.
CHARACTER_SET
,
"utf-8"
);
//容错级别
hints
.
put
(
EncodeHintType
.
ERROR_CORRECTION
,
ErrorCorrectionLevel
.
H
);
//设置空白边距的宽度
hints
.
put
(
EncodeHintType
.
MARGIN
,
1
);
//default is 4
// 图像数据转换,使用了矩阵转换
BitMatrix
bitMatrix
=
null
;
try
{
bitMatrix
=
new
QRCodeWriter
().
encode
(
content
,
BarcodeFormat
.
QR_CODE
,
widthPix
,
heightPix
,
hints
);
}
catch
(
WriterException
e
)
{
e
.
printStackTrace
();
}
int
[]
pixels
=
new
int
[
widthPix
*
heightPix
];
// 下面这里按照二维码的算法,逐个生成二维码的图片,
// 两个for循环是图片横列扫描的结果
for
(
int
y
=
0
;
y
<
heightPix
;
y
++)
{
for
(
int
x
=
0
;
x
<
widthPix
;
x
++)
{
if
(
bitMatrix
.
get
(
x
,
y
))
{
pixels
[
y
*
widthPix
+
x
]
=
0xff000000
;
}
else
{
pixels
[
y
*
widthPix
+
x
]
=
0xffffffff
;
}
}
}
// 生成二维码图片的格式,使用ARGB_8888
Bitmap
bitmap
=
Bitmap
.
createBitmap
(
widthPix
,
heightPix
,
Bitmap
.
Config
.
ARGB_8888
);
bitmap
.
setPixels
(
pixels
,
0
,
widthPix
,
0
,
0
,
widthPix
,
heightPix
);
if
(
logoBm
!=
null
)
{
bitmap
=
Logo
(
bitmap
,
logoBm
);
}
//必须使用compress方法将bitmap保存到文件中再进行读取。直接返回的bitmap是没有任何压缩的,
// 内存消耗巨大!
return
bitmap
;
// return bitmap != null && bitmap.compress(Bitmap.CompressFormat.JPEG, 100);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
private
static
Bitmap
Logo
(
Bitmap
src
,
Bitmap
logo
)
{
if
(
src
==
null
)
{
return
null
;
}
if
(
logo
==
null
)
{
return
src
;
}
//获取图片的宽高
int
srcWidth
=
src
.
getWidth
();
int
srcHeight
=
src
.
getHeight
();
int
logoWidth
=
logo
.
getWidth
();
int
logoHeight
=
logo
.
getHeight
();
if
(
srcWidth
==
0
||
srcHeight
==
0
)
{
return
null
;
}
if
(
logoWidth
==
0
||
logoHeight
==
0
)
{
return
src
;
}
//logo大小为二维码整体大小的1/5
float
scaleFactor
=
srcWidth
*
1.0f
/
5
/
logoWidth
;
Bitmap
bitmap
=
Bitmap
.
createBitmap
(
srcWidth
,
srcHeight
,
Bitmap
.
Config
.
ARGB_8888
);
try
{
Canvas
canvas
=
new
Canvas
(
bitmap
);
canvas
.
drawBitmap
(
src
,
0
,
0
,
null
);
canvas
.
scale
(
scaleFactor
,
scaleFactor
,
srcWidth
/
2
,
srcHeight
/
2
);
canvas
.
drawBitmap
(
logo
,
(
srcWidth
-
logoWidth
)
/
2
,
(
srcHeight
-
logoHeight
)
/
2
,
null
);
canvas
.
save
();
canvas
.
restore
();
}
catch
(
Exception
e
)
{
bitmap
=
null
;
e
.
getStackTrace
();
}
return
bitmap
;
}
}
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/HaveToTravelFragment.java
View file @
71275687
...
...
@@ -69,9 +69,20 @@ public class HaveToTravelFragment extends BaseFragment<CommonPresenter>implement
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
if
(
1
==
dataBean
.
getType
())
{
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getOrderAmount
(),
dataBean
.
getType
()
),
1
);
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
),
1
);
}
else
if
(
2
==
dataBean
.
getType
()){
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getType
()),
2
);
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
),
2
);
}
}
});
mAdapter
.
setOnItemChildClickListener
(
new
BaseQuickAdapter
.
OnItemChildClickListener
()
{
@Override
public
void
onItemChildClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
int
id
=
view
.
getId
();
if
(
id
==
R
.
id
.
tv_process
){
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
startActivity
(
PickUpTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
}
});
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/OrderDetailActivity.java
View file @
71275687
...
...
@@ -27,6 +27,7 @@ import com.rv.home.rv.module.basic.WebActivity;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.home.rv.module.ui.main.home.bean.OrderPayBean
;
import
com.rv.home.rv.module.ui.main.home.dialog.PaymentTypeSelection
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
com.tencent.mm.opensdk.modelpay.PayReq
;
import
com.tencent.mm.opensdk.openapi.IWXAPI
;
import
com.tencent.mm.opensdk.openapi.WXAPIFactory
;
...
...
@@ -42,7 +43,7 @@ import butterknife.OnClick;
import
static
com
.
ruiwenliu
.
wrapper
.
weight
.
webview
.
SafeWebView
.
hasKitkat
;
/**
* 订单详情页
*
租车
订单详情页
* type 0–删除
* 1–创建订单
* 2–取消
...
...
@@ -72,13 +73,11 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
private
final
int
TYPE_REQUEST_EVALUATION
=
1
;
private
IWXAPI
api
;
private
double
orderAmount
;
private
OrderListBean
.
DataBeanX
.
DataBean
dataBean
;
public
static
Intent
getIntent
(
Context
context
,
String
orderId
,
int
status
,
double
orderAmount
,
int
type
)
{
public
static
Intent
getIntent
(
Context
context
,
OrderListBean
.
DataBeanX
.
DataBean
dataBean
)
{
return
new
Intent
(
context
,
OrderDetailActivity
.
class
)
.
putExtra
(
"orderId"
,
orderId
)
.
putExtra
(
"status"
,
status
)
.
putExtra
(
"orderAmount"
,
orderAmount
)
.
putExtra
(
"type"
,
type
);
.
putExtra
(
"dataBean"
,
dataBean
);
}
@Override
...
...
@@ -127,9 +126,13 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
showTitle
(
false
);
api
=
WXAPIFactory
.
createWXAPI
(
mActivity
,
RvFrameConfig
.
APP_ID
);
status
=
intent
.
getIntExtra
(
"status"
,
0
);
no
=
intent
.
getStringExtra
(
"orderId"
);
orderAmount
=
intent
.
getDoubleExtra
(
"orderAmount"
,
0
);
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
intent
.
getSerializableExtra
(
"dataBean"
);
if
(
dataBean
!=
null
){
status
=
dataBean
.
getStatusX
();
no
=
dataBean
.
getNo
();
orderAmount
=
dataBean
.
getOrderAmount
();
}
switch
(
status
)
{
case
3
:
tvCancelOrder
.
setText
(
mActivity
.
getString
(
R
.
string
.
rv_cancel_order
));
...
...
@@ -204,11 +207,13 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
payShowSelect
(
no
,
orderAmount
);
break
;
case
4
:
startActivity
(
PickUpTheCarQRCodeActivity
.
getIntent
(
mActivity
,
dataBean
));
break
;
case
5
:
startActivity
(
PickUpTheCarQRCodeActivity
.
getIntent
(
mActivity
,
dataBean
));
break
;
case
6
:
startActivityForResult
(
EvaluationActivity
.
getIntent
(
mActivity
),
TYPE_REQUEST_EVALUATION
);
startActivityForResult
(
EvaluationActivity
.
getIntent
(
mActivity
,
dataBean
),
TYPE_REQUEST_EVALUATION
);
break
;
}
}
...
...
@@ -220,8 +225,10 @@ public class OrderDetailActivity extends BaseStatusActivity<PickerPresenter> {
startActivityForResult
(
CancelTheTripActivity
.
getIntent
(
mActivity
,
no
),
1
);
break
;
case
5
:
showToast
(
"该功能还在开发中..."
);
break
;
case
6
:
showToast
(
"该功能还在开发中..."
);
break
;
}
}
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/PickUpTheCarQRCodeActivity.java
0 → 100644
View file @
71275687
package
com
.
rv
.
home
.
rv
.
module
.
ui
.
main
.
home
.
order
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.graphics.Bitmap
;
import
android.graphics.BitmapFactory
;
import
android.graphics.Canvas
;
import
android.os.Bundle
;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
com.frame.base.glide.GlideManager
;
import
com.google.zxing.BarcodeFormat
;
import
com.google.zxing.EncodeHintType
;
import
com.google.zxing.WriterException
;
import
com.google.zxing.common.BitMatrix
;
import
com.google.zxing.qrcode.QRCodeWriter
;
import
com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.util.TimeManager
;
import
com.ruiwenliu.wrapper.util.UtilsManager
;
import
com.ruiwenliu.wrapper.weight.TitleView
;
import
com.rv.home.R
;
import
com.rv.home.R2
;
import
com.rv.home.rv.module.basic.BaseStatusActivity
;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
java.util.HashMap
;
import
java.util.Map
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
/**
* 取车二维码
*/
public
class
PickUpTheCarQRCodeActivity
extends
BaseStatusActivity
<
PickerPresenter
>
{
@BindView
(
R2
.
id
.
tv_center
)
TextView
tvCenter
;
@BindView
(
R2
.
id
.
lay_title
)
RelativeLayout
layTitle
;
@BindView
(
R2
.
id
.
iv_goods
)
ImageView
ivGoods
;
@BindView
(
R2
.
id
.
tv_car_type
)
TextView
tvCarType
;
@BindView
(
R2
.
id
.
tv_get_time
)
TextView
tvGetTime
;
@BindView
(
R2
.
id
.
tv_get_address
)
TextView
tvGetAddress
;
@BindView
(
R2
.
id
.
ll_get
)
LinearLayout
llGet
;
@BindView
(
R2
.
id
.
tv_out_time
)
TextView
tvOutTime
;
@BindView
(
R2
.
id
.
tv_out_address
)
TextView
tvOutAddress
;
@BindView
(
R2
.
id
.
ll_out
)
LinearLayout
llOut
;
@BindView
(
R2
.
id
.
tv_price
)
TextView
tvPrice
;
@BindView
(
R2
.
id
.
iv_zxing
)
ImageView
ivZxing
;
private
OrderListBean
.
DataBeanX
.
DataBean
dataBean
;
public
static
Intent
getIntent
(
Context
context
,
OrderListBean
.
DataBeanX
.
DataBean
dataBean
)
{
return
new
Intent
(
context
,
PickUpTheCarQRCodeActivity
.
class
)
.
putExtra
(
"dataBean"
,
dataBean
);
}
@Override
protected
int
setLayout
()
{
return
R
.
layout
.
activity_pick_up_the_car_qrcode
;
}
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
showTitle
(
false
);
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
intent
.
getSerializableExtra
(
"dataBean"
);
if
(
dataBean
!=
null
){
if
(
4
==
dataBean
.
getStatusX
()){
tvCenter
.
setText
(
"出示取车二维码"
);
}
else
if
(
5
==
dataBean
.
getStatusX
()){
tvCenter
.
setText
(
"出示还车二维码"
);
}
tvCarType
.
setText
(
dataBean
.
getName
());
OrderListBean
.
DataBeanX
.
DataBean
.
OrderRentVehicleDetail
detail
=
dataBean
.
getOrderRentVehicleDetail
();
if
(
detail
!=
null
){
tvGetAddress
.
setText
(
detail
.
getStart_addr
());
tvGetTime
.
setText
(
TimeManager
.
stampToDate
(
String
.
valueOf
(
detail
.
getStart_time
())));
tvOutAddress
.
setText
(
detail
.
getEnd_addr
());
tvOutTime
.
setText
(
TimeManager
.
stampToDate
(
String
.
valueOf
(
detail
.
getEnd_time
())));
tvPrice
.
setText
(
String
.
format
(
"¥%1$s"
,
dataBean
.
getOrderAmount
()));
GlideManager
.
getInstance
(
mActivity
).
loadImage
(
dataBean
.
getPicture
(),
ivGoods
);
}
}
//生成带中间图标的二维码
Bitmap
success
=
createQRImage
(
"33333333333333333333333"
,
100
,
100
,
BitmapFactory
.
decodeResource
(
getResources
(),
R
.
mipmap
.
ic_launcher
));
ivZxing
.
setImageBitmap
(
success
);
}
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
}
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
// TODO: add setContentView(...) invocation
ButterKnife
.
bind
(
this
);
}
@OnClick
({
R2
.
id
.
iv_back
,
R2
.
id
.
iv_customer_service
})
public
void
onViewClicked
(
View
view
)
{
int
id
=
view
.
getId
();
if
(
id
==
R
.
id
.
iv_back
)
{
finish
();
}
else
if
(
id
==
R
.
id
.
iv_customer_service
)
{
showToast
(
"该功能还在开发中..."
);
}
}
public
static
Bitmap
createQRImage
(
String
content
,
int
widthPix
,
int
heightPix
,
Bitmap
logoBm
)
{
try
{
//配置参数
Map
<
EncodeHintType
,
Object
>
hints
=
new
HashMap
<>();
hints
.
put
(
EncodeHintType
.
CHARACTER_SET
,
"utf-8"
);
//容错级别
hints
.
put
(
EncodeHintType
.
ERROR_CORRECTION
,
ErrorCorrectionLevel
.
H
);
//设置空白边距的宽度
hints
.
put
(
EncodeHintType
.
MARGIN
,
1
);
//default is 4
// 图像数据转换,使用了矩阵转换
BitMatrix
bitMatrix
=
null
;
try
{
bitMatrix
=
new
QRCodeWriter
().
encode
(
content
,
BarcodeFormat
.
QR_CODE
,
widthPix
,
heightPix
,
hints
);
}
catch
(
WriterException
e
)
{
e
.
printStackTrace
();
}
int
[]
pixels
=
new
int
[
widthPix
*
heightPix
];
// 下面这里按照二维码的算法,逐个生成二维码的图片,
// 两个for循环是图片横列扫描的结果
for
(
int
y
=
0
;
y
<
heightPix
;
y
++)
{
for
(
int
x
=
0
;
x
<
widthPix
;
x
++)
{
if
(
bitMatrix
.
get
(
x
,
y
))
{
pixels
[
y
*
widthPix
+
x
]
=
0xff000000
;
}
else
{
pixels
[
y
*
widthPix
+
x
]
=
0xffffffff
;
}
}
}
// 生成二维码图片的格式,使用ARGB_8888
Bitmap
bitmap
=
Bitmap
.
createBitmap
(
widthPix
,
heightPix
,
Bitmap
.
Config
.
ARGB_8888
);
bitmap
.
setPixels
(
pixels
,
0
,
widthPix
,
0
,
0
,
widthPix
,
heightPix
);
if
(
logoBm
!=
null
)
{
bitmap
=
Logo
(
bitmap
,
logoBm
);
}
//必须使用compress方法将bitmap保存到文件中再进行读取。直接返回的bitmap是没有任何压缩的,
// 内存消耗巨大!
return
bitmap
;
// return bitmap != null && bitmap.compress(Bitmap.CompressFormat.JPEG, 100);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
return
null
;
}
private
static
Bitmap
Logo
(
Bitmap
src
,
Bitmap
logo
)
{
if
(
src
==
null
)
{
return
null
;
}
if
(
logo
==
null
)
{
return
src
;
}
//获取图片的宽高
int
srcWidth
=
src
.
getWidth
();
int
srcHeight
=
src
.
getHeight
();
int
logoWidth
=
logo
.
getWidth
();
int
logoHeight
=
logo
.
getHeight
();
if
(
srcWidth
==
0
||
srcHeight
==
0
)
{
return
null
;
}
if
(
logoWidth
==
0
||
logoHeight
==
0
)
{
return
src
;
}
//logo大小为二维码整体大小的1/5
float
scaleFactor
=
srcWidth
*
1.0f
/
5
/
logoWidth
;
Bitmap
bitmap
=
Bitmap
.
createBitmap
(
srcWidth
,
srcHeight
,
Bitmap
.
Config
.
ARGB_8888
);
try
{
Canvas
canvas
=
new
Canvas
(
bitmap
);
canvas
.
drawBitmap
(
src
,
0
,
0
,
null
);
canvas
.
scale
(
scaleFactor
,
scaleFactor
,
srcWidth
/
2
,
srcHeight
/
2
);
canvas
.
drawBitmap
(
logo
,
(
srcWidth
-
logoWidth
)
/
2
,
(
srcHeight
-
logoHeight
)
/
2
,
null
);
canvas
.
save
();
canvas
.
restore
();
}
catch
(
Exception
e
)
{
bitmap
=
null
;
e
.
getStackTrace
();
}
return
bitmap
;
}
}
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/ToTravelFragment.java
View file @
71275687
...
...
@@ -68,9 +68,23 @@ public class ToTravelFragment extends BaseFragment<CommonPresenter> implements B
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
if
(
1
==
dataBean
.
getType
())
{
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getOrderAmount
(),
dataBean
.
getType
()
),
1
);
startActivityForResult
(
OrderDetailActivity
.
getIntent
(
_mActivity
,
dataBean
),
1
);
}
else
if
(
2
==
dataBean
.
getType
()){
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
.
getNo
(),
dataBean
.
getStatusX
(),
dataBean
.
getType
()),
2
);
startActivityForResult
(
TravelOrderDetailsActivity
.
getIntent
(
_mActivity
,
dataBean
),
2
);
}
}
});
mAdapter
.
setOnItemChildClickListener
(
new
BaseQuickAdapter
.
OnItemChildClickListener
()
{
@Override
public
void
onItemChildClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
int
id
=
view
.
getId
();
if
(
id
==
R
.
id
.
tv_process
){
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
startActivity
(
PickUpTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
else
if
(
id
==
R
.
id
.
tv_camp_process
){
OrderListBean
.
DataBeanX
.
DataBean
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
adapter
.
getItem
(
position
);
startActivity
(
GetOnTheCarQRCodeActivity
.
getIntent
(
_mActivity
,
dataBean
));
}
}
});
...
...
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/TravelOrderDetailsActivity.java
View file @
71275687
...
...
@@ -26,6 +26,7 @@ import com.rv.home.rv.module.ApiConfig;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.home.rv.module.ui.main.home.bean.OrderPayBean
;
import
com.rv.home.rv.module.ui.main.home.dialog.PaymentTypeSelection
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
com.tencent.mm.opensdk.modelpay.PayReq
;
import
com.tencent.mm.opensdk.openapi.IWXAPI
;
import
com.tencent.mm.opensdk.openapi.WXAPIFactory
;
...
...
@@ -46,6 +47,7 @@ import static com.ruiwenliu.wrapper.weight.webview.SafeWebView.hasKitkat;
public
class
TravelOrderDetailsActivity
extends
BaseStatusActivity
<
PickerPresenter
>
{
private
static
final
int
TYPE_REQUEST_EVALUATION
=
102
;
@BindView
(
R2
.
id
.
webView
)
WebView
mWebView
;
@BindView
(
R2
.
id
.
tv_cancel_order
)
...
...
@@ -57,16 +59,15 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
private
String
webUrl
;
private
int
status
;
private
int
type
;
private
String
no
;
private
IWXAPI
api
;
private
double
orderAmount
;
private
OrderListBean
.
DataBeanX
.
DataBean
dataBean
;
public
static
Intent
getIntent
(
Context
context
,
String
orderId
,
int
status
,
int
type
)
{
public
static
Intent
getIntent
(
Context
context
,
OrderListBean
.
DataBeanX
.
DataBean
dataBean
)
{
return
new
Intent
(
context
,
TravelOrderDetailsActivity
.
class
)
.
putExtra
(
"no"
,
orderId
)
.
putExtra
(
"status"
,
status
)
.
putExtra
(
"type"
,
type
);
.
putExtra
(
"dataBean"
,
dataBean
);
}
@Override
...
...
@@ -113,10 +114,13 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
showTitle
(
false
);
api
=
WXAPIFactory
.
createWXAPI
(
mActivity
,
RvFrameConfig
.
APP_ID
);
status
=
intent
.
getIntExtra
(
"status"
,
0
);
no
=
intent
.
getStringExtra
(
"no"
);
type
=
intent
.
getIntExtra
(
"type"
,
0
);
api
=
WXAPIFactory
.
createWXAPI
(
mActivity
,
RvFrameConfig
.
APP_ID
);
dataBean
=
(
OrderListBean
.
DataBeanX
.
DataBean
)
intent
.
getSerializableExtra
(
"dataBean"
);
if
(
dataBean
!=
null
)
{
status
=
dataBean
.
getStatusX
();
no
=
dataBean
.
getNo
();
orderAmount
=
dataBean
.
getOrderAmount
();
}
/**
*
(query)
...
...
@@ -163,7 +167,11 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
switch
(
requestType
)
{
case
0
:
pay
((
OrderPayBean
)
result
);
break
;
}
}
@Override
...
...
@@ -199,14 +207,15 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
private
void
okOnclick
()
{
switch
(
status
)
{
case
3
:
//
payShowSelect(no, orderAmount);
payShowSelect
(
no
,
orderAmount
);
break
;
case
4
:
startActivity
(
GetOnTheCarQRCodeActivity
.
getIntent
(
mActivity
,
dataBean
));
break
;
case
5
:
break
;
case
6
:
// startActivityForResult(EvaluationActivity.getIntent(mActivity
), TYPE_REQUEST_EVALUATION);
startActivityForResult
(
EvaluationActivity
.
getIntent
(
mActivity
,
dataBean
),
TYPE_REQUEST_EVALUATION
);
break
;
}
}
...
...
@@ -215,7 +224,7 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
switch
(
status
)
{
case
3
:
case
4
:
startActivityForResult
(
CancelTheTripActivity
.
getIntent
(
mActivity
,
no
),
1
);
break
;
case
5
:
break
;
...
...
@@ -380,7 +389,6 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
// TODO: add setContentView(...) invocation
ButterKnife
.
bind
(
this
);
}
...
...
@@ -404,5 +412,4 @@ public class TravelOrderDetailsActivity extends BaseStatusActivity<PickerPresent
}
}
}
RvHome/src/main/java/com/rv/home/rv/module/ui/main/home/order/bean/OrderListBean.java
View file @
71275687
...
...
@@ -5,6 +5,7 @@ import com.google.gson.annotations.SerializedName;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.rv.home.rv.module.ui.main.home.order.adapter.OrderListAdapter
;
import
java.io.Serializable
;
import
java.util.List
;
/**
...
...
@@ -95,7 +96,7 @@ public class OrderListBean extends BaseBean {
this
.
data
=
data
;
}
public
static
class
DataBean
implements
MultiItemEntity
{
public
static
class
DataBean
implements
MultiItemEntity
,
Serializable
{
/**
* no : 4a0c200a-c4f0-4c37-8cdc-d2ee5cc08c20
* type : 1 订单类型 1–租车;2–旅游
...
...
@@ -294,7 +295,7 @@ public class OrderListBean extends BaseBean {
return
type
;
}
public
static
class
OrderRentVehicleDetail
{
public
static
class
OrderRentVehicleDetail
implements
Serializable
{
/**
* start_city_name : 东莞市
* end_addr : 廊坊分公司
...
...
@@ -520,7 +521,7 @@ public class OrderListBean extends BaseBean {
}
}
public
static
class
OrderTourDetail
{
public
static
class
OrderTourDetail
implements
Serializable
{
/**
* contactEmail string
* 联系邮箱
...
...
RvHome/src/main/res/drawable/shape_rv_bg_purple.xml
0 → 100644
View file @
71275687
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"8dp"
/>
<solid
android:color=
"@color/gray_BA58EB"
/>
</shape>
\ No newline at end of file
RvHome/src/main/res/layout/activity_get_on_the_car_qrcode.xml
0 → 100644
View file @
71275687
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/colorMain"
android:orientation=
"vertical"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/size_55"
>
<ImageView
android:id=
"@+id/iv_back"
android:layout_width=
"@dimen/size_32"
android:layout_height=
"@dimen/size_32"
android:layout_centerVertical=
"true"
android:layout_marginLeft=
"@dimen/size_5"
android:padding=
"@dimen/size_8"
android:src=
"@drawable/rv_common_icon_back_dark"
/>
<TextView
android:id=
"@+id/tv_center"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:ellipsize=
"end"
android:gravity=
"center"
android:maxWidth=
"320dp"
android:maxLines=
"1"
android:text=
"出示上车二维码"
android:textColor=
"@color/colorWrite"
android:textSize=
"@dimen/text_18"
/>
<TextView
android:id=
"@+id/iv_customer_service"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:layout_marginRight=
"@dimen/size_8"
android:padding=
"@dimen/size_8"
android:text=
"帮助"
android:textColor=
"@color/colorWrite"
/>
</RelativeLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_15"
android:layout_marginTop=
"@dimen/size_20"
android:layout_marginRight=
"@dimen/size_15"
android:background=
"@color/colorWrite"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/colorWrite"
android:orientation=
"horizontal"
android:paddingLeft=
"@dimen/size_15"
android:paddingTop=
"@dimen/size_15"
android:paddingRight=
"@dimen/size_15"
android:paddingBottom=
"@dimen/size_15"
>
<ImageView
android:id=
"@+id/iv_goods"
android:layout_width=
"@dimen/size_100"
android:layout_height=
"@dimen/size_100"
android:scaleType=
"centerCrop"
android:src=
"@drawable/common_icon_wechat_pay"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
android:layout_gravity=
"center_vertical"
android:layout_marginLeft=
"@dimen/size_8"
>
<TextView
android:id=
"@+id/tv_car_type"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:ellipsize=
"end"
android:maxLines=
"1"
android:text=
"草原大漠,6天5晚,穿越沙漠..."
android:textColor=
"@color/textMain"
android:textSize=
"@dimen/text_14"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/size_3"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"活动日期:"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
<TextView
android:id=
"@+id/tv_get_time"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_2"
android:ellipsize=
"end"
android:maxLines=
"1"
android:text=
"2019-06-12周三~2019-06-18周二"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/size_3"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"出发地:"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
<TextView
android:id=
"@+id/tv_out_address"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_2"
android:ellipsize=
"end"
android:maxLines=
"1"
android:text=
"欣新房车(松山湖)有限公司"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/size_3"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"目的地:"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
<TextView
android:id=
"@+id/tv_get_address"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_2"
android:ellipsize=
"end"
android:maxLines=
"1"
android:text=
"呼伦贝尔大草原"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_10"
/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/colorWrite"
android:layout_marginTop=
"@dimen/size_50"
android:layout_marginLeft=
"@dimen/size_50"
android:layout_marginRight=
"@dimen/size_50"
android:layout_marginBottom=
"@dimen/size_50"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"@dimen/size_60"
android:gravity=
"center_vertical"
android:orientation=
"vertical"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"刘伟 159****2558"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"身份证号 541120********2210"
/>
</LinearLayout>
<include
layout=
"@layout/common_line"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:gravity=
"center"
android:layout_weight=
"1"
>
<ImageView
android:id=
"@+id/iv_zxing"
android:layout_width=
"@dimen/size_200"
android:layout_height=
"@dimen/size_200"
android:scaleType=
"centerCrop"
/>
</LinearLayout>
<TextView
android:background=
"@color/gray_f5f5f5"
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/size_30"
android:textSize=
"@dimen/text_12"
android:gravity=
"center"
android:text=
"*欣新管家扫码验票完成后,才能上车哦!"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
RvHome/src/main/res/layout/activity_pick_up_the_car_qrcode.xml
0 → 100644
View file @
71275687
This diff is collapsed.
Click to expand it.
RvHome/src/main/res/layout/rv_act_evaluation.xml
View file @
71275687
...
...
@@ -75,7 +75,7 @@
android:id=
"@+id/rating_serve_bar"
style=
"@style/fiveRatingBar"
android:layout_width=
"wrap_content"
android:layout_height=
"
@dimen/size_16
"
android:layout_height=
"
wrap_content
"
android:layout_below=
"@id/tv_context"
android:layout_marginLeft=
"@dimen/size_20"
android:numStars=
"5"
...
...
@@ -139,6 +139,7 @@
</LinearLayout>
<RelativeLayout
android:visibility=
"gone"
android:focusableInTouchMode=
"true"
android:focusable=
"true"
android:layout_width=
"match_parent"
...
...
@@ -171,6 +172,7 @@
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:visibility=
"gone"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_15"
...
...
@@ -185,7 +187,7 @@
android:layout_height=
"@dimen/size_50"
android:layout_marginBottom=
"@dimen/size_15"
android:layout_marginLeft=
"@dimen/size_15"
android:layout_marginTop=
"@dimen/size_
15
"
android:layout_marginTop=
"@dimen/size_
80
"
android:layout_marginRight=
"@dimen/size_15"
android:background=
"@drawable/shape_rv_bg_yellow"
android:gravity=
"center"
...
...
RvHome/src/main/res/layout/rv_item_order_for_payment.xml
View file @
71275687
This diff is collapsed.
Click to expand it.
RvHome/src/main/res/layout/rv_item_order_to_travel.xml
View file @
71275687
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/tv_order_time"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:textSize=
"@dimen/text_12"
android:background=
"@color/colorLine"
android:padding=
"@dimen/size_15"
android:text=
""
android:textColor=
"@color/textGray"
android:padding=
"@dimen/size_15"
android:background=
"@color/colorLine"
android:id=
"@+id/tv_order_time"
/>
android:textSize=
"@dimen/text_12"
/>
<RelativeLayout
android:padding=
"@dimen/size_15"
android:background=
"@color/colorWrite"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
android:background=
"@color/colorWrite"
android:padding=
"@dimen/size_15"
>
<TextView
android:id=
"@+id/tv_city"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_12"
android:text=
""
/>
android:textColor=
"@color/textGray"
android:textSize=
"@dimen/text_12"
/>
<TextView
android:layout_alignParentRight=
"true"
android:id=
"@+id/tv_order_state"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textColor=
"@color/textMain"
android:textSize=
"@dimen/text_12"
android:layout_alignParentRight=
"true"
android:text=
""
/>
android:textColor=
"@color/textMain"
android:textSize=
"@dimen/text_12"
/>
</RelativeLayout>
<LinearLayout
android:paddingRight=
"@dimen/size_15"
android:paddingLeft=
"@dimen/size_15"
android:paddingBottom=
"@dimen/size_15"
android:orientation=
"horizontal"
android:background=
"@color/colorWrite"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<ImageView
android:layout_width=
"@dimen/size_100
"
android:layout_height=
"@dimen/size_100
"
android:id=
"@+id/iv_goods
"
android:scaleType=
"centerCrop"
/>
android:layout_height=
"wrap_content"
android:background=
"@color/colorWrite"
android:orientation=
"horizontal
"
android:paddingLeft=
"@dimen/size_15
"
android:paddingRight=
"@dimen/size_15
"
android:paddingBottom=
"@dimen/size_15"
>
<RelativeLayout
android:layout_marginLeft=
"@dimen/size_8"
android:layout_width=
"match_parent"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
>
<ImageView
android:id=
"@+id/iv_goods"
android:layout_width=
"@dimen/size_100"
android:layout_height=
"@dimen/size_100"
android:scaleType=
"centerCrop"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@drawable/shape_rv_bg_purple"
android:padding=
"@dimen/size_5"
android:text=
"房车游"
android:textColor=
"@color/colorWrite"
android:textSize=
"@dimen/text_10"
/>
</RelativeLayout>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"@dimen/size_8"
>
<TextView
android:id=
"@+id/tv_car_type"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:ellipsize=
"end"
android:maxLines=
"1"
android:id=
"@+id/tv_car_type"
android:text=
""
android:textColor=
"@color/textMain"
android:textSize=
"@dimen/text_16"
/>
android:textSize=
"@dimen/text_16"
/>
<TextView
android:id=
"@+id/tv_out_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textSize=
"@dimen/text_12"
android:id=
"@+id/tv_out_time"
android:text=
""
android:layout_marginTop=
"@dimen/size_8"
android:layout_below=
"@id/tv_car_type"
android:layout_marginLeft=
"@dimen/size_5"
android:layout_marginTop=
"@dimen/size_8"
android:text=
""
android:textColor=
"@color/textGray"
/>
android:textSize=
"@dimen/text_12"
/>
<TextView
android:
layout_below=
"@id/tv_out_time
"
android:
id=
"@+id/tv_count_person
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textSize=
"@dimen/text_12"
android:id=
"@+id/tv_count_person"
android:text=
""
android:layout_below=
"@id/tv_out_time"
android:layout_marginLeft=
"@dimen/size_5"
android:text=
""
android:textColor=
"@color/textGray"
/>
android:textSize=
"@dimen/text_12"
/>
<LinearLayout
android:layout_marginTop=
"@dimen/size_15"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_below=
"@id/tv_count_person"
android:
orientation=
"horizontal
"
android:
layout_marginTop=
"@dimen/size_15
"
android:gravity=
"center_vertical"
android:
layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
android:
orientation=
"horizontal"
>
<TextView
android:id=
"@+id/tv_price"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:id=
"@+id/tv_price"
android:textColor=
"@color/colorAuxiliaryRed"
android:textSize=
"@dimen/text_16"
android:text=
""
/>
android:textColor=
"@color/colorAuxiliaryRed"
android:textSize=
"@dimen/text_16"
/>
<TextView
android:id=
"@+id/tv_camp_process"
android:layout_width=
"@dimen/size_70"
android:layout_height=
"wrap_content"
android:id=
"@+id/tv_camp_process"
android:textColor=
"@color/colorWrite"
android:textSize=
"@dimen/text_12"
android:text=
"立即支付"
android:background=
"@drawable/shape_rv_bg_yellow"
android:gravity=
"center"
android:paddingTop=
"@dimen/size_5"
android:paddingBottom=
"@dimen/size_5"
android:background=
"@drawable/shape_rv_bg_yellow"
/>
android:text=
"立即支付"
android:textColor=
"@color/colorWrite"
android:textSize=
"@dimen/text_12"
/>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
...
...
RvMine/src/main/AndroidManifest.xml
View file @
71275687
...
...
@@ -2,5 +2,4 @@
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
package=
"com.rv.rvmine"
>
</manifest>
\ No newline at end of file
RvMine/src/main/java/com/rv/rvmine/MineActivity.java
View file @
71275687
package
com
.
rv
.
rvmine
;
import
android.annotation.SuppressLint
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.os.Bundle
;
...
...
@@ -15,6 +16,7 @@ import com.base.utils.tools.android.IntentUtil;
import
com.base.utils.ui.image.round.RoundImageView
;
import
com.frame.base.browse.ActivityImageBrowseInt
;
import
com.frame.base.glide.GlideManager
;
import
com.frame.rv.config.RvFrameConfig
;
import
com.frame.rv.widget.BaseTabLayout
;
import
com.frame.rv.ModuleEventUtil
;
import
com.frame.rv.OnModuleEventListener
;
...
...
@@ -22,10 +24,20 @@ import com.ruiwenliu.wrapper.base.BaseBean;
import
com.ruiwenliu.wrapper.base.BaseStatusActivity
;
import
com.ruiwenliu.wrapper.util.UtilsManager
;
import
com.ruiwenliu.wrapper.weight.TitleView
;
import
com.rv.home.rv.module.ApiConfig
;
import
com.rv.home.rv.module.basic.presenter.CommonPresenter
;
import
com.rv.home.rv.module.ui.login.LoginRvActivity
;
import
com.rv.home.rv.module.ui.main.home.ConfirmOrderActivity
;
import
com.rv.home.rv.module.ui.main.home.bean.OrderPayBean
;
import
com.rv.home.rv.module.ui.main.home.order.OrderListActivity
;
import
com.rv.home.rv.module.ui.main.home.order.bean.OrderListBean
;
import
com.rv.home.rv.until.bus.PaymentFailedEvent
;
import
com.rv.home.rv.until.bus.PaymentSuccessfulEvent
;
import
com.rv.home.rv.until.bus.RxBus
;
import
com.rv.rvmine.bean.UserInfo
;
import
com.rv.rvmine.personal.IDCardCertificationActivity
;
import
com.rv.rvmine.rxbusevent.UserInfoEvent
;
import
com.rv.rvmine.traveler.PersonalInformationActivity
;
import
com.rv.rvmine.traveler.SettingActivity
;
import
com.yuyife.banner.Banner
;
import
com.yuyife.banner.BannerConfig
;
...
...
@@ -34,11 +46,18 @@ import com.yuyife.banner.loader.ImageLoader;
import
com.yuyife.okgo.OkGoUtil
;
import
java.util.ArrayList
;
import
java.util.LinkedHashMap
;
import
java.util.List
;
import
java.util.Map
;
import
butterknife.BindView
;
import
butterknife.OnClick
;
import
io.reactivex.functions.Consumer
;
import
io.reactivex.schedulers.Schedulers
;
/**
* 我的
*/
public
class
MineActivity
extends
BaseStatusActivity
<
CommonPresenter
>
{
@BindView
(
R2
.
id
.
travel_tab_layout
)
...
...
@@ -107,9 +126,29 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
tvLogin
.
setVisibility
(
View
.
GONE
);
tvVerified
.
setVisibility
(
View
.
VISIBLE
);
// Log.i("Mineactivityty", "initView: " + UtilsManager.getInstance(mActivity).getSPStringCode("city_json", "headerurl"));
GlideManager
.
getInstance
(
mActivity
).
loadImage
(
UtilsManager
.
getInstance
(
mActivity
).
getSPStringCode
(
"city_json"
,
"headerurl"
),
ivAvatar
);
tvNickname
.
setText
(
UtilsManager
.
getInstance
(
mActivity
).
getSPStringCode
(
"city_json"
,
"username"
));
}
initRxBus
();
}
@SuppressLint
(
"CheckResult"
)
private
void
initRxBus
()
{
RxBus
.
tObservable
(
UserInfoEvent
.
class
)
.
observeOn
(
Schedulers
.
newThread
())
.
subscribe
(
new
Consumer
<
UserInfoEvent
>()
{
@Override
public
void
accept
(
UserInfoEvent
info
)
throws
Exception
{
getUserData
();
}
});
}
@Override
protected
void
loadData
(
Bundle
savedInstanceState
,
Intent
intent
)
{
super
.
loadData
(
savedInstanceState
,
intent
);
getUserData
();
}
@Override
...
...
@@ -125,55 +164,66 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
if
(
id
==
R
.
id
.
iv_avatar
)
{
//头像
if
(
isLogin
())
return
;
}
else
if
(
id
==
R
.
id
.
tv_login
)
{
//登录
startActivity
(
LoginRvActivity
.
getIntent
(
mActivity
));
}
else
if
(
id
==
R
.
id
.
tv_verified
)
{
//实名认证
if
(
isLogin
())
return
;
startActivity
(
IDCardCertificationActivity
.
getIntent
(
mActivity
));
}
else
if
(
id
==
R
.
id
.
rl_item_to_be_paid
)
{
//待支付
if
(
isLogin
())
return
;
startActivity
(
OrderListActivity
.
getIntent
(
mActivity
,
0
));
}
else
if
(
id
==
R
.
id
.
rl_item_staying
)
{
//待出行
if
(
isLogin
())
return
;
startActivity
(
OrderListActivity
.
getIntent
(
mActivity
,
1
));
}
else
if
(
id
==
R
.
id
.
rl_item_traveling
)
{
//出行中
if
(
isLogin
())
return
;
startActivity
(
OrderListActivity
.
getIntent
(
mActivity
,
2
));
}
else
if
(
id
==
R
.
id
.
rl_item_completed
)
{
//已完成
if
(
isLogin
())
return
;
startActivity
(
OrderListActivity
.
getIntent
(
mActivity
,
3
));
}
else
if
(
id
==
R
.
id
.
rl_item_all
)
{
//全部
if
(
isLogin
())
return
;
startActivity
(
OrderListActivity
.
getIntent
(
mActivity
,
4
));
}
else
if
(
id
==
R
.
id
.
rl_item_collection
)
{
//收藏
if
(
isLogin
())
return
;
showToast
(
"该功能还在开发中"
);
}
else
if
(
id
==
R
.
id
.
rl_item_personal_information
)
{
//个人资料
if
(
isLogin
())
return
;
showToast
(
"该功能还在开发中"
);
startActivity
(
PersonalInformationActivity
.
getIntent
(
mActivity
));
}
else
if
(
id
==
R
.
id
.
rl_item_information
)
{
//信息
if
(
isLogin
())
return
;
showToast
(
"该功能还在开发中"
);
}
else
if
(
id
==
R
.
id
.
rl_item_setting
)
{
//设置
startActivityForResult
(
SettingActivity
.
getIntent
(
mActivity
),
101
);
startActivityForResult
(
SettingActivity
.
getIntent
(
mActivity
),
101
);
}
}
@Override
protected
void
onActivityResult
(
int
requestCode
,
int
resultCode
,
@Nullable
Intent
data
)
{
super
.
onActivityResult
(
requestCode
,
resultCode
,
data
);
if
(
requestCode
==
101
&&
resultCode
==
201
)
{
if
(
requestCode
==
101
&&
resultCode
==
201
)
{
ivAvatar
.
setImageResource
(
R
.
drawable
.
common_icon_avatar_default
);
tvNickname
.
setVisibility
(
View
.
GONE
);
ivMember
.
setVisibility
(
View
.
GONE
);
...
...
@@ -224,8 +274,16 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
mineBanner
.
updateBannerStyle
(
BannerConfig
.
CIRCLE_INDICATOR
);
}
/**
* 获取用户信息请求
*/
private
void
getUserData
()
{
Map
<
String
,
Object
>
headMap
=
new
LinkedHashMap
<>();
if
(
OkGoUtil
.
getToken
()
!=
null
)
{
headMap
.
put
(
"Authorization"
,
OkGoUtil
.
getToken
());
mPresenter
.
getData
(
RvFrameConfig
.
ADMIN_POST
,
0
,
ApiConfig
.
HTTP_URL_APP_USER_INFO
,
UserInfo
.
class
,
headMap
,
false
);
}
}
/**
* 判断是否登录
...
...
@@ -242,7 +300,25 @@ public class MineActivity extends BaseStatusActivity<CommonPresenter> {
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
switch
(
requestType
)
{
case
0
:
userInfoData
((
UserInfo
)
result
);
break
;
}
}
private
void
userInfoData
(
UserInfo
info
)
{
if
(
info
!=
null
)
{
GlideManager
.
getInstance
(
mActivity
).
loadImage
(
info
.
getHeadimgurl
(),
ivAvatar
);
tvNickname
.
setText
(
info
.
getUsername
());
if
(
info
.
getCertificationStatus
()
==
0
){
//实名认证状态:0-未认证,1-已认证
tvVerified
.
setText
(
"未实名认证"
);
tvVerified
.
setEnabled
(
true
);
}
else
if
(
info
.
getCertificationStatus
()
==
1
){
tvVerified
.
setText
(
"已实名认证"
);
tvVerified
.
setEnabled
(
false
);
}
}
}
@Override
...
...
RvMine/src/main/java/com/rv/rvmine/bean/UserInfo.java
0 → 100644
View file @
71275687
package
com
.
rv
.
rvmine
.
bean
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
/**
* 获取用户信息
*/
public
class
UserInfo
extends
BaseBean
{
//用户id
private
int
userid
;
//imid
private
int
imUserid
;
///账号(手机号)
private
String
username
;
//微信openid
private
String
wxOpenid
;
//微信unionid
private
String
unionid
;
//qq
private
String
openid
;
//状态:0-启用,1-禁用
private
int
status
;
//身份证号
private
String
idNumber
;
//实名认证状态:0-未认证,1-已认证
private
int
certificationStatus
;
//会员
private
int
isMember
;
//昵称
private
String
nickname
;
//真实姓名
private
String
realname
;
//头像
private
String
headimgurl
;
//邮箱
private
String
email
;
//性别 0-女,1-男
private
int
sex
;
//生日
private
String
birthday
;
//个性签名
private
String
personSign
;
//备注
private
String
remark
;
public
int
getUserid
()
{
return
userid
;
}
public
void
setUserid
(
int
userid
)
{
this
.
userid
=
userid
;
}
public
int
getImUserid
()
{
return
imUserid
;
}
public
void
setImUserid
(
int
imUserid
)
{
this
.
imUserid
=
imUserid
;
}
public
String
getUsername
()
{
return
username
;
}
public
void
setUsername
(
String
username
)
{
this
.
username
=
username
;
}
public
String
getWxOpenid
()
{
return
wxOpenid
;
}
public
void
setWxOpenid
(
String
wxOpenid
)
{
this
.
wxOpenid
=
wxOpenid
;
}
public
String
getUnionid
()
{
return
unionid
;
}
public
void
setUnionid
(
String
unionid
)
{
this
.
unionid
=
unionid
;
}
public
String
getOpenid
()
{
return
openid
;
}
public
void
setOpenid
(
String
openid
)
{
this
.
openid
=
openid
;
}
public
int
getStatus
()
{
return
status
;
}
public
void
setStatus
(
int
status
)
{
this
.
status
=
status
;
}
public
String
getIdNumber
()
{
return
idNumber
;
}
public
void
setIdNumber
(
String
idNumber
)
{
this
.
idNumber
=
idNumber
;
}
public
int
getCertificationStatus
()
{
return
certificationStatus
;
}
public
void
setCertificationStatus
(
int
certificationStatus
)
{
this
.
certificationStatus
=
certificationStatus
;
}
public
int
getIsMember
()
{
return
isMember
;
}
public
void
setIsMember
(
int
isMember
)
{
this
.
isMember
=
isMember
;
}
public
String
getNickname
()
{
return
nickname
;
}
public
void
setNickname
(
String
nickname
)
{
this
.
nickname
=
nickname
;
}
public
String
getRealname
()
{
return
realname
;
}
public
void
setRealname
(
String
realname
)
{
this
.
realname
=
realname
;
}
public
String
getHeadimgurl
()
{
return
headimgurl
;
}
public
void
setHeadimgurl
(
String
headimgurl
)
{
this
.
headimgurl
=
headimgurl
;
}
public
String
getEmail
()
{
return
email
;
}
public
void
setEmail
(
String
email
)
{
this
.
email
=
email
;
}
public
int
getSex
()
{
return
sex
;
}
public
void
setSex
(
int
sex
)
{
this
.
sex
=
sex
;
}
public
String
getBirthday
()
{
return
birthday
;
}
public
void
setBirthday
(
String
birthday
)
{
this
.
birthday
=
birthday
;
}
public
String
getPersonSign
()
{
return
personSign
;
}
public
void
setPersonSign
(
String
personSign
)
{
this
.
personSign
=
personSign
;
}
public
String
getRemark
()
{
return
remark
;
}
public
void
setRemark
(
String
remark
)
{
this
.
remark
=
remark
;
}
}
RvMine/src/main/java/com/rv/rvmine/personal/IDCardCertificationActivity.java
View file @
71275687
This diff is collapsed.
Click to expand it.
RvMine/src/main/java/com/rv/rvmine/personal/SuccessfulCertificationActivity.java
0 → 100644
View file @
71275687
package
com
.
rv
.
rvmine
.
personal
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
com.rv.rvmine.R2
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.base.BaseStatusActivity
;
import
com.ruiwenliu.wrapper.weight.TitleView
;
import
com.rv.home.rv.module.basic.presenter.PickerPresenter
;
import
com.rv.rvmine.R
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
/**
* 实名认证成功
*/
public
class
SuccessfulCertificationActivity
extends
BaseStatusActivity
<
PickerPresenter
>
{
public
static
Intent
getIntent
(
Context
context
)
{
return
new
Intent
(
context
,
SuccessfulCertificationActivity
.
class
);
}
@Override
protected
int
setLayout
()
{
return
R
.
layout
.
activity_successful_certification
;
}
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
titleView
.
setTitle
(
"身份证认证"
);
}
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
}
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
super
.
onCreate
(
savedInstanceState
);
// TODO: add setContentView(...) invocation
ButterKnife
.
bind
(
this
);
}
@OnClick
(
R2
.
id
.
tv_ok
)
public
void
onViewClicked
()
{
finish
();
}
}
RvMine/src/main/java/com/rv/rvmine/rxbusevent/UserInfoEvent.java
0 → 100644
View file @
71275687
package
com
.
rv
.
rvmine
.
rxbusevent
;
import
com.rv.home.rv.until.bus.Event
;
public
class
UserInfoEvent
extends
Event
{
}
RvMine/src/main/java/com/rv/rvmine/traveler/PersonalInformationActivity.java
0 → 100644
View file @
71275687
package
com
.
rv
.
rvmine
.
traveler
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
com.ruiwenliu.wrapper.base.BaseBean
;
import
com.ruiwenliu.wrapper.base.BaseStatusActivity
;
import
com.ruiwenliu.wrapper.weight.TitleView
;
import
com.rv.home.rv.module.basic.presenter.CommonPresenter
;
import
com.rv.rvmine.R
;
import
com.rv.rvmine.R2
;
/**
* 个人资料
*/
public
class
PersonalInformationActivity
extends
BaseStatusActivity
<
CommonPresenter
>
{
public
static
Intent
getIntent
(
Context
context
)
{
return
new
Intent
(
context
,
PersonalInformationActivity
.
class
);
}
@Override
protected
int
setLayout
()
{
return
R
.
layout
.
activity_personal_information
;
}
@Override
protected
void
initView
(
Bundle
savedInstanceState
,
TitleView
titleView
,
Intent
intent
)
{
titleView
.
setTitle
(
"个人资料"
);
}
@Override
public
void
onShowResult
(
int
requestType
,
BaseBean
result
)
{
}
}
RvMine/src/main/res/layout/activity_idcard_certification.xml
View file @
71275687
...
...
@@ -59,6 +59,7 @@
</RelativeLayout>
<LinearLayout
android:visibility=
"gone"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/colorWrite"
...
...
@@ -219,7 +220,7 @@
<TextView
android:layout_width=
"match_parent"
android:text=
"
下一步
"
android:text=
"
确定
"
android:id=
"@+id/tv_ok"
android:layout_margin=
"@dimen/size_25"
android:textColor=
"@color/colorWrite"
...
...
RvMine/src/main/res/layout/activity_personal_information.xml
0 → 100644
View file @
71275687
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:background=
"@color/colorLine"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<RelativeLayout
android:paddingLeft=
"@dimen/size_15"
android:paddingRight=
"@dimen/size_15"
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/size_80"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"头像"
/>
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
RvMine/src/main/res/layout/activity_successful_certification.xml
0 → 100644
View file @
71275687
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:background=
"@color/colorWrite"
android:layout_width=
"match_parent"
android:orientation=
"vertical"
android:gravity=
"center"
android:layout_height=
"match_parent"
>
<ImageView
android:layout_width=
"@dimen/size_70"
android:layout_height=
"@dimen/size_70"
android:src=
"@drawable/common_icon_wechat_pay"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/size_20"
android:textColor=
"@color/text_Main"
android:textSize=
"@dimen/text_16"
android:text=
"认证成功"
/>
<TextView
android:id=
"@+id/tv_ok"
android:layout_marginTop=
"@dimen/size_90"
android:layout_width=
"@dimen/size_200"
android:layout_height=
"@dimen/size_50"
android:textColor=
"@color/textGray"
android:background=
"@drawable/shape_rv_border_gray"
android:gravity=
"center"
android:textSize=
"@dimen/text_16"
android:text=
"确认 "
/>
</LinearLayout>
\ No newline at end of file
RvWrapper/src/main/res/values/colors.xml
View file @
71275687
...
...
@@ -26,6 +26,8 @@
<color
name=
"textLightGrey"
>
#999999
</color>
<color
name=
"bgAlpha"
>
#e0000000
</color>
<color
name=
"stateColor"
>
#3A3938
</color>
<color
name=
"gray_f5f5f5"
>
#F5F5F5
</color>
<color
name=
"gray_BA58EB"
>
#BA58EB
</color>
<!--end-->
</resources>
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