Good day programmers,
I am in need of a small inventory project for my church's internal book program.
School has 300 students. Each student has a (name, studentId, categoryId, classroomNumber, and status (active, blocked due to not returning books timely). There are a dozen or so classrooms. Each classroom has a teacherName, roomNumber, gradeNumber.
There are books, approximately 800 of them. There are categories of books (stages of difficulty). There are 10 categories. Each category has a categoryId and colorName. Each book has a bookId, title, categoryId, and assignment (Available or checked out). There are assignments, books that have been assigned to specific students (assignmentId, studentId, bookId, assignmentDate, returnDate).
Currently this is all done by paper. I would like to set this up in an automated way, so that we put barcodes on the books and student bags, and are able to quickly check books in, and check them out.
I have a computer running windows 7 that I can install webserver software on. As I have some familiarity with PHP and MySQL, I would like it written in that. I think it makes it possible for us to put the webserver on the local network so that teachers can check out their students' assignments. That part is unnecessary and out of scope for this project.
I am not looking for fancy interfacing. Simple PHP standard formatting and output. I only am looking for the following functionality:
1) Book Check-in mode: scanning a book's barcode while in this mode would mark the book available, unassign it from the current student, set return date to date book scanned returned.
2) Book check-out mode: While in this mode, steps would be as follows:
a) scan student's barcode on his/her bag
b) Student's level and status shows on screen (valid student or locked)
c) scan barcode of prospective book
d) book is confirmed on the same level as student - OK
e) book is confirmed as not one the student has been assigned before. - OK
f) if both are okay, check out to student is valid.
a) late report
-) Listing, broken down by classroom, of students with books out past XX days - set in admin screen, warning threshold
-) listing, broken down by classroom of students with books out past YY days - set in admin screen, LOCKED threshold, no new assignments to that student
- listing broken down by classroom, sorted by studentName, book assigned to them on date
4) Admin interface
a) set simple variable amounts, like how many days a book can be checked out before student put on Warning list, Locked list.
b) users list: not in scope for this project. No security implementation need be added for this project. If you are able to do it and want to do it as a simple add-on, please PM me.
5) Initial date import.
a) unnecessary. I will import data using PHPmyAdmin or something. I would like you to use dummy data for testing purposes. Barcode scan data is 12 digits, I believe. Names, unsure what the longest name is, but plan for normal name lengths with the occasional large name. Titles lengths, the same I guess.
That is all I can think of. If you have any suggestions to make this easier for you to program or some streamlining, please do not be shy.
And thank you for your time.