diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1faf6c8..6f6ae0d 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -295,6 +295,16 @@
android:configChanges="keyboardHidden|orientation|locale"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustPan|stateHidden" />
+
+
() {
+ override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: ProBean?) {
+ holder.run {
+ setText(R.id.tvProTitle, item?.problemName)
+ setText(R.id.tvContent, item?.problemDesc)
+ setText(R.id.tvNum, """${position + 1}""")
+ }
+ }
+
+ override fun onCreateViewHolder(
+ context: Context,
+ parent: ViewGroup,
+ viewType: Int
+ ) = QuickViewHolder(R.layout.item_com_pro, parent)
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/dahe/gldriver/base/AppConfig.kt b/app/src/main/java/com/dahe/gldriver/base/AppConfig.kt
index 53e9260..c0e3a5a 100644
--- a/app/src/main/java/com/dahe/gldriver/base/AppConfig.kt
+++ b/app/src/main/java/com/dahe/gldriver/base/AppConfig.kt
@@ -10,6 +10,7 @@ object AppConfig {
const val BUGLY_APP_ID = "0487c49b52"
const val TIME = "DA_HE_TIME"
const val ID = "DA_HE_ID"
+ const val DATA = "DA_HE_DATA"
const val PHONE = "DA_HE_PHONE"
const val ORDER_ID = "DA_HE_ORDER_ID"
const val CAR_ID = "DA_HE_CAR_ID"
diff --git a/app/src/main/java/com/dahe/gldriver/base/WebActivity.kt b/app/src/main/java/com/dahe/gldriver/base/WebActivity.kt
index c2a6125..a730b69 100644
--- a/app/src/main/java/com/dahe/gldriver/base/WebActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/base/WebActivity.kt
@@ -142,6 +142,11 @@ class WebActivity : BaseActivity() {
super.onDestroy()
}
+ override fun onBackPressed() {
+// super.onBackPressed()
+ if (!mAgentWeb!!.back()) finish()
+ }
+
// internal class AndroidInterfaceWeb {
// @JavascriptInterface
diff --git a/app/src/main/java/com/dahe/gldriver/bean/ApiBean.kt b/app/src/main/java/com/dahe/gldriver/bean/ApiBean.kt
index bb8c25a..a1df354 100644
--- a/app/src/main/java/com/dahe/gldriver/bean/ApiBean.kt
+++ b/app/src/main/java/com/dahe/gldriver/bean/ApiBean.kt
@@ -29,3 +29,27 @@ data class RateBean(
val updateBy: String
)
+
+/**
+ * 常见问题bean
+ * @property isRecommend String
+ * @property isTop String
+ * @property problemDesc String
+ * @property problemId Int
+ * @property problemName String
+ * @property problemUrl String
+ * @property sortValue String
+ * @property status String
+ * @constructor
+ */
+data class ProBean(
+ val isRecommend: String,
+ val isTop: String,
+ val problemDesc: String,
+ val problemId: String,
+ val problemName: String,
+ val problemUrl: String,
+ val sortValue: String,
+ val status: String,
+ val contentData: String
+)
diff --git a/app/src/main/java/com/dahe/gldriver/net/Api.kt b/app/src/main/java/com/dahe/gldriver/net/Api.kt
index 4ab8972..3aad7f4 100644
--- a/app/src/main/java/com/dahe/gldriver/net/Api.kt
+++ b/app/src/main/java/com/dahe/gldriver/net/Api.kt
@@ -13,6 +13,7 @@ import com.dahe.gldriver.bean.OcrPersonBean
import com.dahe.gldriver.bean.OrderChild
import com.dahe.gldriver.bean.OrderDetailBean
import com.dahe.gldriver.bean.OssBean
+import com.dahe.gldriver.bean.ProBean
import com.dahe.gldriver.bean.RateBean
import com.dahe.gldriver.bean.UpBankInfoBean
import com.dahe.gldriver.bean.UpCaptain
@@ -458,6 +459,23 @@ interface Api {
fun orderPhoto(@Query("orderId") orderId: String): Observable>>
+ /**
+ * 常见问题列表
+ * @return Observable>>
+ */
+ @GET(BASE_URL + "driver/app/info/commonProblemList")
+ fun commonProblemList():Observable>>
+
+
+ /**
+ * 常见问题详情
+ * @param problemId String
+ * @return Observable>>
+ */
+ @GET(BASE_URL + "driver/app/info/commonProblemDetail")
+ fun commonProblemDetail(@Query("problemId") problemId :String):Observable>
+
+
companion object {
// String BASE_URL = "https://tmstest.dahehuoyun.com/";
const val BASE_URL = BuildConfig.BASE_URL
diff --git a/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt b/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt
index 6cac75c..123950a 100644
--- a/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt
+++ b/app/src/main/java/com/dahe/gldriver/net/RxHttpCallBack.kt
@@ -85,7 +85,7 @@ abstract class RxHttpCallBack {
dialog!!.dismiss()
}
if (t.code == 401) {
- instance.loginOut(mContext!!)
+// instance.loginOut(mContext!!)
// Intent intent = new Intent(mContext, LoginActivity.class);
// intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK);
// mContext.startActivity(intent);
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
index 3f215c5..94ba591 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/MineFragment.kt
@@ -7,24 +7,35 @@ import com.dahe.gldriver.adapter.GridItemAdapter
import com.dahe.gldriver.base.WebActivity
import com.dahe.gldriver.bean.GridBean
import com.dahe.gldriver.databinding.FragmentMineBinding
+import com.dahe.gldriver.net.BaseObserver
+import com.dahe.gldriver.net.DataManager
+import com.dahe.gldriver.net.RxHttpCallBack
import com.dahe.gldriver.ui.account.authperson.AuthPartyActivity
import com.dahe.gldriver.ui.mine.activity.CarTeamActivity
import com.dahe.gldriver.ui.mine.activity.CarsManActivity
+import com.dahe.gldriver.ui.mine.activity.ComProActivity
import com.dahe.gldriver.ui.mine.activity.DriverTeamsActivity
import com.dahe.gldriver.ui.mine.activity.PersonInfoActivity
import com.dahe.gldriver.ui.mine.activity.RateManActivity
+import com.dahe.gldriver.ui.mine.activity.RulesActivity
import com.dahe.gldriver.ui.mine.activity.WalletActivity
import com.dahe.gldriver.utils.SPUtils
+import com.dahe.gldriver.utils.UserUtils
+import com.dahe.glex.bean.UserBean
import com.dahe.mylibrary.base.BaseFragment
+import com.dahe.mylibrary.callback.RefreshCallBack
+import com.dahe.mylibrary.net.CommonResponseBean
import com.dahe.mylibrary.utils.ActivityUtils
import com.dahe.mylibrary.utils.BaseUtils
import com.dahe.mylibrary.utils.ImageLoader
import com.dahe.mylibrary.utils.PhoneFormatCheckUtils
import com.dahe.mylibrary.utils.ToastUtils
import com.tencent.bugly.crashreport.CrashReport
+import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
+import io.reactivex.rxjava3.schedulers.Schedulers
import kotlin.system.exitProcess
-class MineFragment : BaseFragment(), View.OnClickListener {
+class MineFragment : BaseFragment(), View.OnClickListener, RefreshCallBack {
private val tools = mutableListOf(
GridBean("车队管理", R.drawable.car_team),
GridBean("车辆管理", R.drawable.car_manage),
@@ -51,7 +62,7 @@ class MineFragment : BaseFragment(), View.OnClickListener {
override fun onFragmentFirstVisible() {
-
+ setRefresh(binding.refresh, this)
val userInfo = SPUtils.instance.getUserInfo(mContext)
if (userInfo != null) {
binding.run {
@@ -138,7 +149,7 @@ class MineFragment : BaseFragment(), View.OnClickListener {
}
3 -> {
- ActivityUtils.startActivity(mContext,RateManActivity::class.java)
+ ActivityUtils.startActivity(mContext, RateManActivity::class.java)
}
}
@@ -150,11 +161,11 @@ class MineFragment : BaseFragment(), View.OnClickListener {
private fun goPlats(pos: Int) {
when (pos) {
0 -> {
- ActivityUtils.startActivity(mContext, CarTeamActivity::class.java)
+ ActivityUtils.startActivity(mContext, RulesActivity::class.java)
}
1 -> {
- ActivityUtils.startActivity(mContext, CarsManActivity::class.java)
+ ActivityUtils.startActivity(mContext, ComProActivity::class.java)
}
2 -> {
@@ -187,5 +198,18 @@ class MineFragment : BaseFragment(), View.OnClickListener {
}
}
+ override fun getRefreshDate(stat: Int, page: Int, count: Int) {
+ DataManager.getInstance().getUserInfo()
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(BaseObserver(mContext, object : RxHttpCallBack() {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ UserUtils.instance.updateUser(mContext, t.data)
+ binding.refresh.finishRefresh()
+ }
+ }))
+ }
+
}
\ No newline at end of file
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProActivity.kt
new file mode 100644
index 0000000..a8e8cb7
--- /dev/null
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProActivity.kt
@@ -0,0 +1,74 @@
+package com.dahe.gldriver.ui.mine.activity
+
+import android.graphics.Color
+import android.os.Bundle
+import android.widget.LinearLayout
+import androidx.recyclerview.widget.LinearLayoutManager
+import androidx.recyclerview.widget.RecyclerView
+import com.dahe.gldriver.R
+import com.dahe.gldriver.adapter.CarsAdapter
+import com.dahe.gldriver.adapter.ComProAdatper
+import com.dahe.gldriver.base.AppConfig
+import com.dahe.gldriver.bean.ProBean
+import com.dahe.gldriver.databinding.ActivityComProBinding
+import com.dahe.gldriver.net.BaseObserver
+import com.dahe.gldriver.net.DataManager
+import com.dahe.gldriver.net.RxHttpCallBack
+import com.dahe.mylibrary.base.BaseActivity
+import com.dahe.mylibrary.net.CommonResponseBean
+import com.dahe.mylibrary.recycleviewswipe.RecycleViewDivider
+import com.dahe.mylibrary.utils.ActivityUtils
+import com.dahe.mylibrary.utils.ConvertUtils
+import com.google.gson.Gson
+import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
+import io.reactivex.rxjava3.schedulers.Schedulers
+
+/**
+ * @ClassName ComProActivity
+ * @Author john
+ * @Date 2024/3/25 16:42
+ * @Description 常见问题
+ */
+class ComProActivity : BaseActivity() {
+
+ lateinit var adapter: ComProAdatper
+ override fun initView(savedInstanceState: Bundle?) {
+ setStatusBarColor(R.color.white)
+ setTitleBar("常见问题", true)
+ binding.run {
+ adapter = recycler.run {
+ layoutManager = LinearLayoutManager(mContext, RecyclerView.VERTICAL, false)
+ addItemDecoration(
+ RecycleViewDivider(
+ LinearLayout.VERTICAL,
+ ConvertUtils.dp2px(10.0f),
+ Color.TRANSPARENT
+ )
+ )
+ adapter = ComProAdatper()
+ adapter as ComProAdatper
+ }.apply {
+ setOnItemClickListener { _, _, position ->
+ ActivityUtils.startActivity(
+ mContext,
+ ComProDetailActivity::class.java,
+ Bundle().apply {
+ putString(AppConfig.DATA, Gson().toJson(items[position]))
+ })
+ }
+ }
+ }
+ }
+
+ override fun initDate() {
+ DataManager.getInstance().commonProblemList()
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(BaseObserver(mContext, object : RxHttpCallBack>() {
+ override fun onSuccess(t: CommonResponseBean>) {
+ super.onSuccess(t)
+ adapter.submitList(t.data)
+ }
+ }))
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProDetailActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProDetailActivity.kt
new file mode 100644
index 0000000..6aa2a22
--- /dev/null
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/ComProDetailActivity.kt
@@ -0,0 +1,50 @@
+package com.dahe.gldriver.ui.mine.activity
+
+import android.os.Bundle
+import android.text.Html
+import com.dahe.gldriver.R
+import com.dahe.gldriver.base.AppConfig.DATA
+import com.dahe.gldriver.bean.ProBean
+import com.dahe.gldriver.databinding.ActivityComProDetailBinding
+import com.dahe.gldriver.net.BaseObserver
+import com.dahe.gldriver.net.DataManager
+import com.dahe.gldriver.net.RxHttpCallBack
+import com.dahe.mylibrary.base.BaseActivity
+import com.dahe.mylibrary.net.CommonResponseBean
+import com.google.gson.Gson
+import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers
+import io.reactivex.rxjava3.schedulers.Schedulers
+
+/**
+ * @ClassName ComProActivity
+ * @Author john
+ * @Date 2024/3/25 16:42
+ * @Description 问题详情
+ */
+class ComProDetailActivity : BaseActivity() {
+
+ override fun initView(savedInstanceState: Bundle?) {
+ setStatusBarColor(R.color.white)
+ setTitleBar("常见问题", true)
+ }
+
+ override fun initDate() {
+ var proBean = Gson().fromJson(intent.extras?.getString(DATA), ProBean::class.java)
+
+ binding.run {
+ tvTitle.text = proBean.problemName
+ }
+
+ DataManager.getInstance().commonProblemDetail(proBean.problemId)
+ .subscribeOn(Schedulers.io())
+ .observeOn(AndroidSchedulers.mainThread())
+ .subscribe(BaseObserver(mContext, object : RxHttpCallBack() {
+ override fun onSuccess(t: CommonResponseBean) {
+ super.onSuccess(t)
+ binding.run {
+ tvContent.text = Html.fromHtml(t.data.contentData)
+ }
+ }
+ }))
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RateManActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RateManActivity.kt
index a73088b..6568937 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RateManActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RateManActivity.kt
@@ -37,7 +37,7 @@ import net.lucode.hackware.magicindicator.buildins.commonnavigator.titles.ColorT
* @ClassName RateManActivity
* @Author john
* @Date 2024/3/18 08:51
- * @Description TODO
+ * @Description 评价管理
*/
class RateManActivity : BaseActivity() {
diff --git a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RulesActivity.kt b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RulesActivity.kt
index f4e463e..74adf2f 100644
--- a/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RulesActivity.kt
+++ b/app/src/main/java/com/dahe/gldriver/ui/mine/activity/RulesActivity.kt
@@ -2,8 +2,10 @@ package com.dahe.gldriver.ui.mine.activity
import android.os.Bundle
import com.dahe.gldriver.R
+import com.dahe.gldriver.base.WebActivity
import com.dahe.gldriver.databinding.ActivityRulesBinding
import com.dahe.mylibrary.base.BaseActivity
+import com.dahe.mylibrary.utils.ActivityUtils
/**
* @ClassName RulesActivity
@@ -15,6 +17,24 @@ class RulesActivity : BaseActivity() {
override fun initView(savedInstanceState: Bundle?) {
setStatusBarColor(R.color.white)
setTitleBar("平台规则",true)
+ binding.run {
+ rlOne.setOnClickListener {
+ ActivityUtils.startActivity(mContext,WebActivity::class.java,Bundle().apply {
+ putString("url","www.baidu.com")
+ putString("title","百度")
+ })
+ }
+ rlTwo.setOnClickListener {
+ ActivityUtils.startActivity(mContext,WebActivity::class.java,Bundle().apply {
+ putString("url","www.baidu.com")
+ })
+ }
+ rlThree.setOnClickListener {
+ ActivityUtils.startActivity(mContext,WebActivity::class.java,Bundle().apply {
+ putString("url","www.baidu.com")
+ })
+ }
+ }
}
override fun initDate() {
diff --git a/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt b/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt
index cfe37c0..0508eb8 100644
--- a/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt
+++ b/app/src/main/java/com/dahe/gldriver/utils/UserUtils.kt
@@ -51,6 +51,17 @@ class UserUtils private constructor(){
)
}
ActivityUtils.finishToActivity(LoginActivity::class.java,true)
+ }
+
+ /**
+ * 更新当前用户
+ * @param context Context
+ * @param userBean UserBean
+ */
+ fun updateUser(context: Context,userBean: UserBean){
+ SPUtils.instance.setUserInfo(context, Gson().toJson(userBean))
+ //设置推送别名
+ PushHelper.setAlias(context,userBean)
}
}
\ No newline at end of file
diff --git a/app/src/main/res/drawable-xxhdpi/bg_com_pro.png b/app/src/main/res/drawable-xxhdpi/bg_com_pro.png
new file mode 100644
index 0000000..e31f623
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/bg_com_pro.png differ
diff --git a/app/src/main/res/drawable-xxhdpi/icon_pro.png b/app/src/main/res/drawable-xxhdpi/icon_pro.png
new file mode 100644
index 0000000..2a274b4
Binary files /dev/null and b/app/src/main/res/drawable-xxhdpi/icon_pro.png differ
diff --git a/app/src/main/res/layout/activity_com_pro.xml b/app/src/main/res/layout/activity_com_pro.xml
new file mode 100644
index 0000000..836d42c
--- /dev/null
+++ b/app/src/main/res/layout/activity_com_pro.xml
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_com_pro_detail.xml b/app/src/main/res/layout/activity_com_pro_detail.xml
new file mode 100644
index 0000000..f291d10
--- /dev/null
+++ b/app/src/main/res/layout/activity_com_pro_detail.xml
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_rules.xml b/app/src/main/res/layout/activity_rules.xml
index e90807a..97d94e6 100644
--- a/app/src/main/res/layout/activity_rules.xml
+++ b/app/src/main/res/layout/activity_rules.xml
@@ -14,6 +14,7 @@
android:orientation="vertical">
+ android:text="好运平台V2.0已成功上线啦!">
diff --git a/app/src/main/res/layout/fragment_mine.xml b/app/src/main/res/layout/fragment_mine.xml
index f691a5a..2a16650 100644
--- a/app/src/main/res/layout/fragment_mine.xml
+++ b/app/src/main/res/layout/fragment_mine.xml
@@ -1,298 +1,305 @@
-
+ app:srlEnableLoadMore="false">
-
-
-
-
-
-
-
+ android:layout_height="match_parent">
+
+ android:id="@+id/headContent"
+ android:layout_width="match_parent"
+ android:layout_height="@dimen/dp_210"
+ android:background="@drawable/mine_bg"
+ android:orientation="horizontal"
+ android:paddingTop="@dimen/dp_60">
+
+
+
+
+ android:orientation="vertical">
-
+ android:gravity="center_vertical"
+ android:orientation="horizontal">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-
-
-
+ android:layout_marginTop="@dimen/dp_18"
+ android:layout_marginRight="@dimen/dp_15"
+ android:background="@drawable/right" />
-
+ android:background="@drawable/shape_white_12"
+ android:padding="@dimen/sp_16">
-
+
-
-
-
-
-
-
-
+
+ android:layout_alignParentBottom="true"
+ android:orientation="horizontal">
-
+ android:layout_weight="1"
+ android:gravity="center"
+ android:orientation="vertical">
-
+
+
+
+
+
- android:textColor="@color/color_9"
- android:textSize="@dimen/sp_12">
+
+
+
+
+
+
+
+
+
+
+
-
-
+
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ android:layout_height="@dimen/dp_120"
+ android:layout_below="@+id/rlMoney"
+ android:layout_marginLeft="@dimen/dp_15"
+ android:layout_marginTop="@dimen/dp_12"
+ android:layout_marginRight="@dimen/dp_15"
+ android:background="@drawable/shape_white_12">
+
+
-
-
-
-
-
+
-
+
+
+ android:layout_height="@dimen/dp_190"
+ android:layout_below="@+id/rlTools"
+ android:layout_marginLeft="@dimen/dp_15"
+ android:layout_marginTop="@dimen/dp_12"
+ android:layout_marginRight="@dimen/dp_15"
+ android:background="@drawable/shape_white_12">
+
+
+
+
+
+
+
-
-
+
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_com_pro.xml b/app/src/main/res/layout/item_com_pro.xml
new file mode 100644
index 0000000..fb8497f
--- /dev/null
+++ b/app/src/main/res/layout/item_com_pro.xml
@@ -0,0 +1,59 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file