예제 #1
0
 //pay for registered course
 public void pay(Courses course)
 {
     db.paybillStudent(course, this.admNo);
 }
예제 #2
0
        static void ManageOperations(Student stud)
        {
            vdcoursechooser           cschoice = new vdcoursechooser(CourseChooser);
            String                    temp;
            database                  db = new database();
            int                       choice;
            Dictionary <int, Courses> Courses = db.getCourses();

Options:
            Console.Write("Please Choose an Option\n1. Register Course\n2. Pay For Courses\n3. View Courses\n4. View Admission Details\n5. Check if eligible For Library Access \n6. Check if eligible for exams\n7. Exit\nAnswer:");
            temp   = Console.ReadLine();
            choice = int.Parse(temp);
            //evaluate chosen option
            switch (choice)
            {
            case 1:
                int choice1;
                // Choose A Course to register
                Console.WriteLine("Choose Course:\n");
                foreach (KeyValuePair <int, Courses> cos in Courses)
                {
                    Console.WriteLine(cos.Key + ". " + cos.Value.getName() + " Cost: " + cos.Value.getCost());
                }
                temp    = Console.ReadLine();
                choice1 = int.Parse(temp);
                //Register course and bill student
                cschoice(Courses[choice1], ref stud);
                break;

            case 2:
                int choice2;
                Dictionary <int, Courses> UPCourses = stud.payments.getUnpaid();
                if (UPCourses.Count() == 0)
                {
                    Console.WriteLine("There are none:\n");
                    break;
                }
                Console.WriteLine("Choose Course:\n");
                //get all unpaid courses
                foreach (KeyValuePair <int, Courses> i in UPCourses)
                {
                    Console.Write(i.Key + ". " + i.Value.getName() + " - Cost: " + i.Value.getCost() + "\n");
                }
                Console.Write("Answer:");
                temp    = (String)Console.ReadLine();
                choice2 = int.Parse(temp);

                //pay for the unpaid course
                Courses thecourse = UPCourses[choice2];

                stud.payments.pay(thecourse);
                Console.WriteLine(thecourse.getName() + " has now been paid for, remaining balance is " + stud.payments.getTotal());


                break;

            case 3:
                //get all courses, grouped by those paid for and those not paid for
                Console.Write(stud.listCourses());
                break;

            case 4:
                //Show all student details
                Console.WriteLine("Student Name: " + stud.getName());
                Console.WriteLine("Student Admisson Number : " + stud.getAdmNo());
                Console.WriteLine("Year of Study: " + stud.getYear());
                Console.WriteLine("Balance: " + stud.payments.getTotal());
                break;

            case 5:
                if (stud.payments.getTotal() > 0)
                {
                    Console.WriteLine("Cannot Access Library, Pending Fees");
                }
                else
                {
                    Console.WriteLine("Can Access Library,No pending Fees");
                }
                break;

            case 6:
                if (stud.payments.getTotal() > 0)
                {
                    Console.WriteLine("Pending Fees, Advise " + stud.getName() + " clear all balance before sitting for exams");
                }
                else
                {
                    Console.WriteLine("Student is eligible for exams");
                }
                break;

            default:
                goto Exits;
            }

            Console.WriteLine("Press any key to continue");
            Console.ReadLine();
            goto Options;


Exits:
            Console.WriteLine("Press any key to exit");
            Console.ReadLine();
        }
예제 #3
0
 //register course and bill student
 public void bill(Courses course)
 {
     db.billStudent(course, this.admNo);
 }