source: main/kofacustom.edopoly/trunk/src/kofacustom/edopoly/utils/utils.py @ 17089

Last change on this file since 17089 was 16820, checked in by Henrik Bettermann, 3 years ago

Add payment categories.

  • Property svn:keywords set to Id
File size: 6.1 KB
Line 
1## $Id: utils.py 16820 2022-02-21 11:58:38Z henrik $
2##
3## Copyright (C) 2012 Uli Fouquet & Henrik Bettermann
4## This program is free software; you can redistribute it and/or modify
5## it under the terms of the GNU General Public License as published by
6## the Free Software Foundation; either version 2 of the License, or
7## (at your option) any later version.
8##
9## This program is distributed in the hope that it will be useful,
10## but WITHOUT ANY WARRANTY; without even the implied warranty of
11## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12## GNU General Public License for more details.
13##
14## You should have received a copy of the GNU General Public License
15## along with this program; if not, write to the Free Software
16## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17##
18"""Customize general helper utilities for Kofa.
19"""
20from copy import deepcopy
21from kofacustom.nigeria.utils.utils import NigeriaKofaUtils
22
23class CustomKofaUtils(NigeriaKofaUtils):
24    """A collection of methods subject to customization.
25    """
26
27    APP_CATS_DICT = {
28        'basic': 'Basic Application',
29        'no': 'no application',
30        'ft': 'Full Time Courses',
31        'pt': 'Part Time Courses',
32        'pre': 'Pre-Degree Studies',
33        'ct': 'Certificate Programmes',
34        'ndft': 'National Diploma Full-Time Programmes',
35        'ndpt': 'National Diploma Part-Time Programmes',
36        'ndwe': 'National Diploma Weekend Programmes',
37        'nde': 'National Diploma Part-Time Evening Programmes',
38        'hndft': 'Higher National Diploma Full-Time Programmes',
39        'hndpt': 'Higher National Diploma Part-Time Programmes',
40        'hndwe': 'Higher National Diploma Weekend Programmes',
41        'hnde': 'Higher National Diploma Part-Time Evening Programmes',
42
43        }
44
45    PAYMENT_CATEGORIES = {
46        'schoolfee': 'Tuition/Exams Fee',
47        'clearance': 'Acceptance Fee',
48        'bed_allocation': 'Accommodation Booking Fee',
49        'hostel_maintenance': 'Hostel Maintenance Fee',
50        'application': 'Application Fee',
51        'ict_entre': 'ICT and Entrepreneur Fee',
52        'logbook_combo': 'Logbook Combo Fee',
53        'siwess_combo': 'SIWESS Combo Fee',
54        'transcript': 'Transcript Fee',
55        'certificate': 'Certificate Fee',
56        'certificate_confirm': 'Certificate Confirmation Fee',
57        'late_registration': 'Late Course Registration Fee',
58        'final_clearance': 'Final Clearance Fee',
59        'union': 'Student Union Dues',
60        'admission_checking': 'Admission Checking Fee',
61        'medical': 'Medical Laboratory Test Fee',
62        'conv_nd': 'ND Convocation Fee',
63        'conv_hnd': 'HND Convocation Fee',
64        'nhis': 'TISHIP Fee',
65        'coc': 'Change of Course Fee',
66        'damages': 'Damages Fee',
67        'project_bind': 'Project Binding Fee',
68        'maintenance':'Maintenance and Utility Fees',
69        'cyber': 'Cyber Security',
70        'ispon': 'ISPON Safety',
71        }
72
73    SELECTABLE_PAYMENT_CATEGORIES = {
74        'schoolfee': 'Tuition/Exams Fee',
75        'clearance': 'Acceptance Fee',
76        'bed_allocation': 'Accommodation Booking Fee',
77        'hostel_maintenance': 'Hostel Maintenance Fee',
78        'application': 'Application Fee',
79        'ict_entre': 'ICT and Entrepreneur Fee',
80        'logbook_combo': 'Logbook Combo Fee',
81        'siwess_combo': 'SIWESS Combo Fee',
82        'transcript': 'Transcript Fee',
83        'certificate': 'Certificate Fee',
84        'certificate_confirm': 'Certificate Confirmation Fee',
85        'late_registration': 'Late Course Registration Fee',
86        'final_clearance': 'Final Clearance Fee',
87        'union': 'Student Union Dues',
88        'admission_checking': 'Admission Checking Fee',
89        'medical': 'Medical Laboratory Test Fee',
90        'conv_nd': 'ND Convocation Fee',
91        'conv_hnd': 'HND Convocation Fee',
92        'nhis': 'TISHIP Fee',
93        'coc': 'Change of Course Fee',
94        'damages': 'Damages Fee',
95        'project_bind': 'Project Binding Fee',
96        'maintenance':'Maintenance and Utility Fees',
97        'cyber': 'Cyber Security',
98        'ispon': 'ISPON Safety',
99        }
100
101    def selectable_payment_categories(self, student):
102        spc = deepcopy(self.SELECTABLE_PAYMENT_CATEGORIES)
103        if not student.is_fresh:
104            del spc['application']
105            del spc['admission_checking']
106            del spc['clearance']
107        return spc
108
109    PREVIOUS_PAYMENT_CATEGORIES = deepcopy(SELECTABLE_PAYMENT_CATEGORIES)
110
111    BALANCE_PAYMENT_CATEGORIES = {
112        'schoolfee': 'Tuition/Exams Fee',
113        'ict_entre': 'ICT and Entrepreneur Fee',
114        'certificate_confirm': 'Certificate Confirmation Fee',
115        'final_clearance': 'Final Clearance Fee',
116        }
117
118    REPORTABLE_PAYMENT_CATEGORIES = {
119        'schoolfee': 'Tuition Exams Fee',
120        'clearance': 'Accept. Fee',
121        'hostel_maintenance': 'Hostel Maint. Fee',
122        'ict_entre': 'ICT Entrepr. Fee',
123        'logbook_combo': 'Logbook Combo Fee',
124        'siwess_combo': 'SIWESS Combo Fee',
125        'certificate': 'Cert. Fee',
126        'certificate_confirm': 'Cert. Confirm. Fee',
127        'late_registration': 'Late Course Registr. Fee',
128        'final_clearance': 'Final Clearance Fee',
129        'union': 'Student Union Dues',
130        'medical': 'Medical Laboratory Test Fee',
131        }
132
133    SPECIAL_APP_DICT = {
134        'conv_nd': 'Convocation ND',
135        'conv_hnd': 'Convocation HND',
136        }
137
138    STUDY_MODES_DICT = {
139        'ug_ft': 'Undergraduate Full Time (not used in EdoPoly)',
140        'nd_ft': 'National Diploma Full-Time',
141        'nd_pt': 'National Diploma Part-Time',
142        'nd_we': 'National Diploma Weekend',
143        'hnd_ft': 'Higher National Diploma Full-Time',
144        'hnd_pt': 'Higher National Diploma Part-Time',
145        'hnd_we': 'Higher National Diploma Weekend',
146        'ct': 'Certificate',
147        'pre': 'Pre-Degree',
148        'transfer': 'Transfer',
149        'no': 'no application',
150        }
151
152    MODE_GROUPS = {
153        'All': ('all',),
154        'Undergraduate Full-Time': ('hnd_ft', 'nd_ft'),
155        'Undergraduate Part-Time': ('hnd_pt', 'nd_pt'),
156        #'Postgraduate Full-Time': ('pg_ft',),
157        #'Postgraduate Part-Time': ('pg_pt',),
158        }
Note: See TracBrowser for help on using the repository browser.