Commit 9854d2a5 by 刘鹏

Merge branch 'feat/yk_sort_2' into 'd/v4.4.01'

Feat/yk sort 2

See merge request app_android_lib/YDL-Component!232
parents 7caf25d2 3a701987
......@@ -6,7 +6,7 @@ ext {
// -------------- 业务模块 --------------
//第三步 若干
"m-confide" : "0.0.50.50",
"m-consultant" : "0.0.60.74",
"m-consultant" : "0.0.60.77",
"m-fm" : "0.0.30.09",
"m-user" : "0.0.62.72",
"m-home" : "0.0.24.00",
......@@ -89,7 +89,7 @@ ext {
// -------------- 业务模块 --------------
//第三步 若干
"m-confide" : "0.0.50.50",
"m-consultant" : "0.0.60.74",
"m-consultant" : "0.0.60.77",
"m-fm" : "0.0.30.09",
"m-user" : "0.0.62.72",
"m-home" : "0.0.24.00",
......
......@@ -114,10 +114,7 @@ class ExpertSearchActivity : BaseMvpActivity<IExpertSearchView, ExpertSearchPres
private const val FILTER_STATUS_NORMAL = 0 //默认筛选状态
private const val FILTER_STATUS_FILTERED = 1 //非默认筛选状态
private const val FILTER_STATUS_OPEN = 2 //筛选窗打开状态
const val FROM_HOME_SREARCH = 0
const val FROM_FIND_EXPERT = 1
const val FROM_ONLINE_EXPERT = 2
const val PAGE_SIZE = 15
fun newIntent(
activity: Activity,
......@@ -1061,8 +1058,8 @@ class ExpertSearchActivity : BaseMvpActivity<IExpertSearchView, ExpertSearchPres
viewDim.visibility = View.INVISIBLE
viewDim_filter.visibility = View.GONE
if (allFilter.others.size + allFilter.enquiries.size + allFilter.ages.size + allFilter.doctorEdu.size + allFilter.title.size > 0 || !TextUtils.isEmpty(
allFilter.priceRanges?.minPrice
) || !TextUtils.isEmpty(allFilter.priceRanges?.maxPrice)
allFilter.priceRanges?.min_price
) || !TextUtils.isEmpty(allFilter.priceRanges?.max_price)
) {
updateFilterTextViewStatus(tvFilter, FILTER_STATUS_FILTERED)
} else {
......
......@@ -940,8 +940,8 @@ class ExpertSearchFragment : BaseMvpFragment<IExpertSearchView, ExpertSearchPres
viewDim.visibility = View.INVISIBLE
viewDim_filter.visibility = View.GONE
if (allFilter.others.size + allFilter.enquiries.size + allFilter.ages.size + allFilter.doctorEdu.size + allFilter.title.size + allFilter.specialityCrowd.size > 0 || !TextUtils.isEmpty(
allFilter.priceRanges?.minPrice
) || !TextUtils.isEmpty(allFilter.priceRanges?.maxPrice)
allFilter.priceRanges?.min_price
) || !TextUtils.isEmpty(allFilter.priceRanges?.max_price)
) {
updateFilterTextViewStatus(tvFilter, FILTER_STATUS_FILTERED)
} else {
......
......@@ -87,10 +87,18 @@ class ExpertSearchPresenter : SimplePresenter<IExpertSearchView>() {
filterMap["tags.tag_id"] = categoriesMap
}
// 地区
if (allFilter.region.value == "海外") {
if (allFilter.region.code == "ABROAD") { // 海外
if (allFilter.region.code == allFilter.sub.code){ // 海外不限
val abroadMap = HashMap<String, Any>()
abroadMap["ne"] = "1"
filterMap["country_code"] = abroadMap
}else{
filterMap["country_code"] = allFilter.sub.code!!
}
} else if(allFilter.region.code=="1"&&allFilter.region.code==allFilter.sub.code){ // 全国不限
filterMap["country_code"] = allFilter.sub.code
} else{
if (allFilter.region.code != null&&allFilter.region.code!="1") {
}else{
if (allFilter.region.code != null) {
filterMap["province_code"] = allFilter.region.code
}
if (allFilter.sub.code != null&&allFilter.sub.code!=allFilter.region.code) {
......@@ -110,8 +118,12 @@ class ExpertSearchPresenter : SimplePresenter<IExpertSearchView>() {
// 服务均价
if (allFilter.priceRanges != null) {
val avgPriceMap = HashMap<String, Any?>()
avgPriceMap["gte"] = allFilter.priceRanges?.minPrice
avgPriceMap["lte"] = allFilter.priceRanges?.maxPrice
if (!TextUtils.isEmpty(allFilter.priceRanges?.min_price)){
avgPriceMap["gte"] = allFilter.priceRanges?.min_price
}
if (!TextUtils.isEmpty(allFilter.priceRanges?.max_price)) {
avgPriceMap["lte"] = allFilter.priceRanges?.max_price
}
filterMap["avg_price"] = avgPriceMap
}
// 年龄
......
......@@ -10,6 +10,6 @@ data class EnquiryItem(
@field:SerializedName("key")
val key: Int,
val checkRrl: String?,
val unCheckUrl: String?
val check_url: String?,
val un_check_url: String?
)
\ No newline at end of file
......@@ -30,7 +30,7 @@ data class Filters(
/**
* 服务均价
*/
@field:SerializedName("priceRanges")
@field:SerializedName("price_ranges")
val priceRanges: List<PriceRangesItem> = ArrayList(),
/**
......@@ -49,6 +49,6 @@ data class Filters(
/**
* 擅长人群
*/
@field:SerializedName("specialityCrowd")
@field:SerializedName("speciality_crowd")
val specialityCrowd: ArrayList<SpecialityCrowdBean> = ArrayList()
)
\ No newline at end of file
......@@ -4,12 +4,14 @@ import com.google.gson.annotations.SerializedName
data class PriceRangesItem(
@field:SerializedName("minPrice")
var minPrice: String? = null,
@field:SerializedName("min_price")
var min_price: String? = null,
@field:SerializedName("maxPrice")
var maxPrice: String? = null,
@field:SerializedName("max_price")
var max_price: String? = null,
@SerializedName("recommendPercent")
var recommendPercent: String? = null
@SerializedName("recommend_percent")
var recommend_percent: String? = null,
var display_range:String? = null
)
\ No newline at end of file
......@@ -43,7 +43,6 @@ class FilterPopupWindow(
private val tempFilter: AllFilter
) : PopupWindow(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT) {
private val mDisposableList = CompositeDisposable()
private val showTypeViews: ArrayList<View> = ArrayList()
private val enquiryViews: ArrayList<View> = ArrayList()
......@@ -168,7 +167,7 @@ class FilterPopupWindow(
tempFilter.enquiries.forEach {
if (textView.text.toString() == it.value) {
Glide.with(context)
.load(it.unCheckUrl)
.load(it.un_check_url)
.into(ivIcon)
}
}
......@@ -269,15 +268,15 @@ class FilterPopupWindow(
}
if (tempFilter.priceRanges != null) {
sb.append("&minPrice=").append(tempFilter.priceRanges?.minPrice)
sb.append("&maxPrice=").append(tempFilter.priceRanges?.maxPrice)
sb.append("&minPrice=").append(tempFilter.priceRanges?.min_price)
sb.append("&maxPrice=").append(tempFilter.priceRanges?.max_price)
if (ConsultBIConstants.POSITION_AVERAGE_SERVICE_INPUT == biEventName) {
var account = 0.0
if (!TextUtils.isEmpty(tempFilter.priceRanges?.minPrice)) {
account += tempFilter.priceRanges?.minPrice?.toDouble()!!
if (!TextUtils.isEmpty(tempFilter.priceRanges?.min_price)) {
account += tempFilter.priceRanges?.min_price?.toDouble()!!
}
if (!TextUtils.isEmpty(tempFilter.priceRanges?.maxPrice)) {
account += tempFilter.priceRanges?.maxPrice?.toDouble()!!
if (!TextUtils.isEmpty(tempFilter.priceRanges?.max_price)) {
account += tempFilter.priceRanges?.max_price?.toDouble()!!
}
biEventParams = ((account / 2).roundToInt()).toString()
......@@ -334,9 +333,6 @@ class FilterPopupWindow(
}
}
fun addSubscription(disposable: Disposable) {
mDisposableList.add(disposable)
}
/**
* 其他选择
......@@ -573,7 +569,7 @@ class FilterPopupWindow(
llLayout.layoutParams = params
textView.text = enquiry.value
Glide.with(context)
.load(enquiry.unCheckUrl)
.load(enquiry.un_check_url)
.into(ivIcon)
enquiryViews.add(llLayout)
......@@ -581,7 +577,7 @@ class FilterPopupWindow(
llLayout.isSelected = true
textView.paint.isFakeBoldText = true
Glide.with(context)
.load(enquiry.checkRrl)
.load(enquiry.check_url)
.into(ivIcon)
}
llLayout.setOnClickListener {
......@@ -590,14 +586,14 @@ class FilterPopupWindow(
llLayout.isSelected = false
textView.paint.isFakeBoldText = false
Glide.with(context)
.load(enquiry.unCheckUrl)
.load(enquiry.un_check_url)
.into(ivIcon)
} else {
tempFilter.enquiries.add(enquiry)
llLayout.isSelected = true
textView.paint.isFakeBoldText = true
Glide.with(context)
.load(enquiry.checkRrl)
.load(enquiry.check_url)
.into(ivIcon)
}
updateCount(ConsultBIConstants.POSITION_CONSULT_TYPE_CLICK)
......@@ -607,14 +603,13 @@ class FilterPopupWindow(
}
private fun initPriceViews(view: View) {
val priceRange =
View.inflate(context, R.layout.consultant_item_price_range, null) as LinearLayout
val priceRange = View.inflate(context, R.layout.consultant_item_price_range, null) as LinearLayout
etMinPrice = priceRange.findViewById(R.id.etMinPrice);
etMaxPrice = priceRange.findViewById(R.id.etMaxPrice);
val imm = context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
// context.getSystemService(Context.INPUT_METHOD_SERVICE) as InputMethodManager
var listener: TextView.OnEditorActionListener =
val listener: TextView.OnEditorActionListener =
TextView.OnEditorActionListener { _, actionId, event ->
if (actionId == EditorInfo.IME_ACTION_DONE || event != null && event.keyCode == KeyEvent.KEYCODE_ENTER) {
updatePriceFilter()
......@@ -625,8 +620,8 @@ class FilterPopupWindow(
}
if (tempFilter.priceRanges != null) {
etMinPrice?.setText(tempFilter.priceRanges?.minPrice)
etMaxPrice?.setText(tempFilter.priceRanges?.maxPrice)
etMinPrice?.setText(tempFilter.priceRanges?.min_price)
etMaxPrice?.setText(tempFilter.priceRanges?.max_price)
}
etMaxPrice?.setOnEditorActionListener(listener)
......@@ -673,16 +668,7 @@ class FilterPopupWindow(
0
)
textView.layoutParams = params
val maxPriceStr =
if (TextUtils.isEmpty(priceRangesItem.maxPrice)) "+" else "-" + priceRangesItem.maxPrice
val contentStr = String.format(
"%s%s\n%s",
priceRangesItem.minPrice,
maxPriceStr,
priceRangesItem.recommendPercent
)
val contentStr = String.format("%s\n%s", priceRangesItem.display_range, priceRangesItem.recommend_percent)
val msp = SpannableString(contentStr)
msp.setSpan(
AbsoluteSizeSpan(10, true),
......@@ -690,8 +676,7 @@ class FilterPopupWindow(
contentStr.length,
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
)
textView.text = msp;
textView.text = msp
textView.setSingleLine(false)
textView.setLineSpacing(1.0f, 1.2f)
......@@ -717,13 +702,14 @@ class FilterPopupWindow(
etMaxPrice?.setText("")
etMinPrice?.setText("")
} else {
tempFilter.priceRanges =
priceRangesItem.copy(priceRangesItem.minPrice, priceRangesItem.maxPrice)
tempFilter.priceRanges = priceRangesItem.copy(min_price = priceRangesItem.min_price, max_price = priceRangesItem.max_price)
textView.isSelected = true
textView.paint.isFakeBoldText = true
tempFilter.priceRangesView = textView
etMinPrice?.setText(priceRangesItem.minPrice)
etMaxPrice?.setText(priceRangesItem.maxPrice)
etMinPrice?.setText(priceRangesItem.min_price)
etMaxPrice?.setText(priceRangesItem.max_price)
etMinPrice?.setSelection(etMinPrice?.text!!.length)
etMaxPrice?.setSelection(etMaxPrice?.text!!.length)
}
updateCount(ConsultBIConstants.POSITION_AVERAGE_SERVICE_INPUT)
......@@ -743,8 +729,8 @@ class FilterPopupWindow(
tempFilter.priceRanges = priceRangesItem;
}
tempFilter.priceRanges!!.maxPrice = etMaxPrice?.text.toString()
tempFilter.priceRanges!!.minPrice = etMinPrice?.text.toString()
tempFilter.priceRanges!!.max_price = etMaxPrice?.text.toString()
tempFilter.priceRanges!!.min_price = etMinPrice?.text.toString()
tempFilter.priceRangesView?.isSelected = false
tempFilter.priceRangesView?.paint?.isFakeBoldText = false
tempFilter.priceRangesView = null
......@@ -794,7 +780,6 @@ class FilterPopupWindow(
}
override fun dismiss() {
mDisposableList.clear()
super.dismiss()
}
}
\ No newline at end of file
......@@ -27,7 +27,6 @@
android:background="@drawable/shape_round_gray_bored"
android:inputType="number"
android:maxLines="1"
android:textCursorDrawable="@color/platform_main_theme"
android:textSize="13sp"
android:maxLength="7"
/>
......@@ -45,9 +44,8 @@
android:layout_marginLeft="10dp"
android:background="@drawable/shape_round_gray_bored"
android:inputType="number"
android:maxLines="1"
android:textCursorDrawable="@color/platform_main_theme"
android:textSize="13sp"
android:maxLines="1"
android:maxLength="7"
/>
......
......@@ -33,7 +33,7 @@
android:width="0dp"
android:drawableEnd="@drawable/platform_ic_arrow_drop_down_grey_500_18dp"
android:drawableRight="@drawable/platform_ic_arrow_drop_down_grey_500_18dp"
android:text="@string/platform_theme"
android:text="困扰"
android:textColor="@color/platform_color_242424" />
<com.ydl.ydlcommon.view.DrawableRightTextView
......
......@@ -195,15 +195,16 @@
android:background="@color/platform_white"
android:orientation="horizontal">
<TextView
android:id="@+id/btnReset"
android:layout_width="0dp"
android:layout_height="44dp"
android:layout_weight="1"
android:background="@drawable/consultant_bg_radius_gray_6"
android:background="@drawable/consultant_stroke_ebebeb_r_8"
android:gravity="center"
android:text="@string/platform_reset"
android:textColor="@color/platform_color_999999"
android:textColor="@color/platform_color_242424"
android:textSize="16sp" />
<TextView
......@@ -212,11 +213,10 @@
android:layout_height="44dp"
android:layout_marginStart="10dp"
android:layout_weight="1"
android:background="@drawable/consultant_bg_radius_5_dark"
android:background="@drawable/consultant_solid_main_theme_color_r_8"
android:gravity="center"
android:hint="确定"
android:text="确定"
android:textColor="@color/white"
android:textColorHint="@color/platform_color_E0E0E0"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
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