Commit 0b9a2c06 authored by chengkun's avatar chengkun

优惠券数据对接

parent 87b0b658
...@@ -16,7 +16,7 @@ android { ...@@ -16,7 +16,7 @@ android {
defaultConfig { defaultConfig {
if (rootProject.ext.android.isApplication) { if (rootProject.ext.android.isApplication) {
applicationId "com.yidian.shenghuoquan.border" applicationId "com.yidian.shenghuoquan.buserorder"
} }
minSdkVersion build_versions.minSdkVersion minSdkVersion build_versions.minSdkVersion
targetSdkVersion build_versions.targetSdkVersion targetSdkVersion build_versions.targetSdkVersion
......
...@@ -7,9 +7,9 @@ import android.view.ViewGroup ...@@ -7,9 +7,9 @@ import android.view.ViewGroup
import android.widget.TextView import android.widget.TextView
import androidx.recyclerview.widget.RecyclerView import androidx.recyclerview.widget.RecyclerView
import com.yidian.shenghuoquan.border.R import com.yidian.shenghuoquan.border.R
import com.yidian.shenghuoquan.border.dto.Coupon1 import com.yidian.shenghuoquan.border.dto.CouponDto
class VoncherAdapter(var context: Context, var voncherList:List<Coupon1>) : RecyclerView.Adapter<RecyclerView.ViewHolder>() { class VoncherAdapter(var context: Context, var voncherList:List<CouponDto>) : RecyclerView.Adapter<RecyclerView.ViewHolder>() {
override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder { override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): RecyclerView.ViewHolder {
var view: View = LayoutInflater.from(context).inflate(R.layout.border_voncher_item, parent, false) var view: View = LayoutInflater.from(context).inflate(R.layout.border_voncher_item, parent, false)
var holder = MyViewHoder(view) var holder = MyViewHoder(view)
...@@ -28,11 +28,11 @@ class VoncherAdapter(var context: Context, var voncherList:List<Coupon1>) : Recy ...@@ -28,11 +28,11 @@ class VoncherAdapter(var context: Context, var voncherList:List<Coupon1>) : Recy
} }
private fun mapDataToHoder(data: Coupon1, holder: MyViewHoder, position: Int) { private fun mapDataToHoder(data: CouponDto, holder: MyViewHoder, position: Int) {
holder.itemView.findViewById<TextView>(R.id.tv_voncher_name).text = data.name holder.itemView.findViewById<TextView>(R.id.tv_voncher_name).text = data.name
holder.itemView.findViewById<TextView>(R.id.tv_voncher_amount).text = data.coupon_amount.toString() holder.itemView.findViewById<TextView>(R.id.tv_voncher_amount).text = data.amount
holder.itemView.findViewById<TextView>(R.id.tv_start_end_time).text = "${data.start_time} ${data.end_time}" holder.itemView.findViewById<TextView>(R.id.tv_start_end_time).text = "${data.startTime} ${data.endTime}"
holder.itemView.findViewById<TextView>(R.id.tv_voncher_type).text = "${data.type}" holder.itemView.findViewById<TextView>(R.id.tv_voncher_type).text = "${data.scopeUse}"
holder.itemView.findViewById<TextView>(R.id.tv_voncher_desc).text = data.desc holder.itemView.findViewById<TextView>(R.id.tv_voncher_desc).text = data.desc
} }
} }
package com.yidian.shenghuoquan.border.dto
import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.parcelize.Parcelize
data class CounponDto(
val coupon_list: List<Coupon1>
)
@Parcelize
data class Coupon1(
@SerializedName("amount")
val amount: String,
@SerializedName("counpon_amount")
val coupon_amount: Int,
@SerializedName("coupon_id")
val coupon_id: String,
@SerializedName("desc")
val desc: String,
@SerializedName("end_time")
val end_time: String,
@SerializedName("id")
val id: String,
@SerializedName("jump_url")
val jump_url: String,
@SerializedName("name")
val name: String,
@SerializedName("start_time")
val start_time: String,
@SerializedName("status")
val status: Int,
@SerializedName("thumbnail")
val thumbnail: String,
@SerializedName("type")
val type: Int,
@SerializedName("use_activity_type")
val use_activity_type: Int,
@SerializedName("use_amount_min")
val use_amount_min: Int,
@SerializedName("use_amount_type")
val use_amount_type: Int,
@SerializedName("use_shop_type")
val use_shop_type: Int
) : Parcelable
...@@ -22,7 +22,7 @@ data class OrderDetailDto( ...@@ -22,7 +22,7 @@ data class OrderDetailDto(
@SerializedName("comment") // 订单备注 @SerializedName("comment") // 订单备注
val comment: String, val comment: String,
@SerializedName("coupon_list") // 优惠券信息 @SerializedName("coupon_list") // 优惠券信息
val couponList: List<Coupon1>, val couponList: List<CouponDto>,
@SerializedName("create_time") @SerializedName("create_time")
val createTime: String, val createTime: String,
@SerializedName("discount_fee") // 优惠金额 @SerializedName("discount_fee") // 优惠金额
......
...@@ -2,16 +2,19 @@ package com.yidian.shenghuoquan.border.ui ...@@ -2,16 +2,19 @@ package com.yidian.shenghuoquan.border.ui
import androidx.activity.viewModels import androidx.activity.viewModels
import com.google.gson.Gson import com.google.gson.Gson
import com.yidian.bcommon.constant.IntentConstants
import com.yidian.bcommon.constant.IntentConstants.KEY_EXTRA_COUPON_LIST
import com.yidian.bcommon.constant.XRouterPathConstants
import com.yidian.bcommon.constant.XRouterPathConstants.Companion.CHOOSE_VOUCHER_ACTIVITY import com.yidian.bcommon.constant.XRouterPathConstants.Companion.CHOOSE_VOUCHER_ACTIVITY
import com.yidian.bcommon.extensions.initTitleBar import com.yidian.bcommon.extensions.initTitleBar
import com.yidian.bcommon.mvvm.BaseMvvmActivity import com.yidian.bcommon.mvvm.BaseMvvmActivity
import com.yidian.news.ui.SystemBarUtils import com.yidian.news.ui.SystemBarUtils
import com.yidian.shenghuoquan.border.R import com.yidian.shenghuoquan.border.R
import com.yidian.shenghuoquan.border.adapter.VoncherAdapter import com.yidian.shenghuoquan.border.adapter.VoncherAdapter
import com.yidian.shenghuoquan.border.dto.CounponDto
import com.yidian.shenghuoquan.border.utils.SpaceItemDecoration import com.yidian.shenghuoquan.border.utils.SpaceItemDecoration
import com.yidian.shenghuoquan.border.viewmodel.VoncherViewModel import com.yidian.shenghuoquan.border.viewmodel.VoncherViewModel
import com.yidian.shenghuoquan.border.databinding.BorderActivityVoncherBinding import com.yidian.shenghuoquan.border.databinding.BorderActivityVoncherBinding
import com.yidian.shenghuoquan.border.dto.CouponDto
import com.yidian.xpage.XPageViewProtocol import com.yidian.xpage.XPageViewProtocol
class VoucherActivity : BaseMvvmActivity<BorderActivityVoncherBinding, VoncherViewModel>(), XPageViewProtocol { class VoucherActivity : BaseMvvmActivity<BorderActivityVoncherBinding, VoncherViewModel>(), XPageViewProtocol {
...@@ -36,8 +39,11 @@ class VoucherActivity : BaseMvvmActivity<BorderActivityVoncherBinding, VoncherVi ...@@ -36,8 +39,11 @@ class VoucherActivity : BaseMvvmActivity<BorderActivityVoncherBinding, VoncherVi
private fun initRecycleView() { private fun initRecycleView() {
val spacingInPixels = resources.getDimensionPixelSize(R.dimen.dp10) val spacingInPixels = resources.getDimensionPixelSize(R.dimen.dp10)
binding.rcvVoncherList.addItemDecoration(SpaceItemDecoration(spacingInPixels)) binding.rcvVoncherList.addItemDecoration(SpaceItemDecoration(spacingInPixels))
val voucherObj = Gson().fromJson<CounponDto>(HardCode.VoncherList, CounponDto::class.java) intent.getSerializableExtra(XRouterPathConstants.ParamsKey)?.let { params ->
listAdapter = VoncherAdapter(this, voucherObj.coupon_list) (params as HashMap<*, *>).let {
binding.rcvVoncherList.adapter = listAdapter listAdapter = VoncherAdapter(this, params[IntentConstants.KEY_EXTRA_COUPON_LIST] as List<CouponDto>)
binding.rcvVoncherList.adapter = listAdapter
}
}
} }
} }
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