source: main/kofacustom.dspg/trunk/src/kofacustom/dspg/utils/utils.py @ 16313

Last change on this file since 16313 was 16309, checked in by Henrik Bettermann, 4 years ago

Implement GNS Pack payments. This is a good example how sophisticated such requirements are.

  • Property svn:keywords set to Id
File size: 10.7 KB
Line 
1## $Id: utils.py 16309 2020-11-10 14:33:53Z 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 kofacustom.nigeria.utils.utils import NigeriaKofaUtils
21
22class CustomKofaUtils(NigeriaKofaUtils):
23    """A collection of methods subject to customization.
24    """
25
26    APP_CATS_DICT = {
27        'basic': 'Basic',
28        'ndft': 'National Diploma Full-Time Programmes',
29        'ndpt': 'National Diploma Part-Time Programmes',
30        'ndwe': 'National Diploma Weekend Programmes',
31        'hndft': 'Higher National Diploma Full-Time Programmes',
32        'hndpt': 'Higher National Diploma Part-Time Programmes',
33        'hndwe': 'Higher National Diploma Weekend Programmes',
34        'pgd': 'Postgraduate Diploma Programmes',
35        'rmd': 'Remedial Programmes',
36        'no': 'no application',
37        }
38
39    STUDY_MODES_DICT = {
40        'transfer': 'Transfer',
41        'ug_ft': 'Undergraduate Full Time',
42        'ug_pt': 'Undergraduate Part Time',
43        'nd_ft': 'National Diploma Full-Time',
44        'nd_pt': 'National Diploma Part-Time',
45        'nd_we': 'National Diploma Weekend',
46        'hnd_ft': 'Higher National Diploma Full-Time',
47        'hnd_pt': 'Higher National Diploma Part-Time',
48        'hnd_we': 'Higher National Diploma Weekend',
49        'pgd_ft': 'Postgraduate Diploma Full-Time',
50        'pgd_pt': 'Postgraduate Diploma Part-Time',
51        'prend': 'Pre-ND',
52        'rmd': 'Remedial',
53        }
54
55    PAYMENT_CATEGORIES = {
56        'clearance': 'Acceptance/Screening',
57        'schoolfee': 'School Fee',
58        'dep_sug':'NADESU/SA/SUG', # is not a special paynent
59        'carryover1': '1, 2 or 3 Carry-Over Courses',
60        'carryover4': '4 Carry-Over Courses',
61        'carryover5': '5 Carry-Over Courses',
62        'carryover6': '6 Carry-Over Courses',
63        'carryover7': '7 Carry-Over Courses',
64        'carryover8': '8 Carry-Over Courses',
65        'carryover9': '9 Carry-Over Courses',
66        'carryover10': '10 Carry-Over Courses',
67        'carryover11': '11 Carry-Over Courses',
68        'carryover12': '12 Carry-Over Courses',
69        'balance': 'Balance Payment',
70        'bed_allocation': 'Bed Allocation',
71        'hostel_maintenance': 'Hostel Maintenance',
72        'application': 'Application',
73        'certificate': 'ND Certificate',
74        'hnd_certificate': 'HND Certificate',
75        'pgd_certificate': 'PGD Certificate',
76        'state_result': 'ND Statement of Result',
77        'hnd_state_result': 'HND Statement of Result',
78        'pgd_state_result': 'PGD Statement of Result',
79        'transcript_local': 'ND Transcript (local)',
80        'hnd_transcript_local': 'HND Transcript (local)',
81        'pgd_transcript_local': 'PGD Transcript (local)',
82        'transcript_foreign': 'ND Transcript (foreign)',
83        'hnd_transcript_foreign': 'HND Transcript (foreign)',
84        'pgd_transcript_foreign': 'PGD Transcript (foreign)',
85        'ver_result': 'Verification of Result',
86        'change_course': 'Change of Course',
87        'change_inst': 'Change of Institute',
88        'jamb_reject': 'JAMB Rejection Form',
89        'cert_of_cert': 'Certification of Certificate',
90        'ref_let': 'Recommendation/Reference Letter',
91        'proc_cert': 'Processing of Certificate by Proxy',
92        'loss_idcard': 'Loss of ID Card (student)',
93        'staff_loss_idcard': 'Loss of ID Card (staff)',
94        'loss_examcard': 'Loss of Exam Card',
95        'loss_result': 'Loss of Result',
96        'loss_receipt': 'Loss of Receipt',
97        'loss_clearance': 'Loss of Clearance',
98        'conv_brochure': 'ND Convocation Brochure',
99        'hnd_conv_brochure': 'HND Convocation Brochure',
100        'pgd_conv_brochure': 'PGD Convocation Brochure',
101        'log_book': 'Log Book',
102        'jamb_regularization': 'Jamb Regularization',
103        'utme_registration': 'UTME Registration',
104        'utme_cbt': 'UTME CBT',
105        'nysc_id_card': 'NYSC ID Card',
106        'ijmb_result':'IJMB Result',
107        'gown': 'Gown Hire Fee',
108        'sports': 'Sports Clearance Levy',
109        'siwes': 'SIWES Fee',
110        'eed_1': 'EED 1 Fee',
111        'eed_2': 'EED 2 Fee',
112        'olevel_results_1': 'O Level Results Verification 1',
113        'olevel_results_2': 'O Level Results Verification 2',
114        'eng_1':'School of Engineering Dues I',
115        'eng_2':'School of Engineering Dues II',
116        'sbs_1':'SBS Pack I',
117        'sbs_2':'SBS Pack II',
118        'gns_1':'GNS Pack I',
119        'gns_2':'GNS Pack II',
120        'bfn':'BFN Pack',
121        'mkt':'MKT Pack',
122        'mcn':'MCN Pack',
123        'otm':'OTM Pack',
124        'acct':'ACCT Pack',
125        'bam':'BAM Pack',
126        'pom':'POM Pack',
127        'hrm':'HRM Pack',
128        'hndgrad':'HND Final Clearance Pack',
129        'ndgrad':'ND Final Clearance Pack',
130        'lsfp_penalty':'Late School Fee Payment Penalty',
131        'conv':'Convocation Pack',
132        }
133
134    SELECTABLE_PAYMENT_CATEGORIES = {
135        'clearance': 'Acceptance/Screening',
136        'schoolfee': 'School Fee',
137        'dep_sug':'NADESU/SA/SUG',
138        'gown': 'Gown Hire Fee',
139        #'carryover1': 'One Carry-Over',
140        #'carryover2': 'Two Carry-Overs',
141        #'carryover3': 'Three Carry-Overs',
142        #'carryover4': 'Four Carry-Overs',
143        'hostel_maintenance': 'Hostel Maintenance',
144        #'certificate': 'ND Certificate',
145        #'hnd_certificate': 'HND Certificate',
146        #'pgd_certificate': 'PGD Certificate',
147        #'state_result': 'ND Statement of Result',
148        #'hnd_state_result': 'HND Statement of Result',
149        #'pgd_state_result': 'PGD Statement of Result',
150        #'transcript_local': 'ND Transcript (local)',
151        #'hnd_transcript_local': 'HND Transcript (local)',
152        #'pgd_transcript_local': 'PGD Transcript (local)',
153        #'transcript_foreign': 'ND Transcript (foreign)',
154        #'hnd_transcript_foreign': 'HND Transcript (foreign)',
155        #'pgd_transcript_foreign': 'PGD Transcript (foreign)',
156        #'ver_result': 'Verification of Result',
157        'change_course': 'Change of Course',
158        #'change_inst': 'Change of Institute',
159        #'jamb_reject': 'JAMB Rejection Form',
160        #'cert_of_cert': 'Certification of Certificate',
161        #'ref_let': 'Recommendation/Reference Letter',
162        #'proc_cert': 'Processing of Certificate by Proxy',
163        #'loss_idcard': 'Loss of ID Card (student)',
164        #'staff_loss_idcard': 'Loss of ID Card (staff)',
165        #'loss_examcard': 'Loss of Exam Card',
166        #'loss_result': 'Loss of Result',
167        #'loss_receipt': 'Loss of Receipt',
168        #'loss_clearance': 'Loss of Clearance',
169        #'conv_brochure': 'ND Convocation Brochure',
170        #'hnd_conv_brochure': 'HND Convocation Brochure',
171        #'pgd_conv_brochure': 'PGD Convocation Brochure',
172        #'log_book': 'Log Book',
173        #'jamb_regularization': 'Jamb Regularization',
174        #'utme_registration': 'UTME Registration',
175        #'utme_cbt': 'UTME CBT',
176        #'nysc_id_card': 'NYSC ID Card',
177        #'ijmb_result':'IJMB Result',
178        'sports': 'Sports Clearance Levy',
179        'siwes': 'SIWES Fee',
180        'eed_1': 'EED 1 Fee',
181        'eed_2': 'EED 2 Fee',
182        'olevel_results_1': 'O Level Results Verification 1',
183        'olevel_results_2': 'O Level Results Verification 2',
184        'eng_1':'School of Engineering Dues I',
185        'eng_2':'School of Engineering Dues II',
186        'sbs_1':'SBS Pack I',
187        'sbs_2':'SBS Pack II',
188        'gns_1':'GNS Pack I',
189        'gns_2':'GNS Pack II',
190        'bfn':'BFN Pack',
191        'mkt':'MKT Pack',
192        'mcn':'MCN Pack',
193        'otm':'OTM Pack',
194        'acct':'ACCT Pack',
195        'bam':'BAM Pack',
196        'pom':'POM Pack',
197        'hrm':'HRM Pack',
198        'hndgrad':'HND Final Clearance Pack',
199        'ndgrad':'ND Final Clearance Pack',
200        'lsfp_penalty':'Late School Fee Payment Penalty',
201        'conv':'Convocation Pack',
202        }
203
204    def selectable_payment_categories(self, student):
205        return self.SELECTABLE_PAYMENT_CATEGORIES
206
207    SPECIAL_APP_DICT = {
208        'certificate': 'ND Certificate',
209        'hnd_certificate': 'HND Certificate',
210        'pgd_certificate': 'PGD Certificate',
211        'state_result': 'ND Statement of Result',
212        'hnd_state_result': 'HND Statement of Result',
213        'pgd_state_result': 'PGD Statement of Result',
214        'transcript_local': 'ND Transcript (local)',
215        'hnd_transcript_local': 'HND Transcript (local)',
216        'pgd_transcript_local': 'PGD Transcript (local)',
217        'transcript_foreign': 'ND Transcript (foreign)',
218        'hnd_transcript_foreign': 'HND Transcript (foreign)',
219        'pgd_transcript_foreign': 'PGD Transcript (foreign)',
220        'ver_result': 'Verification of Result',
221        'change_course': 'Change of Course',
222        'change_inst': 'Change of Institute',
223        'jamb_reject': 'JAMB Rejection Form',
224        'cert_of_cert': 'Certification of Certificate',
225        'ref_let': 'Recommendation/Reference Letter',
226        'proc_cert': 'Processing of Certificate by Proxy',
227        'loss_idcard': 'Loss of ID Card (student)',
228        'staff_loss_idcard': 'Loss of ID Card (staff)',
229        'loss_examcard': 'Loss of Exam Card',
230        'loss_result': 'Loss of Result',
231        'loss_receipt': 'Loss of Receipt',
232        'loss_clearance': 'Loss of Clearance',
233        'conv_brochure': 'ND Convocation Brochure',
234        'hnd_conv_brochure': 'HND Convocation Brochure',
235        'pgd_conv_brochure': 'PGD Convocation Brochure',
236        'log_book': 'Log Book',
237        'jamb_regularization': 'Jamb Regularization',
238        'utme_registration': 'UTME Registration',
239        'utme_cbt': 'UTME CBT',
240        'nysc_id_card': 'NYSC ID Card',
241        'ijmb_result':'IJMB Result',
242        'carryover1': '01, 02 or 03 Carry-Over Courses',
243        'carryover4': '04 Carry-Over Courses',
244        'carryover5': '05 Carry-Over Courses',
245        'carryover6': '06 Carry-Over Courses',
246        'carryover7': '07 Carry-Over Courses',
247        'carryover8': '08 Carry-Over Courses',
248        'carryover9': '09 Carry-Over Courses',
249        'carryover10': '10 Carry-Over Courses',
250        'carryover11': '11 Carry-Over Courses',
251        'carryover12': '12 Carry-Over Courses',
252        'balance': 'Balance Payment',
253        'conv':'Convocation Pack',
254        }
Note: See TracBrowser for help on using the repository browser.