Library
Overview
Book catalog management, issue/return tracking, overdue monitoring.
Book Record
{
id: string;
isbn: string;
title: string;
author: string;
publisher: string;
category: string; // e.g. "Fiction", "Science", "History"
rackNumber: string; // physical location
copiesTotal: number;
copiesAvailable: number; // total - issued
dateOfPurchase: Date;
cost: number;
}
Issue / Return Flow
Issue a Book
POST /school-admin/library/issue
{
"data": {
"bookId": "uuid",
"studentId": "uuid",
"issueDate": "2024-04-01",
"returnDate": "2024-04-15" // 14-day default
}
}
Decrements copiesAvailable. Creates LibraryBookIssue record with status ISSUED.
Return a Book
POST /school-admin/library/return
{
"data": {
"issueId": "uuid",
"returnDate": "2024-04-14"
}
}
Increments copiesAvailable. Updates LibraryBookIssue status to RETURNED.
Mark as Lost / Damaged
POST /school-admin/library/issue/:id/mark-lost
Flags the issue as LOST. Optionally applies a fine.
Overdue Books
GET /school-admin/library/overdue
Returns all books past their return date:
{
"data": [
{
"issueId": "uuid",
"studentName": "John Doe",
"class": "Class 5",
"bookTitle": "The Hobbit",
"dueDate": "2024-04-15",
"daysOverdue": 7,
"fine": 70
}
]
}
Fine calculation: configurable per school (default ₹10/day).
Reports
| Report | Description |
|---|---|
| Book Inventory | All books with availability status |
| Most Issued | Top borrowed books in the academic year |
| Student History | Books issued/returned per student |
| Overdue Report | All outstanding overdue books |
Parents App
Parents can view their child's issued books and return dates:
GET /parent/library/books
{
"data": {
"currentlyIssued": [
{ "title": "The Hobbit", "issueDate": "2024-04-01", "returnDate": "2024-04-15" }
],
"history": [...]
}
}