diff --git a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt index 9f56554..3f9036c 100644 --- a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt +++ b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt @@ -25,10 +25,11 @@ override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { //绑定数据 val rowsBean = dataRows[position] - holder.customerNameView.text = rowsBean.customerName holder.agreementLevelView.text = rowsBean.grade.toChineseGrade() - holder.overallView.text = rowsBean.evaluationName + holder.customerNameView.text = rowsBean.customerName holder.scaleView.text = rowsBean.companySizeName + holder.overallView.text = "公司规模:${rowsBean.evaluationName}" + holder.fullAddressView.text = "公司地址:${rowsBean.fullAddress}" //绑定事件 holder.itemView.setOnClickListener { @@ -37,10 +38,11 @@ } inner class ItemViewHolder(view: View) : RecyclerView.ViewHolder(view) { - var customerNameView: TextView = view.findViewById(R.id.customerNameView) var agreementLevelView: TextView = view.findViewById(R.id.agreementLevelView) - var overallView: TextView = view.findViewById(R.id.overallView) + var customerNameView: TextView = view.findViewById(R.id.customerNameView) var scaleView: TextView = view.findViewById(R.id.scaleView) + var overallView: TextView = view.findViewById(R.id.overallView) + var fullAddressView: TextView = view.findViewById(R.id.fullAddressView) } private var listener: OnItemClickListener? = null diff --git a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt index 9f56554..3f9036c 100644 --- a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt +++ b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt @@ -25,10 +25,11 @@ override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { //绑定数据 val rowsBean = dataRows[position] - holder.customerNameView.text = rowsBean.customerName holder.agreementLevelView.text = rowsBean.grade.toChineseGrade() - holder.overallView.text = rowsBean.evaluationName + holder.customerNameView.text = rowsBean.customerName holder.scaleView.text = rowsBean.companySizeName + holder.overallView.text = "公司规模:${rowsBean.evaluationName}" + holder.fullAddressView.text = "公司地址:${rowsBean.fullAddress}" //绑定事件 holder.itemView.setOnClickListener { @@ -37,10 +38,11 @@ } inner class ItemViewHolder(view: View) : RecyclerView.ViewHolder(view) { - var customerNameView: TextView = view.findViewById(R.id.customerNameView) var agreementLevelView: TextView = view.findViewById(R.id.agreementLevelView) - var overallView: TextView = view.findViewById(R.id.overallView) + var customerNameView: TextView = view.findViewById(R.id.customerNameView) var scaleView: TextView = view.findViewById(R.id.scaleView) + var overallView: TextView = view.findViewById(R.id.overallView) + var fullAddressView: TextView = view.findViewById(R.id.fullAddressView) } private var listener: OnItemClickListener? = null diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt index 5c7f2eb..25fa87b 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt @@ -1,91 +1,76 @@ package com.casic.xz.meterage.fragment.customer import android.graphics.Paint -import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.extensions.combineImagePath import com.casic.xz.meterage.extensions.toChineseGrade -import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.model.CustomerDetailModel import com.casic.xz.meterage.view.BigImageActivity import com.casic.xz.meterage.view.notice.PreviewDocumentActivity import com.casic.xz.meterage.view.notice.PreviewPdfActivity import com.casic.xz.meterage.view.notice.PreviewTextActivity -import com.casic.xz.meterage.vm.CustomerViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show -import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.fragment_customer_basic_information.* -class BasicInformationFragment(private val id: String) : KotlinBaseFragment() { - - private lateinit var customerViewModel: CustomerViewModel +class BasicInformationFragment(private val data: CustomerDetailModel.DataModel) : + KotlinBaseFragment() { override fun initData() { - customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] - customerViewModel.getCustomerDetail(id) - customerViewModel.customerDetail.observe(this) { - if (it.code == 200) { - val data = it.data!! + customerCodeView.text = data.customerNo + briefNameView.text = data.briefName + businessContentView.text = data.businessContent + companySizeView.text = data.companySize + gradeView.text = data.grade.toChineseGrade() + taxNumberView.text = data.taxNumber + bankAccountView.text = data.bankAccount + bankNameView.text = data.bankName + bankAccountNumberView.text = data.bankAccountNumber + postalCodeView.text = data.postalCode + phoneView.text = data.phone + faxView.text = data.fax + mobileView.text = data.mobile + emailView.text = data.email + websiteView.text = data.website + addressAreaView.text = data.addressArea + invoiceAreaView.text = data.invoiceArea + businessScopeView.text = data.businessScope + remarkView.text = data.remark - customerCodeView.text = data.customerNo - customerNameView.text = data.customerName - briefNameView.text = data.briefName - businessContentView.text = data.businessContent - companySizeView.text = data.companySize - gradeView.text = data.grade.toChineseGrade() - evaluationView.text = data.evaluation - taxNumberView.text = data.taxNumber - bankAccountView.text = data.bankAccount - bankNameView.text = data.bankName - bankAccountNumberView.text = data.bankAccountNumber - postalCodeView.text = data.postalCode - directorView.text = data.director - phoneView.text = data.phone - faxView.text = data.fax - mobileView.text = data.mobile - emailView.text = data.email - websiteView.text = data.website - addressAreaView.text = data.addressArea - invoiceAreaView.text = data.invoiceArea - businessScopeView.text = data.businessScope - remarkView.text = data.remark + if (data.minioFileName.isNullOrBlank()) { + minioFileView.text = "暂无附件" + } else { + val minioFileName = data.minioFileName - if (data.minioFileName.isNullOrBlank()) { - minioFileView.text = "暂无附件" + minioFileView.text = minioFileName + val textPaint = minioFileView.paint + textPaint.flags = Paint.UNDERLINE_TEXT_FLAG + textPaint.isAntiAlias = true + minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) + + minioFileView.setOnClickListener { + //查看附件 + if (minioFileName.endsWith("pdf")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt index 9f56554..3f9036c 100644 --- a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt +++ b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt @@ -25,10 +25,11 @@ override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { //绑定数据 val rowsBean = dataRows[position] - holder.customerNameView.text = rowsBean.customerName holder.agreementLevelView.text = rowsBean.grade.toChineseGrade() - holder.overallView.text = rowsBean.evaluationName + holder.customerNameView.text = rowsBean.customerName holder.scaleView.text = rowsBean.companySizeName + holder.overallView.text = "公司规模:${rowsBean.evaluationName}" + holder.fullAddressView.text = "公司地址:${rowsBean.fullAddress}" //绑定事件 holder.itemView.setOnClickListener { @@ -37,10 +38,11 @@ } inner class ItemViewHolder(view: View) : RecyclerView.ViewHolder(view) { - var customerNameView: TextView = view.findViewById(R.id.customerNameView) var agreementLevelView: TextView = view.findViewById(R.id.agreementLevelView) - var overallView: TextView = view.findViewById(R.id.overallView) + var customerNameView: TextView = view.findViewById(R.id.customerNameView) var scaleView: TextView = view.findViewById(R.id.scaleView) + var overallView: TextView = view.findViewById(R.id.overallView) + var fullAddressView: TextView = view.findViewById(R.id.fullAddressView) } private var listener: OnItemClickListener? = null diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt index 5c7f2eb..25fa87b 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt @@ -1,91 +1,76 @@ package com.casic.xz.meterage.fragment.customer import android.graphics.Paint -import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.extensions.combineImagePath import com.casic.xz.meterage.extensions.toChineseGrade -import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.model.CustomerDetailModel import com.casic.xz.meterage.view.BigImageActivity import com.casic.xz.meterage.view.notice.PreviewDocumentActivity import com.casic.xz.meterage.view.notice.PreviewPdfActivity import com.casic.xz.meterage.view.notice.PreviewTextActivity -import com.casic.xz.meterage.vm.CustomerViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show -import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.fragment_customer_basic_information.* -class BasicInformationFragment(private val id: String) : KotlinBaseFragment() { - - private lateinit var customerViewModel: CustomerViewModel +class BasicInformationFragment(private val data: CustomerDetailModel.DataModel) : + KotlinBaseFragment() { override fun initData() { - customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] - customerViewModel.getCustomerDetail(id) - customerViewModel.customerDetail.observe(this) { - if (it.code == 200) { - val data = it.data!! + customerCodeView.text = data.customerNo + briefNameView.text = data.briefName + businessContentView.text = data.businessContent + companySizeView.text = data.companySize + gradeView.text = data.grade.toChineseGrade() + taxNumberView.text = data.taxNumber + bankAccountView.text = data.bankAccount + bankNameView.text = data.bankName + bankAccountNumberView.text = data.bankAccountNumber + postalCodeView.text = data.postalCode + phoneView.text = data.phone + faxView.text = data.fax + mobileView.text = data.mobile + emailView.text = data.email + websiteView.text = data.website + addressAreaView.text = data.addressArea + invoiceAreaView.text = data.invoiceArea + businessScopeView.text = data.businessScope + remarkView.text = data.remark - customerCodeView.text = data.customerNo - customerNameView.text = data.customerName - briefNameView.text = data.briefName - businessContentView.text = data.businessContent - companySizeView.text = data.companySize - gradeView.text = data.grade.toChineseGrade() - evaluationView.text = data.evaluation - taxNumberView.text = data.taxNumber - bankAccountView.text = data.bankAccount - bankNameView.text = data.bankName - bankAccountNumberView.text = data.bankAccountNumber - postalCodeView.text = data.postalCode - directorView.text = data.director - phoneView.text = data.phone - faxView.text = data.fax - mobileView.text = data.mobile - emailView.text = data.email - websiteView.text = data.website - addressAreaView.text = data.addressArea - invoiceAreaView.text = data.invoiceArea - businessScopeView.text = data.businessScope - remarkView.text = data.remark + if (data.minioFileName.isNullOrBlank()) { + minioFileView.text = "暂无附件" + } else { + val minioFileName = data.minioFileName - if (data.minioFileName.isNullOrBlank()) { - minioFileView.text = "暂无附件" + minioFileView.text = minioFileName + val textPaint = minioFileView.paint + textPaint.flags = Paint.UNDERLINE_TEXT_FLAG + textPaint.isAntiAlias = true + minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) + + minioFileView.setOnClickListener { + //查看附件 + if (minioFileName.endsWith("pdf")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt index 9f56554..3f9036c 100644 --- a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt +++ b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt @@ -25,10 +25,11 @@ override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { //绑定数据 val rowsBean = dataRows[position] - holder.customerNameView.text = rowsBean.customerName holder.agreementLevelView.text = rowsBean.grade.toChineseGrade() - holder.overallView.text = rowsBean.evaluationName + holder.customerNameView.text = rowsBean.customerName holder.scaleView.text = rowsBean.companySizeName + holder.overallView.text = "公司规模:${rowsBean.evaluationName}" + holder.fullAddressView.text = "公司地址:${rowsBean.fullAddress}" //绑定事件 holder.itemView.setOnClickListener { @@ -37,10 +38,11 @@ } inner class ItemViewHolder(view: View) : RecyclerView.ViewHolder(view) { - var customerNameView: TextView = view.findViewById(R.id.customerNameView) var agreementLevelView: TextView = view.findViewById(R.id.agreementLevelView) - var overallView: TextView = view.findViewById(R.id.overallView) + var customerNameView: TextView = view.findViewById(R.id.customerNameView) var scaleView: TextView = view.findViewById(R.id.scaleView) + var overallView: TextView = view.findViewById(R.id.overallView) + var fullAddressView: TextView = view.findViewById(R.id.fullAddressView) } private var listener: OnItemClickListener? = null diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt index 5c7f2eb..25fa87b 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt @@ -1,91 +1,76 @@ package com.casic.xz.meterage.fragment.customer import android.graphics.Paint -import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.extensions.combineImagePath import com.casic.xz.meterage.extensions.toChineseGrade -import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.model.CustomerDetailModel import com.casic.xz.meterage.view.BigImageActivity import com.casic.xz.meterage.view.notice.PreviewDocumentActivity import com.casic.xz.meterage.view.notice.PreviewPdfActivity import com.casic.xz.meterage.view.notice.PreviewTextActivity -import com.casic.xz.meterage.vm.CustomerViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show -import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.fragment_customer_basic_information.* -class BasicInformationFragment(private val id: String) : KotlinBaseFragment() { - - private lateinit var customerViewModel: CustomerViewModel +class BasicInformationFragment(private val data: CustomerDetailModel.DataModel) : + KotlinBaseFragment() { override fun initData() { - customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] - customerViewModel.getCustomerDetail(id) - customerViewModel.customerDetail.observe(this) { - if (it.code == 200) { - val data = it.data!! + customerCodeView.text = data.customerNo + briefNameView.text = data.briefName + businessContentView.text = data.businessContent + companySizeView.text = data.companySize + gradeView.text = data.grade.toChineseGrade() + taxNumberView.text = data.taxNumber + bankAccountView.text = data.bankAccount + bankNameView.text = data.bankName + bankAccountNumberView.text = data.bankAccountNumber + postalCodeView.text = data.postalCode + phoneView.text = data.phone + faxView.text = data.fax + mobileView.text = data.mobile + emailView.text = data.email + websiteView.text = data.website + addressAreaView.text = data.addressArea + invoiceAreaView.text = data.invoiceArea + businessScopeView.text = data.businessScope + remarkView.text = data.remark - customerCodeView.text = data.customerNo - customerNameView.text = data.customerName - briefNameView.text = data.briefName - businessContentView.text = data.businessContent - companySizeView.text = data.companySize - gradeView.text = data.grade.toChineseGrade() - evaluationView.text = data.evaluation - taxNumberView.text = data.taxNumber - bankAccountView.text = data.bankAccount - bankNameView.text = data.bankName - bankAccountNumberView.text = data.bankAccountNumber - postalCodeView.text = data.postalCode - directorView.text = data.director - phoneView.text = data.phone - faxView.text = data.fax - mobileView.text = data.mobile - emailView.text = data.email - websiteView.text = data.website - addressAreaView.text = data.addressArea - invoiceAreaView.text = data.invoiceArea - businessScopeView.text = data.businessScope - remarkView.text = data.remark + if (data.minioFileName.isNullOrBlank()) { + minioFileView.text = "暂无附件" + } else { + val minioFileName = data.minioFileName - if (data.minioFileName.isNullOrBlank()) { - minioFileView.text = "暂无附件" + minioFileView.text = minioFileName + val textPaint = minioFileView.paint + textPaint.flags = Paint.UNDERLINE_TEXT_FLAG + textPaint.isAntiAlias = true + minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) + + minioFileView.setOnClickListener { + //查看附件 + if (minioFileName.endsWith("pdf")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - (minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt index 9f56554..3f9036c 100644 --- a/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt +++ b/app/src/main/java/com/casic/xz/meterage/adapter/CustomerAdapter.kt @@ -25,10 +25,11 @@ override fun onBindViewHolder(holder: ItemViewHolder, position: Int) { //绑定数据 val rowsBean = dataRows[position] - holder.customerNameView.text = rowsBean.customerName holder.agreementLevelView.text = rowsBean.grade.toChineseGrade() - holder.overallView.text = rowsBean.evaluationName + holder.customerNameView.text = rowsBean.customerName holder.scaleView.text = rowsBean.companySizeName + holder.overallView.text = "公司规模:${rowsBean.evaluationName}" + holder.fullAddressView.text = "公司地址:${rowsBean.fullAddress}" //绑定事件 holder.itemView.setOnClickListener { @@ -37,10 +38,11 @@ } inner class ItemViewHolder(view: View) : RecyclerView.ViewHolder(view) { - var customerNameView: TextView = view.findViewById(R.id.customerNameView) var agreementLevelView: TextView = view.findViewById(R.id.agreementLevelView) - var overallView: TextView = view.findViewById(R.id.overallView) + var customerNameView: TextView = view.findViewById(R.id.customerNameView) var scaleView: TextView = view.findViewById(R.id.scaleView) + var overallView: TextView = view.findViewById(R.id.overallView) + var fullAddressView: TextView = view.findViewById(R.id.fullAddressView) } private var listener: OnItemClickListener? = null diff --git a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt index 5c7f2eb..25fa87b 100644 --- a/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt +++ b/app/src/main/java/com/casic/xz/meterage/fragment/customer/BasicInformationFragment.kt @@ -1,91 +1,76 @@ package com.casic.xz.meterage.fragment.customer import android.graphics.Paint -import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.extensions.combineImagePath import com.casic.xz.meterage.extensions.toChineseGrade -import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.model.CustomerDetailModel import com.casic.xz.meterage.view.BigImageActivity import com.casic.xz.meterage.view.notice.PreviewDocumentActivity import com.casic.xz.meterage.view.notice.PreviewPdfActivity import com.casic.xz.meterage.view.notice.PreviewTextActivity -import com.casic.xz.meterage.vm.CustomerViewModel import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.extensions.convertColor import com.pengxh.kt.lite.extensions.navigatePageTo import com.pengxh.kt.lite.extensions.show -import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.fragment_customer_basic_information.* -class BasicInformationFragment(private val id: String) : KotlinBaseFragment() { - - private lateinit var customerViewModel: CustomerViewModel +class BasicInformationFragment(private val data: CustomerDetailModel.DataModel) : + KotlinBaseFragment() { override fun initData() { - customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] - customerViewModel.getCustomerDetail(id) - customerViewModel.customerDetail.observe(this) { - if (it.code == 200) { - val data = it.data!! + customerCodeView.text = data.customerNo + briefNameView.text = data.briefName + businessContentView.text = data.businessContent + companySizeView.text = data.companySize + gradeView.text = data.grade.toChineseGrade() + taxNumberView.text = data.taxNumber + bankAccountView.text = data.bankAccount + bankNameView.text = data.bankName + bankAccountNumberView.text = data.bankAccountNumber + postalCodeView.text = data.postalCode + phoneView.text = data.phone + faxView.text = data.fax + mobileView.text = data.mobile + emailView.text = data.email + websiteView.text = data.website + addressAreaView.text = data.addressArea + invoiceAreaView.text = data.invoiceArea + businessScopeView.text = data.businessScope + remarkView.text = data.remark - customerCodeView.text = data.customerNo - customerNameView.text = data.customerName - briefNameView.text = data.briefName - businessContentView.text = data.businessContent - companySizeView.text = data.companySize - gradeView.text = data.grade.toChineseGrade() - evaluationView.text = data.evaluation - taxNumberView.text = data.taxNumber - bankAccountView.text = data.bankAccount - bankNameView.text = data.bankName - bankAccountNumberView.text = data.bankAccountNumber - postalCodeView.text = data.postalCode - directorView.text = data.director - phoneView.text = data.phone - faxView.text = data.fax - mobileView.text = data.mobile - emailView.text = data.email - websiteView.text = data.website - addressAreaView.text = data.addressArea - invoiceAreaView.text = data.invoiceArea - businessScopeView.text = data.businessScope - remarkView.text = data.remark + if (data.minioFileName.isNullOrBlank()) { + minioFileView.text = "暂无附件" + } else { + val minioFileName = data.minioFileName - if (data.minioFileName.isNullOrBlank()) { - minioFileView.text = "暂无附件" + minioFileView.text = minioFileName + val textPaint = minioFileView.paint + textPaint.flags = Paint.UNDERLINE_TEXT_FLAG + textPaint.isAntiAlias = true + minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) + + minioFileView.setOnClickListener { + //查看附件 + if (minioFileName.endsWith("pdf")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meterage_train.xml b/app/src/main/res/layout/activity_meterage_train.xml index 7783d74..e3406b8 100644 --- a/app/src/main/res/layout/activity_meterage_train.xml +++ b/app/src/main/res/layout/activity_meterage_train.xml @@ -9,6 +9,11 @@ + + (minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meterage_train.xml b/app/src/main/res/layout/activity_meterage_train.xml index 7783d74..e3406b8 100644 --- a/app/src/main/res/layout/activity_meterage_train.xml +++ b/app/src/main/res/layout/activity_meterage_train.xml @@ -9,6 +9,11 @@ + + + + (minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meterage_train.xml b/app/src/main/res/layout/activity_meterage_train.xml index 7783d74..e3406b8 100644 --- a/app/src/main/res/layout/activity_meterage_train.xml +++ b/app/src/main/res/layout/activity_meterage_train.xml @@ -9,6 +9,11 @@ + + + + + + (minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meterage_train.xml b/app/src/main/res/layout/activity_meterage_train.xml index 7783d74..e3406b8 100644 --- a/app/src/main/res/layout/activity_meterage_train.xml +++ b/app/src/main/res/layout/activity_meterage_train.xml @@ -9,6 +9,11 @@ + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - (minioFileName) + } else if ( + minioFileName.endsWith("doc") || + minioFileName.endsWith("docx") + ) { + requireContext().navigatePageTo(minioFileName) + } else if (minioFileName.endsWith("txt")) { + requireContext().navigatePageTo(minioFileName) + } else if ( + minioFileName.endsWith("png") || + minioFileName.endsWith("jpeg") || + minioFileName.endsWith("jpg") + ) { + val urls = ArrayList() + urls.add(minioFileName.combineImagePath()) + requireContext().navigatePageTo(0, urls) } else { - val minioFileName = data.minioFileName - - minioFileView.text = minioFileName - val textPaint = minioFileView.paint - textPaint.flags = Paint.UNDERLINE_TEXT_FLAG - textPaint.isAntiAlias = true - minioFileView.setTextColor(R.color.themeColor.convertColor(requireContext())) - - minioFileView.setOnClickListener { - //查看附件 - if (minioFileName.endsWith("pdf")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("doc") || - minioFileName.endsWith("docx") - ) { - requireContext().navigatePageTo(minioFileName) - } else if (minioFileName.endsWith("txt")) { - requireContext().navigatePageTo(minioFileName) - } else if ( - minioFileName.endsWith("png") || - minioFileName.endsWith("jpeg") || - minioFileName.endsWith("jpg") - ) { - val urls = ArrayList() - urls.add(minioFileName.combineImagePath()) - requireContext().navigatePageTo(0, urls) - } else { - "文件类型未知,无法打开附件".show(requireContext()) - } - } + "文件类型未知,无法打开附件".show(requireContext()) } } } @@ -98,12 +83,7 @@ override fun initLayoutView(): Int = R.layout.fragment_customer_basic_information override fun observeRequestState() { - customerViewModel.loadState.observe(this) { - when (it) { - LoadState.Loading -> LoadingDialogHub.show(requireActivity(), "数据加载中...") - else -> LoadingDialogHub.dismiss() - } - } + } override fun setupTopBarLayout() { diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt index 0dbca83..4f39ed9 100644 --- a/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt +++ b/app/src/main/java/com/casic/xz/meterage/view/home/CustomerDetailActivity.kt @@ -1,37 +1,55 @@ package com.casic.xz.meterage.view.home import androidx.fragment.app.Fragment +import androidx.lifecycle.ViewModelProvider import com.casic.xz.meterage.R import com.casic.xz.meterage.adapter.SubViewPagerAdapter import com.casic.xz.meterage.extensions.initLayoutImmersionBar import com.casic.xz.meterage.fragment.customer.* +import com.casic.xz.meterage.utils.LoadingDialogHub +import com.casic.xz.meterage.vm.CustomerViewModel import com.gyf.immersionbar.ImmersionBar import com.pengxh.kt.lite.base.KotlinBaseActivity import com.pengxh.kt.lite.utils.Constant +import com.pengxh.kt.lite.vm.LoadState import kotlinx.android.synthetic.main.activity_customer_detail.* import kotlinx.android.synthetic.main.include_base_title.* class CustomerDetailActivity : KotlinBaseActivity() { + private lateinit var customerViewModel: CustomerViewModel private var fragmentPages: ArrayList = ArrayList() override fun initData() { val customerId = intent.getStringExtra(Constant.INTENT_PARAM)!! - fragmentPages.add(BasicInformationFragment(customerId)) - fragmentPages.add(PersonnelFragment()) - fragmentPages.add(SampleRecordFragment()) - fragmentPages.add(ContractRecordFragment()) - fragmentPages.add(CertificateFragment()) + customerViewModel = ViewModelProvider(this)[CustomerViewModel::class.java] + customerViewModel.getCustomerDetail(customerId) + customerViewModel.customerDetail.observe(this) { + if (it.code == 200) { + val data = it.data!! - val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + customerNameView.text = data.customerName + updateTimeView.text = "最后更新时间:${data.updateTime}" + directorView.text = "负责人:${data.director}" + evaluationView.text = data.evaluationName - customerViewPager.adapter = SubViewPagerAdapter( - supportFragmentManager, fragmentPages, equipmentPageTitles - ) - customerViewPager.offscreenPageLimit = fragmentPages.size - //绑定 - topTabLayout.setupWithViewPager(customerViewPager) + fragmentPages.add(BasicInformationFragment(data)) + fragmentPages.add(PersonnelFragment()) + fragmentPages.add(SampleRecordFragment()) + fragmentPages.add(ContractRecordFragment()) + fragmentPages.add(CertificateFragment()) + + val equipmentPageTitles = arrayOf("基础信息", "客户人员", "样品记录", "合同记录", "证书记录") + + customerViewPager.adapter = SubViewPagerAdapter( + supportFragmentManager, fragmentPages, equipmentPageTitles + ) + customerViewPager.offscreenPageLimit = fragmentPages.size + //绑定 + topTabLayout.setupWithViewPager(customerViewPager) + } + } } override fun initEvent() { @@ -41,7 +59,12 @@ override fun initLayoutView(): Int = R.layout.activity_customer_detail override fun observeRequestState() { - + customerViewModel.loadState.observe(this) { + when (it) { + LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...") + else -> LoadingDialogHub.dismiss() + } + } } override fun setupTopBarLayout() { diff --git a/app/src/main/res/layout/activity_customer.xml b/app/src/main/res/layout/activity_customer.xml index 8993d97..edd46a2 100644 --- a/app/src/main/res/layout/activity_customer.xml +++ b/app/src/main/res/layout/activity_customer.xml @@ -9,54 +9,6 @@ - - - - - - - - - - - - + + + + + + + + + + + diff --git a/app/src/main/res/layout/activity_meterage_train.xml b/app/src/main/res/layout/activity_meterage_train.xml index 7783d74..e3406b8 100644 --- a/app/src/main/res/layout/activity_meterage_train.xml +++ b/app/src/main/res/layout/activity_meterage_train.xml @@ -9,6 +9,11 @@ + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:layout_height="wrap_content" + android:orientation="horizontal" + android:padding="@dimen/dp_15"> - + - + + - + - + + + + + + + + + + + \ No newline at end of file