Browse Source

1.添加获取首页轮播图接口

王鹏鹏 1 year ago
parent
commit
93da0ae2f8

+ 2 - 2
baselib/build.gradle

@@ -37,7 +37,7 @@ android {
             buildConfigField "String", "TENCENT_LICENCEKEY", "\"0258811f9d756fea82c9a2d2cbd439bd\""
             buildConfigField "Boolean", "SINGLE_MODULE", "${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"d400f20398\""
-            buildConfigField "String", "API_URL", "\"http://192.168.0.66:7112\""
+            buildConfigField "String", "API_URL", "\"http://192.168.0.128:7112\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
 
@@ -48,7 +48,7 @@ android {
             buildConfigField "String", "TENCENT_LICENCEKEY", "\"0258811f9d756fea82c9a2d2cbd439bd\""
             buildConfigField "Boolean", "SINGLE_MODULE", "${singleModule}"
             buildConfigField "String", "BUGLY_APPID", "\"ad3db4d529\""
-            buildConfigField "String", "API_URL", "\"http://192.168.0.66:7112\""
+            buildConfigField "String", "API_URL", "\"http://192.168.0.128:7112\""
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }
     }

+ 20 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/entity/SlideShowListBean.kt

@@ -0,0 +1,20 @@
+package com.yingyangfly.evaluation.entity
+
+/**
+ * 首页轮播图
+ */
+data class SlideShowListBean(
+    val createBy: String,
+    val createTime: String,
+    val equipmentType: String,
+    val id: String,
+    val imgUrl: String,
+    val location: String,
+    val orgCode: String,
+    val orgName: String,
+    val speed: Int,
+    val status: String,
+    val targetLinkUrl: String,
+    val updateBy: String,
+    val updateTime: String
+)

+ 6 - 5
evaluation/src/main/java/com/yingyangfly/evaluation/hospital/GuidePageAdapter.java

@@ -12,6 +12,7 @@ import androidx.recyclerview.widget.RecyclerView;
 import com.yingyangfly.baselib.utils.GlideImgUtil;
 import com.yingyangfly.baselib.utils.ViewTool;
 import com.yingyangfly.evaluation.R;
+import com.yingyangfly.evaluation.entity.SlideShowListBean;
 import com.youth.banner.adapter.BannerAdapter;
 
 import java.util.List;
@@ -22,16 +23,16 @@ import java.util.List;
  * @copyright (C) 2019-2022, XiaoLiu All Rights Reserved
  * @description 轮播图适配器
  */
-public class GuidePageAdapter extends BannerAdapter<String, GuidePageAdapter.HomeBannerHolder> {
+public class GuidePageAdapter extends BannerAdapter<SlideShowListBean, GuidePageAdapter.HomeBannerHolder> {
 
     private Context mContext;
 
-    public GuidePageAdapter(List<String> datas, Context mContext) {
+    public GuidePageAdapter(List<SlideShowListBean> datas, Context mContext) {
         this(datas);
         this.mContext = mContext;
     }
 
-    public GuidePageAdapter(List<String> datas) {
+    public GuidePageAdapter(List<SlideShowListBean> datas) {
         super(datas);
     }
 
@@ -43,8 +44,8 @@ public class GuidePageAdapter extends BannerAdapter<String, GuidePageAdapter.Hom
     }
 
     @Override
-    public void onBindView(HomeBannerHolder holder, String data, int position, int size) {
-        GlideImgUtil.loadImg(mContext, data, holder.img);
+    public void onBindView(HomeBannerHolder holder, SlideShowListBean data, int position, int size) {
+        GlideImgUtil.loadImg(mContext, data.getImgUrl(), holder.img);
     }
 
     public class HomeBannerHolder extends RecyclerView.ViewHolder {

+ 22 - 11
evaluation/src/main/java/com/yingyangfly/evaluation/hospital/HospitalActivity.kt

@@ -18,6 +18,7 @@ import com.yingyangfly.baselib.utils.JumpUtil
 import com.yingyangfly.baselib.utils.User
 import com.yingyangfly.evaluation.R
 import com.yingyangfly.evaluation.databinding.ActivityHospitalBinding
+import com.yingyangfly.evaluation.entity.SlideShowListBean
 import com.youth.banner.indicator.RectangleIndicator
 
 /**
@@ -27,24 +28,14 @@ import com.youth.banner.indicator.RectangleIndicator
 class HospitalActivity : BaseTvMVVMActivity<ActivityHospitalBinding, HospitalViewModel>(),
     View.OnTouchListener {
 
-    private var str1 = "https://15463311.s21i.faiusr.com/4/ABUIABAEGAAgiOzT0AUo6vfflwQwgA84ggQ.png"
-    private var str2 =
-        "https://hbimg.b0.upaiyun.com/2540097570159b23e684f267ad6de80681e026f23e7f4-be6kp2_fw658"
-    private var str3 = "https://img.zcool.cn/community/0137015b23fd90a8012034f7594657.jpg@2o.jpg"
-    private var str4 =
-        "https://img0.baidu.com/it/u=4041408584,4001157003&fm=253&fmt=auto&app=138&f=JPEG"
     private lateinit var adapterGuide: GuidePageAdapter
-    private var imageList = mutableListOf<String>()
+    private var imageList = mutableListOf<SlideShowListBean>()
 
     private var reviewTaskId = ""
     private var taskId = ""
 
     @SuppressLint("SetTextI18n")
     override fun initViews() {
-        imageList.add(str1)
-        imageList.add(str2)
-        imageList.add(str3)
-        imageList.add(str4)
         adapterGuide = GuidePageAdapter(imageList, mContext)
         binding.guide.addBannerLifecycleObserver(this)?.setAdapter(adapterGuide)?.indicator =
             RectangleIndicator(mContext)
@@ -63,6 +54,7 @@ class HospitalActivity : BaseTvMVVMActivity<ActivityHospitalBinding, HospitalVie
     }
 
     override fun initData() {
+
     }
 
     @SuppressLint("ClickableViewAccessibility")
@@ -118,6 +110,25 @@ class HospitalActivity : BaseTvMVVMActivity<ActivityHospitalBinding, HospitalVie
             binding.imageLoginOut.show(true)
             binding.tvLoginOut.show(true)
         }
+        getSlideShowList()
+    }
+
+    /**
+     * 获取轮播图
+     */
+    @SuppressLint("NotifyDataSetChanged")
+    private fun getSlideShowList() {
+        viewModel.getSlideShowList(Build.SERIAL, fail = {
+            it.toast()
+        }, success = {
+            imageList.clear()
+            if (it.isNullOrEmpty().not()) {
+                val data = it?.get(0)
+                binding.guide.setLoopTime(data!!.speed.toLong())
+                imageList.addAll(it)
+            }
+            adapterGuide.notifyDataSetChanged()
+        })
     }
 
     /**

+ 11 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/hospital/HospitalViewModel.kt

@@ -8,6 +8,7 @@ import com.yingyangfly.baselib.utils.GsonUtil
 import com.yingyangfly.evaluation.entity.QuestionsTypeBean
 import com.yingyangfly.evaluation.entity.ReviewTask
 import com.yingyangfly.evaluation.entity.ReviewTaskListBean
+import com.yingyangfly.evaluation.entity.SlideShowListBean
 import com.yingyangfly.evaluation.net.EVALUATION_API
 
 /**
@@ -72,4 +73,14 @@ class HospitalViewModel : BaseViewModel() {
     }.runUI(
         success, fail
     )
+
+    fun getSlideShowList(
+        sn: String,
+        fail: ((msg: String) -> Unit)? = null,
+        success: ((success: List<SlideShowListBean>?) -> Unit)? = null,
+    ) = launchFlow(true) {
+        EVALUATION_API.getSlideShowList("B", sn)
+    }.runUI(
+        success, fail
+    )
 }

+ 7 - 0
evaluation/src/main/java/com/yingyangfly/evaluation/net/EvaluationApiService.kt

@@ -78,4 +78,11 @@ interface EvaluationApiService {
     @POST("questionRecord/selectAnswerRecord")
     suspend fun getSelectAnswerRecord(@Body requestBody: RequestBody): BaseResp<SelectAnswerRecordBean>
 
+    /**
+     * 查询轮播图列表
+     */
+    @POST("slide-show/list")
+    suspend fun getSlideShowList(
+        @Query("equipmentType") equipmentType: String, @Query("sn") sn: String
+    ): BaseResp<List<SlideShowListBean>>
 }