From ccfd8a09e09f35488b5c220352fd18ba1a0b97d4 Mon Sep 17 00:00:00 2001 From: Keith Woodlock Date: Sat, 18 Aug 2012 11:21:18 +0100 Subject: [PATCH] fix issues around loan. --- mifosng-db/0001a-mifos-platform-base-ddl-schema.sql | 1 - .../main/java/org/mifosng/platform/loan/domain/Loan.java | 7 ++++++- .../platform/loan/service/LoanReadPlatformServiceImpl.java | 2 +- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/mifosng-db/0001a-mifos-platform-base-ddl-schema.sql b/mifosng-db/0001a-mifos-platform-base-ddl-schema.sql index 8c375d98d..ce33b0281 100644 --- a/mifosng-db/0001a-mifos-platform-base-ddl-schema.sql +++ b/mifosng-db/0001a-mifos-platform-base-ddl-schema.sql @@ -385,7 +385,6 @@ CREATE TABLE `m_loan` ( UNIQUE KEY `m_id` (`external_id`), KEY `FKB6F935D87179A0CB` (`client_id`), KEY `FKB6F935D8C8D4B434` (`product_id`), - KEY `FK7C885878B1147D1` (`loan_status_id`), KEY `FK7C885877240145` (`fund_id`), KEY `FK_loan_ltp_strategy` (`loan_transaction_strategy_id`), CONSTRAINT `FK_loan_ltp_strategy` FOREIGN KEY (`loan_transaction_strategy_id`) REFERENCES `ref_loan_transaction_processing_strategy` (`id`), diff --git a/mifosng-provider/src/main/java/org/mifosng/platform/loan/domain/Loan.java b/mifosng-provider/src/main/java/org/mifosng/platform/loan/domain/Loan.java index c7957503e..db64a4005 100644 --- a/mifosng-provider/src/main/java/org/mifosng/platform/loan/domain/Loan.java +++ b/mifosng-provider/src/main/java/org/mifosng/platform/loan/domain/Loan.java @@ -202,8 +202,13 @@ public class Loan extends AbstractAuditableCustom { final LocalDate repaymentsStartingFromDate, final LocalDate interestChargedFromDate, final LoanLifecycleStateMachine lifecycleStateMachine) { + + LoanStatus from = null; + if (this.loanStatus != null) { + from = LoanStatus.fromInt(this.loanStatus); + } - LoanStatus statusEnum = lifecycleStateMachine.transition(LoanEvent.LOAN_CREATED, LoanStatus.fromInt(this.loanStatus)); + LoanStatus statusEnum = lifecycleStateMachine.transition(LoanEvent.LOAN_CREATED, from); this.loanStatus = statusEnum.getValue(); this.termFrequency = loanTermFrequency; diff --git a/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanReadPlatformServiceImpl.java b/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanReadPlatformServiceImpl.java index 69f4608ed..7570d3b4d 100644 --- a/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanReadPlatformServiceImpl.java +++ b/mifosng-provider/src/main/java/org/mifosng/platform/loan/service/LoanReadPlatformServiceImpl.java @@ -593,7 +593,7 @@ public class LoanReadPlatformServiceImpl implements LoanReadPlatformService { return " tr.id as id, tr.transaction_type_enum as transactionType, tr.transaction_date as `date`, tr.amount as total, " + " l.currency_code as currencyCode, l.currency_digits as currencyDigits, rc.`name` as currencyName, rc.display_symbol as currencyDisplaySymbol, rc.internationalized_name_code as currencyNameCode " + " from m_loan l " - + " join m_transaction tr on tr.loan_id = l.id" + + " join m_loan_transaction tr on tr.loan_id = l.id" + " join m_currency rc on rc.`code` = l.currency_code "; }