Esoft Practicals Reservation System is a desktop application currently in use at Esoft Piliyandala.
It allows students to book a practical session by choosing a convenient date and time, and reserve a computer (PC) for their individual session.
This system ensures organized scheduling and avoids conflicts in lab availability, streamlining the practical teaching process.
- Programming Language: C#
- Platform: Windows Desktop Application
- Framework: .NET Framework
- Database: SQL Server / LocalDB
- Third-party Tools: Guna UI2 (for modern UI design)
Follow these steps to install the system:
- Download the folder named
Esoft Practicals Reservation. - Open the
Esoft Practicals Reservationfolder. - Go inside the
Debugfolder located within it. - Double-click on the file named
EsoftPracticalsReservation.msi. - On the welcome screen, click Next.
- Browse and select the location where you want to install the software.
- Click Next to proceed.
- Confirm the installation by clicking Next again.
- Wait until the installation completes.
The system will be installed in the following directory:
C:\Program Files (x86)\Methum Minsuka\EsoftPracticalsReservation\
Inside this folder, you'll find the following two important files:
Database.mdfDatabase_log.ldf
To ensure the system works correctly with the database, follow these steps:
-
Right-click on each of the following files:
Database.mdfDatabase_log.ldf
-
Select Properties.
-
Go to the Security tab.
-
Click the Edit button under:
βTo change permissions, click Editβ
-
In the list of user groups, select each of the following and provide Full control access:
ALL APPLICATION PACKAGESALL RESTRICTED APPLICATION PACKAGESUsers (YourPCName\Users)
-
After granting Full control to all, click Apply, then OK.
-
You can now open the system using the desktop shortcut that was created during installation.
The system offers two main sets of features:
- π Admin Features
- π€ User Features
- Secure Login Access
Enter the Admin Password into the text box and click the Admin Login button.
If the password is correct, you will be redirected to the Admin Panel.
- View Reservations
Admins can view all reservation records submitted by students.
Admins can also filter reservations based on:
- β Specific date range (From β To)
- π Student Registration Number
- π’ Batch Code
- π·οΈ Course Category
- π Reserved time slot
- πͺ Attendance status (Whether the student actually attended or not)
β This allows for detailed tracking, monitoring, and reporting of student practical sessions.
- View Registered Users
Admins can view a complete list of all registered students within the system.
Additionally, the list can be filtered using the following criteria:
- π Registration Number
- π§ First Name
- π§ββοΈ Last Name
- π’ Batch Code
- π·οΈ Course Category
- Admins can update student details such as name, batch, or course if corrections are needed.
- If necessary, delete a studentβs record completely from the system.
β This functionality helps maintain an accurate and up-to-date student database.
- Mark Holidays
Admins can block specific days to prevent students from making reservations on those dates.
This feature includes a set of controls for managing holiday entries efficiently.
- π Date Picker β Select the date you want to mark as a holiday.
- π Reason TextBox β Provide a reason or note for the holiday.
- π Search Button β Check if a holiday entry already exists for the selected date.
- π All Button β View a list of all holidays and their reasons.
- πΎ Save Button β Save a new holiday date along with its reason.
- βοΈ Edit Button β Modify the reason for an already saved holiday.
- ποΈ Delete Button β Completely remove a holiday entry.
- When a date is selected via the Date Picker and a reason is entered, clicking Save will block that date from future reservations.
- Use Edit to update the reason for an existing holiday.
- Delete permanently removes the selected holiday date.
- All displays every date that has been marked as a holiday, along with reasons.
- Use Search after selecting a date to check whether it has already been saved as a holiday.
β This feature helps ensure that reservations are only possible on working days, maintaining proper scheduling discipline.
- Limit Weekly Reservations
This feature allows the admin to control how many reservations a single student can make within a week.
A week is defined as starting from Monday and ending on Sunday.
- Admins can specify the maximum number of reservations allowed per student for each calendar week.
- Once the limit is reached, the student will be restricted from making additional reservations until the next week begins.
- This helps ensure fair usage of lab resources and gives all students equal opportunity.
β Especially useful in environments with limited PC availability and high student demand.
- Block Faulty PCs
If a specific PC is malfunctioning or unavailable due to any issue, admins can use this feature to block that PC within the system.
- Blocked PCs will no longer appear in the reservation list for students.
- Students will be unable to select or reserve any PC that has been marked as faulty.
- This ensures a smooth user experience by preventing booking of unusable machines.
β Useful for maintaining reservation reliability and minimizing disruptions during practical sessions.
- Adjust Calendar Range
This feature allows admins to define how many days into the future students are allowed to view and make reservations.
- The system starts counting from todayβs date.
- Admins can configure the number of future days shown in the reservation calendar.
- Students will only be able to book sessions within this allowed date range.
β Helps control reservation visibility and limit far-ahead bookings.
- Block Specific Users
Admins have the ability to block individual students from making reservations.
- A student can be blocked for disciplinary reasons or any other valid concern.
- Once blocked, the student will be restricted from making any further reservations.
- The block remains active until the admin manually unblocks the user.
β Useful for handling misuse of the system or enforcing specific policies.
- Export Backup Data
Admins can export all system data as a backup in either Microsoft Excel or Microsoft Access formats.
- Export includes: Registered users, reservations, holidays, blocked users, and system configurations.
- Useful for data recovery, reporting, or migration purposes.
- Backup files can be saved locally and reused later if needed.
π Ensures data safety and gives flexibility for offline review or audits.
-
Create Account
New students must first create an account before using the reservation system.
During registration, students are required to provide the following details:
- π§ First Name
- π§ββοΈ Last Name
- π Registration Number
- π’ Batch Number
- π·οΈ Course Category (Certificate, Diploma, Extended Batch, HND)
Once the account is created, the student will be added to the systemβs database and can proceed to log in and make reservations.
-
Login with Registration Number
- Students can log into the system by simply entering their Registration Number.
- The login process is quick and secure, ensuring only registered students can access reservation features.
- Upon successful login, the system will display the studentβs dashboard with available booking options.
-
Make a Reservation
- Students can select a date, time slot, and the specific PC number they wish to reserve.
- The system will automatically prevent bookings on:
- π Holiday dates marked by the admin
- β Blocked PCs
- βοΈ Weeks where the student has reached their reservation limit
- Real-time PC Availability:
- If another student has already reserved a PC for the selected date and time slot, that PC will be displayed in red.
- Clicking on a red (reserved) PC will show the details of the student who booked it.
- Once confirmed, the reservation will be saved in the database and visible in the studentβs booking history.
β This simple process ensures students can conveniently secure their practical session without scheduling conflicts.