Browse Source

latest changes made in recent transaction and delete recpient

new_design
Mohan Shiwakoti 1 year ago
parent
commit
2cc07190d9
  1. 5
      .idea/assetWizardSettings.xml
  2. 75
      app/src/main/java/com/remit/jmecustomer/features/beneficiaryDetail/BeneficiaryDetailActivity.kt
  3. 4
      app/src/main/java/com/remit/jmecustomer/features/beneficiaryDetail/adapters/SendMethodAdapter.kt
  4. 80
      app/src/main/java/com/remit/jmecustomer/features/myTransfers/adapters/RecentTransactionsAdapter.kt
  5. 10
      app/src/main/java/com/remit/jmecustomer/features/myTransfers/view/MyTransfersFragment.kt
  6. 1
      app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientlistingV3/RecipientListingV3Presenter.java
  7. 5
      app/src/main/res/drawable/baseline_delete_24.xml
  8. 13
      app/src/main/res/layout/row_send_method.xml

5
.idea/assetWizardSettings.xml

@ -307,7 +307,7 @@
<PersistentState>
<option name="values">
<map>
<entry key="url" value="jar:file:/Applications/Android%20Studio.app/Contents/plugins/android/lib/android.jar!/images/material/icons/materialicons/file_copy/baseline_file_copy_24.xml" />
<entry key="url" value="file:$USER_HOME$/Library/Android/sdk/icons/material/materialicons/delete/baseline_delete_24.xml" />
</map>
</option>
</PersistentState>
@ -317,8 +317,7 @@
</option>
<option name="values">
<map>
<entry key="assetSourceType" value="FILE" />
<entry key="outputName" value="ic_change_field" />
<entry key="outputName" value="baseline_delete_24" />
<entry key="sourceFile" value="$USER_HOME$/Downloads/24px (43) (1).svg" />
</map>
</option>

75
app/src/main/java/com/remit/jmecustomer/features/beneficiaryDetail/BeneficiaryDetailActivity.kt

@ -5,24 +5,32 @@ import android.os.Bundle
import android.view.View
import android.widget.Toast
import androidx.recyclerview.widget.LinearLayoutManager
import com.remit.jmecustomer.R
import com.remit.jmecustomer.base.BaseActivity
import com.remit.jmecustomer.common.customwidgets.common.GenericPromptDialog
import com.remit.jmecustomer.common.customwidgets.common.GenericPromptDialog.GenericDialogPromptListener
import com.remit.jmecustomer.databinding.ActivityBeneficiaryDetailBinding
import com.remit.jmecustomer.features.beneficiaryDetail.adapters.SendMethodAdapter
import com.remit.jmecustomer.features.recipientlisting.view.recipientaddedit.RecipientAddEditActivity
import com.remit.jmecustomer.features.recipientmanagement.gateway.recipientlistingV3.RecipientListingV3Gateway
import com.remit.jmecustomer.features.recipientmanagement.model.recipientModelV5.Receiver
import com.remit.jmecustomer.features.recipientmanagement.model.recipientlistingV3.PaymentMethodV3Model
import com.remit.jmecustomer.features.recipientmanagement.model.recipientlistingV3.ReceiverInfoV3Model
import com.remit.jmecustomer.features.recipientmanagement.presenter.recipientlistingV3.RecipientListingV3Presenter
import com.remit.jmecustomer.features.recipientmanagement.presenter.recipientlistingV3.RecipientListingV3PresenterInterface
import com.remit.jmecustomer.features.recipientmanagement.view.recipientaddeditV3.RecipientAddEditV3Activity
import com.remit.jmecustomer.features.sendmoney.model.SendMoneyRequiredDataV3
import com.remit.jmecustomer.features.sendmoney.view.SendMoneyV2Activity
class BeneficiaryDetailActivity : BaseActivity() {
class BeneficiaryDetailActivity : BaseActivity(),
RecipientListingV3PresenterInterface.RecipientListingV3ContractInterface {
private lateinit var binding: ActivityBeneficiaryDetailBinding
private var sendMethodAdapter: SendMethodAdapter? = null
private var receiverInfoModel: ReceiverInfoV3Model? = null
private var receiver: Receiver? = null
var isPaymentSelected: Boolean = false;
var isPaymentSelected: Boolean = false
var presenter: RecipientListingV3PresenterInterface? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
@ -37,7 +45,7 @@ class BeneficiaryDetailActivity : BaseActivity() {
}
private fun init() {
presenter = RecipientListingV3Presenter(this, RecipientListingV3Gateway())
val layoutManagerVertical = LinearLayoutManager(this)
binding.rvPayType.layoutManager = layoutManagerVertical
receiverInfoModel = ReceiverInfoV3Model()
@ -52,6 +60,10 @@ class BeneficiaryDetailActivity : BaseActivity() {
receiverInfoModel?.agent = paymentMethodV3Model.agent
}
override fun onItemDelete(paymentMethodV3Model: PaymentMethodV3Model) {
showBeneficiaryDeleteConfirmDialog(paymentMethodV3Model.receiverId)
}
})
receiverInfoModel?.firstName = receiver?.firstName
receiverInfoModel?.middleName = receiver?.middleName
@ -136,4 +148,61 @@ class BeneficiaryDetailActivity : BaseActivity() {
}
return initials
}
override fun showAllRecipientToUser(
recipientInfoModelList: MutableList<Receiver>?,
changeLayoutBehavior: Boolean
) {
}
override fun onRecipientDeletedSuccessfully(recipientToBeDeleted: String?) {
finish()
}
override fun showEmailCodePromptDialog() {
}
override fun showNoRecipientFoundView(action: Boolean) {
}
override fun promptToSendMoney(
listener: GenericPromptDialog.GenericDialogPromptListener?,
message: String?
) {
}
override fun redirectToSendMoney(sendMoneyRequiredDataV3: SendMoneyRequiredDataV3?) {
}
override fun proceedToEditRecipient(recipientInfoModel: ReceiverInfoV3Model?) {
}
override fun proceedToShowTermsConditions(recipientInfoModel: ReceiverInfoV3Model?) {
}
override fun promptToEditRecipient(
genericDialogPromptListener: GenericPromptDialog.GenericDialogPromptListener?,
message: String?
) {
}
private fun showBeneficiaryDeleteConfirmDialog(receiverId: String) {
val genericPromptDialog = GenericPromptDialog()
genericPromptDialog.setTitleMessage(getString(R.string.delete_beneficiary_title_text))
genericPromptDialog.setBodyMessage(getString(R.string.delete_beneficiary_confirmation_text))
genericPromptDialog.setIconsRes(-1)
genericPromptDialog.setCancellable(true)
genericPromptDialog.setPositiveBtnString(getString(R.string.yes_text))
genericPromptDialog.setNegativeBtnString(getString(R.string.no_text))
genericPromptDialog.setListener(object : GenericDialogPromptListener {
override fun onNegativeBtnPressed() {}
override fun onPositiveBtnPressed() {
presenter?.deleteRecipient(receiverId);
}
})
if (!genericPromptDialog.isAdded) genericPromptDialog.show(
supportFragmentManager,
"DELETEBENEFICIARY"
)
}
}

4
app/src/main/java/com/remit/jmecustomer/features/beneficiaryDetail/adapters/SendMethodAdapter.kt

@ -48,6 +48,9 @@ class SendMethodAdapter(private val items: List<PaymentMethodV3Model>) :
lastPosition = position
notifyDataSetChanged()
}
holder.bindings.icDelete.setOnClickListener {
itemClickListener?.onItemDelete(item)
}
if (item.agent != null) {
if (item.agent.branch != null) {
holder.bindings.tvBranch.text = "Branch" + ":" + item.agent.branch.name
@ -72,5 +75,6 @@ class SendMethodAdapter(private val items: List<PaymentMethodV3Model>) :
interface ItemClickListener {
fun onItemClicked(paymentMethodV3Model: PaymentMethodV3Model)
fun onItemDelete(paymentMethodV3Model: PaymentMethodV3Model)
}
}

80
app/src/main/java/com/remit/jmecustomer/features/myTransfers/adapters/RecentTransactionsAdapter.kt

@ -1,6 +1,7 @@
package com.remit.jmecustomer.features.myTransfers.adapters
import android.content.Context
import android.content.Intent
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
@ -8,6 +9,8 @@ import androidx.recyclerview.widget.RecyclerView
import com.remit.jmecustomer.R
import com.remit.jmecustomer.databinding.RowRecentTransactionsBinding
import com.remit.jmecustomer.features.recipientmanagement.model.recipientModelV5.RecentTransaction
import com.remit.jmecustomer.features.support.view.SupportActivityV2
import com.remit.jmecustomer.utils.Constants
class RecentTransactionsAdapter(private var items: MutableList<RecentTransaction>) :
RecyclerView.Adapter<RecentTransactionsAdapter.ViewHolder>() {
@ -47,12 +50,40 @@ class RecentTransactionsAdapter(private var items: MutableList<RecentTransaction
if (item.payStatus.equals("Paid")) {
holder.bindings.tvStatus.text = item.getPayStatus()
holder.bindings.tvStatus.setBackgroundResource(R.drawable.rounded_green)
holder.bindings.tvViewStatus.text = mContext?.getString(R.string.view_status)
} else {
holder.bindings.tvStatus.text = item.getPayStatus()
holder.bindings.tvStatus.setBackgroundResource(R.drawable.rounded_red)
holder.bindings.tvViewStatus.text = mContext?.getString(R.string.edit_details)
holder.bindings.tvResend.visibility = View.GONE
}
if (item.displayActions != null) {
if (item.displayActions.contains(Constants.CancelStatus)) {
holder.bindings.tvResend.visibility = View.VISIBLE
holder.bindings.tvResend.text = mContext?.getString(R.string.request_to_cancel_text)
}
if (item.displayActions.contains(Constants.AmendStatus)) {
holder.bindings.tvResend.visibility = View.GONE
holder.bindings.tvViewStatus.visibility = View.VISIBLE
holder.bindings.tvViewStatus.text = mContext?.getString(R.string.edit_details)
}
if (item.displayActions.contains(Constants.RejectStatus)) {
holder.bindings.tvResend.visibility = View.VISIBLE
holder.bindings.tvViewStatus.visibility = View.GONE
holder.bindings.tvResend.text =
mContext?.getString(R.string.cancel_transaction_text)
}
if (item.displayActions.contains(Constants.CancelStatus) &&
item.displayActions.contains(Constants.AmendStatus)
) {
holder.bindings.tvResend.visibility = View.VISIBLE
holder.bindings.tvViewStatus.visibility = View.VISIBLE
holder.bindings.tvViewStatus.text = mContext?.getString(R.string.edit_details)
holder.bindings.tvResend.text =
mContext?.getString(R.string.cancel_transaction_text)
} else {
}
}
holder.itemView.setOnClickListener {
@ -63,6 +94,49 @@ class RecentTransactionsAdapter(private var items: MutableList<RecentTransaction
listener!!.navigateToChangeTransactionScreen(item)
}
}
holder.bindings.tvResend.setOnClickListener {
if (item.displayActions != null) {
if (item.displayActions.contains(Constants.CancelStatus)) {
val b = Intent(mContext, SupportActivityV2::class.java)
b.putExtra(
SupportActivityV2.REQUESTED_BUNDLE_KEY,
SupportActivityV2.REQUESTED_FOR_CANCEL
)
b.putExtra(SupportActivityV2.REQUESTED_CONTROL_NO_BUNDLE_KEY, item.controlNo)
b.putExtra(SupportActivityV2.REQUESTED_TRANSACTION_ID_BUNDLE_KEY, item.tranId)
mContext?.startActivity(b)
}
if (item.displayActions.contains(Constants.RejectStatus)) {
val d = Intent(mContext, SupportActivityV2::class.java)
d.putExtra(
SupportActivityV2.REQUESTED_BUNDLE_KEY,
SupportActivityV2.REQUESTED_FOR_CANCEL_PENDING_TXN
)
d.putExtra(SupportActivityV2.REQUESTED_CONTROL_NO_BUNDLE_KEY, item.controlNo)
d.putExtra(SupportActivityV2.REQUESTED_TRANSACTION_ID_BUNDLE_KEY, item.tranId)
mContext?.startActivity(d)
}
}
}
holder.bindings.tvViewStatus.setOnClickListener {
if (item.displayActions != null) {
if (item.displayActions.contains(Constants.AmendStatus)) {
val c = Intent(mContext, SupportActivityV2::class.java)
c.putExtra(
SupportActivityV2.REQUESTED_BUNDLE_KEY,
SupportActivityV2.REQUESTED_FOR_AMMENDMENT
)
c.putExtra(SupportActivityV2.REQUESTED_CONTROL_NO_BUNDLE_KEY, item.controlNo)
c.putExtra(SupportActivityV2.REQUESTED_TRANSACTION_ID_BUNDLE_KEY, item.tranId)
mContext?.startActivity(c)
} else {
listener!!.navigateToViewTransactionScreen(item)
}
}
}
}
fun setData(recievedData: MutableList<RecentTransaction>?) {

10
app/src/main/java/com/remit/jmecustomer/features/myTransfers/view/MyTransfersFragment.kt

@ -405,6 +405,8 @@ class MyTransfersFragment : BaseFragment(),
for (item in data!!) {
if (item.user.lowercase(Locale.getDefault())
.contains(keyWord.lowercase(Locale.getDefault()))
|| item.controlNo.lowercase(Locale.getDefault())
.contains(keyWord.lowercase(Locale.getDefault()))
) {
searchedData.add(item)
}
@ -522,7 +524,13 @@ class MyTransfersFragment : BaseFragment(),
if (binding.dateContainer.getVisibility() != View.VISIBLE) binding.dateContainer.setVisibility(
View.VISIBLE
)
presenter!!.getAllRecipientListV5(null, Constants.CURRENT_COUNTRY_ID, startDate, endDate, "5")
presenter!!.getAllRecipientListV5(
null,
Constants.CURRENT_COUNTRY_ID,
startDate,
endDate,
"5"
)
}
})
.build()

1
app/src/main/java/com/remit/jmecustomer/features/recipientmanagement/presenter/recipientlistingV3/RecipientListingV3Presenter.java

@ -331,6 +331,7 @@ public class RecipientListingV3Presenter extends BasePresenter implements Recipi
if (t.getErrorCode().equalsIgnoreCase(Constants.SUCCESS_CODE_V2)) {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.SUCCESS, alertType -> {
getAllRecipientList(null);
view.onRecipientDeletedSuccessfully(null);
});
} else {
view.showPopUpMessage(t.getMsg(), CustomAlertDialog.AlertType.FAILED, null);

5
app/src/main/res/drawable/baseline_delete_24.xml

@ -0,0 +1,5 @@
<vector android:height="24dp" android:tint="#000000"
android:viewportHeight="24" android:viewportWidth="24"
android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
<path android:fillColor="@android:color/white" android:pathData="M6,19c0,1.1 0.9,2 2,2h8c1.1,0 2,-0.9 2,-2V7H6v12zM19,4h-3.5l-1,-1h-5l-1,1H5v2h14V4z"/>
</vector>

13
app/src/main/res/layout/row_send_method.xml

@ -53,7 +53,7 @@
android:textColor="@color/black_opacity_87"
style="@style/TextStyle.VolteSemiBold14"
app:layout_constraintTop_toTopOf="parent"
android:layout_width="wrap_content"
android:layout_width="@dimen/_200sdp"
android:layout_height="wrap_content"/>
<TextView
@ -76,5 +76,16 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<ImageView
android:layout_marginEnd="@dimen/_5sdp"
android:id="@+id/ic_delete"
app:layout_constraintTop_toTopOf="parent"
android:src="@drawable/baseline_delete_24"
app:layout_constraintEnd_toEndOf="parent"
android:layout_width="@dimen/_30sdp"
android:layout_height="@dimen/_30sdp"
app:tint="@color/black_opacity_60" />
</androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>
Loading…
Cancel
Save