Skip to content
This repository has been archived by the owner on Jan 11, 2024. It is now read-only.

View details for Accounts, Teller and Ledgers Added #69

Open
wants to merge 4 commits into
base: development
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
8 changes: 8 additions & 0 deletions app/src/main/AndroidManifest.xml
Expand Up @@ -86,6 +86,14 @@

<activity android:name=".ui.online.customers.customeractivities.CustomerActivitiesActivity" />

<activity android:name=".ui.online.accounting.accounts.accountdetails.AccountDetailActivity" />

<activity android:name=".ui.online.accounting.ledgers.ledgerdetails.LedgerDetailActivity" />

<activity android:name=".ui.online.teller.tellerDetails.TellerDetailActivity" />

<activity android:name=".ui.product.productDetails.ProductDetailActivity" />

<receiver
android:name=".jobs.JobsReceiver"
android:exported="false">
Expand Down
@@ -1,13 +1,16 @@
package org.apache.fineract.data.models.loan

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize

/**
* @author Rajan Maurya
* On 09/07/17.
*/
data class AccountAssignment (
@SerializedName("designator") var designator: String? = null,
@SerializedName("accountIdentifier") var accountIdentifier: String? = null,
@SerializedName("ledgerIdentifier") var ledgerIdentifier: String? = null
)
@Parcelize
data class AccountAssignment(
@SerializedName("designator") var designator: String? = null,
@SerializedName("accountIdentifier") var accountIdentifier: String? = null,
@SerializedName("ledgerIdentifier") var ledgerIdentifier: String? = null
) : Parcelable
@@ -1,12 +1,15 @@
package org.apache.fineract.data.models.loan

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize

/**
* @author Rajan Maurya
* On 12/07/17.
*/
@Parcelize
data class TermRange(
@SerializedName("temporalUnit") var temporalUnit: String?,
@SerializedName("maximum") var maximum: Double?
)
) : Parcelable
@@ -1,13 +1,16 @@
package org.apache.fineract.data.models.product

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize

/**
* @author Rajan Maurya
* On 20/07/17.
*/

data class BalanceRange (
@SerializedName("minimum") var minimum: Double? = null,
@SerializedName("maximum") var maximum: Double? = null
)
@Parcelize
data class BalanceRange(
@SerializedName("minimum") var minimum: Double? = null,
@SerializedName("maximum") var maximum: Double? = null
) : Parcelable
@@ -1,13 +1,16 @@
package org.apache.fineract.data.models.product

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize

/**
* @author Rajan Maurya
* On 20/07/17.
*/

data class InterestRange (
@SerializedName("minimum") var minimum: Double? = null,
@SerializedName("maximum") var maximum: Double? = null
)
@Parcelize
data class InterestRange(
@SerializedName("minimum") var minimum: Double? = null,
@SerializedName("maximum") var maximum: Double? = null
) : Parcelable
@@ -1,6 +1,8 @@
package org.apache.fineract.data.models.product

import android.os.Parcelable
import com.google.gson.annotations.SerializedName
import kotlinx.android.parcel.Parcelize
import org.apache.fineract.data.models.loan.AccountAssignment
import org.apache.fineract.data.models.loan.TermRange
import java.util.ArrayList
Expand All @@ -9,23 +11,23 @@ import java.util.ArrayList
* @author Rajan Maurya
* On 20/07/17.
*/

data class Product (
@SerializedName("identifier") val identifier: String? = null,
@SerializedName("name") val name: String? = null,
@SerializedName("termRange") val termRange: TermRange? = null,
@SerializedName("balanceRange") val balanceRange: BalanceRange? = null,
@SerializedName("interestRange") val interestRange: InterestRange? = null,
@SerializedName("interestBasis") val interestBasis: InterestBasis? = null,
@SerializedName("patternPackage") val patternPackage: String? = null,
@SerializedName("description") val description: String? = null,
@SerializedName("currencyCode") val currencyCode: String? = null,
@SerializedName("minorCurrencyUnitDigits") val minorCurrencyUnitDigits: Int = 0,
@SerializedName("accountAssignments") val accountAssignments: List<AccountAssignment> =
ArrayList(),
@SerializedName("parameters") val parameters: String? = null,
@SerializedName("createdOn") val createdOn: String? = null,
@SerializedName("createdBy") val createdBy: String? = null,
@SerializedName("lastModifiedOn") val lastModifiedOn: String? = null,
@SerializedName("lastModifiedBy") val lastModifiedBy: String? = null
)
@Parcelize
data class Product(
@SerializedName("identifier") val identifier: String? = null,
@SerializedName("name") val name: String? = null,
@SerializedName("termRange") val termRange: TermRange? = null,
@SerializedName("balanceRange") val balanceRange: BalanceRange? = null,
@SerializedName("interestRange") val interestRange: InterestRange? = null,
@SerializedName("interestBasis") val interestBasis: InterestBasis? = null,
@SerializedName("patternPackage") val patternPackage: String? = null,
@SerializedName("description") val description: String? = null,
@SerializedName("currencyCode") val currencyCode: String? = null,
@SerializedName("minorCurrencyUnitDigits") val minorCurrencyUnitDigits: Int = 0,
@SerializedName("accountAssignments") val accountAssignments: List<AccountAssignment> =
ArrayList(),
@SerializedName("parameters") val parameters: String? = null,
@SerializedName("createdOn") val createdOn: String? = null,
@SerializedName("createdBy") val createdBy: String? = null,
@SerializedName("lastModifiedOn") val lastModifiedOn: String? = null,
@SerializedName("lastModifiedBy") val lastModifiedBy: String? = null
) : Parcelable
Expand Up @@ -4,7 +4,7 @@
import org.apache.fineract.injection.module.ActivityModule;
import org.apache.fineract.ui.offline.CustomerPayloadFragment;
import org.apache.fineract.ui.online.DashboardActivity;
import org.apache.fineract.ui.online.accounting.accounts.AccountsFragment;
import org.apache.fineract.ui.online.accounting.accounts.accountList.AccountsFragment;
import org.apache.fineract.ui.online.accounting.ledgers.LedgerFragment;
import org.apache.fineract.ui.online.customers.createcustomer.customeractivity
.CreateCustomerActivity;
Expand Down Expand Up @@ -50,8 +50,8 @@
import org.apache.fineract.ui.online.login.LoginActivity;
import org.apache.fineract.ui.online.review.AddLoanReviewFragment;
import org.apache.fineract.ui.online.roles.roleslist.RolesFragment;
import org.apache.fineract.ui.online.teller.TellerFragment;
import org.apache.fineract.ui.product.ProductFragment;
import org.apache.fineract.ui.online.teller.tellerList.TellerFragment;
import org.apache.fineract.ui.product.productList.ProductFragment;

import dagger.Subcomponent;

Expand Down
Expand Up @@ -6,11 +6,13 @@ import androidx.recyclerview.widget.RecyclerView
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.AdapterView
import android.widget.TextView
import kotlinx.android.synthetic.main.item_account.view.*
import org.apache.fineract.R
import org.apache.fineract.data.models.accounts.Account
import org.apache.fineract.injection.ApplicationContext
import org.apache.fineract.ui.base.OnItemClickListener
import org.apache.fineract.utils.DateUtils
import org.apache.fineract.utils.StatusUtils
import javax.inject.Inject
Expand All @@ -20,6 +22,8 @@ class AccountsAdapter @Inject constructor(@ApplicationContext val context: Conte

var accounts: List<Account> = ArrayList()

lateinit var onItemClickListener: OnItemClickListener

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {

val view = LayoutInflater.from(parent?.context).inflate(R.layout.item_account, parent, false)
Expand Down Expand Up @@ -55,12 +59,25 @@ class AccountsAdapter @Inject constructor(@ApplicationContext val context: Conte
notifyDataSetChanged()
}

class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun setItemClickListener(onItemClickListener: OnItemClickListener) {
this.onItemClickListener = onItemClickListener
}

inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView), View.OnClickListener {

val tvIdentifier: TextView = itemView.tv_account_identifier
val tvModifiedBy: TextView = itemView.tv_modified_by
val tvModifiedOn: TextView = itemView.tv_modified_on
val tvName: TextView = itemView.tv_name
val ivAccountTypeIndicator: AppCompatImageView = itemView.iv_type_indicator

init {
itemView.ll_account.setOnClickListener(this)
}

override fun onClick(v: View?) {
if (onItemClickListener != null)
onItemClickListener.onItemClick(v, adapterPosition)
}
}
}
Expand Up @@ -11,6 +11,7 @@ import kotlinx.android.synthetic.main.item_ledger.view.*
import org.apache.fineract.R
import org.apache.fineract.data.models.accounts.Ledger
import org.apache.fineract.injection.ApplicationContext
import org.apache.fineract.ui.base.OnItemClickListener
import org.apache.fineract.utils.DateUtils
import org.apache.fineract.utils.StatusUtils
import javax.inject.Inject
Expand All @@ -19,6 +20,7 @@ class LedgerAdapter @Inject constructor(@ApplicationContext val context: Context
: RecyclerView.Adapter<LedgerAdapter.ViewHolder>() {

private var ledgers: List<Ledger> = ArrayList()
private lateinit var onItemClickListener: OnItemClickListener

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {

Expand Down Expand Up @@ -54,12 +56,26 @@ class LedgerAdapter @Inject constructor(@ApplicationContext val context: Context
notifyDataSetChanged()
}

class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun setItemClickListener(onItemClickListener: OnItemClickListener) {
this.onItemClickListener = onItemClickListener
}

inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView), View.OnClickListener {

val tvLedgerIdentifier: TextView = itemView.tv_ledger_identifier
val tvModifiedBy: TextView = itemView.tv_modified_by
val tvModifiedOn: TextView = itemView.tv_modified_on
val tvTotalValue: TextView = itemView.tv_total_value
val ivAccountTypeIndicator: AppCompatImageView = itemView.iv_type_indicator

init {
itemView.ll_ledger.setOnClickListener(this)
}

override fun onClick(v: View?) {
if (onItemClickListener != null) {
onItemClickListener.onItemClick(v, adapterPosition)
}
}
}
}
Expand Up @@ -10,6 +10,7 @@ import kotlinx.android.synthetic.main.item_product.view.*
import org.apache.fineract.R
import org.apache.fineract.data.models.product.Product
import org.apache.fineract.injection.ApplicationContext
import org.apache.fineract.ui.base.OnItemClickListener
import org.apache.fineract.utils.DateUtils
import javax.inject.Inject

Expand All @@ -18,6 +19,8 @@ class ProductAdapter @Inject constructor(@ApplicationContext val context: Contex

private var products: List<Product> = ArrayList()

lateinit var onItemClickListener: OnItemClickListener

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {

val view = LayoutInflater.from(parent?.context).inflate(R.layout.item_product, parent, false)
Expand Down Expand Up @@ -50,11 +53,24 @@ class ProductAdapter @Inject constructor(@ApplicationContext val context: Contex
notifyDataSetChanged()
}

class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun setItemClickListener(onItemClickListener: OnItemClickListener) {
this.onItemClickListener = onItemClickListener
}

inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView), View.OnClickListener {

val tvProductIdentifier: TextView = itemView.tv_product_identifier
val tvModifiedBy: TextView = itemView.tv_modified_by
val tvModifiedOn: TextView = itemView.tv_modified_on
val tvName: TextView = itemView.tv_name

init {
itemView.ll_loan_accounts.setOnClickListener(this)
}

override fun onClick(v: View?) {
if (onItemClickListener != null)
onItemClickListener.onItemClick(v, adapterPosition)
}
}
}
Expand Up @@ -12,6 +12,7 @@ import kotlinx.android.synthetic.main.item_teller.view.*
import org.apache.fineract.R
import org.apache.fineract.data.models.teller.Teller
import org.apache.fineract.injection.ApplicationContext
import org.apache.fineract.ui.base.OnItemClickListener
import org.apache.fineract.utils.DateUtils
import org.apache.fineract.utils.StatusUtils
import javax.inject.Inject
Expand All @@ -21,6 +22,8 @@ class TellerAdapter @Inject constructor(@ApplicationContext val context: Context

var tellers: List<Teller> = ArrayList()

lateinit var onItemClickListener: OnItemClickListener

override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): ViewHolder {
val view = LayoutInflater.from(parent?.context).inflate(R.layout.item_teller,
parent, false)
Expand Down Expand Up @@ -56,12 +59,26 @@ class TellerAdapter @Inject constructor(@ApplicationContext val context: Context
notifyDataSetChanged()
}

class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) {
fun setItemClickListener(onItemClickListener: OnItemClickListener) {
this.onItemClickListener = onItemClickListener
}

inner class ViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView), View.OnClickListener {

val tellerIdentifier: TextView = itemView.tv_teller_identifier
val tvModifiedBy: TextView = itemView.tv_modified_by
val tvModifiedOn: TextView = itemView.tv_modified_on
val withDrawLimit: TextView = itemView.tv_cashWithdraw_limit
val statusIndicator: AppCompatImageView = itemView.iv_status_indicator

init {
itemView.ll_loan_accounts.setOnClickListener(this)
}

override fun onClick(v: View?) {
if (onItemClickListener != null) {
onItemClickListener.onItemClick(v, adapterPosition)
}
}
}
}
Expand Up @@ -25,13 +25,13 @@
import org.apache.fineract.ui.base.Toaster;
import org.apache.fineract.ui.offline.CustomerPayloadFragment;
import org.apache.fineract.ui.online.accounting.ledgers.LedgerFragment;
import org.apache.fineract.ui.online.accounting.accounts.AccountsFragment;
import org.apache.fineract.ui.online.accounting.accounts.accountList.AccountsFragment;
import org.apache.fineract.ui.online.customers.customerlist.CustomersFragment;
import org.apache.fineract.ui.online.dashboard.DashboardFragment;
import org.apache.fineract.ui.online.launcher.LauncherActivity;
import org.apache.fineract.ui.online.roles.roleslist.RolesFragment;
import org.apache.fineract.ui.online.teller.TellerFragment;
import org.apache.fineract.ui.product.ProductFragment;
import org.apache.fineract.ui.online.teller.tellerList.TellerFragment;
import org.apache.fineract.ui.product.productList.ProductFragment;
import org.apache.fineract.utils.MaterialDialog;

import javax.inject.Inject;
Expand Down
@@ -1,4 +1,4 @@
package org.apache.fineract.ui.online.accounting.accounts
package org.apache.fineract.ui.online.accounting.accounts.accountList

import org.apache.fineract.data.models.accounts.Account
import org.apache.fineract.ui.base.MvpView
Expand Down