How Mifos handles calendar?

Mifos does not have Calendar, instead it has Meeting facilities.

Supported features by Meeting

Limitation of Meeting

 

How these new Calendar features address the limitations of Mifos meeting?

A calendar means a list of planned events attached to an entity in Mifos X, allows creating any number events for an entity (Member/SHG/Center/Branch). This can be used for reminders, generating collection sheet etc.

 

Non Goals 

 

Key Functional Areas Impacted

 

Use Case 1: Adding Center meeting (During center creation)



In addition to the current parameters of Center / Group definition, the following changes are needed on New Center / Group creation:

 

    1. Ability to specify meeting name and description
    2. Ability to specify meeting type (Payments [this system defined type, used during loan creation / saving account / collection] / General meeting / Centre Audit [other types are admin defined])
    3. Meeting recurring details can be added.

 

Once Centre/Group is created with event details, this event can be used during child group creation or new loan account creation (within that Centre/Group). In next use case we will see in-detail.

 

Use Case 2: Creating New Loan (mapped to Centre/Group meeting)

 


In addition to the current parameters of loan application, the following changes are needed on new Loan creation:

1.    Ability to specify meeting.
2.    Loan term’s unit will be populated based on “meeting” selected. And it will become un-editable to user
3.    Repaid every’s unit will be populated based on “meeting” selected. And it will become un-editable to user
4.    Expected disbursement on will pre populated as next meeting date. But can be change to any future date.
5.    First repayment on will pre populated as next meeting date. But can be changed to any future meeting date.


Technical Details (implementation approach )

 

Data Model

 

Calendar

 

#

Field

Description

1

Id

System generated

5

createDate

Event created date

6

Title

Name given to the event

7

description

Description

8

Location

Location of the event

9

startDate

Start date of the event

10

endDate

End date of the event

11

durationHour

 

12

durationMinute

 

13

type_

    • Payment Collection (system defined type, collection sheet is generated only against this meeting type)
    • Training ( MFI defined type )
    • Audit ( MFI defined type )
    • General meeting( MFI defined type )

14

Repeating

Yes/No

15

Recurrence

RRULE:FREQ=WEEKLY;UNTIL=20110701T160000Z

RRULE:FREQ=DAILY;UNTIL=20000131T090000Z;BYMONTH=1

16

remindBy

Email / SMS / System alert

17

firstReminder

reminder ( Number of minutes before event start time)

18

secondReminder

reminder ( Number of minutes before event start time)

 

 

 

CalInstance

 

#

Field

Description

1

entityId

Member/Centre/SHG system id

2

entityTypeId

Id indicating entity is a Member/Centre/SHG

3

calId

Calendar Id

 

Attendance

 

#

Field

Description

1

Id

Member/Centre/SHG system id

2

entityId

Member/Centre/SHG system id

3

entityTypeId

Id indicating entity is a Member/Centre/SHG

4

CalId

 

5

MeetingDate

 

6

Enum_attendance

    1. Present
    2. Absent
    3. Approved Leave
    4. Late

 

 

ER Diagram (Calendar)

 

 

 

 

External references