Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
ShenghuoquanBusiness
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
0
Merge Requests
0
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
bp
ShenghuoquanBusiness
Commits
f5d2397d
Commit
f5d2397d
authored
Aug 25, 2021
by
yinjiacheng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add 订单详情下拉刷新逻辑
parent
903dd942
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
66 additions
and
45 deletions
+66
-45
OrderDetailActivity.kt
.../com/yidian/shenghuoquan/border/ui/OrderDetailActivity.kt
+15
-2
SelectPickupPointActivity.kt
...idian/shenghuoquan/border/ui/SelectPickupPointActivity.kt
+2
-1
OrderDetailViewModel.kt
...ian/shenghuoquan/border/viewmodel/OrderDetailViewModel.kt
+4
-4
border_activity_order_detail.xml
...rder/src/main/res/layout/border_activity_order_detail.xml
+45
-38
No files found.
Components/BOrder/src/main/java/com/yidian/shenghuoquan/border/ui/OrderDetailActivity.kt
View file @
f5d2397d
...
@@ -36,16 +36,29 @@ class OrderDetailActivity : BaseMvvmActivity<BorderActivityOrderDetailBinding, O
...
@@ -36,16 +36,29 @@ class OrderDetailActivity : BaseMvvmActivity<BorderActivityOrderDetailBinding, O
}
}
override
fun
initView
()
{
override
fun
initView
()
{
initSmartRefresh
()
vm
.
orderDetailData
.
observe
(
this
,
{
vm
.
orderDetailData
.
observe
(
this
,
{
// 结束刷新
binding
.
rlOrderDetail
.
finishRefresh
(
it
!=
null
)
if
(
it
==
null
)
return
@observe
// 获取当前订单状态
// 获取当前订单状态
val
status
=
OrderStatusManager
.
getOrderStatus
(
it
.
orderStatus
)
val
status
=
OrderStatusManager
.
getOrderStatus
(
it
.
orderStatus
)
// 更新UI
binding
.
svOrderStatus
.
setOrderStatus
(
status
,
it
)
binding
.
svOrderStatus
.
setOrderStatus
(
status
,
it
)
binding
.
pvPickupPointInfo
.
setPickupPoint
(
it
.
placeList
)
binding
.
pvPickupPointInfo
.
setPickupPoint
(
it
.
placeList
)
binding
.
ivConsigneeInfo
.
setConsigneeInfo
(
status
,
it
.
orderShippingInfo
)
binding
.
ivConsigneeInfo
.
setConsigneeInfo
(
status
,
it
.
orderShippingInfo
)
binding
.
ivCommodityInfo
.
setCommodityInfo
(
status
,
it
)
binding
.
ivCommodityInfo
.
setCommodityInfo
(
status
,
it
)
binding
.
ivOrderInfo
.
setOrderInfo
(
status
,
it
)
binding
.
ivOrderInfo
.
setOrderInfo
(
status
,
it
)
})
})
// 请求订单详情
binding
.
rlOrderDetail
.
autoRefresh
()
orderId
?.
let
{
vm
.
requestOrderDetail
(
it
)
}
}
private
fun
initSmartRefresh
()
{
// 禁止上拉加载更多
binding
.
rlOrderDetail
.
setEnableLoadMore
(
false
)
binding
.
rlOrderDetail
.
setOnRefreshListener
{
// 请求订单详情
orderId
?.
let
{
vm
.
requestOrderDetail
(
it
)
}
}
}
}
}
}
Components/BOrder/src/main/java/com/yidian/shenghuoquan/border/ui/SelectPickupPointActivity.kt
View file @
f5d2397d
...
@@ -99,9 +99,10 @@ class SelectPickupPointActivity : BaseMvvmActivity<BorderActivitySelectPickupPoi
...
@@ -99,9 +99,10 @@ class SelectPickupPointActivity : BaseMvvmActivity<BorderActivitySelectPickupPoi
* 更新列表数据
* 更新列表数据
*/
*/
private
fun
updateData
(
data
:
PickupPointListDto
?)
{
private
fun
updateData
(
data
:
PickupPointListDto
?)
{
if
(
data
==
null
)
return
// 标记当前选中的自提点
// 标记当前选中的自提点
adapter
.
setSelectedId
(
params
?.
get
(
IntentConstants
.
KEY_EXTRA_PICKUP_POINT_ID
)
?.
let
{
id
->
id
as
Long
})
adapter
.
setSelectedId
(
params
?.
get
(
IntentConstants
.
KEY_EXTRA_PICKUP_POINT_ID
)
?.
let
{
id
->
id
as
Long
})
adapter
.
updateData
(
data
?
.
list
)
adapter
.
updateData
(
data
.
list
)
}
}
/**
/**
...
...
Components/BOrder/src/main/java/com/yidian/shenghuoquan/border/viewmodel/OrderDetailViewModel.kt
View file @
f5d2397d
...
@@ -14,8 +14,8 @@ import com.yidian.shenghuoquan.border.http.callback.IGetOrderDetailCallback
...
@@ -14,8 +14,8 @@ import com.yidian.shenghuoquan.border.http.callback.IGetOrderDetailCallback
*/
*/
class
OrderDetailViewModel
:
BaseViewModel
()
{
class
OrderDetailViewModel
:
BaseViewModel
()
{
private
val
_orderDetailData
=
MutableLiveData
<
OrderDetailDto
>()
private
val
_orderDetailData
=
MutableLiveData
<
OrderDetailDto
?
>()
val
orderDetailData
:
LiveData
<
OrderDetailDto
>
=
_orderDetailData
val
orderDetailData
:
LiveData
<
OrderDetailDto
?
>
=
_orderDetailData
/**
/**
* 请求订单详情
* 请求订单详情
...
@@ -23,11 +23,11 @@ class OrderDetailViewModel : BaseViewModel() {
...
@@ -23,11 +23,11 @@ class OrderDetailViewModel : BaseViewModel() {
fun
requestOrderDetail
(
orderId
:
String
)
{
fun
requestOrderDetail
(
orderId
:
String
)
{
OrderRemoteDataSource
.
getOrderDetail
(
object
:
IGetOrderDetailCallback
{
OrderRemoteDataSource
.
getOrderDetail
(
object
:
IGetOrderDetailCallback
{
override
fun
getOrderDetailSuccess
(
result
:
OrderDetailDto
?)
{
override
fun
getOrderDetailSuccess
(
result
:
OrderDetailDto
?)
{
result
?.
let
{
_orderDetailData
.
value
=
it
}
_orderDetailData
.
value
=
result
}
}
override
fun
getOrderDetailFailure
(
message
:
String
?)
{
override
fun
getOrderDetailFailure
(
message
:
String
?)
{
_orderDetailData
.
value
=
null
}
}
},
hashMapOf
(
"order_id"
to
orderId
))
},
hashMapOf
(
"order_id"
to
orderId
))
}
}
...
...
Components/BOrder/src/main/res/layout/border_activity_order_detail.xml
View file @
f5d2397d
...
@@ -24,58 +24,65 @@
...
@@ -24,58 +24,65 @@
app:CommonTopBarView_title_text_color=
"@color/white"
app:CommonTopBarView_title_text_color=
"@color/white"
app:layout_constraintTop_toTopOf=
"parent"
/>
app:layout_constraintTop_toTopOf=
"parent"
/>
<ScrollView
<com.scwang.smart.refresh.layout.SmartRefreshLayout
android:id=
"@+id/rl_order_detail"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/bv_top_bar"
>
app:layout_constraintTop_toBottomOf=
"@id/bv_top_bar"
>
<
androidx.constraintlayout.widget.ConstraintLayout
<
ScrollView
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"match_parent"
>
android:paddingStart=
"@dimen/dp16"
android:paddingEnd=
"@dimen/dp16"
android:paddingBottom=
"@dimen/dp46"
>
<com.yidian.shenghuoquan.border.ui.widget.OderStatusView
android:id=
"@+id/sv_order_status"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp20"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.yidian.shenghuoquan.border.ui.widget.OrderPickupPointInfoView
<androidx.constraintlayout.widget.ConstraintLayout
android:id=
"@+id/pv_pickup_point_info"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp20"
android:paddingStart=
"@dimen/dp16"
app:layout_constraintTop_toBottomOf=
"@id/sv_order_status"
/>
android:paddingEnd=
"@dimen/dp16"
android:paddingBottom=
"@dimen/dp46"
>
<com.yidian.shenghuoquan.border.ui.widget.OrderConsigneeInfoView
<com.yidian.shenghuoquan.border.ui.widget.OderStatusView
android:id=
"@+id/iv_consignee_info"
android:id=
"@+id/sv_order_status"
android:layout_width=
"match_parent"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp8"
android:layout_marginTop=
"@dimen/dp20"
app:layout_constraintTop_toBottomOf=
"@id/pv_pickup_point_info"
/>
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
<com.yidian.shenghuoquan.border.ui.widget.OrderCommodity
InfoView
<com.yidian.shenghuoquan.border.ui.widget.OrderPickupPoint
InfoView
android:id=
"@+id/iv_commodity
_info"
android:id=
"@+id/pv_pickup_point
_info"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp8
"
android:layout_marginTop=
"@dimen/dp20
"
app:layout_constraintTop_toBottomOf=
"@id/iv_consignee_info
"
/>
app:layout_constraintTop_toBottomOf=
"@id/sv_order_status
"
/>
<com.yidian.shenghuoquan.border.ui.widget.OrderInfoView
<com.yidian.shenghuoquan.border.ui.widget.OrderConsigneeInfoView
android:id=
"@+id/iv_order_info"
android:id=
"@+id/iv_consignee_info"
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp8"
android:layout_marginTop=
"@dimen/dp8"
app:layout_constraintTop_toBottomOf=
"@id/iv_commodity_info"
/>
app:layout_constraintTop_toBottomOf=
"@id/pv_pickup_point_info"
/>
<com.yidian.shenghuoquan.border.ui.widget.OrderCommodityInfoView
android:id=
"@+id/iv_commodity_info"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp8"
app:layout_constraintTop_toBottomOf=
"@id/iv_consignee_info"
/>
<com.yidian.shenghuoquan.border.ui.widget.OrderInfoView
android:id=
"@+id/iv_order_info"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp8"
app:layout_constraintTop_toBottomOf=
"@id/iv_commodity_info"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</
androidx.constraintlayout.widget.ConstraintLayout
>
</
ScrollView
>
</
ScrollView
>
</
com.scwang.smart.refresh.layout.SmartRefreshLayout
>
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
</layout>
\ No newline at end of file
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