Kaynağa Gözat

1.添加接口请求

王鹏鹏 2 yıl önce
ebeveyn
işleme
97d3a7be4b

+ 1 - 1
.idea/misc.xml

@@ -27,7 +27,7 @@
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/selector_train_report_tab_right.xml" value="0.2265" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/drawable/tips_shadow_bg.xml" value="0.2265" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_train_data.xml" value="0.4700413223140496" />
-        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_workbenches.xml" value="0.8" />
+        <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/activity_workbenches.xml" value="0.264" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/fragment_train_report.xml" value="0.22826086956521738" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_game_list.xml" value="0.22826086956521738" />
         <entry key="..\:/workspace/hcp-pad/workbenches/src/main/res/layout/item_train_report.xml" value="0.536" />

+ 2 - 2
baselib/build.gradle

@@ -33,7 +33,7 @@ android {
             minifyEnabled false
             buildConfigField "Boolean", "SINGLE_MODULE","${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"ad3db4d529\""
-            buildConfigField "String", "API_URL", "\"https://v0.yiketianqi.com\""
+            buildConfigField "String", "API_URL", "\"http://60.205.201.7:8110\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
 
@@ -41,7 +41,7 @@ android {
             minifyEnabled false
             buildConfigField "Boolean", "SINGLE_MODULE","${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"ad3db4d529\""
-            buildConfigField "String", "API_URL", "\"https://v0.yiketianqi.com\""
+            buildConfigField "String", "API_URL", "\"http://60.205.201.7:8110\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
     }

+ 1 - 0
baselib/src/main/java/com/yingyangfly/baselib/net/BaseNetWork.kt

@@ -48,6 +48,7 @@ object BaseNetWork {
 //                        if (isLibTypeDoctor()) header("version", "V1") else header("api-version", "v1")
                     }
 //                    .header("Authorization", "Bearer ${XUser.getLoginToken()}")
+                    .header("Content-Type", "application/json")
                     .method(newOriginal.method, newOriginal.body)
                     .build()
                 val response = chain.proceed(request)

+ 37 - 9
workbenches/src/main/java/com/yingyang/workbenches/WorkbenchesActivity.kt

@@ -16,6 +16,10 @@ import com.yingyangfly.baselib.utils.JumpUtil
 @Route(path = RouterUrlCommon.workbenches)
 class WorkbenchesActivity : BaseMVVMActivity<ActivityWorkbenchesBinding, WorkbenchesViewModel>() {
 
+    /**
+     * 第几页
+     */
+    private var page = 0
     private var gameList = mutableListOf<String>()
 
     /**
@@ -24,14 +28,10 @@ class WorkbenchesActivity : BaseMVVMActivity<ActivityWorkbenchesBinding, Workben
     private val gameAdapter by lazy { GameAdapter() }
 
     override fun initViews() {
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
-        gameList.add("泡泡马特")
+        binding {
+            swipeGame.setEnableRefresh(true)
+            swipeGame.setEnableLoadMore(true)
+        }
         binding {
             rvGame.layoutManager = GridLayoutManager(this@WorkbenchesActivity, 4)
             rvGame.adapter = gameAdapter
@@ -51,7 +51,10 @@ class WorkbenchesActivity : BaseMVVMActivity<ActivityWorkbenchesBinding, Workben
                         )
                     }
                     2 -> {
-                        JumpUtil.jumpActivityWithUrl(RouterUrlCommon.load_web_view, "http://60.205.201.7/cocos/mobile/whacaMole/")
+                        JumpUtil.jumpActivityWithUrl(
+                            RouterUrlCommon.load_web_view,
+                            "http://60.205.201.7/cocos/mobile/whacaMole/"
+                        )
                     }
                     else -> {
                         JumpUtil.jumpActivityWithUrl(
@@ -114,7 +117,32 @@ class WorkbenchesActivity : BaseMVVMActivity<ActivityWorkbenchesBinding, Workben
     }
 
     override fun initData() {
+        binding {
+            swipeGame.setOnRefreshListener {
+                loadData(true)
+            }
 
+            swipeGame.setOnLoadMoreListener {
+                loadData(false)
+            }
+        }
+        loadData(true)
+    }
+
+    /**
+     * 加载游戏数据
+     */
+    private fun loadData(isRefresh: Boolean) {
+        if (isRefresh) {
+            page = 0
+        } else {
+            page++
+        }
+        viewModel.loadData(page) { success: Unit ->
+            {
+
+            }
+        }
     }
 
 }

+ 8 - 2
workbenches/src/main/java/com/yingyang/workbenches/WorkbenchesViewModel.kt

@@ -11,8 +11,14 @@ import com.yingyangfly.baselib.mvvm.BaseViewModel
  */
 class WorkbenchesViewModel : BaseViewModel() {
 
-    fun worldchina(
+    fun loadData(
+        page: Int,
         fail: ((msg: String) -> Unit)? = null,
         success: ((success: Unit) -> Unit)? = null,
-    ) = launchFlow(false) { WORKBENCHES_API.worldchina("59627348", "PXViwP53") }.runUI(success, fail)
+    ) = launchFlow(false) {
+        WORKBENCHES_API.getGameList(page.toString(), "12")
+    }.runUI(
+        success,
+        fail
+    )
 }

+ 9 - 2
workbenches/src/main/java/com/yingyang/workbenches/net/WorkbenchesApiService.kt

@@ -2,10 +2,17 @@ package com.yingyang.workbenches.net
 
 import com.yingyangfly.baselib.net.BaseResp
 import retrofit2.http.GET
+import retrofit2.http.POST
 import retrofit2.http.Query
 
 interface WorkbenchesApiService {
 
-    @GET("api/worldchina")
-    suspend fun worldchina(@Query("appid") appid: String, @Query("appsecret") appsecret: String): BaseResp<Unit>
+    /**
+     * 获取首页游戏列表
+     */
+    @POST("game/list")
+    suspend fun getGameList(
+        @Query("page") page: String,
+        @Query("limit") limit: String
+    ): BaseResp<Unit>
 }

+ 12 - 8
workbenches/src/main/res/layout/activity_workbenches.xml

@@ -153,15 +153,21 @@
             android:layout_marginTop="@dimen/divider_5px"
             android:orientation="horizontal">
 
-            <androidx.recyclerview.widget.RecyclerView
-                android:id="@+id/rvGame"
+            <com.scwang.smartrefresh.layout.SmartRefreshLayout
+                android:id="@+id/swipeGame"
                 android:layout_width="0dp"
                 android:layout_height="match_parent"
                 android:layout_marginStart="@dimen/divider_48px"
                 android:layout_marginTop="@dimen/divider_12px"
-                android:layout_weight="1"
-                tools:ignore="NestedWeights"
-                tools:listitem="@layout/item_game_list" />
+                android:layout_weight="1">
+
+                <androidx.recyclerview.widget.RecyclerView
+                    android:id="@+id/rvGame"
+                    android:layout_width="match_parent"
+                    android:layout_height="match_parent"
+                    tools:listitem="@layout/item_game_list" />
+
+            </com.scwang.smartrefresh.layout.SmartRefreshLayout>
 
             <androidx.cardview.widget.CardView
                 android:layout_width="@dimen/divider_200px"
@@ -194,7 +200,6 @@
                         android:layout_width="wrap_content"
                         android:layout_height="wrap_content"
                         android:layout_marginTop="@dimen/divider_9px"
-                        android:text="968"
                         android:textColor="@android:color/white"
                         android:textSize="@dimen/divider_34px"
                         android:textStyle="bold" />
@@ -212,7 +217,6 @@
                         android:layout_height="0dp"
                         android:layout_marginTop="@dimen/divider_9px"
                         android:layout_weight="1"
-                        android:text="50分钟"
                         android:textColor="@android:color/white"
                         android:textSize="@dimen/divider_32px"
                         android:textStyle="bold" />
@@ -221,9 +225,9 @@
                         android:id="@+id/btnCheck"
                         android:layout_width="@dimen/divider_140px"
                         android:layout_height="@dimen/divider_50px"
+                        android:layout_marginBottom="@dimen/divider_38px"
                         android:background="@drawable/bg_check_button"
                         android:text="@string/view"
-                        android:layout_marginBottom="@dimen/divider_38px"
                         android:textColor="@color/color_FF3B92DC"
                         android:textSize="@dimen/divider_28px" />