refactor: add lombok to provisioning module

This commit is contained in:
Hemant Gupta
2022-10-13 20:44:12 +02:00
committed by Arnold Gálovics
parent b4cd3cf54f
commit 8b5a0262de
6 changed files with 62 additions and 105 deletions
@@ -19,33 +19,23 @@
package org.apache.fineract.organisation.provisioning.data; package org.apache.fineract.organisation.provisioning.data;
import java.io.Serializable; import java.io.Serializable;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
/** /**
* Immutable object representing organization's provision category data * Immutable object representing organization's provision category data
*/ */
@Data
@NoArgsConstructor
@Accessors(chain = true)
public class ProvisioningCategoryData implements Comparable<ProvisioningCategoryData>, Serializable { public class ProvisioningCategoryData implements Comparable<ProvisioningCategoryData>, Serializable {
private final Long id; private static final long serialVersionUID = 1L;
private final String categoryName; private Long id;
private final String categoryDescription; private String categoryName;
private String categoryDescription;
public ProvisioningCategoryData(final Long id, final String categoryName, final String categoryDescription) {
this.id = id;
this.categoryName = categoryName;
this.categoryDescription = categoryDescription;
}
public Long getId() {
return this.id;
}
public String getCategoryName() {
return this.categoryName;
}
public String getCategoryDescription() {
return this.categoryDescription;
}
@Override @Override
public boolean equals(final Object obj) { public boolean equals(final Object obj) {
@@ -21,19 +21,27 @@ package org.apache.fineract.organisation.provisioning.data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Collection; import java.util.Collection;
import java.util.List; import java.util.List;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.apache.fineract.accounting.glaccount.data.GLAccountData; import org.apache.fineract.accounting.glaccount.data.GLAccountData;
import org.apache.fineract.portfolio.loanproduct.data.LoanProductData; import org.apache.fineract.portfolio.loanproduct.data.LoanProductData;
@Data
@NoArgsConstructor
@Accessors(chain = true)
@SuppressWarnings("unused") @SuppressWarnings("unused")
public final class ProvisioningCriteriaData implements Comparable<ProvisioningCriteriaData>, Serializable { public final class ProvisioningCriteriaData implements Comparable<ProvisioningCriteriaData>, Serializable {
private final Long criteriaId; private static final long serialVersionUID = 1L;
private final String criteriaName;
private final String createdBy; private Long criteriaId;
private final Collection<LoanProductData> loanProducts; private String criteriaName;
private String createdBy;
private Collection<LoanProductData> loanProducts;
private Collection<LoanProductData> selectedLoanProducts; private Collection<LoanProductData> selectedLoanProducts;
private final Collection<ProvisioningCriteriaDefinitionData> definitions; private Collection<ProvisioningCriteriaDefinitionData> definitions;
private final Collection<GLAccountData> glAccounts; private Collection<GLAccountData> glAccounts;
private ProvisioningCriteriaData(final Long criteriaId, final String criteriaName, final Collection<LoanProductData> loanProducts, private ProvisioningCriteriaData(final Long criteriaId, final String criteriaName, final Collection<LoanProductData> loanProducts,
Collection<ProvisioningCriteriaDefinitionData> definitions, Collection<GLAccountData> glAccounts, final String createdBy) { Collection<ProvisioningCriteriaDefinitionData> definitions, Collection<GLAccountData> glAccounts, final String createdBy) {
@@ -61,14 +69,16 @@ public final class ProvisioningCriteriaData implements Comparable<ProvisioningCr
final Collection<LoanProductData> loanProducts, final List<ProvisioningCriteriaDefinitionData> definitions) { final Collection<LoanProductData> loanProducts, final List<ProvisioningCriteriaDefinitionData> definitions) {
Collection<GLAccountData> glAccounts = null; Collection<GLAccountData> glAccounts = null;
String createdBy = null; String createdBy = null;
return new ProvisioningCriteriaData(criteriaId, criteriaName, loanProducts, definitions, glAccounts, createdBy); return new ProvisioningCriteriaData().setCriteriaId(criteriaId).setCriteriaName(criteriaName).setLoanProducts(loanProducts)
.setDefinitions(definitions).setGlAccounts(glAccounts).setCreatedBy(createdBy);
} }
public static ProvisioningCriteriaData toLookup(final Long criteriaId, final String criteriaName, String createdBy) { public static ProvisioningCriteriaData toLookup(final Long criteriaId, final String criteriaName, String createdBy) {
Collection<GLAccountData> glAccounts = null; Collection<GLAccountData> glAccounts = null;
Collection<LoanProductData> loanProducts = null; Collection<LoanProductData> loanProducts = null;
List<ProvisioningCriteriaDefinitionData> definitions = null; List<ProvisioningCriteriaDefinitionData> definitions = null;
return new ProvisioningCriteriaData(criteriaId, criteriaName, loanProducts, definitions, glAccounts, createdBy); return new ProvisioningCriteriaData().setCriteriaId(criteriaId).setCriteriaName(criteriaName).setLoanProducts(loanProducts)
.setDefinitions(definitions).setGlAccounts(glAccounts).setCreatedBy(createdBy);
} }
public static ProvisioningCriteriaData toTemplate(final Collection<ProvisioningCriteriaDefinitionData> definitions, public static ProvisioningCriteriaData toTemplate(final Collection<ProvisioningCriteriaDefinitionData> definitions,
@@ -76,7 +86,8 @@ public final class ProvisioningCriteriaData implements Comparable<ProvisioningCr
Long criteriaId = null; Long criteriaId = null;
String criteriaName = null; String criteriaName = null;
String createdBy = null; String createdBy = null;
return new ProvisioningCriteriaData(criteriaId, criteriaName, loanProducts, definitions, glAccounts, createdBy); return new ProvisioningCriteriaData().setCriteriaId(criteriaId).setCriteriaName(criteriaName).setLoanProducts(loanProducts)
.setDefinitions(definitions).setGlAccounts(glAccounts).setCreatedBy(createdBy);
} }
public static ProvisioningCriteriaData toTemplate(final ProvisioningCriteriaData data, public static ProvisioningCriteriaData toTemplate(final ProvisioningCriteriaData data,
@@ -20,81 +20,32 @@ package org.apache.fineract.organisation.provisioning.data;
import java.io.Serializable; import java.io.Serializable;
import java.math.BigDecimal; import java.math.BigDecimal;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
@Data
@NoArgsConstructor
@Accessors(chain = true)
public final class ProvisioningCriteriaDefinitionData implements Comparable<ProvisioningCriteriaDefinitionData>, Serializable { public final class ProvisioningCriteriaDefinitionData implements Comparable<ProvisioningCriteriaDefinitionData>, Serializable {
private final Long id; private static final long serialVersionUID = 1L;
private final Long categoryId;
private final String categoryName;
private final Long minAge;
private final Long maxAge;
private final BigDecimal provisioningPercentage;
private final Long liabilityAccount;
private final String liabilityCode;
private final String liabilityName;
private final Long expenseAccount;
private final String expenseCode;
private final String expenseName;
public ProvisioningCriteriaDefinitionData(Long id, Long categoryId, String categoryName, Long minAge, Long maxAge, private Long id;
BigDecimal provisioningPercentage, Long liabilityAccount, final String liabilityCode, String liabilityName, Long expenseAccount, private Long categoryId;
final String expenseCode, final String expenseName) { private String categoryName;
this.id = id; private Long minAge;
this.categoryId = categoryId; private Long maxAge;
this.minAge = minAge; private BigDecimal provisioningPercentage;
this.maxAge = maxAge; private Long liabilityAccount;
this.provisioningPercentage = provisioningPercentage; private String liabilityCode;
this.liabilityAccount = liabilityAccount; private String liabilityName;
this.expenseAccount = expenseAccount; private Long expenseAccount;
this.categoryName = categoryName; private String expenseCode;
this.liabilityCode = liabilityCode; private String expenseName;
this.expenseCode = expenseCode;
this.liabilityName = liabilityName;
this.expenseName = expenseName;
}
public static ProvisioningCriteriaDefinitionData template(Long categoryId, String categoryName) { public static ProvisioningCriteriaDefinitionData template(Long categoryId, String categoryName) {
return new ProvisioningCriteriaDefinitionData(null, categoryId, categoryName, null, null, null, null, null, null, null, null, null); return new ProvisioningCriteriaDefinitionData().setCategoryId(categoryId).setCategoryName(categoryName);
}
public Long getId() {
return this.id;
}
public Long getCategoryId() {
return this.categoryId;
}
public String getCategoryName() {
return this.categoryName;
}
public Long getMinAge() {
return this.minAge;
}
public Long getMaxAge() {
return this.maxAge;
}
public BigDecimal getProvisioningPercentage() {
return this.provisioningPercentage;
}
public Long getLiabilityAccount() {
return this.liabilityAccount;
}
public Long getExpenseAccount() {
return this.expenseAccount;
}
public String getLiabilityCode() {
return this.liabilityCode;
}
public String getExpenseCode() {
return this.expenseCode;
} }
@Override @Override
@@ -55,7 +55,7 @@ public class ProvisioningCategoryReadPlatformServiceImpl implements Provisioning
final Long id = JdbcSupport.getLong(rs, "id"); final Long id = JdbcSupport.getLong(rs, "id");
final String categoryName = rs.getString("category_name"); final String categoryName = rs.getString("category_name");
final String description = rs.getString("description"); final String description = rs.getString("description");
return new ProvisioningCategoryData(id, categoryName, description); return new ProvisioningCategoryData().setId(id).setCategoryName(categoryName).setCategoryDescription(description);
} }
public String schema() { public String schema() {
@@ -160,8 +160,10 @@ public class ProvisioningCriteriaReadPlatformServiceImpl implements Provisioning
String expenseAccountCode = rs.getString("expensecode"); String expenseAccountCode = rs.getString("expensecode");
String expenseAccountName = rs.getString("expensename"); String expenseAccountName = rs.getString("expensename");
return new ProvisioningCriteriaDefinitionData(id, categoryId, categoryName, minAge, maxAge, provisioningPercentage, return new ProvisioningCriteriaDefinitionData().setId(id).setCategoryId(categoryId).setCategoryName(categoryName)
liabilityAccount, liabilityAccountCode, liabilityAccountName, expenseAccount, expenseAccountCode, expenseAccountName); .setMinAge(minAge).setMaxAge(maxAge).setProvisioningPercentage(provisioningPercentage)
.setLiabilityAccount(liabilityAccount).setLiabilityCode(liabilityAccountCode).setLiabilityName(liabilityAccountName)
.setExpenseAccount(expenseAccount).setExpenseCode(expenseAccountCode).setExpenseName(expenseAccountName);
} }
public String schema() { public String schema() {
@@ -153,9 +153,12 @@ public class ProvisioningCriteriaWritePlatformServiceJpaRepositoryImpl implement
String categoryName = null; String categoryName = null;
String liabilityAccountName = null; String liabilityAccountName = null;
String expenseAccountName = null; String expenseAccountName = null;
ProvisioningCriteriaDefinitionData data = new ProvisioningCriteriaDefinitionData(id, categoryId, categoryName, minimumAge, ProvisioningCriteriaDefinitionData data = new ProvisioningCriteriaDefinitionData().setId(id).setCategoryId(categoryId)
maximumAge, provisioningpercentage, liabilityAccount.getId(), liabilityAccount.getGlCode(), liabilityAccountName, .setCategoryName(categoryName).setMinAge(minimumAge).setMaxAge(maximumAge)
expenseAccount.getId(), expenseAccount.getGlCode(), expenseAccountName); .setProvisioningPercentage(provisioningpercentage).setLiabilityAccount(liabilityAccount.getId())
.setLiabilityCode(liabilityAccount.getGlCode()).setLiabilityName(liabilityAccountName)
.setExpenseAccount(expenseAccount.getId()).setExpenseCode(expenseAccount.getGlCode())
.setExpenseName(expenseAccountName);
provisioningCriteria.update(data, liabilityAccount, expenseAccount); provisioningCriteria.update(data, liabilityAccount, expenseAccount);
} }
} }