मुख्य सामग्री पर जाएं

Attendance एंडपॉइंट्स

Attendance मॉड्यूल कैंपस लोकेशंस, सर्विसेज़, सर्विस टाइम्स, अटेंडेंस सेशंस, विज़िट्स, और विज़िट सेशंस को मैनेज करता है। यह ट्रैक करने के लिए बुनियादी ढांचा प्रदान करता है कि किसने किस सर्विस या ग्रुप मीटिंग में भाग लिया, चेक-इन वर्कफ़्लोज़ को सपोर्ट करता है, और अटेंडेंस ट्रेंड व समरी रिपोर्टिंग प्रदान करता है।

बेस पथ: /attendance

Campuses

बेस पथ: /attendance/campuses

मानक CRUD कंट्रोलर (GenericCrudController को विस्तारित करता है)। CRUD बेस क्लास के ज़रिए getById, getAll, post, और delete रूट प्रदान करता है।

मेथडपथऑथअनुमतिविवरण
GET/JWTचर्च के लिए सभी कैंपस सूचीबद्ध करें
GET/:idJWTID से एक कैंपस प्राप्त करें
POST/JWTServices.Editकैंपस बनाएं या अपडेट करें
DELETE/:idJWTServices.Editएक कैंपस हटाएं

Services

बेस पथ: /attendance/services

CRUD रूट्स getById, getAll, post, और delete के साथ GenericCrudController को विस्तारित करता है। getAll (GET /) और search एंडपॉइंट्स कस्टम इम्प्लीमेंटेशंस से ओवरराइड किए गए हैं।

मेथडपथऑथअनुमतिविवरण
GET/JWTसभी सर्विसेज़ सूचीबद्ध करें (कैंपस जानकारी सहित)
GET/:idJWTID से एक सर्विस प्राप्त करें
GET/search?campusId=JWTकैंपस ID से सर्विसेज़ खोजें
POST/JWTServices.Editसर्विसेज़ बनाएं या अपडेट करें
DELETE/:idJWTServices.Editएक सर्विस हटाएं

उदाहरण: कैंपस से सर्विसेज़ खोजें

GET /attendance/services/search?campusId=abc-123
Authorization: Bearer <token>
[
{
"id": "svc-001",
"churchId": "church-123",
"campusId": "abc-123",
"name": "Sunday Morning"
}
]

Service Times

बेस पथ: /attendance/servicetimes

CRUD रूट्स getById, post, और delete के साथ GenericCrudController को विस्तारित करता है। getAll और search एंडपॉइंट्स कस्टम इम्प्लीमेंटेशंस हैं।

मेथडपथऑथअनुमतिविवरण
GET/JWTसभी सर्विस टाइम्स सूचीबद्ध करें। ?serviceId= से फ़िल्टर करें। ग्रुप डेटा जोड़ने के लिए ?include=groups जोड़ें
GET/:idJWTID से एक सर्विस टाइम प्राप्त करें
GET/search?campusId=&serviceId=JWTकैंपस और सर्विस से सर्विस टाइम्स खोजें
GET/public/:churchIdसार्वजनिककिसी चर्च के लिए campus → service → time ट्री प्राप्त करें। वेबसाइट बिल्डर के serviceTimes एलिमेंट को पावर देता है
POST/JWTServices.Editसर्विस टाइम्स बनाएं या अपडेट करें
DELETE/:idJWTServices.Editएक सर्विस टाइम हटाएं

Group Service Times

बेस पथ: /attendance/groupservicetimes

ग्रुप्स को विशिष्ट सर्विस टाइम्स से जोड़ता है।

मेथडपथऑथअनुमतिविवरण
GET/JWTसभी group-service-time एसोसिएशंस सूचीबद्ध करें। सर्विस नामों के साथ एसोसिएशंस प्राप्त करने के लिए ?groupId= से फ़िल्टर करें
GET/:idJWTID से एक group-service-time एसोसिएशन प्राप्त करें
POST/JWTServices.Editgroup-service-time एसोसिएशंस बनाएं या अपडेट करें
DELETE/:idJWTServices.Editएक group-service-time एसोसिएशन हटाएं

Attendance Records

बेस पथ: /attendance/attendancerecords

रिपोर्टिंग और डिस्प्ले के लिए अटेंडेंस डेटा के रीड-ओनली एग्रीगेट व्यू प्रदान करता है।

मेथडपथऑथअनुमतिविवरण
GET/JWTAttendance.Viewकिसी व्यक्ति के लिए अटेंडेंस रिकॉर्ड्स लोड करें। ?personId= आवश्यक है
GET/treeJWTपूरा अटेंडेंस ट्री (कैंपस, सर्विसेज़, सर्विस टाइम्स, ग्रुप्स) लोड करें
GET/trend?campusId=&serviceId=&serviceTimeId=&groupId=JWTAttendance.View Summaryवैकल्पिक फ़िल्टर्स के साथ अटेंडेंस ट्रेंड डेटा लोड करें
GET/groups?serviceId=&week=JWTAttendance.Viewकिसी दिए गए सप्ताह में किसी सर्विस के लिए ग्रुप अटेंडेंस लोड करें
GET/search?campusId=&serviceId=&serviceTimeId=&groupId=&startDate=&endDate=JWTAttendance.Viewफ़िल्टर्स (कैंपस, सर्विस, सर्विस टाइम, ग्रुप, तारीख सीमा) से अटेंडेंस रिकॉर्ड्स खोजें

उदाहरण: Attendance Trend

GET /attendance/attendancerecords/trend?serviceId=svc-001
Authorization: Bearer <token>
[
{ "week": "2025-01-05", "count": 142 },
{ "week": "2025-01-12", "count": 156 },
{ "week": "2025-01-19", "count": 138 }
]

Sessions

बेस पथ: /attendance/sessions

CRUD रूट्स getById और delete के साथ GenericCrudController को विस्तारित करता है। getAll और save एंडपॉइंट्स कस्टम इम्प्लीमेंटेशंस हैं जो ग्रुप लीडर्स को अपने ग्रुप्स के लिए सेशंस मैनेज करने की अनुमति भी देते हैं।

मेथडपथऑथअनुमतिविवरण
GET/JWTAttendance.View या Group Leaderसभी सेशंस सूचीबद्ध करें। ?groupId= से फ़िल्टर करें (नाम शामिल)। ग्रुप लीडर्स अपने ग्रुप्स के सेशंस देख सकते हैं
GET/:idJWTAttendance.ViewID से एक सेशन प्राप्त करें
POST/JWTAttendance.Edit या Group Leaderसेशंस बनाएं या अपडेट करें। ग्रुप लीडर्स अपने ग्रुप्स के लिए सेशंस सेव कर सकते हैं
DELETE/:idJWTAttendance.Editएक सेशन हटाएं

Visits

बेस पथ: /attendance/visits

व्यक्तिगत विज़िट रिकॉर्ड्स (किसी व्यक्ति की किसी विशेष तारीख को उपस्थिति) को मैनेज करता है और चेक-इन वर्कफ़्लो प्रदान करता है।

मेथडपथऑथअनुमतिविवरण
GET/JWTAttendance.Viewसभी विज़िट्स सूचीबद्ध करें। ?personId= से फ़िल्टर करें
GET/:idJWTAttendance.ViewID से एक विज़िट प्राप्त करें
GET/checkin?serviceId=&peopleIds=JWTAttendance.View या Attendance.Checkinकिसी सर्विस में लोगों के लिए चेक-इन डेटा लोड करें। पिछली लॉग की गई तारीख से विज़िट सेशंस सहित विज़िट्स लौटाता है
POST/JWTAttendance.Editविज़िट्स बनाएं या अपडेट करें
POST/checkin?serviceId=&peopleIds=JWTAttendance.Edit या Attendance.Checkinचेक-इन डेटा सबमिट करें। विज़िट्स और विज़िट सेशंस बनाता/अपडेट करता है, पुराने रिकॉर्ड्स हटाता है
DELETE/:idJWTAttendance.Editएक विज़िट हटाएं

उदाहरण: चेक-इन फ़्लो

चरण 1 -- मौजूदा चेक-इन डेटा लोड करें:

GET /attendance/visits/checkin?serviceId=svc-001&peopleIds=person-1,person-2
Authorization: Bearer <token>
[
{
"id": "visit-001",
"personId": "person-1",
"visitDate": "2025-01-19T00:00:00.000Z",
"visitSessions": [
{
"id": "vs-001",
"sessionId": "sess-001",
"visitId": "visit-001",
"session": {
"id": "sess-001",
"groupId": "group-001",
"serviceTimeId": "st-001",
"sessionDate": "2025-01-19T00:00:00.000Z"
}
}
]
}
]

चरण 2 -- चेक-इन सबमिट करें:

POST /attendance/visits/checkin?serviceId=svc-001&peopleIds=person-1,person-2
Authorization: Bearer <token>

[
{
"personId": "person-1",
"visitSessions": [
{
"session": { "serviceTimeId": "st-001", "groupId": "group-001" }
}
]
}
]

Visit Sessions

बेस पथ: /attendance/visitsessions

विज़िट्स और सेशंस के बीच एसोसिएशन (किसी व्यक्ति ने विज़िट के दौरान किस विशेष सेशन में भाग लिया) को मैनेज करता है। एक क्विक लॉग एंडपॉइंट और एक डाउनलोड/एक्सपोर्ट एंडपॉइंट भी प्रदान करता है।

मेथडपथऑथअनुमतिविवरण
GET/JWTAttendance.View या Group Leaderविज़िट सेशंस सूचीबद्ध करें। ?sessionId= से फ़िल्टर करें। ग्रुप लीडर्स अपने ग्रुप्स के विज़िट सेशंस देख सकते हैं
GET/:idJWTAttendance.ViewID से एक विज़िट सेशन प्राप्त करें
GET/download/:sessionIdJWTAttendance.Viewकिसी सेशन के लिए अटेंडेंस डाउनलोड करें (उपस्थित/अनुपस्थित स्थिति के साथ व्यक्ति नाम लौटाता है)
POST/JWTAttendance.Editविज़िट सेशंस बनाएं या अपडेट करें
POST/logJWTAttendance.Edit या Group Leaderकिसी व्यक्ति की अटेंडेंस को किसी सेशन में क्विक-लॉग करें। ज़रूरत होने पर स्वचालित रूप से विज़िट बनाता है। ग्रुप लीडर्स अपने ग्रुप्स के लिए अटेंडेंस लॉग कर सकते हैं
DELETE/:idJWTAttendance.EditID से एक विज़िट सेशन हटाएं
DELETE/?personId=&sessionId=JWTAttendance.Edit या Group Leaderकिसी सेशन से किसी व्यक्ति को हटाएं। विज़िट सेशन और (यदि कोई सेशन शेष न रहे तो) पैरेंट विज़िट को हटाता है। ग्रुप लीडर्स अपने ग्रुप्स के लिए अटेंडेंस हटा सकते हैं

उदाहरण: क्विक-लॉग अटेंडेंस

POST /attendance/visitsessions/log
Authorization: Bearer <token>

{
"personId": "person-001",
"visitSessions": [
{ "sessionId": "sess-001" }
]
}
{}

उदाहरण: सेशन अटेंडेंस डाउनलोड करें

GET /attendance/visitsessions/download/sess-001
Authorization: Bearer <token>
[
{
"id": "vs-001",
"personId": "person-001",
"visitId": "visit-001",
"sessionDate": "2025-01-19T00:00:00.000Z",
"personName": "John Smith",
"status": "present"
},
{
"id": "",
"personId": "person-002",
"visitId": "",
"sessionDate": "2025-01-19T00:00:00.000Z",
"personName": "Jane Doe",
"status": "absent"
}
]

Streaks

बेस पथ: /attendance/streaks

व्यक्तियों के लिए अटेंडेंस स्ट्रीक्स ट्रैक करता है -- लगातार कितने सप्ताह किसी व्यक्ति ने भाग लिया। एंगेजमेंट मेट्रिक्स और गेमिफ़िकेशन के लिए उपयोगी।

मेथडपथऑथअनुमतिविवरण
GET/person/:personIdJWTकिसी व्यक्ति के लिए अटेंडेंस स्ट्रीक्स लोड करें

संबंधित पेज