diff --git a/member_management/member_management/doctype/corporate_documents/corporate_documents.json b/member_management/member_management/doctype/corporate_documents/corporate_documents.json
index 071c8fe..51d308c 100644
--- a/member_management/member_management/doctype/corporate_documents/corporate_documents.json
+++ b/member_management/member_management/doctype/corporate_documents/corporate_documents.json
@@ -8,7 +8,8 @@
"engine": "InnoDB",
"field_order": [
"member_doctype",
- "file"
+ "file",
+ "current_doc"
],
"fields": [
{
@@ -27,13 +28,21 @@
"in_list_view": 1,
"label": "File Name",
"reqd": 1
+ },
+ {
+ "default": "1",
+ "fieldname": "current_doc",
+ "fieldtype": "Check",
+ "in_list_view": 1,
+ "in_standard_filter": 1,
+ "label": "Current"
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2025-11-09 11:14:45.962456",
+ "modified": "2025-11-11 18:44:43.209834",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Corporate Documents",
diff --git a/member_management/member_management/doctype/food_protection_manager_record/food_protection_manager_record.json b/member_management/member_management/doctype/food_protection_manager_record/food_protection_manager_record.json
index 187174a..5ac9705 100644
--- a/member_management/member_management/doctype/food_protection_manager_record/food_protection_manager_record.json
+++ b/member_management/member_management/doctype/food_protection_manager_record/food_protection_manager_record.json
@@ -11,7 +11,8 @@
"certificate",
"column_break_ysbr",
"issue_date",
- "expire_date"
+ "expire_date",
+ "current_doc"
],
"fields": [
{
@@ -49,13 +50,21 @@
"in_list_view": 1,
"label": "Expiration Date",
"reqd": 1
+ },
+ {
+ "default": "1",
+ "fieldname": "current_doc",
+ "fieldtype": "Check",
+ "in_list_view": 1,
+ "in_standard_filter": 1,
+ "label": "Current"
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2025-11-09 11:41:55.956305",
+ "modified": "2025-11-11 18:43:47.947615",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Food Protection Manager Record",
diff --git a/member_management/member_management/doctype/inspection_record/inspection_record.json b/member_management/member_management/doctype/inspection_record/inspection_record.json
index 26fb386..a9d47cd 100644
--- a/member_management/member_management/doctype/inspection_record/inspection_record.json
+++ b/member_management/member_management/doctype/inspection_record/inspection_record.json
@@ -10,7 +10,8 @@
"inspection_file",
"column_break_urym",
"issue_date",
- "expire_date"
+ "expire_date",
+ "current_doc"
],
"fields": [
{
@@ -56,13 +57,21 @@
"in_list_view": 1,
"label": "Expiration Date",
"reqd": 1
+ },
+ {
+ "default": "1",
+ "fieldname": "current_doc",
+ "fieldtype": "Check",
+ "in_list_view": 1,
+ "in_standard_filter": 1,
+ "label": "Current"
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2025-11-09 11:40:46.022312",
+ "modified": "2025-11-11 18:50:05.431078",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Inspection Record",
diff --git a/member_management/member_management/doctype/insurance_record/insurance_record.json b/member_management/member_management/doctype/insurance_record/insurance_record.json
index 137e6b7..35403ae 100644
--- a/member_management/member_management/doctype/insurance_record/insurance_record.json
+++ b/member_management/member_management/doctype/insurance_record/insurance_record.json
@@ -9,7 +9,8 @@
"declaration",
"column_break_wgkt",
"issue_date",
- "expire_date"
+ "expire_date",
+ "current_doc"
],
"fields": [
{
@@ -40,13 +41,21 @@
"in_list_view": 1,
"label": "Expiration Date",
"reqd": 1
+ },
+ {
+ "default": "1",
+ "fieldname": "current_doc",
+ "fieldtype": "Check",
+ "in_list_view": 1,
+ "in_standard_filter": 1,
+ "label": "Current"
}
],
"grid_page_length": 50,
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2025-11-09 11:39:42.856785",
+ "modified": "2025-11-11 18:42:50.461454",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Insurance Record",
diff --git a/member_management/member_management/doctype/member_profile/member_profile.json b/member_management/member_management/doctype/member_profile/member_profile.json
index 8a5e8b4..8271850 100644
--- a/member_management/member_management/doctype/member_profile/member_profile.json
+++ b/member_management/member_management/doctype/member_profile/member_profile.json
@@ -10,16 +10,19 @@
"member_data_section",
"column_break_vdps",
"member_name",
- "member_ein",
- "join_date",
- "onboard_date",
- "risk_class",
+ "status",
"column_break_jznx",
"member_id",
+ "member_ein",
"api_id",
"membership_details_section",
"membership_type",
"column_break_iofm",
+ "risk_class",
+ "onboarding_section",
+ "onboard_date",
+ "join_date",
+ "approve_date",
"dashboard_tab",
"documents",
"agreements_section",
@@ -85,12 +88,14 @@
"unique": 1
},
{
+ "description": "Date Joined Incubator",
"fieldname": "join_date",
"fieldtype": "Date",
"label": "Joined",
"permlevel": 2
},
{
+ "description": "Date Membership Requirements Completed",
"fieldname": "onboard_date",
"fieldtype": "Date",
"label": "Onboarded",
@@ -200,11 +205,28 @@
{
"description": "For API Integrations",
"fieldname": "api_id",
- "fieldtype": "Data",
+ "fieldtype": "Password",
"label": "API ID",
"length": 32,
- "non_negative": 1,
- "unique": 1
+ "non_negative": 1
+ },
+ {
+ "fieldname": "status",
+ "fieldtype": "Select",
+ "in_filter": 1,
+ "label": "Status",
+ "options": "Onboarding\nActive\nOffboarding\nClosed"
+ },
+ {
+ "description": "Date of initial DOH Approval",
+ "fieldname": "approve_date",
+ "fieldtype": "Date",
+ "label": "Approved"
+ },
+ {
+ "fieldname": "onboarding_section",
+ "fieldtype": "Section Break",
+ "label": "Onboarding"
}
],
"grid_page_length": 50,
@@ -220,7 +242,7 @@
"link_fieldname": "customer_name"
}
],
- "modified": "2025-11-09 17:42:12.364409",
+ "modified": "2025-11-11 18:35:14.522070",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Member Profile",
diff --git a/member_management/member_management/number_card/active_members/active_members.json b/member_management/member_management/number_card/active_members/active_members.json
new file mode 100644
index 0000000..0dc54de
--- /dev/null
+++ b/member_management/member_management/number_card/active_members/active_members.json
@@ -0,0 +1,25 @@
+{
+ "aggregate_function_based_on": "",
+ "creation": "2025-11-11 18:38:44.733668",
+ "currency": "USD",
+ "docstatus": 0,
+ "doctype": "Number Card",
+ "document_type": "Member Profile",
+ "dynamic_filters_json": "[]",
+ "filters_json": "[[\"Member Profile\",\"status\",\"=\",\"Active\",false]]",
+ "function": "Count",
+ "idx": 0,
+ "is_public": 0,
+ "is_standard": 1,
+ "label": "Active Members",
+ "modified": "2025-11-11 18:38:44.733668",
+ "modified_by": "Administrator",
+ "module": "Member Management",
+ "name": "Active Members",
+ "owner": "Administrator",
+ "parent_document_type": "",
+ "report_function": "Sum",
+ "show_percentage_stats": 0,
+ "stats_time_interval": "Yearly",
+ "type": "Document Type"
+}
\ No newline at end of file
diff --git a/member_management/member_management/report/__init__.py b/member_management/member_management/report/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/member_management/member_management/report/expiring_documents/__init__.py b/member_management/member_management/report/expiring_documents/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/member_management/member_management/report/expiring_documents/expiring_documents.json b/member_management/member_management/report/expiring_documents/expiring_documents.json
new file mode 100644
index 0000000..999f580
--- /dev/null
+++ b/member_management/member_management/report/expiring_documents/expiring_documents.json
@@ -0,0 +1,32 @@
+{
+ "add_total_row": 0,
+ "add_translate_data": 0,
+ "columns": [],
+ "creation": "2025-11-11 18:53:36.686856",
+ "disabled": 0,
+ "docstatus": 0,
+ "doctype": "Report",
+ "filters": [],
+ "idx": 0,
+ "is_standard": "Yes",
+ "json": "{}",
+ "letterhead": null,
+ "modified": "2025-11-11 18:53:36.686856",
+ "modified_by": "Administrator",
+ "module": "Member Management",
+ "name": "Expiring Documents",
+ "owner": "Administrator",
+ "prepared_report": 0,
+ "ref_doctype": "Member Profile",
+ "report_name": "Expiring Documents",
+ "report_type": "Report Builder",
+ "roles": [
+ {
+ "role": "System Manager"
+ },
+ {
+ "role": "Member"
+ }
+ ],
+ "timeout": 0
+}
\ No newline at end of file
diff --git a/member_management/member_management/workspace/members/members.json b/member_management/member_management/workspace/members/members.json
index f80fac4..09a42c3 100644
--- a/member_management/member_management/workspace/members/members.json
+++ b/member_management/member_management/workspace/members/members.json
@@ -1,6 +1,6 @@
{
"charts": [],
- "content": "[{\"id\":\"czfAxE-sLc\",\"type\":\"header\",\"data\":{\"text\":\"Member Management\",\"col\":12}},{\"id\":\"VreCkkR25K\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Member Profile List\",\"col\":3}},{\"id\":\"uAc0M9DLAL\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Member Management DocTypes\",\"col\":3}}]",
+ "content": "[{\"id\":\"czfAxE-sLc\",\"type\":\"header\",\"data\":{\"text\":\"Member Management\",\"col\":12}},{\"id\":\"VreCkkR25K\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Member Profile List\",\"col\":3}},{\"id\":\"uAc0M9DLAL\",\"type\":\"shortcut\",\"data\":{\"shortcut_name\":\"Member Management DocTypes\",\"col\":3}},{\"id\":\"5rLyVnTN_4\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"aWTte11v9r\",\"type\":\"number_card\",\"data\":{\"number_card_name\":\"Active\",\"col\":3}},{\"id\":\"IsnNFHfbtc\",\"type\":\"spacer\",\"data\":{\"col\":12}},{\"id\":\"u3z6KcPyGc\",\"type\":\"quick_list\",\"data\":{\"quick_list_name\":\"New Members\",\"col\":4}},{\"id\":\"Q7tzO2Im1f\",\"type\":\"card\",\"data\":{\"card_name\":\"Reports\",\"col\":4}}]",
"creation": "2025-11-09 09:40:30.381986",
"custom_blocks": [],
"docstatus": 0,
@@ -12,16 +12,48 @@
"indicator_color": "",
"is_hidden": 0,
"label": "Members",
- "links": [],
- "modified": "2025-11-10 10:28:12.028703",
+ "links": [
+ {
+ "hidden": 0,
+ "is_query_report": 0,
+ "label": "Reports",
+ "link_count": 1,
+ "link_type": "DocType",
+ "onboard": 0,
+ "type": "Card Break"
+ },
+ {
+ "hidden": 0,
+ "is_query_report": 0,
+ "label": "Expiring Inspection Records",
+ "link_count": 0,
+ "link_to": "Expiring Inspection Records",
+ "link_type": "Report",
+ "onboard": 0,
+ "report_ref_doctype": "Member Profile",
+ "type": "Link"
+ }
+ ],
+ "modified": "2025-11-11 19:03:39.248103",
"modified_by": "Administrator",
"module": "Member Management",
"name": "Members",
- "number_cards": [],
+ "number_cards": [
+ {
+ "label": "Active",
+ "number_card_name": "Active Members"
+ }
+ ],
"owner": "Administrator",
"parent_page": "",
"public": 1,
- "quick_lists": [],
+ "quick_lists": [
+ {
+ "document_type": "Member Profile",
+ "label": "New Members",
+ "quick_list_filter": "[[\"Member Profile\",\"status\",\"=\",\"Onboarding\",false]]"
+ }
+ ],
"roles": [],
"sequence_id": 6.0,
"shortcuts": [