1 | ## Script (Python) "getSchoolFee"
|
---|
2 | ##bind container=container
|
---|
3 | ##bind context=context
|
---|
4 | ##bind namespace=
|
---|
5 | ##bind script=script
|
---|
6 | ##bind subpath=traverse_subpath
|
---|
7 | ##parameters=brain=None
|
---|
8 | ##title=
|
---|
9 | ##
|
---|
10 | # $Id: getSchoolFee.py 2534 2007-11-05 06:37:12Z henrik $
|
---|
11 | """
|
---|
12 | return SchoolFee
|
---|
13 | """
|
---|
14 |
|
---|
15 |
|
---|
16 | ARTS = ('CRS','ISS','HIS','MUS','ECO','GEO','POL','SOS','CCA','ECU','THA','GED','GSE','PES','SPC','ENG ','FRE','ARB','HAU','IGB','YOR')
|
---|
17 |
|
---|
18 | # SCS = ('BIO','CHE','HED','MAT','PED','PHY ','CSC','ISC','PHE','AGE','BED','HEC','TED','FAA')
|
---|
19 |
|
---|
20 | d = {}
|
---|
21 |
|
---|
22 | #PDE Students
|
---|
23 | if brain.mode == 'pd_ft':
|
---|
24 | d['all'] = 35000
|
---|
25 | elif not brain.mode.endswith('_sw'):
|
---|
26 | # PRENCE
|
---|
27 | if str(brain.level) == '000' and brain.review_state == 'cleared_and_validated':
|
---|
28 | if brain.department in ARTS:
|
---|
29 | d['all'] = 14900
|
---|
30 | else:
|
---|
31 | d['all'] = 15400
|
---|
32 | # all repeaters
|
---|
33 | #elif brain.verdict == 'C':
|
---|
34 | # if brain.department in ARTS:
|
---|
35 | # d['all'] = 9170
|
---|
36 | # else:
|
---|
37 | # d['all'] = 9645
|
---|
38 | # NCE I fresh
|
---|
39 | elif str(brain.level) == '100' and brain.review_state == 'cleared_and_validated':
|
---|
40 | if brain.department in ARTS:
|
---|
41 | d['all'] = 12020
|
---|
42 | else:
|
---|
43 | d['all'] = 12495
|
---|
44 | # NCE II
|
---|
45 | elif str(brain.level) in ('100','110','120') and brain.review_state == 'returning':
|
---|
46 | if brain.department in ARTS:
|
---|
47 | d['all'] = 11070
|
---|
48 | else:
|
---|
49 | d['all'] = 11545
|
---|
50 | # NCE III
|
---|
51 | elif str(brain.level) in ('200','210','220'):
|
---|
52 | if brain.department in ARTS:
|
---|
53 | d['all'] = 11070
|
---|
54 | else:
|
---|
55 | d['all'] = 11545
|
---|
56 | # NCE III repeater
|
---|
57 | elif str(brain.level) in ('300','310','320') and brain.verdict == 'O':
|
---|
58 | if brain.department in ARTS:
|
---|
59 | d['all'] = 5535
|
---|
60 | else:
|
---|
61 | d['all'] = 5773
|
---|
62 | # NCE III spillover
|
---|
63 | elif str(brain.level) in ('300','310','320') and brain.verdict == 'B':
|
---|
64 | if brain.department in ARTS:
|
---|
65 | d['all'] = 9170
|
---|
66 | else:
|
---|
67 | d['all'] = 9645
|
---|
68 | # NCE III second spillover
|
---|
69 | elif str(brain.level) in ('400','410','420') and brain.verdict == 'B':
|
---|
70 | if brain.department in ARTS:
|
---|
71 | d['all'] = 9170
|
---|
72 | else:
|
---|
73 | d['all'] = 9645
|
---|
74 | else:
|
---|
75 | d['all'] = 0
|
---|
76 |
|
---|
77 | else:
|
---|
78 | if str(brain.level) == '100' and brain.review_state == 'cleared_and_validated':
|
---|
79 | if brain.department in ARTS:
|
---|
80 | d['all'] = 21900
|
---|
81 | else:
|
---|
82 | d['all'] = 22400
|
---|
83 | # all repeaters
|
---|
84 | #elif brain.verdict == 'C':
|
---|
85 | # if brain.department in ARTS:
|
---|
86 | # d['all'] = 16900
|
---|
87 | # else:
|
---|
88 | # d['all'] = 17400
|
---|
89 | # NCE II
|
---|
90 | elif str(brain.level) in ('100','110','120') and brain.review_state == 'returning':
|
---|
91 | if brain.department in ARTS:
|
---|
92 | d['all'] = 18400
|
---|
93 | else:
|
---|
94 | d['all'] = 18900
|
---|
95 | # NCE III
|
---|
96 | elif str(brain.level) in ('200','210','220'):
|
---|
97 | if brain.department in ARTS:
|
---|
98 | d['all'] = 20400
|
---|
99 | else:
|
---|
100 | d['all'] = 20900
|
---|
101 | # NCE IV
|
---|
102 | elif str(brain.level) in ('300','310','320'):
|
---|
103 | if brain.department in ARTS:
|
---|
104 | d['all'] = 18400
|
---|
105 | else:
|
---|
106 | d['all'] = 18900
|
---|
107 | # NCE V
|
---|
108 | elif str(brain.level) in ('400','410','420'):
|
---|
109 | if brain.department in ARTS:
|
---|
110 | d['all'] = 18400
|
---|
111 | else:
|
---|
112 | d['all'] = 18900
|
---|
113 | # NCE V spillover
|
---|
114 | elif str(brain.level) in ('500','510','520') and brain.verdict == 'B':
|
---|
115 | if brain.department in ARTS:
|
---|
116 | d['all'] = 16900
|
---|
117 | else:
|
---|
118 | d['all'] = 17400
|
---|
119 | # NCE V second spillover
|
---|
120 | elif str(brain.level) in ('600','610','620') and brain.verdict == 'B':
|
---|
121 | if brain.department in ARTS:
|
---|
122 | d['all'] = 16900
|
---|
123 | else:
|
---|
124 | d['all'] = 17400
|
---|
125 | else:
|
---|
126 | d['all'] = 0
|
---|
127 |
|
---|
128 |
|
---|
129 |
|
---|
130 | next_info = context.getNextInfo(brain)
|
---|
131 | next_session_str = next_info['next_session_str']
|
---|
132 | d['next_session_id'] = next_info['next_session_id']
|
---|
133 | d['description'] = "School Fee for Session %s" % next_session_str
|
---|
134 |
|
---|
135 | return d
|
---|