Commit 17b50d23 by 万齐军

Merge branch 'feat/qj/confide_3' into 'd/v_confide_2.0'

feat: data class 修改

See merge request app_android_lib/YDL-Component!124
parents ffc414d4 3038c91f
package com.ydl.confide.home
import android.annotation.SuppressLint
import android.app.Activity
import android.content.Context
import android.graphics.Color
import android.net.Uri
......@@ -34,7 +33,6 @@ import com.ydl.confide.home.modular.service.ConfideWebServiceImpl
import com.ydl.confide.home.presenter.ConfideHomePresenterImpl
import com.ydl.confide.home.util.ConfideHomeUtils
import com.ydl.confide.home.widget.FilterItemDecoration
import com.ydl.confide.intro.VideoViewModel
import com.ydl.confide.router.PhoneCallIn
import com.ydl.webview.H5Params
import com.ydl.webview.NewH5Activity
......@@ -131,8 +129,14 @@ class ConfideHomeActivity :
private fun initParam() {
allFiltersBean = ConfideHomeAllFiltersBean(
page,
ConfideHomeFiterItemBean("1", ""),
ConfideHomeFiterItemBean("-1", ""),
ConfideHomeFiterItemBean().apply {
id = "-1"
name = ""
},
ConfideHomeFiterItemBean().apply {
id = "-1"
name = ""
},
ArrayList(),
ArrayList()
)
......
......@@ -7,65 +7,89 @@ package com.ydl.confide.home.bean
* @Company 壹点灵
* @date 2018/8/10
*/
data class ConfideHomeBodyBean(
class ConfideHomeBodyBean {
/**
* 公共参数
*/
val linkUrl : String?,
var linkUrl: String? = null
//倾诉Id
val confidedId : String?,
var confidedId: String? = null
//专家Id(专家编号)
val doctorId : String?,
var doctorId: String? = null
//专家的uid
val uid : Int?,
var uid: Int? = null
//咨询师姓名
val confidedName: String?,
val videoTitle: String?,
var confidedName: String? = null
var videoTitle: String? = null
//咨询师性别 1.男 2.女
val confideSex : Int = 1,
var confideSex: Int = 1
//对你留言
val confideContent : String?,
var confideContent: String? = null
//咨询师头像地址
val confidedIcon : String?,
var confidedIcon: String? = null
//是否在线 //1在线 2离线 3通话中 4继续倾诉
val confideLine : Int?,
var confideLine: Int? = null
//已聆听文案
val confideHearNum : String?,
var confideHearNum: String? = null
//历史倾听记录
val confideHistory : String?,
var confideHistory: String? = null
//是否为播放状态
var confideIsPlay : Boolean=false,
var confideIsPlay: Boolean = false
//音频播放地址
val confideVoice:String?,
var confideVoice: String? = null
//副标题(底部更多文案)
val subTitle : String?,
var subTitle: String? = null
//咨询师标题
val confidedTitle: String?,
val title: String?,
var confidedTitle: String? = null
var title: String? = null
//副标题点击事件
val subLinkUrl : String?,
var subLinkUrl: String? = null
//咨询师背景图片
val confideBgUrl : String?,
var confideBgUrl: String? = null
//价格
val confideFee : String?,
var confideFee: String? = null
//红包金额
val couponMoney : String?,
var couponMoney: String? = null
//新用户优惠文案
val couponText : String?,
val videoUrl: String?,
val coverVideoPicture: String?,
val coverPicture: String?,
var couponText: String? = null
var videoUrl: String? = null
var coverVideoPicture: String? = null
var coverPicture: String? = null
/**
* banner数据
*/
//banner id
val bannerId : String?,
var bannerId: String? = null
//banner 图片地址
val bannerImageUrl : String?,
var bannerImageUrl: String? = null
//banner标题(用于数据埋点)
val bannerTitle : String?,
var bannerTitle: String? = null
//跳转地址
val bannerLinkUrl : String?,
var bannerLinkUrl: String? = null
/**
* 最近倾诉数据说明(查看公共参数说明)
*/
......@@ -74,40 +98,47 @@ data class ConfideHomeBodyBean(
* 分类参数
*/
//分类Id
val categoryId : String?,
var categoryId: String? = null
//分类名称
val categoryName : String?,
var categoryName: String? = null
//分类类型(1.倾诉指南,2.专业师资)
val categoryType : Int?,
var categoryType: Int? = null
//分类图片地址
val categoryIcon : String?,
var categoryIcon: String? = null
//分类内容
val categoryContent : String?,
var categoryContent: String? = null
/**
* 为你推荐筛选模块数据
*/
//筛选标题
val filterName : String?,
var filterName: String? = null
//筛选类型(1.综合排序 2.性别年龄 3.擅长方向)
val filterType : Int?,
var filterType: Int? = null
//筛选数据集
val group : ArrayList<ConfideHomeBodyGroupItemBean>?,
var group: List<ConfideHomeBodyGroupItemBean>? = emptyList()
// //性别筛选标题
// val sexTitle : String?,
// var sexTitle : String?,
// //性别筛选数据集
// val sexData : ArrayList<ConfideHomeFiterItemBean>?,
// var sexData : ArrayList<ConfideHomeFiterItemBean>?,
// //年龄筛选标题
// val ageTitle : String?,
// var ageTitle : String?,
// //年龄筛选数据集
// val ageData : ArrayList<ConfideHomeFiterItemBean>?,
// var ageData : ArrayList<ConfideHomeFiterItemBean>?,
// //擅长方向标题
// val goodTitle : String?,
// var goodTitle : String?,
// //擅长方向筛选数据集
// val goodData : ArrayList<ConfideHomeFiterItemBean>?,
// var goodData : ArrayList<ConfideHomeFiterItemBean>?,
/**
* 为你推荐数据说明
*/
val confidedTag : List<String>?,
var confidedTag: List<String>? = null
/**
* 听声寻人数据说明(请查看公共参数说明)
*/
......@@ -116,11 +147,13 @@ data class ConfideHomeBodyBean(
* 最佳倾诉榜单数据说明
*/
//倾诉统计文案(8513人)
val confideNum : String?,
var confideNum: String? = null
//接通率
val confideConnection : String?,
var confideConnection: String? = null
//
var bodyData : List<ConfideHomeBodyBean>?,
var confidePraiseScore:String?,//新增评分字段
var listenFree:Boolean?//新增倾诉免费标识字段
)
\ No newline at end of file
var bodyData: List<ConfideHomeBodyBean>? = null
var confidePraiseScore: String? = null//新增评分字段
var listenFree: Boolean? = null//新增倾诉免费标识字段
}
\ No newline at end of file
......@@ -7,5 +7,7 @@ package com.ydl.confide.home.bean
* @Company 壹点灵
* @date 2018/10/15
*/
data class ConfideHomeBodyGroupItemBean(val title : String?,
val data : ArrayList<ConfideHomeFiterItemBean>?)
\ No newline at end of file
class ConfideHomeBodyGroupItemBean {
var title: String? = null
var data: ArrayList<ConfideHomeFiterItemBean>? = null
}
\ No newline at end of file
......@@ -7,12 +7,14 @@ package com.ydl.confide.home.bean
* @Company 壹点灵
* @date 2018/9/22
*/
data class ConfideHomeFiterItemBean(
class ConfideHomeFiterItemBean {
/**
* 筛选id
*/
var id : String?,
var id: String? = null
/**
* 筛选名称
*/
var name : String?)
\ No newline at end of file
var name: String? = null
}
\ No newline at end of file
......@@ -349,9 +349,9 @@ class ConfideHomeEventImpl(context: Context, var confideHomeView: IConfideHomeCo
return
}
var sortPopup: ConfideHomeSortPopupWindow? = null
if (bodyBean.group != null && !bodyBean.group.isEmpty() && null != bodyBean.group[0].data && !bodyBean.group[0].data!!.isEmpty()) {
if (bodyBean.group != null && !bodyBean.group!!.isEmpty() && null != bodyBean.group!![0].data && !bodyBean.group!![0].data!!.isEmpty()) {
ConfideHomeUtils.synchroTextDrawable(mContext!!, 1, IConfideHomeConfig.FILTER_STATUS_OPEN, filterView, mConfideAdapter)
sortPopup = ConfideHomeSortPopupWindow(mContext!!, bodyBean.group[0].data!!, allFiltersBean!!.selectSort!!, object : ConfideHomeSortPopupWindow.OnSortItemSelectedListener {
sortPopup = ConfideHomeSortPopupWindow(mContext!!, bodyBean.group!![0].data!!, allFiltersBean!!.selectSort!!, object : ConfideHomeSortPopupWindow.OnSortItemSelectedListener {
override fun onSortItemSelected(sortItem: ConfideHomeFiterItemBean) {
//更改小图标
......@@ -384,17 +384,17 @@ class ConfideHomeEventImpl(context: Context, var confideHomeView: IConfideHomeCo
* @param mConfideAdapter section适配器
*/
override fun showSexAgePopupWindow(v_line_top: View, filterView: ConfideHomeFilterView, bodyBean: ConfideHomeBodyBean?, allFiltersBean: ConfideHomeAllFiltersBean, mConfideAdapter: ConfideHomeAdapter) {
if (null == bodyBean || ((null == bodyBean.group || bodyBean.group.isEmpty()) && (null == bodyBean.group!![0].data || bodyBean.group[0].data!!.isEmpty()))) {
if (null == bodyBean || ((null == bodyBean.group || bodyBean.group!!.isEmpty()) && (null == bodyBean.group!![0].data || bodyBean.group!![0].data!!.isEmpty()))) {
ToastUtil.toastShort( "数据初始化失败,请重新下拉刷新")
return
}
val sexData = ArrayList<ConfideHomeFiterItemBean>()
if (null != bodyBean.group[0].data) {
sexData.addAll(bodyBean.group[0].data!!)
if (null != bodyBean.group!![0].data) {
sexData.addAll(bodyBean.group!![0].data!!)
}
val ageData = ArrayList<ConfideHomeFiterItemBean>()
if (1 < bodyBean.group.size && null != bodyBean.group[1].data) {
ageData.addAll(bodyBean.group[1].data!!)
if (1 < bodyBean.group!!.size && null != bodyBean.group!![1].data) {
ageData.addAll(bodyBean.group!![1].data!!)
}
val categoryPopup = ConfideHomeSexAgePopupWindow(mContext!!, sexData, ageData, allFiltersBean)
ConfideHomeUtils.synchroStyle(mContext!!, 2, IConfideHomeConfig.FILTER_STATUS_OPEN, filterView, mConfideAdapter)
......@@ -435,8 +435,8 @@ class ConfideHomeEventImpl(context: Context, var confideHomeView: IConfideHomeCo
* @param mConfideAdapter section适配器
*/
override fun showGoodPopupWindow(v_line_top: View, filterView: ConfideHomeFilterView, bodyBean: ConfideHomeBodyBean?, allFiltersBean: ConfideHomeAllFiltersBean, mConfideAdapter: ConfideHomeAdapter) {
if (bodyBean != null && null != bodyBean.group && !bodyBean.group.isEmpty() && null != bodyBean.group[0].data && !bodyBean.group[0].data!!.isEmpty()) {
val categoryPopup = ConfideHomeGoodPopupWindow(mContext!!, bodyBean.group[0].data!!, allFiltersBean.selectGoodData!!)
if (bodyBean != null && null != bodyBean.group && !bodyBean.group!!.isEmpty() && null != bodyBean.group!![0].data && !bodyBean.group!![0].data!!.isEmpty()) {
val categoryPopup = ConfideHomeGoodPopupWindow(mContext!!, bodyBean.group!![0].data!!, allFiltersBean.selectGoodData!!)
ConfideHomeUtils.synchroStyle(mContext!!, 3, IConfideHomeConfig.FILTER_STATUS_OPEN, filterView, mConfideAdapter)
categoryPopup!!.setOnDismissListener {
if (allFiltersBean.selectGoodData!!.size > 1 || (allFiltersBean.selectGoodData!!.size == 1 && allFiltersBean!!.selectGoodData!![0] != bodyBean.group!![0].data!![0])) {
......
......@@ -2,14 +2,14 @@ package com.ydl.confide.home.popwindow
import android.content.Context
import android.graphics.drawable.BitmapDrawable
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.PopupWindow
import android.widget.TextView
import androidx.recyclerview.widget.GridLayoutManager
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import com.ydl.confide.R
import com.ydl.confide.home.bean.ConfideHomeAllFiltersBean
import com.ydl.confide.home.bean.ConfideHomeFiterItemBean
......@@ -65,7 +65,10 @@ class ConfideHomeSexAgePopupWindow(context: Context, sexData: ArrayList<ConfideH
dismiss()
}
view.btnReset.setOnClickListener {
selectSex = ConfideHomeFiterItemBean("-1","")
selectSex = ConfideHomeFiterItemBean().apply {
id = "-1"
name = ""
}
mAllFiltersBean!!.selectSex = selectSex
initSexData(view,mAllFiltersBean!!)
sexAgeAdapter?.cleanSelectedGoods()
......@@ -81,7 +84,8 @@ class ConfideHomeSexAgePopupWindow(context: Context, sexData: ArrayList<ConfideH
private fun initData(sexData: ArrayList<ConfideHomeFiterItemBean>,ageData : ArrayList<ConfideHomeFiterItemBean>,allFiltersBean: ConfideHomeAllFiltersBean){
//初始化已选择性别数据
if (null == selectSex){
selectSex = ConfideHomeFiterItemBean("-1","")
selectSex = ConfideHomeFiterItemBean().apply { id="-1"
name=""}
}
if (null != allFiltersBean.selectSex){
selectSex!!.id = allFiltersBean.selectSex!!.id
......
......@@ -202,11 +202,11 @@ class ConfideHomeRecommendExpertItemView(mContext: Context, private var confideH
*/
private fun setConfideTag(bodyBean: ConfideHomeBodyBean) {
flowlayout_tag.removeAllViews()
if (null == bodyBean.confidedTag || bodyBean.confidedTag.isEmpty()) {
if (null == bodyBean.confidedTag || bodyBean.confidedTag!!.isEmpty()) {
return
}
var i = 0
for (tag in bodyBean.confidedTag) {
for (tag in bodyBean.confidedTag!!) {
if (i > 4) break
var params = LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, dp16)
params.setMargins(0, 0, dp4, 0)
......
......@@ -242,12 +242,12 @@ class ConfideHomeRecommendView(var view: IConfideHomeContract.View, context: Con
// }
private fun setConfideTag(bodyBean: ConfideHomeBodyBean) {
if (null == bodyBean.confidedTag || bodyBean.confidedTag.isEmpty()) {
if (null == bodyBean.confidedTag || bodyBean.confidedTag!!.isEmpty()) {
return
}
var i = 0
val sb = StringBuilder()
for (tag in bodyBean.confidedTag) {
for (tag in bodyBean.confidedTag!!) {
if (i > 4) break
sb.append(tag).append(" | ")
i++
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment