Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
HBHAndroid
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
杨秀秀
HBHAndroid
Commits
ae77f9c9
Commit
ae77f9c9
authored
Nov 21, 2023
by
杨秀秀
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
基础搭建
功能开发 1:bug 修复
parent
89d28bb2
Changes
8
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
859 additions
and
85 deletions
+859
-85
ApiService.kt
app/src/main/java/com/xx/merchanthbh/data/http/ApiService.kt
+300
-15
HomeActivity.java
...rc/main/java/com/xx/merchanthbh/ui/home/HomeActivity.java
+6
-2
LoginActivity.kt
...rc/main/java/com/xx/merchanthbh/ui/login/LoginActivity.kt
+1
-1
LoginViewModel.java
...main/java/com/xx/merchanthbh/ui/login/LoginViewModel.java
+56
-14
OrderDetailActivity.java
...java/com/xx/merchanthbh/ui/order/OrderDetailActivity.java
+89
-17
fragment_huanbohai.xml
app/src/main/res/layout/fragment_huanbohai.xml
+1
-1
ApiService.kt
.../src/main/java/com/xx/hbhbcompany/data/http/ApiService.kt
+350
-18
ActivitiesActivity.java
.../com/xx/hbhbcompany/ui/activities/ActivitiesActivity.java
+56
-17
No files found.
app/src/main/java/com/xx/merchanthbh/data/http/ApiService.kt
View file @
ae77f9c9
This diff is collapsed.
Click to expand it.
app/src/main/java/com/xx/merchanthbh/ui/home/HomeActivity.java
View file @
ae77f9c9
package
com
.
xx
.
merchanthbh
.
ui
.
home
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.os.Handler
;
import
android.os.Message
;
...
...
@@ -104,9 +105,12 @@ public class HomeActivity extends BaseActivity<ActivityHomeBinding, HomeViewMode
// 利用handler延迟发送更改状态信息,2000==2秒
mHandler
.
sendEmptyMessageDelayed
(
0
,
2000
);
}
else
{
AppManager
.
getAppManager
().
AppExit
();
Intent
intent
=
new
Intent
(
Intent
.
ACTION_SENDTO
);
intent
.
addCategory
(
Intent
.
CATEGORY_HOME
);
intent
.
setFlags
(
Intent
.
FLAG_ACTIVITY_NEW_TASK
);
startActivity
(
intent
);
}
}
}
}
\ No newline at end of file
app/src/main/java/com/xx/merchanthbh/ui/login/LoginActivity.kt
View file @
ae77f9c9
...
...
@@ -122,7 +122,7 @@ class LoginActivity() : BaseActivity<ActivityLoginBinding, LoginViewModel>() {
}
},
14
,
20
,
Spanned
.
SPAN_EXCLUSIVE_EXCLUSIVE
)
binding
.
tvLoginAgree
.
text
=
sp
binding
.
tvLoginAgree
.
text
=
sp
}
...
...
app/src/main/java/com/xx/merchanthbh/ui/login/LoginViewModel.java
View file @
ae77f9c9
...
...
@@ -5,6 +5,7 @@ import static me.goldze.mvvmhabit.utils.Utils.Interceptor_TOKEN;
import
android.app.Application
;
import
android.os.Bundle
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
androidx.annotation.NonNull
;
import
androidx.databinding.ObservableField
;
...
...
@@ -17,6 +18,9 @@ import com.xx.merchanthbh.data.staticdata.StaticData;
import
com.xx.merchanthbh.ui.home.HomeActivity
;
import
com.xx.merchanthbh.ui.merchantenter.MerchantEnterActivity
;
import
com.xx.merchanthbh.ui.pwd.ForgetPwdActivity
;
import
com.xx.merchanthbh.ui.pwd.SetPwdActivity
;
import
java.util.List
;
import
io.reactivex.rxjava3.disposables.Disposable
;
import
io.reactivex.rxjava3.functions.Consumer
;
...
...
@@ -125,30 +129,41 @@ public class LoginViewModel extends BaseViewModel<LoginRequest> {
}).
subscribe
(
new
ApiDisposableObserver
<
UserInfoBean
>()
{
@Override
public
void
onSuccess
(
UserInfoBean
resultBean
)
{
// 判断是否是店长
if
(
resultBean
.
getUser
().
getRoles
().
get
(
0
).
getRoleName
().
equals
(
"店长"
))
{
StaticData
.
personType
=
0
;
}
//将用户信息存储到本地
LocalData
.
saveUser
(
resultBean
.
getUser
());
/*在登录的时候就给staticData的消息标志位设置成未读*/
StaticData
.
flag
=
0
;
dismissDialog
();
if
(
resultBean
.
getMerchant
()
==
null
)
{
Bundle
bundle
=
new
Bundle
();
if
(
resultBean
.
getMerchant
()==
null
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
"pageStep"
,
R
.
id
.
registerMaterialFragment
);
startActivity
(
MerchantEnterActivity
.
class
,
bundle
);
}
else
if
(
resultBean
.
getMerchant
().
getAuditStatus
().
equals
(
"0"
))
{
Bundle
bundle
=
new
Bundle
();
startActivity
(
MerchantEnterActivity
.
class
,
bundle
);
}
else
if
(
resultBean
.
getMerchant
().
getAuditStatus
().
equals
(
"0"
))
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
"pageStep"
,
R
.
id
.
merchantWaitFragment
);
startActivity
(
MerchantEnterActivity
.
class
,
bundle
);
}
else
{
startActivity
(
MerchantEnterActivity
.
class
,
bundle
);
}
else
if
(
resultBean
.
getMerchant
().
getAuditStatus
().
equals
(
"2"
)){
LocalData
.
saveMerchant
(
resultBean
.
getMerchant
());
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
"pageStep"
,
R
.
id
.
registerMaterialFragment
);
startActivity
(
MerchantEnterActivity
.
class
,
bundle
);
}
else
if
(
resultBean
.
getNeedChangeInitPassword
())
{
startActivity
(
SetPwdActivity
.
class
);
}
else
{
LocalData
.
saveMerchant
(
resultBean
.
getMerchant
());
// 判断是否是店长
if
(
resultBean
.
getUser
().
getUserId
()==
resultBean
.
getMerchant
().
getUserId
())
{
StaticData
.
personType
=
0
;
}
else
{
StaticData
.
personType
=
1
;
}
LocalData
.
saveMerchant
(
resultBean
.
getMerchant
());
startActivity
(
HomeActivity
.
class
);
}
/* LocalData.saveMerchant(resultBean.getMerchant());
startActivity(ProductManagerActivity.class);*/
finish
();
}
...
...
@@ -163,6 +178,33 @@ public class LoginViewModel extends BaseViewModel<LoginRequest> {
}
/**
* 获取协议内容
*
*/
public
void
getProtocols
()
{
model
.
getProtocols
().
compose
(
RxUtils
.
schedulersTransformer
())
//线程调度
// .compose(RxUtils.exceptionTransformer()) // 网络错误的异常转换, 这里可以换成自己的ExceptionHandle
.
doOnSubscribe
(
LoginViewModel
.
this
)
.
doOnSubscribe
(
new
Consumer
<
Disposable
>()
{
@Override
public
void
accept
(
Disposable
disposable
)
throws
Exception
{
}
}).
subscribe
(
new
ApiDisposableObserver
<
List
<
String
>>()
{
@Override
public
void
onSuccess
(
List
<
String
>
resultBean
)
{
StaticData
.
Protocols
=
resultBean
;
}
@Override
public
void
onError
(
String
Error
)
{
}
});
}
}
app/src/main/java/com/xx/merchanthbh/ui/order/OrderDetailActivity.java
View file @
ae77f9c9
package
com
.
xx
.
merchanthbh
.
ui
.
order
;
import
android.content.Context
;
import
static
com
.
xx
.
merchanthbh
.
utils
.
RetrofitClient
.
baseImgUrl
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.widget.TextView
;
import
androidx.lifecycle.Observer
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
com.bumptech.glide.Glide
;
import
com.xx.merchanthbh.BR
;
import
com.xx.merchanthbh.R
;
import
com.xx.merchanthbh.activity.adapter.OrderListAdapter
;
import
com.xx.merchanthbh.activity.adapter.OrderUnitAdapter
;
import
com.xx.merchanthbh.activity.adapter.OrderUnitUnitAdapter
;
import
com.xx.merchanthbh.data.http.requst.OrderDetailRequest
;
import
com.xx.merchanthbh.data.http.respons.OrderBean
;
import
com.xx.merchanthbh.data.http.respons.OrderDetailBean
;
import
com.xx.merchanthbh.data.staticdata.StaticData
;
import
com.xx.merchanthbh.databinding.ActivityOrderDetailBinding
;
import
com.xx.xxviewlibrary.utils.CommUtilsKt
;
import
java.util.List
;
import
me.goldze.mvvmhabit.base.BaseActivity
;
public
class
OrderDetailActivity
extends
BaseActivity
<
ActivityOrderDetailBinding
,
OrderDetailViewModel
>
{
/*订单id,为了详情页通过id获取信息*/
String
businessId
;
/*订单状态,为了做前端状态回显,不参与到传参中*/
String
orderStatus
;
/*订单公司头像,为了做前端状态回显,不参与到传参中*/
String
filePath
;
@Override
public
int
initContentView
(
Bundle
savedInstanceState
)
{
return
R
.
layout
.
activity_order_detail
;
...
...
@@ -35,14 +43,27 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding
return
BR
.
orderDetailViewModel
;
}
@Override
public
void
initParam
()
{
super
.
initParam
();
/*获取列表页传过来的参数*/
businessId
=
getIntent
().
getStringExtra
(
"businessId"
);
/*获取列表页传过来的参数*/
orderStatus
=
getIntent
().
getStringExtra
(
"orderStatus"
);
StaticData
.
statusData
=
Integer
.
parseInt
(
orderStatus
);
}
// 重写初始方法调用参数
@Override
public
void
initData
()
{
super
.
initData
();
/*给viewmodel传值的business设置值*/
/*报错行!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!*/
viewModel
.
businessId
=
businessId
;
// 创建RecyclerView的适配器
OrderUnitUnitAdapter
orderUnitUnitAdapter
=
new
OrderUnitUnitAdapter
(
this
);
Log
.
v
(
"这是传过来的getCommodityList的数据"
,
viewModel
.
orderDetailList
.
toString
());
viewModel
.
businessId
=
businessId
;
//把adapterset进去
...
...
@@ -55,28 +76,79 @@ public class OrderDetailActivity extends BaseActivity<ActivityOrderDetailBinding
orderUnitUnitAdapter
.
notifyDataSetChanged
();
}
});
// 调用ViewModel的方法来刷新昵称
((
OrderDetailViewModel
)
viewModel
).
refreshNickName
();
/*控制台拿到了图片路径了*/
/*如果图片有刷新就会进行更新*/
viewModel
.
getStoreImageUrl
().
observe
(
this
,
new
Observer
<
String
>()
{
@Override
public
void
onChanged
(
String
imageUrl
)
{
if
(
imageUrl
!=
null
)
{
Glide
.
with
(
OrderDetailActivity
.
this
)
.
load
(
baseImgUrl
+
imageUrl
)
.
into
(
binding
.
imageStore
);
}
}
});
/*调用接口*/
viewModel
.
getOrderDetailInfo
();
/*订单状态-待付款*/
if
(
StaticData
.
statusObligation
==
1
)
{
if
(
StaticData
.
statusData
==
1
)
{
/*状态位回显*/
binding
.
statusObligationId
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
binding
.
statusObligationId
.
setVisibility
(
View
.
GONE
);
viewModel
.
payMsgVisible
.
set
(
View
.
GONE
);
}
/*订单状态-已完成*/
if
(
StaticData
.
statusCompleted
==
1
)
{
if
(
StaticData
.
statusData
==
2
)
{
viewModel
.
payMsgVisible
.
set
(
View
.
VISIBLE
);
/*状态位回显*/
binding
.
statusCompletedId
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
binding
.
statusCompletedId
.
setVisibility
(
View
.
GONE
);
/*付款时间label显示*/
binding
.
tvAodTitlePayTime
.
setVisibility
(
View
.
VISIBLE
);
/*收银员显示*/
binding
.
cashier
.
setVisibility
(
View
.
VISIBLE
);
}
/*订单状态-已关闭*/
if
(
StaticData
.
statusClosed
==
1
)
{
if
(
StaticData
.
statusData
==
3
)
{
viewModel
.
payMsgVisible
.
set
(
View
.
VISIBLE
);
/*状态位回显*/
binding
.
statusClosedId
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
binding
.
statusClosedId
.
setVisibility
(
View
.
GON
E
);
/*关闭时间label显示*/
binding
.
tvAodTitleCloseTime
.
setVisibility
(
View
.
VISIBL
E
);
}
viewModel
.
CouponLists
.
observe
(
this
,
new
Observer
<
List
<
OrderDetailBean
.
CouponLists
>>()
{
@Override
public
void
onChanged
(
List
<
OrderDetailBean
.
CouponLists
>
couponLists
)
{
binding
.
llAodCouponList
.
removeAllViews
();
View
view
=
LayoutInflater
.
from
(
binding
.
llAodCouponList
.
getContext
()).
inflate
(
R
.
layout
.
item_coupon_msg
,
binding
.
llAodCouponList
);
TextView
tv_title
=
view
.
findViewById
(
R
.
id
.
tv_icm_title
);
TextView
tv_context
=
view
.
findViewById
(
R
.
id
.
tv_icm_context
);
tv_title
.
setText
(
"优惠金额"
);
tv_context
.
setText
(
CommUtilsKt
.
priceSTrUtils
(
0.0
));
if
(
couponLists
!=
null
&&
couponLists
.
size
()>
0
)
{
for
(
OrderDetailBean
.
CouponLists
data
:
couponLists
)
{
if
(
data
.
getCouponType
().
equals
(
"1"
))
{
tv_context
.
setText
(
CommUtilsKt
.
priceSTrUtils
(
data
.
getDiscountAmount
()));
}
else
{
View
cview
=
LayoutInflater
.
from
(
binding
.
llAodCouponList
.
getContext
()).
inflate
(
R
.
layout
.
item_coupon_msg
,
binding
.
llAodCouponList
);
TextView
ctv_title
=
view
.
findViewById
(
R
.
id
.
tv_icm_title
);
TextView
ctv_context
=
view
.
findViewById
(
R
.
id
.
tv_icm_context
);
ctv_title
.
setText
(
"赠品"
);
ctv_context
.
setText
(
data
.
getGiftName
());
}
}
}
}
});
}
@Override
...
...
app/src/main/res/layout/fragment_huanbohai.xml
View file @
ae77f9c9
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:binding=
"http://schemas.android.com/apk/res-auto"
xmlns:binding=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
>
<data>
...
...
hbhbcompany/src/main/java/com/xx/hbhbcompany/data/http/ApiService.kt
View file @
ae77f9c9
This diff is collapsed.
Click to expand it.
hbhbcompany/src/main/java/com/xx/hbhbcompany/ui/activities/ActivitiesActivity.java
View file @
ae77f9c9
package
com
.
xx
.
hbhbcompany
.
ui
.
activities
;
import
static
me
.
goldze
.
mvvmhabit
.
utils
.
Utils
.
getContext
;
import
android.os.Bundle
;
import
android.view.View
;
import
androidx.annotation.NonNull
;
import
androidx.lifecycle.Observer
;
import
com.google.android.material.bottomnavigation.BottomNavigationView
;
import
com.scwang.smart.refresh.layout.api.RefreshLayout
;
import
com.scwang.smart.refresh.layout.listener.OnLoadMoreListener
;
import
com.scwang.smart.refresh.layout.listener.OnRefreshListener
;
import
com.xx.hbhbcompany.BR
;
import
com.xx.hbhbcompany.R
;
import
com.xx.hbhbcompany.data.http.requst.ActivitiesRequest
;
import
com.xx.hbhbcompany.data.http.requst.HomeRequest
;
import
com.xx.hbhbcompany.data.http.respons.ActivityCenterBean
;
import
com.xx.hbhbcompany.databinding.ActivityActivitiesListBinding
;
import
com.xx.hbhbcompany.databinding.ActivityActivitiesListBindingImpl
;
import
com.xx.hbhbcompany.fragment.adapter.ActivitiesCenterListAdapter
;
import
com.xx.hbhbcompany.ui.home.HomeFragment
;
import
com.xx.hbhbcompany.ui.home.HomeViewModel
;
import
java.util.List
;
import
me.goldze.mvvmhabit.base.BaseActivity
;
import
me.tatarka.bindingcollectionadapter2.BR
;
public
class
ActivitiesActivity
extends
BaseActivity
<
ActivityActivitiesListBinding
,
ActivitiesViewModel
>
{
public
class
ActivitiesActivity
extends
BaseActivity
<
ActivityActivitiesListBinding
,
ActivitiesViewModel
>
implements
OnRefreshListener
,
OnLoadMoreListener
{
@Override
public
int
initContentView
(
Bundle
savedInstanceState
)
{
return
R
.
layout
.
activity_activities_list
;
...
...
@@ -38,26 +36,67 @@ public class ActivitiesActivity extends BaseActivity<ActivityActivitiesListBindi
@Override
public
void
initData
()
{
super
.
initData
();
viewModel
.
getActivityCenterList
();
binding
.
refresh
.
setOnRefreshListener
(
this
);
binding
.
refresh
.
setOnLoadMoreListener
(
this
);
//展示活动列表
ActivitiesCenterListAdapter
a
dapter
=
new
ActivitiesCenterListAdapter
(
this
);
viewModel
.
activityCenterListA
dapter
=
new
ActivitiesCenterListAdapter
(
this
);
binding
.
rvDblList
.
setAdapter
(
a
dapter
);
binding
.
rvDblList
.
setAdapter
(
viewModel
.
activityCenterListA
dapter
);
viewModel
.
ActivityCenterList
.
observe
(
this
,
new
Observer
<
List
<
ActivityCenterBean
>>()
{
@Override
public
void
onChanged
(
List
<
ActivityCenterBean
>
activityCenterBeanList
)
{
a
dapter
.
mList
=
activityCenterBeanList
;
a
dapter
.
notifyDataSetChanged
();
viewModel
.
activityCenterListA
dapter
.
mList
=
activityCenterBeanList
;
viewModel
.
activityCenterListA
dapter
.
notifyDataSetChanged
();
}
});
viewModel
.
loadMoreStatic
.
observe
(
this
,
new
Observer
<
Integer
>()
{
@Override
public
void
onChanged
(
Integer
it
)
{
if
(
it
==
1
)
{
/*隐藏recycleView和它的暂无数据列表*/
binding
.
rvDblList
.
setVisibility
(
View
.
VISIBLE
);
binding
.
llNoData
.
setVisibility
(
View
.
GONE
);
/*结束加载*/
binding
.
refresh
.
finishLoadMore
();
}
else
if
(
it
==
2
)
{
/*隐藏recycleView和它的暂无数据列表*/
binding
.
rvDblList
.
setVisibility
(
View
.
VISIBLE
);
binding
.
llNoData
.
setVisibility
(
View
.
GONE
);
/*结束加载*/
binding
.
refresh
.
finishLoadMoreWithNoMoreData
();
}
else
if
(
it
==
3
)
{
/*显示recycleView和它的暂无数据列表*/
binding
.
rvDblList
.
setVisibility
(
View
.
GONE
);
binding
.
llNoData
.
setVisibility
(
View
.
VISIBLE
);
binding
.
refresh
.
setEnableLoadMore
(
false
);
}
binding
.
refresh
.
finishRefresh
();
}
});
viewModel
.
getActivityCenterList
();
}
@Override
public
ActivitiesViewModel
initViewModel
()
{
ActivitiesRequest
lm
=
new
ActivitiesRequest
();
return
new
ActivitiesViewModel
(
getApplication
(),
lm
);
}
@Override
public
void
onLoadMore
(
RefreshLayout
refreshLayout
)
{
viewModel
.
page
++;
viewModel
.
getActivityCenterList
();
}
@Override
public
void
onRefresh
(
@NonNull
RefreshLayout
refreshLayout
)
{
viewModel
.
page
=
1
;
viewModel
.
getActivityCenterList
();
binding
.
refresh
.
setEnableFooterFollowWhenNoMoreData
(
true
);
}
}
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