added timeline details to Center
This commit is contained in:
committed by
Vishwas Babu A J
parent
fb45948c0d
commit
49a2f30e2c
+11
-8
@@ -34,7 +34,7 @@ public class CenterData {
|
||||
private final Long staffId;
|
||||
private final String staffName;
|
||||
private final String hierarchy;
|
||||
|
||||
private final GroupTimelineData timeline;
|
||||
// associations
|
||||
private final Collection<GroupGeneralData> groupMembers;
|
||||
|
||||
@@ -49,20 +49,21 @@ public class CenterData {
|
||||
final Collection<StaffData> staffOptions, final Collection<GroupGeneralData> groupMembersOptions) {
|
||||
final CalendarData collectionMeetingCalendar = null;
|
||||
final Collection<CodeValueData> closureReasons = null;
|
||||
final GroupTimelineData timeline = null;
|
||||
return new CenterData(null, null, null, null, activationDate, officeId, null, null, null, null, null, officeOptions, staffOptions,
|
||||
groupMembersOptions, collectionMeetingCalendar, closureReasons);
|
||||
groupMembersOptions, collectionMeetingCalendar, closureReasons, timeline);
|
||||
}
|
||||
|
||||
public static CenterData withTemplate(final CenterData templateCenter, final CenterData center) {
|
||||
return new CenterData(center.id, center.name, center.externalId, center.status, center.activationDate, center.officeId,
|
||||
center.officeName, center.staffId, center.staffName, center.hierarchy, center.groupMembers, templateCenter.officeOptions,
|
||||
templateCenter.staffOptions, templateCenter.groupMembersOptions, templateCenter.collectionMeetingCalendar,
|
||||
templateCenter.closureReasons);
|
||||
templateCenter.closureReasons, center.timeline);
|
||||
}
|
||||
|
||||
public static CenterData instance(final Long id, final String name, final String externalId, final EnumOptionData status,
|
||||
final LocalDate activationDate, final Long officeId, final String officeName, final Long staffId, final String staffName,
|
||||
final String hierarchy) {
|
||||
final String hierarchy, final GroupTimelineData timeline) {
|
||||
|
||||
final Collection<GroupGeneralData> groupMembers = null;
|
||||
final Collection<OfficeData> officeOptions = null;
|
||||
@@ -72,7 +73,7 @@ public class CenterData {
|
||||
final Collection<CodeValueData> closureReasons = null;
|
||||
|
||||
return new CenterData(id, name, externalId, status, activationDate, officeId, officeName, staffId, staffName, hierarchy,
|
||||
groupMembers, officeOptions, staffOptions, groupMembersOptions, collectionMeetingCalendar, closureReasons);
|
||||
groupMembers, officeOptions, staffOptions, groupMembersOptions, collectionMeetingCalendar, closureReasons, timeline);
|
||||
}
|
||||
|
||||
public static CenterData withAssociations(final CenterData centerData, final Collection<GroupGeneralData> groupMembers,
|
||||
@@ -80,7 +81,7 @@ public class CenterData {
|
||||
return new CenterData(centerData.id, centerData.name, centerData.externalId, centerData.status, centerData.activationDate,
|
||||
centerData.officeId, centerData.officeName, centerData.staffId, centerData.staffName, centerData.hierarchy, groupMembers,
|
||||
centerData.officeOptions, centerData.staffOptions, centerData.groupMembersOptions, collectionMeetingCalendar,
|
||||
centerData.closureReasons);
|
||||
centerData.closureReasons, centerData.timeline);
|
||||
}
|
||||
|
||||
public static CenterData withClosureReasons(final Collection<CodeValueData> closureReasons) {
|
||||
@@ -99,15 +100,16 @@ public class CenterData {
|
||||
final Collection<StaffData> staffOptions = null;
|
||||
final Collection<GroupGeneralData> groupMembersOptions = null;
|
||||
final CalendarData collectionMeetingCalendar = null;
|
||||
final GroupTimelineData timeline = null;
|
||||
return new CenterData(id, name, externalId, status, activationDate, officeId, officeName, staffId, staffName, hierarchy,
|
||||
groupMembers, officeOptions, staffOptions, groupMembersOptions, collectionMeetingCalendar, closureReasons);
|
||||
groupMembers, officeOptions, staffOptions, groupMembersOptions, collectionMeetingCalendar, closureReasons, timeline);
|
||||
}
|
||||
|
||||
private CenterData(final Long id, final String name, final String externalId, final EnumOptionData status,
|
||||
final LocalDate activationDate, final Long officeId, final String officeName, final Long staffId, final String staffName,
|
||||
final String hierarchy, final Collection<GroupGeneralData> groupMembers, final Collection<OfficeData> officeOptions,
|
||||
final Collection<StaffData> staffOptions, final Collection<GroupGeneralData> groupMembersOptions,
|
||||
final CalendarData collectionMeetingCalendar, final Collection<CodeValueData> closureReasons) {
|
||||
final CalendarData collectionMeetingCalendar, final Collection<CodeValueData> closureReasons, final GroupTimelineData timeline) {
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.externalId = externalId;
|
||||
@@ -132,6 +134,7 @@ public class CenterData {
|
||||
this.groupMembersOptions = groupMembersOptions;
|
||||
this.collectionMeetingCalendar = collectionMeetingCalendar;
|
||||
this.closureReasons = closureReasons;
|
||||
this.timeline = timeline;
|
||||
}
|
||||
|
||||
public Long officeId() {
|
||||
|
||||
+2
-2
@@ -8,8 +8,8 @@ package org.mifosplatform.portfolio.group.data;
|
||||
import org.joda.time.LocalDate;
|
||||
|
||||
/**
|
||||
* Immutable data object represent the important time-line events of a loan
|
||||
* application and loan.
|
||||
* Immutable data object represent the important time-line events of a group/center.
|
||||
*
|
||||
*/
|
||||
@SuppressWarnings("unused")
|
||||
public class GroupTimelineData {
|
||||
|
||||
+59
-4
@@ -33,6 +33,7 @@ import org.mifosplatform.portfolio.client.service.ClientReadPlatformService;
|
||||
import org.mifosplatform.portfolio.group.api.GroupingTypesApiConstants;
|
||||
import org.mifosplatform.portfolio.group.data.CenterData;
|
||||
import org.mifosplatform.portfolio.group.data.GroupGeneralData;
|
||||
import org.mifosplatform.portfolio.group.data.GroupTimelineData;
|
||||
import org.mifosplatform.portfolio.group.domain.GroupTypes;
|
||||
import org.mifosplatform.portfolio.group.domain.GroupingTypeEnumerations;
|
||||
import org.mifosplatform.portfolio.group.exception.CenterNotFoundException;
|
||||
@@ -120,9 +121,25 @@ public class CenterReadPlatformServiceImpl implements CenterReadPlatformService
|
||||
+ "g.office_id as officeId, o.name as officeName, " //
|
||||
+ "g.staff_id as staffId, s.display_name as staffName, " //
|
||||
+ "g.status_enum as statusEnum, g.activation_date as activationDate, " //
|
||||
+ "g.hierarchy as hierarchy " //
|
||||
+ "g.hierarchy as hierarchy, " //
|
||||
+ "g.closedon_date as closedOnDate, "
|
||||
+ "g.submittedon_date as submittedOnDate, "
|
||||
+ "sbu.username as submittedByUsername, "
|
||||
+ "sbu.firstname as submittedByFirstname, "
|
||||
+ "sbu.lastname as submittedByLastname, "
|
||||
+ "clu.username as closedByUsername, "
|
||||
+ "clu.firstname as closedByFirstname, "
|
||||
+ "clu.lastname as closedByLastname, "
|
||||
+ "acu.username as activatedByUsername, "
|
||||
+ "acu.firstname as activatedByFirstname, "
|
||||
+ "acu.lastname as activatedByLastname "
|
||||
+ "from m_group g " //
|
||||
+ "join m_office o on o.id = g.office_id " + "left join m_staff s on s.id = g.staff_id ";
|
||||
+ "join m_office o on o.id = g.office_id "
|
||||
+ "left join m_staff s on s.id = g.staff_id "
|
||||
+ "left join m_group pg on pg.id = g.parent_id "
|
||||
+ "left join m_appuser sbu on sbu.id = g.submittedon_userid "
|
||||
+ "left join m_appuser acu on acu.id = g.activatedon_userid "
|
||||
+ "left join m_appuser clu on clu.id = g.closedon_userid ";
|
||||
|
||||
private static final class CenterDataMapper implements RowMapper<CenterData> {
|
||||
|
||||
@@ -151,8 +168,27 @@ public class CenterReadPlatformServiceImpl implements CenterReadPlatformService
|
||||
final Long staffId = JdbcSupport.getLong(rs, "staffId");
|
||||
final String staffName = rs.getString("staffName");
|
||||
final String hierarchy = rs.getString("hierarchy");
|
||||
|
||||
final LocalDate closedOnDate = JdbcSupport.getLocalDate(rs, "closedOnDate");
|
||||
final String closedByUsername = rs.getString("closedByUsername");
|
||||
final String closedByFirstname = rs.getString("closedByFirstname");
|
||||
final String closedByLastname = rs.getString("closedByLastname");
|
||||
|
||||
return CenterData.instance(id, name, externalId, status, activationDate, officeId, officeName, staffId, staffName, hierarchy);
|
||||
final LocalDate submittedOnDate = JdbcSupport.getLocalDate(rs, "submittedOnDate");
|
||||
final String submittedByUsername = rs.getString("submittedByUsername");
|
||||
final String submittedByFirstname = rs.getString("submittedByFirstname");
|
||||
final String submittedByLastname = rs.getString("submittedByLastname");
|
||||
|
||||
|
||||
final String activatedByUsername = rs.getString("activatedByUsername");
|
||||
final String activatedByFirstname = rs.getString("activatedByFirstname");
|
||||
final String activatedByLastname = rs.getString("activatedByLastname");
|
||||
|
||||
final GroupTimelineData timeline = new GroupTimelineData (submittedOnDate, submittedByUsername, submittedByFirstname, submittedByLastname,
|
||||
activationDate, activatedByUsername, activatedByFirstname, activatedByLastname, closedOnDate, closedByUsername,
|
||||
closedByFirstname, closedByLastname);
|
||||
|
||||
return CenterData.instance(id, name, externalId, status, activationDate, officeId, officeName, staffId, staffName, hierarchy, timeline);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,9 +221,28 @@ public class CenterReadPlatformServiceImpl implements CenterReadPlatformService
|
||||
final Long staffId = JdbcSupport.getLong(rs, "staffId");
|
||||
final String staffName = rs.getString("staffName");
|
||||
final String hierarchy = rs.getString("hierarchy");
|
||||
|
||||
final LocalDate closedOnDate = JdbcSupport.getLocalDate(rs, "closedOnDate");
|
||||
final String closedByUsername = rs.getString("closedByUsername");
|
||||
final String closedByFirstname = rs.getString("closedByFirstname");
|
||||
final String closedByLastname = rs.getString("closedByLastname");
|
||||
|
||||
final LocalDate submittedOnDate = JdbcSupport.getLocalDate(rs, "submittedOnDate");
|
||||
final String submittedByUsername = rs.getString("submittedByUsername");
|
||||
final String submittedByFirstname = rs.getString("submittedByFirstname");
|
||||
final String submittedByLastname = rs.getString("submittedByLastname");
|
||||
|
||||
|
||||
final String activatedByUsername = rs.getString("activatedByUsername");
|
||||
final String activatedByFirstname = rs.getString("activatedByFirstname");
|
||||
final String activatedByLastname = rs.getString("activatedByLastname");
|
||||
|
||||
final GroupTimelineData timeline = new GroupTimelineData (submittedOnDate, submittedByUsername, submittedByFirstname, submittedByLastname,
|
||||
activationDate, activatedByUsername, activatedByFirstname, activatedByLastname, closedOnDate, closedByUsername,
|
||||
closedByFirstname, closedByLastname);
|
||||
|
||||
return GroupGeneralData.instance(id, name, externalId, status, activationDate, officeId, officeName, null, null, staffId,
|
||||
staffName, hierarchy,null);
|
||||
staffName, hierarchy,timeline);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user