This is an automated email from the ASF dual-hosted git repository.

myrle pushed a commit to branch develop
in repository 
https://gitbox.apache.org/repos/asf/fineract-cn-deposit-account-management.git

commit 0888194184598fdc9968f0a9e0fae29eb648b79b
Author: mgeiss <[email protected]>
AuthorDate: Wed Sep 6 14:23:42 2017 +0200

    using numbers instead of a date for dividends due date
---
 .../api/v1/definition/domain/DividendDistribution.java    | 15 +++++++++------
 .../java/io/mifos/deposit/TestDividendDistribution.java   |  7 ++++++-
 .../internal/mapper/DividendDistributionMapper.java       |  5 +++--
 .../service/rest/ProductDefinitionRestController.java     |  2 +-
 4 files changed, 19 insertions(+), 10 deletions(-)

diff --git 
a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
 
b/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
index 3186deb..01c9a12 100644
--- 
a/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
+++ 
b/api/src/main/java/io/mifos/deposit/api/v1/definition/domain/DividendDistribution.java
@@ -15,12 +15,15 @@
  */
 package io.mifos.deposit.api.v1.definition.domain;
 
+import io.mifos.core.lang.DateOfBirth;
 import org.hibernate.validator.constraints.NotBlank;
 
+import javax.validation.constraints.NotNull;
+
 public class DividendDistribution {
 
-  @NotBlank
-  private String dueDate;
+  @NotNull
+  private DateOfBirth dueDate;
   @NotBlank
   private String dividendRate;
 
@@ -28,11 +31,11 @@ public class DividendDistribution {
     super();
   }
 
-  public String getDueDate() {
+  public DateOfBirth getDueDate() {
     return this.dueDate;
   }
 
-  public void setDueDate(final String dueDate) {
+  public void setDueDate(final DateOfBirth dueDate) {
     this.dueDate = dueDate;
   }
 
@@ -51,13 +54,13 @@ public class DividendDistribution {
 
     final DividendDistribution that = (DividendDistribution) o;
 
-    if (!dueDate.equals(that.dueDate)) return false;
+    if (!dueDate.toLocalDate().isEqual(that.dueDate.toLocalDate())) return 
false;
     return dividendRate.equals(that.dividendRate);
   }
 
   @Override
   public int hashCode() {
-    int result = dueDate.hashCode();
+    int result = dueDate.toLocalDate().hashCode();
     result = 31 * result + dividendRate.hashCode();
     return result;
   }
diff --git 
a/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java 
b/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java
index e6360ed..27f2410 100644
--- 
a/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java
+++ 
b/component-test/src/main/java/io/mifos/deposit/TestDividendDistribution.java
@@ -18,6 +18,7 @@ package io.mifos.deposit;
 import io.mifos.accounting.api.v1.domain.Account;
 import io.mifos.accounting.api.v1.domain.AccountType;
 import io.mifos.accounting.api.v1.domain.JournalEntry;
+import io.mifos.core.lang.DateOfBirth;
 import io.mifos.deposit.api.v1.EventConstants;
 import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
 import io.mifos.deposit.api.v1.definition.domain.ProductDefinition;
@@ -74,7 +75,11 @@ public class TestDividendDistribution extends 
AbstractDepositAccountManagementTe
         
.when(super.accountingServiceSpy).findAccount(shareAccount.getIdentifier());
 
     final DividendDistribution dividendDistribution = new 
DividendDistribution();
-    dividendDistribution.setDueDate("2017-07-31Z");
+    final DateOfBirth dueDate = new DateOfBirth();
+    dueDate.setYear(2017);
+    dueDate.setMonth(7);
+    dueDate.setDay(31);
+    dividendDistribution.setDueDate(dueDate);
     dividendDistribution.setDividendRate("2.5");
     
this.depositAccountManager.dividendDistribution(productDefinition.getIdentifier(),
 dividendDistribution);
 
diff --git 
a/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
 
b/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
index 7c01a8f..6503836 100644
--- 
a/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
+++ 
b/service/src/main/java/io/mifos/deposit/service/internal/mapper/DividendDistributionMapper.java
@@ -17,6 +17,7 @@ package io.mifos.deposit.service.internal.mapper;
 
 import io.mifos.core.api.util.UserContextHolder;
 import io.mifos.core.lang.DateConverter;
+import io.mifos.core.lang.DateOfBirth;
 import io.mifos.deposit.api.v1.definition.domain.DividendDistribution;
 import io.mifos.deposit.service.internal.repository.DividendDistributionEntity;
 import io.mifos.deposit.service.internal.repository.ProductDefinitionEntity;
@@ -36,7 +37,7 @@ public class DividendDistributionMapper {
     final DividendDistributionEntity dividendDistributionEntity = new 
DividendDistributionEntity();
 
     dividendDistributionEntity.setProductDefinition(productDefinitionEntity);
-    final Date dueDate = 
Date.valueOf(DateConverter.dateFromIsoString(dividendDistribution.getDueDate()));
+    final Date dueDate = 
Date.valueOf(dividendDistribution.getDueDate().toLocalDate());
     dividendDistributionEntity.setDueDate(dueDate);
     
dividendDistributionEntity.setRate(Double.valueOf(dividendDistribution.getDividendRate()));
     
dividendDistributionEntity.setCreatedOn(LocalDateTime.now(Clock.systemUTC()));
@@ -49,7 +50,7 @@ public class DividendDistributionMapper {
     final DividendDistribution dividendDistribution = new 
DividendDistribution();
 
     
dividendDistribution.setDividendRate(dividendDistributionEntity.getRate().toString());
-    
dividendDistribution.setDueDate(DateConverter.toIsoString(dividendDistributionEntity.getDueDate().toLocalDate()));
+    
dividendDistribution.setDueDate(DateOfBirth.fromLocalDate(dividendDistributionEntity.getDueDate().toLocalDate()));
 
     return dividendDistribution;
   }
diff --git 
a/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
 
b/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
index 7c8f875..dfd1c1f 100644
--- 
a/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
+++ 
b/service/src/main/java/io/mifos/deposit/service/rest/ProductDefinitionRestController.java
@@ -258,7 +258,7 @@ public class ProductDefinitionRestController {
       }
     }
 
-    final LocalDate dueDate = 
DateConverter.dateFromIsoString(dividendDistribution.getDueDate());
+    final LocalDate dueDate = dividendDistribution.getDueDate().toLocalDate();
     final Double amount = 
Double.valueOf(dividendDistribution.getDividendRate());
 
     this.commandGateway.process(new DividendDistributionCommand(identifier, 
dueDate, amount));

-- 
To stop receiving notification emails like this one, please contact
[email protected].

Reply via email to