Commit 558365e7b3466ea60f90d7024a3a28a4c998416b
1 parent
46c5b5fdd9
Exists in
master
and in
3 other branches
graph change in dashboard and set field of admit card according to requirement
Showing
2 changed files
with
7 additions
and
7 deletions
Show diff stats
src/pages/Dashboard/dashboard.vue
1 | <template> | 1 | <template> |
2 | <v-app id="pages-dasboard"> | 2 | <v-app id="pages-dasboard"> |
3 | <!-- ****** VIEW PROFIL NOTICE BOARD ****** --> | 3 | <!-- ****** VIEW PROFIL NOTICE BOARD ****** --> |
4 | <!-- <v-dialog v-model="dialogNotice" max-width="940px" scrollable> | 4 | <!-- <v-dialog v-model="dialogNotice" max-width="940px" scrollable> |
5 | <v-card> | 5 | <v-card> |
6 | <v-toolbar color="grey lighten-2" flat> | 6 | <v-toolbar color="grey lighten-2" flat> |
7 | <v-spacer></v-spacer> | 7 | <v-spacer></v-spacer> |
8 | <v-toolbar-title> | 8 | <v-toolbar-title> |
9 | <h3>Notice Board</h3> | 9 | <h3>Notice Board</h3> |
10 | </v-toolbar-title> | 10 | </v-toolbar-title> |
11 | <v-spacer></v-spacer> | 11 | <v-spacer></v-spacer> |
12 | <v-icon @click="closeNotice">close</v-icon> | 12 | <v-icon @click="closeNotice">close</v-icon> |
13 | </v-toolbar> | 13 | </v-toolbar> |
14 | <v-card-text> | 14 | <v-card-text> |
15 | <v-layout> | 15 | <v-layout> |
16 | <v-flex align-center justify-center layout text-xs-center class="mt-2"> | 16 | <v-flex align-center justify-center layout text-xs-center class="mt-2"> |
17 | <img src="/static/icon/user.png" width="70px" v-if="!notice.eventImageUrl" /> | 17 | <img src="/static/icon/user.png" width="70px" v-if="!notice.eventImageUrl" /> |
18 | <img :src="notice.eventImageUrl" width="280px" v-else-if="notice.eventImageUrl" /> | 18 | <img :src="notice.eventImageUrl" width="280px" v-else-if="notice.eventImageUrl" /> |
19 | </v-flex> | 19 | </v-flex> |
20 | </v-layout> | 20 | </v-layout> |
21 | <v-container grid-list-md> | 21 | <v-container grid-list-md> |
22 | <v-layout wrap> | 22 | <v-layout wrap> |
23 | <v-flex> | 23 | <v-flex> |
24 | <v-layout> | 24 | <v-layout> |
25 | <v-flex xs5 sm6> | 25 | <v-flex xs5 sm6> |
26 | <h5 class="right my-1"> | 26 | <h5 class="right my-1"> |
27 | <b>Title:</b> | 27 | <b>Title:</b> |
28 | </h5> | 28 | </h5> |
29 | </v-flex> | 29 | </v-flex> |
30 | <v-flex sm6 xs8> | 30 | <v-flex sm6 xs8> |
31 | <h5 class="my-1">{{ notice.title }}</h5> | 31 | <h5 class="my-1">{{ notice.title }}</h5> |
32 | </v-flex> | 32 | </v-flex> |
33 | </v-layout> | 33 | </v-layout> |
34 | <v-layout> | 34 | <v-layout> |
35 | <v-flex xs5 sm6> | 35 | <v-flex xs5 sm6> |
36 | <h5 class="right my-1"> | 36 | <h5 class="right my-1"> |
37 | <b>Description:</b> | 37 | <b>Description:</b> |
38 | </h5> | 38 | </h5> |
39 | </v-flex> | 39 | </v-flex> |
40 | <v-flex sm6 xs8> | 40 | <v-flex sm6 xs8> |
41 | <h5 class="my-1">{{ notice.description }}</h5> | 41 | <h5 class="my-1">{{ notice.description }}</h5> |
42 | </v-flex> | 42 | </v-flex> |
43 | </v-layout> | 43 | </v-layout> |
44 | </v-flex> | 44 | </v-flex> |
45 | </v-layout> | 45 | </v-layout> |
46 | </v-container> | 46 | </v-container> |
47 | </v-card-text> | 47 | </v-card-text> |
48 | </v-card> | 48 | </v-card> |
49 | </v-dialog>--> | 49 | </v-dialog>--> |
50 | <!-- <v-container fluid grid-list-xl> --> | 50 | <!-- <v-container fluid grid-list-xl> --> |
51 | <v-layout wrap> | 51 | <v-layout wrap> |
52 | <v-flex xs12> | 52 | <v-flex xs12> |
53 | <v-layout wrap row> | 53 | <v-layout wrap row> |
54 | <!-- ***** Total Students ***** --> | 54 | <!-- ***** Total Students ***** --> |
55 | <v-flex xs12 sm12 md9> | 55 | <v-flex xs12 sm12 md9> |
56 | <v-container fluid grid-list-xl> | 56 | <v-container fluid grid-list-xl> |
57 | <v-flex xs12 sm12 md12> | 57 | <v-flex xs12 sm12 md12> |
58 | <v-layout wrap class> | 58 | <v-layout wrap class> |
59 | <v-flex xs12 sm12 md3> | 59 | <v-flex xs12 sm12 md3> |
60 | <router-link :to="{ name:'Students' }"> | 60 | <router-link :to="{ name:'Students' }"> |
61 | <v-card class="card pink-bgcolor"> | 61 | <v-card class="card pink-bgcolor"> |
62 | <v-card-title primary-title class="titleCard white--text py-3">Students</v-card-title> | 62 | <v-card-title primary-title class="titleCard white--text py-3">Students</v-card-title> |
63 | <img src="/static/icon/student.png" class="ml-2" width="40" alt="icons" /> | 63 | <img src="/static/icon/student.png" class="ml-2" width="40" alt="icons" /> |
64 | <v-card-title class="headline py-1 white--text">{{ students.length }}</v-card-title> | 64 | <v-card-title class="headline py-1 white--text">{{ students.length }}</v-card-title> |
65 | </v-card> | 65 | </v-card> |
66 | </router-link> | 66 | </router-link> |
67 | </v-flex> | 67 | </v-flex> |
68 | <!-- ***** Total Teachers***** --> | 68 | <!-- ***** Total Teachers***** --> |
69 | <v-flex xs12 sm12 md3> | 69 | <v-flex xs12 sm12 md3> |
70 | <router-link :to="{ name:'Teachers' }"> | 70 | <router-link :to="{ name:'Teachers' }"> |
71 | <v-card flat class="card elevation-2 firozi-bgcolor"> | 71 | <v-card flat class="card elevation-2 firozi-bgcolor"> |
72 | <v-card-title primary-title class="titleCard white--text py-3">Teachers</v-card-title> | 72 | <v-card-title primary-title class="titleCard white--text py-3">Teachers</v-card-title> |
73 | <img src="/static/icon/teacher.png" class="ml-2" width="40" alt="icons" /> | 73 | <img src="/static/icon/teacher.png" class="ml-2" width="40" alt="icons" /> |
74 | 74 | ||
75 | <v-card-title class="headline py-1 white--text">{{ teachers.length }}</v-card-title> | 75 | <v-card-title class="headline py-1 white--text">{{ teachers.length }}</v-card-title> |
76 | </v-card> | 76 | </v-card> |
77 | </router-link> | 77 | </router-link> |
78 | </v-flex> | 78 | </v-flex> |
79 | <!-- ***** Total Parents ***** --> | 79 | <!-- ***** Total Parents ***** --> |
80 | <v-flex xs12 sm12 md3> | 80 | <v-flex xs12 sm12 md3> |
81 | <router-link :to="{ name:'Parents' }"> | 81 | <router-link :to="{ name:'Parents' }"> |
82 | <v-card flat class="card yellow darken-3"> | 82 | <v-card flat class="card yellow darken-3"> |
83 | <v-card-title primary-title class="titleCard white--text py-3">Parents</v-card-title> | 83 | <v-card-title primary-title class="titleCard white--text py-3">Parents</v-card-title> |
84 | <img src="/static/icon/parents.png" class="ml-3" width="40px" alt="icons" /> | 84 | <img src="/static/icon/parents.png" class="ml-3" width="40px" alt="icons" /> |
85 | <v-card-title class="headline py-1 white--text">{{ parents.length }}</v-card-title> | 85 | <v-card-title class="headline py-1 white--text">{{ parents.length }}</v-card-title> |
86 | </v-card> | 86 | </v-card> |
87 | </router-link> | 87 | </router-link> |
88 | </v-flex> | 88 | </v-flex> |
89 | <!-- ***** Total Class***** --> | 89 | <!-- ***** Total Class***** --> |
90 | <v-flex xs12 sm12 md3> | 90 | <v-flex xs12 sm12 md3> |
91 | <router-link :to="{ name:'Class' }"> | 91 | <router-link :to="{ name:'Class' }"> |
92 | <v-card flat class="card darkBlue-bgcolor"> | 92 | <v-card flat class="card darkBlue-bgcolor"> |
93 | <v-card-title primary-title class="titleCard white--text py-3">Class</v-card-title> | 93 | <v-card-title primary-title class="titleCard white--text py-3">Class</v-card-title> |
94 | <img src="/static/icon/class.png" width="40" alt="icons" class="ml-2" /> | 94 | <img src="/static/icon/class.png" width="40" alt="icons" class="ml-2" /> |
95 | <v-card-title class="headline py-1 white--text">{{ classes.length }}</v-card-title> | 95 | <v-card-title class="headline py-1 white--text">{{ classes.length }}</v-card-title> |
96 | </v-card> | 96 | </v-card> |
97 | </router-link> | 97 | </router-link> |
98 | </v-flex> | 98 | </v-flex> |
99 | </v-layout> | 99 | </v-layout> |
100 | </v-flex> | 100 | </v-flex> |
101 | <v-layout> | 101 | <v-layout> |
102 | <v-flex xs12> | 102 | <v-flex xs12> |
103 | <v-card class="card mt-2 account-Card"> | 103 | <v-card class="card mt-2 account-Card"> |
104 | <h4> | 104 | <h4> |
105 | <b>Account</b> | 105 | <b>Account</b> |
106 | </h4> | 106 | </h4> |
107 | <v-layout wrap> | 107 | <v-layout wrap> |
108 | <v-flex xs12 sm12 md3> | 108 | <v-flex xs12 sm12 md3> |
109 | <v-list two-line> | 109 | <v-list two-line> |
110 | <template> | 110 | <template> |
111 | <v-list-tile> | 111 | <v-list-tile> |
112 | <v-list-tile-avatar> | 112 | <v-list-tile-avatar> |
113 | <v-icon class="account-circle darkBlue-color">panorama_fish_eye</v-icon> | 113 | <v-icon class="account-circle darkBlue-color">panorama_fish_eye</v-icon> |
114 | </v-list-tile-avatar> | 114 | </v-list-tile-avatar> |
115 | <v-list-tile-content> | 115 | <v-list-tile-content> |
116 | <v-list-tile-title class="mt-2"> | 116 | <v-list-tile-title class="mt-2"> |
117 | <p class="subheading font-color">Fees</p> | 117 | <p class="subheading font-color">Fees</p> |
118 | </v-list-tile-title> | 118 | </v-list-tile-title> |
119 | <v-list-tile-title>Rs. {{ feeData.totalFees }}</v-list-tile-title> | 119 | <v-list-tile-title>Rs. {{ feeData.totalFees }}</v-list-tile-title> |
120 | </v-list-tile-content> | 120 | </v-list-tile-content> |
121 | </v-list-tile> | 121 | </v-list-tile> |
122 | <v-list-tile> | 122 | <v-list-tile> |
123 | <v-list-tile-avatar> | 123 | <v-list-tile-avatar> |
124 | <v-icon class="account-circle yellowDark-color">panorama_fish_eye</v-icon> | 124 | <v-icon class="account-circle yellowDark-color">panorama_fish_eye</v-icon> |
125 | </v-list-tile-avatar> | 125 | </v-list-tile-avatar> |
126 | <v-list-tile-content> | 126 | <v-list-tile-content> |
127 | <v-list-tile-title class="mt-2"> | 127 | <v-list-tile-title class="mt-2"> |
128 | <p class="subheading font-color">Collection</p> | 128 | <p class="subheading font-color">Collection</p> |
129 | </v-list-tile-title> | 129 | </v-list-tile-title> |
130 | <v-list-tile-title>Rs. {{ feeData.totalCollection }}</v-list-tile-title> | 130 | <v-list-tile-title>Rs. {{ feeData.totalCollection }}</v-list-tile-title> |
131 | </v-list-tile-content> | 131 | </v-list-tile-content> |
132 | </v-list-tile> | 132 | </v-list-tile> |
133 | <v-list-tile> | 133 | <v-list-tile> |
134 | <v-list-tile-avatar> | 134 | <v-list-tile-avatar> |
135 | <v-icon class="account-circle pink-color">panorama_fish_eye</v-icon> | 135 | <v-icon class="account-circle pink-color">panorama_fish_eye</v-icon> |
136 | </v-list-tile-avatar> | 136 | </v-list-tile-avatar> |
137 | <v-list-tile-content> | 137 | <v-list-tile-content> |
138 | <v-list-tile-title class="mt-2"> | 138 | <v-list-tile-title class="mt-2"> |
139 | <p class="subheading font-color">Expences</p> | 139 | <p class="subheading font-color">Expences</p> |
140 | </v-list-tile-title> | 140 | </v-list-tile-title> |
141 | <v-list-tile-title>Rs. {{ expenseData.sum }}</v-list-tile-title> | 141 | <v-list-tile-title>Rs. {{ expenseData.sum }}</v-list-tile-title> |
142 | </v-list-tile-content> | 142 | </v-list-tile-content> |
143 | </v-list-tile> | 143 | </v-list-tile> |
144 | </template> | 144 | </template> |
145 | </v-list> | 145 | </v-list> |
146 | </v-flex> | 146 | </v-flex> |
147 | <v-flex xs12 sm12 md9 lg9> | 147 | <v-flex xs12 sm12 md9 lg9> |
148 | <!-- <div id="chart"> --> | 148 | <div id="chart"> |
149 | <div v-if="this.series" title="Swarn Singh"> | 149 | <div v-if="this.series"> |
150 | <apexchart | 150 | <apexchart |
151 | type="bar" | 151 | type="bar" |
152 | height="250" | 152 | height="250" |
153 | style="max-width: 800px !important" | 153 | style="max-width: 800px !important" |
154 | :options="chartOptions" | 154 | :options="chartOptions" |
155 | :series="series" | 155 | :series="series" |
156 | v-show="true" | ||
156 | ></apexchart> | 157 | ></apexchart> |
157 | </div> | 158 | </div> |
158 | <!-- </div> --> | 159 | </div> |
159 | </v-flex> | 160 | </v-flex> |
160 | </v-layout> | 161 | </v-layout> |
161 | </v-card> | 162 | </v-card> |
162 | </v-flex> | 163 | </v-flex> |
163 | </v-layout> | 164 | </v-layout> |
164 | <v-card class="mt-2 card"> | 165 | <v-card class="mt-2 card"> |
165 | <!-- <full-calendar | 166 | <!-- <full-calendar |
166 | ref="calendar" | 167 | ref="calendar" |
167 | defaultView="month" | 168 | defaultView="month" |
168 | droppable="false" | 169 | droppable="false" |
169 | :events="events" | 170 | :events="events" |
170 | :config="config" | 171 | :config="config" |
171 | ></full-calendar>--> | 172 | ></full-calendar>--> |
172 | <h4 class="pa-3"> | 173 | <h4 class="pa-3"> |
173 | <b>Notice</b> | 174 | <b>Notice</b> |
174 | </h4> | 175 | </h4> |
175 | 176 | ||
176 | <v-data-table | 177 | <v-data-table |
177 | :items="noticeData" | 178 | :items="noticeData" |
178 | class="elevation-0" | 179 | class="elevation-0" |
179 | flat | 180 | flat |
180 | hide-actions | 181 | hide-actions |
181 | hide-headers | 182 | hide-headers |
182 | style="border-spacing: 0 !important;" | 183 | style="border-spacing: 0 !important;" |
183 | > | 184 | > |
184 | <template | 185 | <template |
185 | slot="items" | 186 | slot="items" |
186 | slot-scope="props" | 187 | slot-scope="props" |
187 | v-if="props.index < 5" | 188 | v-if="props.index < 5" |
188 | style="border-spacing: 0 !important;" | 189 | style="border-spacing: 0 !important;" |
189 | > | 190 | > |
190 | <tr class="td-notice"> | 191 | <tr class="td-notice"> |
191 | <td class="grey--text" style="width:18px">{{ props.index + 1}}</td> | 192 | <td class="grey--text" style="width:18px">{{ props.index + 1}}</td> |
192 | <td> | 193 | <td> |
193 | <span class="grey--text caption">{{ date(props.item.created) }}</span> | 194 | <span class="grey--text caption">{{ date(props.item.created) }}</span> |
194 | <br /> | 195 | <br /> |
195 | <span class="body-2">{{ props.item.title}}</span> | 196 | <span class="body-2">{{ props.item.title}}</span> |
196 | </td> | 197 | </td> |
197 | <td class="noticeDecritpion grey--text mt-2">{{ props.item.description}}</td> | 198 | <td class="noticeDecritpion grey--text mt-2">{{ props.item.description}}</td> |
198 | 199 | ||
199 | <td class="text-xs-center"> | 200 | <td class="text-xs-center"> |
200 | <span> | 201 | <span> |
201 | <v-tooltip top> | 202 | <v-tooltip top> |
202 | <img | 203 | <img |
203 | slot="activator" | 204 | slot="activator" |
204 | style="cursor:pointer; width:25px; height:25px; " | 205 | style="cursor:pointer; width:25px; height:25px; " |
205 | @click="profile" | 206 | @click="profile" |
206 | src="/static/icon/view.png" | 207 | src="/static/icon/view.png" |
207 | /> | 208 | /> |
208 | <span>View</span> | 209 | <span>View</span> |
209 | </v-tooltip> | 210 | </v-tooltip> |
210 | </span> | 211 | </span> |
211 | </td> | 212 | </td> |
212 | </tr> | 213 | </tr> |
213 | </template> | 214 | </template> |
214 | </v-data-table> | 215 | </v-data-table> |
215 | </v-card> | 216 | </v-card> |
216 | </v-container> | 217 | </v-container> |
217 | </v-flex> | 218 | </v-flex> |
218 | <v-flex xs12 sm12 md3> | 219 | <v-flex xs12 sm12 md3> |
219 | <v-card height="100%" class="elevation-0 mt-3 profileDasboard"> | 220 | <v-card height="100%" class="elevation-0 mt-3 profileDasboard"> |
220 | <v-card-text> | 221 | <v-card-text> |
221 | <h4 class="text-xs-center py-3"> | 222 | <h4 class="text-xs-center py-3"> |
222 | <b>Profile</b> | 223 | <b>Profile</b> |
223 | </h4> | 224 | </h4> |
224 | <v-flex xs12 class="py-3"> | 225 | <v-flex xs12 class="py-3"> |
225 | <v-layout wrap> | 226 | <v-layout wrap> |
226 | <v-flex xs12 sm12 md4> | 227 | <v-flex xs12 sm12 md4> |
227 | <img src="/static/icon/user.png" v-if="!userData.schoolLogoUrl" width="80" /> | 228 | <img src="/static/icon/user.png" v-if="!userData.schoolLogoUrl" width="80" /> |
228 | <img | 229 | <img |
229 | :src="userData.schoolLogoUrl" | 230 | :src="userData.schoolLogoUrl" |
230 | v-else-if="userData.schoolLogoUrl" | 231 | v-else-if="userData.schoolLogoUrl" |
231 | width="80" | 232 | width="80" |
232 | /> | 233 | /> |
233 | </v-flex> | 234 | </v-flex> |
234 | <v-flex xs12 sm12 md6> | 235 | <v-flex xs12 sm12 md6> |
235 | <p class="mb-0 body-1"> | 236 | <p class="mb-0 body-1"> |
236 | <i>{{ userData.name }}</i> | 237 | <i>{{ userData.name }}</i> |
237 | </p> | 238 | </p> |
238 | <p class="mb-0 caption grey--text">{{ userData.email }}</p> | 239 | <p class="mb-0 caption grey--text">{{ userData.email }}</p> |
239 | <p class="mb-0 caption grey--text">{{ userData.mobile }}</p> | 240 | <p class="mb-0 caption grey--text">{{ userData.mobile }}</p> |
240 | <address class="caption grey--text mb-3">{{ userData.address }}</address> | 241 | <address class="caption grey--text mb-3">{{ userData.address }}</address> |
241 | </v-flex> | 242 | </v-flex> |
242 | </v-layout> | 243 | </v-layout> |
243 | </v-flex> | 244 | </v-flex> |
244 | <hr /> | 245 | <hr /> |
245 | <h4 class="text-xs-center py-3"> | 246 | <h4 class="text-xs-center py-3"> |
246 | <b>Calender</b> | 247 | <b>Calender</b> |
247 | </h4> | 248 | </h4> |
248 | <vue-event-calendar :events="demoEvents"></vue-event-calendar> | 249 | <vue-event-calendar :events="demoEvents"></vue-event-calendar> |
249 | </v-card-text> | 250 | </v-card-text> |
250 | </v-card> | 251 | </v-card> |
251 | </v-flex> | 252 | </v-flex> |
252 | </v-layout> | 253 | </v-layout> |
253 | </v-flex> | 254 | </v-flex> |
254 | </v-layout> | 255 | </v-layout> |
255 | <v-dialog v-model="dialog" max-width="500"> | 256 | <v-dialog v-model="dialog" max-width="500"> |
256 | <v-card color="grey lighten-4" flat> | 257 | <v-card color="grey lighten-4" flat> |
257 | <v-toolbar dark color="fixcolors"> | 258 | <v-toolbar dark color="fixcolors"> |
258 | <v-spacer></v-spacer> | 259 | <v-spacer></v-spacer> |
259 | <v-btn icon @click="dialog= false"> | 260 | <v-btn icon @click="dialog= false"> |
260 | <v-icon>close</v-icon> | 261 | <v-icon>close</v-icon> |
261 | </v-btn> | 262 | </v-btn> |
262 | </v-toolbar> | 263 | </v-toolbar> |
263 | <v-flex class="py-4"> | 264 | <v-flex class="py-4"> |
264 | <v-list-tile> | 265 | <v-list-tile> |
265 | <v-list-tile-action> | 266 | <v-list-tile-action> |
266 | <v-icon>edit</v-icon> | 267 | <v-icon>edit</v-icon> |
267 | </v-list-tile-action> | 268 | </v-list-tile-action> |
268 | <v-list-tile-content> | 269 | <v-list-tile-content> |
269 | <v-list-tile-title>{{ selected.title }}</v-list-tile-title> | 270 | <v-list-tile-title>{{ selected.title }}</v-list-tile-title> |
270 | </v-list-tile-content> | 271 | </v-list-tile-content> |
271 | </v-list-tile> | 272 | </v-list-tile> |
272 | <v-list-tile> | 273 | <v-list-tile> |
273 | <v-list-tile-action> | 274 | <v-list-tile-action> |
274 | <v-icon>access_time</v-icon> | 275 | <v-icon>access_time</v-icon> |
275 | </v-list-tile-action> | 276 | </v-list-tile-action> |
276 | <v-list-tile-content> | 277 | <v-list-tile-content> |
277 | <v-list-tile-title>{{ date(selected.start)}}</v-list-tile-title> | 278 | <v-list-tile-title>{{ date(selected.start)}}</v-list-tile-title> |
278 | </v-list-tile-content> | 279 | </v-list-tile-content> |
279 | </v-list-tile> | 280 | </v-list-tile> |
280 | </v-flex> | 281 | </v-flex> |
281 | </v-card> | 282 | </v-card> |
282 | </v-dialog> | 283 | </v-dialog> |
283 | <div class="loader" v-if="showLoader"> | 284 | <div class="loader" v-if="showLoader"> |
284 | <v-progress-circular indeterminate color="white"></v-progress-circular> | 285 | <v-progress-circular indeterminate color="white"></v-progress-circular> |
285 | </div> | 286 | </div> |
286 | </v-app> | 287 | </v-app> |
287 | </template> | 288 | </template> |
288 | 289 | ||
289 | <script> | 290 | <script> |
290 | import http from "@/Services/http.js"; | 291 | import http from "@/Services/http.js"; |
291 | import moment from "moment"; | 292 | import moment from "moment"; |
292 | // import { FunctionalCalendar } from "vue-functional-calendar"; | 293 | // import { FunctionalCalendar } from "vue-functional-calendar"; |
293 | 294 | ||
294 | export default { | 295 | export default { |
295 | components: { | 296 | components: { |
296 | // FunctionalCalendar | 297 | // FunctionalCalendar |
297 | }, | 298 | }, |
298 | data() { | 299 | data() { |
299 | return { | 300 | return { |
300 | // data: { | 301 | // data: { |
301 | // clieckedToday: false | 302 | // clieckedToday: false |
302 | // }, | 303 | // }, |
303 | // markedDates: ["16/4/2019", "18/4/2019", "20/4/2019", "21/4/2019"], | 304 | // markedDates: ["16/4/2019", "18/4/2019", "20/4/2019", "21/4/2019"], |
304 | // calendarData: {}, | 305 | // calendarData: {}, |
305 | // calendar: {}, | 306 | // calendar: {}, |
306 | demoEvents: [ | 307 | demoEvents: [ |
307 | { | 308 | { |
308 | date: "2020/01/10", // Required | 309 | date: "2020/01/10", // Required |
309 | title: "Foo" // Required | 310 | title: "Foo" // Required |
310 | }, | 311 | }, |
311 | { | 312 | { |
312 | date: "2020/01/12", | 313 | date: "2020/01/12", |
313 | title: "Bar", | 314 | title: "Bar", |
314 | desc: "description", | 315 | desc: "description", |
315 | customClass: "disabled highlight" // Custom classes to an calendar cell | 316 | customClass: "disabled highlight" // Custom classes to an calendar cell |
316 | } | 317 | } |
317 | ], | 318 | ], |
318 | 319 | ||
319 | showLoader: false, | 320 | showLoader: false, |
320 | calendarData: {}, | 321 | calendarData: {}, |
321 | dialog: false, | 322 | dialog: false, |
322 | dialogNotice: false, | 323 | dialogNotice: false, |
323 | HolidaysList: [], | 324 | HolidaysList: [], |
324 | EventsList: [], | 325 | EventsList: [], |
325 | events: [], | 326 | events: [], |
326 | config: { | 327 | config: { |
327 | eventClick: event => { | 328 | eventClick: event => { |
328 | this.selected = event; | 329 | this.selected = event; |
329 | this.dialog = true; | 330 | this.dialog = true; |
330 | } | 331 | } |
331 | }, | 332 | }, |
332 | selected: {}, | 333 | selected: {}, |
333 | barGraph: [], | 334 | barGraph: [], |
334 | // notice: {}, | 335 | // notice: {}, |
335 | userData: {}, | 336 | userData: {}, |
336 | dated: new Date(2018, 0, 9), | 337 | dated: new Date(2018, 0, 9), |
337 | userList: [], | 338 | userList: [], |
338 | sectionList: [], | 339 | sectionList: [], |
339 | students: "", | 340 | students: "", |
340 | parents: "", | 341 | parents: "", |
341 | teachers: "", | 342 | teachers: "", |
342 | classes: "", | 343 | classes: "", |
343 | noticeData: [], | 344 | noticeData: [], |
344 | expenseData: [], | 345 | expenseData: [], |
345 | feeData: [], | 346 | feeData: [], |
346 | collectionData: [], | 347 | collectionData: [], |
347 | 348 | ||
348 | attrs: [ | 349 | attrs: [ |
349 | { | 350 | { |
350 | key: "today", | 351 | key: "today", |
351 | highlight: true, | 352 | highlight: true, |
352 | dates: new Date() | 353 | dates: new Date() |
353 | } | 354 | } |
354 | ], | 355 | ], |
355 | drawer: true, | 356 | drawer: true, |
356 | items: [ | 357 | items: [ |
357 | { title: "Home", icon: "dashboard" }, | 358 | { title: "Home", icon: "dashboard" }, |
358 | { title: "About", icon: "question_answer" } | 359 | { title: "About", icon: "question_answer" } |
359 | ], | 360 | ], |
360 | right: null, | 361 | right: null, |
361 | 362 | ||
362 | series: [ | 363 | series: [ |
363 | { | 364 | { |
364 | name: "Total", | 365 | name: "Total", |
365 | data: [] | 366 | data: [] |
366 | } | 367 | } |
367 | ], | 368 | ], |
368 | chartOptions: { | 369 | chartOptions: { |
369 | chart: { | 370 | chart: { |
370 | type: "bar", | 371 | type: "bar", |
371 | height: 150, | 372 | height: 150, |
372 | stacked: true | 373 | stacked: true |
373 | // animations: { | 374 | // animations: { |
374 | // enabled: true, | 375 | // enabled: true, |
375 | // easing: "easeinout", | 376 | // easing: "easeinout", |
376 | // speed: 1200, | 377 | // speed: 1200, |
377 | // animateGradually: { | 378 | // animateGradually: { |
378 | // enabled: true, | 379 | // enabled: true, |
379 | // delay: 450 | 380 | // delay: 450 |
380 | // }, | 381 | // }, |
381 | // dynamicAnimation: { | 382 | // dynamicAnimation: { |
382 | // enabled: true, | 383 | // enabled: true, |
383 | // speed: 450 | 384 | // speed: 450 |
384 | // } | 385 | // } |
385 | // } | 386 | // } |
386 | }, | 387 | }, |
387 | plotOptions: { | 388 | plotOptions: { |
388 | bar: { | 389 | bar: { |
389 | horizontal: false, | 390 | horizontal: false, |
390 | columnWidth: "25%", | 391 | columnWidth: "25%", |
391 | // endingShape: "rounded", | 392 | // endingShape: "rounded", |
392 | distributed: true | 393 | distributed: true |
393 | } | 394 | } |
394 | }, | 395 | }, |
395 | responsive: [ | 396 | responsive: [ |
396 | { | 397 | { |
397 | breakpoint: 480, | 398 | breakpoint: 480, |
398 | options: { | 399 | options: { |
399 | legend: { | 400 | legend: { |
400 | position: "bottom", | 401 | position: "bottom", |
401 | offsetX: -10, | 402 | offsetX: -10, |
402 | offsetY: 0 | 403 | offsetY: 0 |
403 | } | 404 | } |
404 | } | 405 | } |
405 | } | 406 | } |
406 | ], | 407 | ], |
407 | legend: { | 408 | legend: { |
408 | show: false | 409 | show: false |
409 | }, | 410 | }, |
410 | colors: ["#7852cc", "#f9a825", "#ff8a89"], | 411 | colors: ["#7852cc", "#f9a825", "#ff8a89"], |
411 | dataLabels: { | 412 | dataLabels: { |
412 | enabled: false | 413 | enabled: false |
413 | }, | 414 | }, |
414 | stroke: { | 415 | stroke: { |
415 | show: true, | 416 | show: true, |
416 | width: 2, | 417 | width: 2, |
417 | colors: ["transparent"] | 418 | colors: ["transparent"] |
418 | }, | 419 | }, |
419 | xaxis: { | 420 | xaxis: { |
420 | categories: ["Fee", "Collections", "Expences"] | 421 | categories: ["Fee", "Collections", "Expences"] |
421 | }, | 422 | }, |
422 | yaxis: { | 423 | yaxis: { |
423 | title: { | 424 | title: { |
424 | text: "" | 425 | text: "" |
425 | } | 426 | } |
426 | }, | 427 | }, |
427 | fill: { | 428 | fill: { |
428 | opacity: 1 | 429 | opacity: 1 |
429 | }, | 430 | }, |
430 | tooltip: { | 431 | tooltip: { |
431 | y: { | 432 | y: { |
432 | formatter: function(val, opts) { | 433 | formatter: function(val, opts) { |
433 | // console.log("opts",opts.w.config.xaxis.categories) | 434 | // console.log("opts",opts.w.config.xaxis.categories) |
434 | return "" + val + " "; | 435 | return "" + val + " "; |
435 | } | 436 | } |
436 | } | 437 | } |
437 | } | 438 | } |
438 | } | 439 | } |
439 | }; | 440 | }; |
440 | }, | 441 | }, |
441 | mounted() { | 442 | mounted() { |
442 | // = this.$store.state.schoolToken; | 443 | // = this.$store.state.schoolToken; |
443 | // console.log("this.$store.state.role", this.token); | 444 | // console.log("this.$store.state.role", this.token); |
444 | if (this.$store.state.role === "ADMIN") { | 445 | if (this.$store.state.role === "ADMIN") { |
445 | this.token = this.$store.state.token; | 446 | this.token = this.$store.state.token; |
446 | } else if (this.$store.state.schoolRole === "SUPERADMIN") { | 447 | } else if (this.$store.state.schoolRole === "SUPERADMIN") { |
447 | this.token = this.$store.state.schoolToken; | 448 | this.token = this.$store.state.schoolToken; |
448 | } | 449 | } |
449 | // console.log("role", this.$store.state.schoolRole,"tt",this.$store.state.schoolToken); | 450 | // console.log("role", this.$store.state.schoolRole,"tt",this.$store.state.schoolToken); |
450 | // this.getData(); | 451 | // this.getData(); |
451 | this.getStudents(); | 452 | this.getStudents(); |
452 | this.getTeachers(); | 453 | this.getTeachers(); |
453 | this.getParents(); | 454 | this.getParents(); |
454 | this.getClasses(); | 455 | this.getClasses(); |
455 | this.getNoticeData(); | 456 | this.getNoticeData(); |
456 | this.getUserData(); | 457 | this.getUserData(); |
457 | this.getFeesAndCollectionsData(); | 458 | this.getFeesAndCollectionsData(); |
458 | this.getExpensesData(); | 459 | this.getExpensesData(); |
459 | // this.getUsersList(); | 460 | // this.getUsersList(); |
460 | }, | 461 | }, |
461 | methods: { | 462 | methods: { |
462 | closeNotice() { | 463 | closeNotice() { |
463 | this.dialogNotice = false; | 464 | this.dialogNotice = false; |
464 | }, | 465 | }, |
465 | profile() { | 466 | profile() { |
466 | // this.editedIndex = this.desserts.indexOf(item); | 467 | // this.editedIndex = this.desserts.indexOf(item); |
467 | // this.notice = Object.assign({}, item); | 468 | // this.notice = Object.assign({}, item); |
468 | // this.dialogNotice = true; | 469 | // this.dialogNotice = true; |
469 | this.$router.push({ name: "NoticeBoard" }); | 470 | this.$router.push({ name: "NoticeBoard" }); |
470 | }, | 471 | }, |
471 | date: function(date) { | 472 | date: function(date) { |
472 | return moment(date).format("MMMM DD, YYYY HH:mm"); | 473 | return moment(date).format("MMMM DD, YYYY HH:mm"); |
473 | }, | 474 | }, |
474 | refreshEvents() { | 475 | refreshEvents() { |
475 | this.$refs.calendar.$emit("refetch-events"); | 476 | this.$refs.calendar.$emit("refetch-events"); |
476 | }, | 477 | }, |
477 | removeEvent() { | 478 | removeEvent() { |
478 | this.$refs.calendar.$emit("remove-event", this.selected); | 479 | this.$refs.calendar.$emit("remove-event", this.selected); |
479 | this.selected = {}; | 480 | this.selected = {}; |
480 | }, | 481 | }, |
481 | eventSelected(event) { | 482 | eventSelected(event) { |
482 | this.selected = event; | 483 | this.selected = event; |
483 | console.log("this.selected", this.selected); | 484 | console.log("this.selected", this.selected); |
484 | }, | 485 | }, |
485 | // eventDropStart: function(event) { | 486 | // eventDropStart: function(event) { |
486 | // event.editable = false; | 487 | // event.editable = false; |
487 | // }, | 488 | // }, |
488 | eventCreated(...test) { | 489 | eventCreated(...test) { |
489 | console.log(test); | 490 | console.log(test); |
490 | }, | 491 | }, |
491 | getStudents() { | 492 | getStudents() { |
492 | http() | 493 | http() |
493 | .get("/getStudentsList", { | 494 | .get("/getStudentsList", { |
494 | headers: { | 495 | headers: { |
495 | Authorization: "Bearer " + this.token | 496 | Authorization: "Bearer " + this.token |
496 | } | 497 | } |
497 | }) | 498 | }) |
498 | .then(response => { | 499 | .then(response => { |
499 | this.students = response.data.data; | 500 | this.students = response.data.data; |
500 | this.showLoader = false; | 501 | this.showLoader = false; |
501 | }) | 502 | }) |
502 | .catch(error => { | 503 | .catch(error => { |
503 | // console.log("err====>", err); | 504 | // console.log("err====>", err); |
504 | this.showLoader = false; | 505 | this.showLoader = false; |
505 | // if (error.response.status === 401) { | 506 | // if (error.response.status === 401) { |
506 | // this.$router.replace({ path: "/" }); | 507 | // this.$router.replace({ path: "/" }); |
507 | // this.$store.dispatch("setToken", null); | 508 | // this.$store.dispatch("setToken", null); |
508 | // this.$store.dispatch("Id", null); | 509 | // this.$store.dispatch("Id", null); |
509 | // } | 510 | // } |
510 | }); | 511 | }); |
511 | }, | 512 | }, |
512 | getParents() { | 513 | getParents() { |
513 | http() | 514 | http() |
514 | .get("/getParentsList", { | 515 | .get("/getParentsList", { |
515 | headers: { | 516 | headers: { |
516 | Authorization: "Bearer " + this.token | 517 | Authorization: "Bearer " + this.token |
517 | } | 518 | } |
518 | }) | 519 | }) |
519 | .then(response => { | 520 | .then(response => { |
520 | this.parents = response.data.data; | 521 | this.parents = response.data.data; |
521 | this.showLoader = false; | 522 | this.showLoader = false; |
522 | }) | 523 | }) |
523 | .catch(error => { | 524 | .catch(error => { |
524 | // console.log("err====>", err); | 525 | // console.log("err====>", err); |
525 | this.showLoader = false; | 526 | this.showLoader = false; |
526 | // if (error.response.status === 401) { | 527 | // if (error.response.status === 401) { |
527 | // this.$router.replace({ path: "/" }); | 528 | // this.$router.replace({ path: "/" }); |
528 | // this.$store.dispatch("setToken", null); | 529 | // this.$store.dispatch("setToken", null); |
529 | // this.$store.dispatch("Id", null); | 530 | // this.$store.dispatch("Id", null); |
530 | // } | 531 | // } |
531 | }); | 532 | }); |
532 | }, | 533 | }, |
533 | getTeachers() { | 534 | getTeachers() { |
534 | http() | 535 | http() |
535 | .get("/getTeachersList", { | 536 | .get("/getTeachersList", { |
536 | headers: { | 537 | headers: { |
537 | Authorization: "Bearer " + this.token | 538 | Authorization: "Bearer " + this.token |
538 | } | 539 | } |
539 | }) | 540 | }) |
540 | .then(response => { | 541 | .then(response => { |
541 | this.teachers = response.data.data; | 542 | this.teachers = response.data.data; |
542 | this.showLoader = false; | 543 | this.showLoader = false; |
543 | }) | 544 | }) |
544 | .catch(error => { | 545 | .catch(error => { |
545 | // console.log("err====>", err); | 546 | // console.log("err====>", err); |
546 | this.showLoader = false; | 547 | this.showLoader = false; |
547 | // if (error.response.status === 401) { | 548 | // if (error.response.status === 401) { |
548 | // this.$router.replace({ path: "/" }); | 549 | // this.$router.replace({ path: "/" }); |
549 | // this.$store.dispatch("setToken", null); | 550 | // this.$store.dispatch("setToken", null); |
550 | // this.$store.dispatch("Id", null); | 551 | // this.$store.dispatch("Id", null); |
551 | // } | 552 | // } |
552 | }); | 553 | }); |
553 | }, | 554 | }, |
554 | getClasses() { | 555 | getClasses() { |
555 | http() | 556 | http() |
556 | .get("/getClassesList", { | 557 | .get("/getClassesList", { |
557 | headers: { | 558 | headers: { |
558 | Authorization: "Bearer " + this.token | 559 | Authorization: "Bearer " + this.token |
559 | } | 560 | } |
560 | }) | 561 | }) |
561 | .then(response => { | 562 | .then(response => { |
562 | this.classes = response.data.data; | 563 | this.classes = response.data.data; |
563 | this.showLoader = false; | 564 | this.showLoader = false; |
564 | }) | 565 | }) |
565 | .catch(error => { | 566 | .catch(error => { |
566 | this.showLoader = false; | 567 | this.showLoader = false; |
567 | // if (error.response.status === 401) { | 568 | // if (error.response.status === 401) { |
568 | // this.$router.replace({ path: "/" }); | 569 | // this.$router.replace({ path: "/" }); |
569 | // this.$store.dispatch("setToken", null); | 570 | // this.$store.dispatch("setToken", null); |
570 | // this.$store.dispatch("Id", null); | 571 | // this.$store.dispatch("Id", null); |
571 | // this.$store.dispatch("Role", null); | 572 | // this.$store.dispatch("Role", null); |
572 | // } | 573 | // } |
573 | }); | 574 | }); |
574 | }, | 575 | }, |
575 | getNoticeData() { | 576 | getNoticeData() { |
576 | this.showLoader = true; | 577 | this.showLoader = true; |
577 | http() | 578 | http() |
578 | .get("/getEventsList", { | 579 | .get("/getEventsList", { |
579 | headers: { | 580 | headers: { |
580 | Authorization: "Bearer " + this.token | 581 | Authorization: "Bearer " + this.token |
581 | } | 582 | } |
582 | }) | 583 | }) |
583 | .then(response => { | 584 | .then(response => { |
584 | this.noticeData = response.data.data; | 585 | this.noticeData = response.data.data; |
585 | this.showLoader = false; | 586 | this.showLoader = false; |
586 | }) | 587 | }) |
587 | .catch(error => { | 588 | .catch(error => { |
588 | this.showLoader = false; | 589 | this.showLoader = false; |
589 | // if (error.response.status === 401) { | 590 | // if (error.response.status === 401) { |
590 | // this.$router.replace({ path: "/" }); | 591 | // this.$router.replace({ path: "/" }); |
591 | // this.$store.dispatch("setToken", null); | 592 | // this.$store.dispatch("setToken", null); |
592 | // this.$store.dispatch("Id", null); | 593 | // this.$store.dispatch("Id", null); |
593 | // } | 594 | // } |
594 | }); | 595 | }); |
595 | }, | 596 | }, |
596 | getUserData() { | 597 | getUserData() { |
597 | // this.showLoader = true; | 598 | // this.showLoader = true; |
598 | http() | 599 | http() |
599 | .get("/getParticularUserDetail", { | 600 | .get("/getParticularUserDetail", { |
600 | headers: { | 601 | headers: { |
601 | Authorization: "Bearer " + this.token | 602 | Authorization: "Bearer " + this.token |
602 | } | 603 | } |
603 | }) | 604 | }) |
604 | .then(response => { | 605 | .then(response => { |
605 | this.userData = response.data.data; | 606 | this.userData = response.data.data; |
606 | this.showLoader = false; | 607 | this.showLoader = false; |
607 | }) | 608 | }) |
608 | .catch(error => { | 609 | .catch(error => { |
609 | this.showLoader = false; | 610 | this.showLoader = false; |
610 | // if (error.response.status === 401) { | 611 | // if (error.response.status === 401) { |
611 | // this.$router.replace({ path: "/" }); | 612 | // this.$router.replace({ path: "/" }); |
612 | // this.$store.dispatch("setToken", null); | 613 | // this.$store.dispatch("setToken", null); |
613 | // this.$store.dispatch("Id", null); | 614 | // this.$store.dispatch("Id", null); |
614 | // } | 615 | // } |
615 | }); | 616 | }); |
616 | }, | 617 | }, |
617 | 618 | ||
618 | getFeesAndCollectionsData() { | 619 | getFeesAndCollectionsData() { |
619 | http() | 620 | http() |
620 | .get("/getTotalFeesAndCollections", { | 621 | .get("/getTotalFeesAndCollections", { |
621 | headers: { | 622 | headers: { |
622 | Authorization: "Bearer " + this.token | 623 | Authorization: "Bearer " + this.token |
623 | } | 624 | } |
624 | }) | 625 | }) |
625 | .then(response => { | 626 | .then(response => { |
626 | this.feeData = response.data.data; | 627 | this.feeData = response.data.data; |
627 | // this.collectionData = response.data.data; | 628 | // this.collectionData = response.data.data; |
628 | this.series[0].data[0] = this.feeData.totalFees; | 629 | this.series[0].data[0] = this.feeData.totalFees; |
629 | this.series[0].data[1] = this.feeData.totalCollection; | 630 | this.series[0].data[1] = this.feeData.totalCollection; |
630 | console.log("this.series====", this.series); | 631 | console.log("this.series====", this.series); |
631 | 632 | ||
632 | this.showLoader = false; | 633 | this.showLoader = false; |
633 | }) | 634 | }) |
634 | .catch(error => { | 635 | .catch(error => { |
635 | this.showLoader = false; | 636 | this.showLoader = false; |
636 | }); | 637 | }); |
637 | }, | 638 | }, |
638 | getExpensesData() { | 639 | getExpensesData() { |
639 | http() | 640 | http() |
640 | .get("/getTotalExpenses", { | 641 | .get("/getTotalExpenses", { |
641 | headers: { | 642 | headers: { |
642 | Authorization: "Bearer " + this.token | 643 | Authorization: "Bearer " + this.token |
643 | } | 644 | } |
644 | }) | 645 | }) |
645 | .then(response => { | 646 | .then(response => { |
646 | this.expenseData = response.data.data; | 647 | this.expenseData = response.data.data; |
647 | // var array = response.data.data.sum; | 648 | // var array = response.data.data.sum; |
648 | this.series[0].data[2] = this.expenseData.sum; | 649 | this.series[0].data[2] = this.expenseData.sum; |
649 | // console.log("this.series.data", this.series[0].data); | ||
650 | // this.series = [ | 650 | // this.series = [ |
651 | // { | 651 | // { |
652 | // name: "Total", | 652 | // name: "Total", |
653 | // data: array | 653 | // data: array |
654 | // } | 654 | // } |
655 | // ]; | 655 | // ]; |
656 | // console.log("this.series====", this.series); | 656 | // console.log("this.series====", this.series); |
657 | this.showLoader = false; | 657 | this.showLoader = false; |
658 | }) | 658 | }) |
659 | .catch(error => { | 659 | .catch(error => { |
660 | this.showLoader = false; | 660 | this.showLoader = false; |
661 | }); | 661 | }); |
662 | } | 662 | } |
663 | } | 663 | } |
664 | }; | 664 | }; |
665 | </script> | 665 | </script> |
666 | 666 | ||
667 | <style scoped> | 667 | <style scoped> |
668 | @import "fullcalendar/dist/fullcalendar.css"; | 668 | @import "fullcalendar/dist/fullcalendar.css"; |
src/pages/Report/admitCard.vue
1 | <template> | 1 | <template> |
2 | <v-container fluid class="body-color"> | 2 | <v-container fluid class="body-color"> |
3 | <!-- **** Admit Card Table **** --> | 3 | <!-- **** Admit Card Table **** --> |
4 | <v-card flat class="elevation-0 transparent"> | 4 | <v-card flat class="elevation-0 transparent"> |
5 | <v-form ref="form" v-model="valid" lazy-validation> | 5 | <v-form ref="form" v-model="valid" lazy-validation> |
6 | <v-flex xs12 sm12 lg12> | 6 | <v-flex xs12 sm12 lg12> |
7 | <v-layout wrap> | 7 | <v-layout wrap> |
8 | <v-flex xs12 sm12 lg3> | 8 | <v-flex xs12 sm12 lg3> |
9 | <v-layout> | 9 | <v-layout> |
10 | <v-flex xs3 sm6 lg4 class="subheading mt-4"> | 10 | <v-flex xs3 sm6 lg4 class="subheading mt-4"> |
11 | <label class="right">Exam :</label> | 11 | <label class="right">Exam :</label> |
12 | </v-flex> | 12 | </v-flex> |
13 | <v-flex xs7 sm6 lg8 class="ml-2"> | 13 | <v-flex xs7 sm6 lg8 class="ml-2"> |
14 | <v-autocomplete | 14 | <v-autocomplete |
15 | v-model="getReport.examId" | 15 | v-model="getReport.examId" |
16 | label="Please Select" | 16 | label="Please Select" |
17 | :items="examData" | 17 | :items="examData" |
18 | item-text="examName" | 18 | item-text="examName" |
19 | item-value="_id" | 19 | item-value="_id" |
20 | :rules="examRules" | 20 | :rules="examRules" |
21 | @change="getExamList" | 21 | @change="getExamList" |
22 | required | 22 | required |
23 | ></v-autocomplete> | 23 | ></v-autocomplete> |
24 | </v-flex> | 24 | </v-flex> |
25 | </v-layout> | 25 | </v-layout> |
26 | </v-flex> | 26 | </v-flex> |
27 | 27 | ||
28 | <v-flex xs12 sm12 lg3> | 28 | <v-flex xs12 sm12 lg3 v-if="getReport.examId"> |
29 | <v-layout> | 29 | <v-layout> |
30 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> | 30 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> |
31 | <label class="right">Class:</label> | 31 | <label class="right">Class:</label> |
32 | </v-flex> | 32 | </v-flex> |
33 | <v-flex xs9 sm6 lg8 class="ml-2"> | 33 | <v-flex xs9 sm6 lg8 class="ml-2"> |
34 | <v-select | 34 | <v-select |
35 | v-model="getReport.classId" | 35 | v-model="getReport.classId" |
36 | label="Select your class" | 36 | label="Select your class" |
37 | type="text" | 37 | type="text" |
38 | :items="classList" | 38 | :items="classList" |
39 | item-text="classNum" | 39 | item-text="classNum" |
40 | item-value="_id" | 40 | item-value="_id" |
41 | :rules="classRules" | 41 | :rules="classRules" |
42 | @change="getSections(getReport.classId)" | 42 | @change="getSections(getReport.classId)" |
43 | required | 43 | required |
44 | ></v-select> | 44 | ></v-select> |
45 | </v-flex> | 45 | </v-flex> |
46 | </v-layout> | 46 | </v-layout> |
47 | </v-flex> | 47 | </v-flex> |
48 | <v-flex xs12 sm12 lg3> | 48 | <v-flex xs12 sm12 lg3 v-if="getReport.classId"> |
49 | <v-layout> | 49 | <v-layout> |
50 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> | 50 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> |
51 | <label class="right">Section:</label> | 51 | <label class="right">Section:</label> |
52 | </v-flex> | 52 | </v-flex> |
53 | <v-flex xs9 sm6 lg8 class="ml-2"> | 53 | <v-flex xs9 sm6 lg8 class="ml-2"> |
54 | <v-select | 54 | <v-select |
55 | :items="addSection" | 55 | :items="addSection" |
56 | label="Select your Section" | 56 | label="Select your Section" |
57 | v-model="getReport.sectionId" | 57 | v-model="getReport.sectionId" |
58 | item-text="name" | 58 | item-text="name" |
59 | item-value="_id" | 59 | item-value="_id" |
60 | name="Select Section" | 60 | name="Select Section" |
61 | @change="getStudents" | 61 | @change="getStudents" |
62 | :rules="sectionRules" | 62 | :rules="sectionRules" |
63 | required | 63 | required |
64 | ></v-select> | 64 | ></v-select> |
65 | </v-flex> | 65 | </v-flex> |
66 | </v-layout> | 66 | </v-layout> |
67 | </v-flex> | 67 | </v-flex> |
68 | <v-flex xs12 sm12 lg3> | 68 | <v-flex xs12 sm12 lg3 v-if="getReport.sectionId"> |
69 | <v-layout> | 69 | <v-layout> |
70 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> | 70 | <v-flex xs3 sm6 lg2 class="subheading mt-4"> |
71 | <label class="right">Student:</label> | 71 | <label class="right">Student:</label> |
72 | </v-flex> | 72 | </v-flex> |
73 | <v-flex xs9 sm6 lg8 class="ml-2"> | 73 | <v-flex xs9 sm6 lg8 class="ml-2"> |
74 | <v-select | 74 | <v-select |
75 | :items="getStudentsList" | 75 | :items="getStudentsList" |
76 | label="Select your student" | 76 | label="Select your student" |
77 | v-model="getReport.studentId" | 77 | v-model="getReport.studentId" |
78 | item-text="name" | 78 | item-text="name" |
79 | item-value="_id" | 79 | item-value="_id" |
80 | :rules="studentRules" | 80 | :rules="studentRules" |
81 | required | 81 | required |
82 | ></v-select> | 82 | ></v-select> |
83 | </v-flex> | 83 | </v-flex> |
84 | </v-layout> | 84 | </v-layout> |
85 | </v-flex> | 85 | </v-flex> |
86 | 86 | ||
87 | <v-flex xs12 sm12 lg4> | 87 | <v-flex xs12 sm12 lg4> |
88 | <v-layout> | 88 | <v-layout> |
89 | <v-flex xs4 sm4 lg3 class="subheading mt-4"> | 89 | <v-flex xs4 sm4 lg3 class="subheading mt-4"> |
90 | <label class="right">Type:</label> | 90 | <label class="right">Type:</label> |
91 | </v-flex> | 91 | </v-flex> |
92 | <v-flex xs7 sm6 lg8 class="ml-2"> | 92 | <v-flex xs7 sm6 lg8 class="ml-2"> |
93 | <v-autocomplete | 93 | <v-autocomplete |
94 | label="Please Select" | 94 | label="Please Select" |
95 | type="text" | 95 | type="text" |
96 | :rules="typeRules" | 96 | :rules="typeRules" |
97 | :items="typeList" | 97 | :items="typeList" |
98 | v-model="getReport.form" | 98 | v-model="getReport.form" |
99 | item-text="name" | 99 | item-text="name" |
100 | item-value="value" | 100 | item-value="value" |
101 | @change="getReport(getReport.form)" | 101 | @change="getReport(getReport.form)" |
102 | required | 102 | required |
103 | ></v-autocomplete> | 103 | ></v-autocomplete> |
104 | </v-flex> | 104 | </v-flex> |
105 | </v-layout> | 105 | </v-layout> |
106 | </v-flex> | 106 | </v-flex> |
107 | <!-- <v-flex xs12 sm12 lg4> | 107 | <!-- <v-flex xs12 sm12 lg4> |
108 | <v-layout> | 108 | <v-layout> |
109 | <v-flex xs4 sm4 lg3 class="subheading mt-4"> | 109 | <v-flex xs4 sm4 lg3 class="subheading mt-4"> |
110 | <label class="right">Background:</label> | 110 | <label class="right">Background:</label> |
111 | </v-flex> | 111 | </v-flex> |
112 | <v-flex xs7 sm6 lg8 class="ml-2"> | 112 | <v-flex xs7 sm6 lg8 class="ml-2"> |
113 | <v-autocomplete | 113 | <v-autocomplete |
114 | label="Please Select" | 114 | label="Please Select" |
115 | type="text" | 115 | type="text" |
116 | :rules="backgroundRules" | 116 | :rules="backgroundRules" |
117 | :items="backgroundList" | 117 | :items="backgroundList" |
118 | required | 118 | required |
119 | ></v-autocomplete> | 119 | ></v-autocomplete> |
120 | </v-flex> | 120 | </v-flex> |
121 | </v-layout> | 121 | </v-layout> |
122 | </v-flex>--> | 122 | </v-flex>--> |
123 | <v-flex xs12 sm12 lg4 class="hidden-xs-only hidden-sm-only pl-5"> | 123 | <v-flex xs12 sm12 lg4 class="hidden-xs-only hidden-sm-only pl-5"> |
124 | <v-btn | 124 | <v-btn |
125 | @click="getSchedule" | 125 | @click="getSchedule" |
126 | round | 126 | round |
127 | dark | 127 | dark |
128 | :loading="loading" | 128 | :loading="loading" |
129 | class="open-dialog-button mt-3 ml-5" | 129 | class="open-dialog-button mt-3 ml-5" |
130 | >Get Report</v-btn> | 130 | >Get Report</v-btn> |
131 | </v-flex> | 131 | </v-flex> |
132 | </v-layout> | 132 | </v-layout> |
133 | </v-flex> | 133 | </v-flex> |
134 | </v-form> | 134 | </v-form> |
135 | </v-card> | 135 | </v-card> |
136 | <div v-if="frontPart"> | 136 | <div v-if="frontPart"> |
137 | <v-layout v-show="showTable"> | 137 | <v-layout v-show="showTable"> |
138 | <v-flex xs12> | 138 | <v-flex xs12> |
139 | <v-layout> | 139 | <v-layout> |
140 | <v-flex xs12> | 140 | <v-flex xs12> |
141 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | 141 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> |
142 | 142 | ||
143 | <v-icon right dark>print</v-icon> | 143 | <v-icon right dark>print</v-icon> |
144 | </v-btn> | 144 | </v-btn> |
145 | </v-flex> | 145 | </v-flex> |
146 | </v-layout> | 146 | </v-layout> |
147 | <div class="admincardreport"> | 147 | <div class="admincardreport"> |
148 | <v-card class="transparent elevation-0"> | 148 | <v-card class="transparent elevation-0"> |
149 | <v-layout> | 149 | <v-layout> |
150 | <v-flex xs12 sm12 md12 class="text-xs-center"> | 150 | <v-flex xs12 sm12 md12 class="text-xs-center"> |
151 | <div class="line"> | 151 | <div class="line"> |
152 | <div class="school-logo"> | 152 | <div class="school-logo"> |
153 | <img :src="userData.schoolLogoUrl" width="140" alt="logo" v-if="userData.profilePicUrl"/> | 153 | <img :src="userData.schoolLogoUrl" width="140" alt="logo" v-if="userData.profilePicUrl"/> |
154 | <img src="/static/icon/dashboard icons-18.png" width="140" v-else-if="!userData.profilePicUrl" /> | 154 | <img src="/static/icon/dashboard icons-18.png" width="140" v-else-if="!userData.profilePicUrl" /> |
155 | </div> | 155 | </div> |
156 | <div class="school-name"> | 156 | <div class="school-name"> |
157 | <h2>{{ userData.name }}</h2> | 157 | <h2>{{ userData.name }}</h2> |
158 | <v-flex class="school-address"> | 158 | <v-flex class="school-address"> |
159 | <p>{{ userData.address }}, {{ userData.pinCode }}</p> | 159 | <p>{{ userData.address }}, {{ userData.pinCode }}</p> |
160 | <h4>{{ examName }} Exam Admit Card - (2019-2020)</h4> | 160 | <h4>{{ examName }} Exam Admit Card - (2019-2020)</h4> |
161 | </v-flex> | 161 | </v-flex> |
162 | </div> | 162 | </div> |
163 | <!-- <div class="student-logo"> | 163 | <!-- <div class="student-logo"> |
164 | <v-avatar> | 164 | <v-avatar> |
165 | <img :src="studentData.profilePicUrl" width="140" v-if="studentData.profilePicUrl" /> | 165 | <img :src="studentData.profilePicUrl" width="140" v-if="studentData.profilePicUrl" /> |
166 | <img src="/static/icon/user.png" width="140" v-else-if="!studentData.profilePicUrl" /> | 166 | <img src="/static/icon/user.png" width="140" v-else-if="!studentData.profilePicUrl" /> |
167 | </v-avatar> | 167 | </v-avatar> |
168 | </div> --> | 168 | </div> --> |
169 | </div> | 169 | </div> |
170 | <div class="school-info"> | 170 | <div class="school-info"> |
171 | <v-flex xs12 sm12 md12 > | 171 | <v-flex xs12 sm12 md12 > |
172 | <div class="student-info" v-if="getScheduleList.studentData"> | 172 | <div class="student-info" v-if="getScheduleList.studentData"> |
173 | <p | 173 | <p |
174 | style="font-size:18px;margin:0px;margin-bottom:4px;" | 174 | style="font-size:18px;margin:0px;margin-bottom:4px;" |
175 | >Name : {{ getScheduleList.studentData.name }}</p> | 175 | >Name : {{ getScheduleList.studentData.name }}</p> |
176 | <p | 176 | <p |
177 | style="font-size: 18px;margin:0px;margin-bottom:4px;" | 177 | style="font-size: 18px;margin:0px;margin-bottom:4px;" |
178 | >Class : {{ getScheduleList.studentData.classId.classNum}}</p> | 178 | >Class : {{ getScheduleList.studentData.classId.classNum}}</p> |
179 | <p | 179 | <p |
180 | style="font-size: 18px;margin:0px;margin-bottom:4px;" | 180 | style="font-size: 18px;margin:0px;margin-bottom:4px;" |
181 | >Section : {{ getScheduleList.studentData.sectionId.name }}</p> | 181 | >Section : {{ getScheduleList.studentData.sectionId.name }}</p> |
182 | <p | 182 | <p |
183 | style="font-size: 18px;margin:0px;margin-bottom:4px;" | 183 | style="font-size: 18px;margin:0px;margin-bottom:4px;" |
184 | >Roll NO : {{ getScheduleList.studentData.rollNo }}</p> | 184 | >Roll NO : {{ getScheduleList.studentData.rollNo }}</p> |
185 | <p | 185 | <p |
186 | style="font-size: 18px;margin:0px;margin-bottom:4px;" | 186 | style="font-size: 18px;margin:0px;margin-bottom:4px;" |
187 | >Blood Group : {{ getScheduleList.studentData.bloodGroup }}</p> | 187 | >Blood Group : {{ getScheduleList.studentData.bloodGroup }}</p> |
188 | <p style="font-size: 18px;color: #707478;">Subject in which Appearing</p> | 188 | <p style="font-size: 18px;color: #707478;">Subject in which Appearing</p> |
189 | </div> | 189 | </div> |
190 | </v-flex> | 190 | </v-flex> |
191 | </div> | 191 | </div> |
192 | </v-flex> | 192 | </v-flex> |
193 | </v-layout> | 193 | </v-layout> |
194 | <v-data-table | 194 | <v-data-table |
195 | :headers="headers" | 195 | :headers="headers" |
196 | :items="getScheduleListArray" | 196 | :items="getScheduleListArray" |
197 | :pagination.sync="pagination" | 197 | :pagination.sync="pagination" |
198 | :search="search" | 198 | :search="search" |
199 | > | 199 | > |
200 | <template slot="items" slot-scope="props"> | 200 | <template slot="items" slot-scope="props"> |
201 | <td class="td td-row">{{ props.index + 1}}</td> | 201 | <td class="td td-row">{{ props.index + 1}}</td> |
202 | <td class="td td-row text-xs-center">{{ props.item.date }}</td> | 202 | <td class="td td-row text-xs-center">{{ props.item.date }}</td> |
203 | <td class="td td-row text-xs-center">{{ props.item.timeFrom }}</td> | 203 | <td class="td td-row text-xs-center">{{ props.item.timeFrom }}</td> |
204 | <td class="td td-row text-xs-center">{{ props.item.timeTo }}</td> | 204 | <td class="td td-row text-xs-center">{{ props.item.timeTo }}</td> |
205 | <td class="td td-row text-xs-center">{{ props.item.subjectName }}</td> | 205 | <td class="td td-row text-xs-center">{{ props.item.subjectName }}</td> |
206 | </template> | 206 | </template> |
207 | <v-alert | 207 | <v-alert |
208 | slot="no-results" | 208 | slot="no-results" |
209 | :value="true" | 209 | :value="true" |
210 | color="error" | 210 | color="error" |
211 | icon="warning" | 211 | icon="warning" |
212 | >Your search for "{{ search }}" found no results.</v-alert> | 212 | >Your search for "{{ search }}" found no results.</v-alert> |
213 | </v-data-table> | 213 | </v-data-table> |
214 | <v-flex xs12 id="printMe" v-show="hideprintAdmitReport"> | 214 | <v-flex xs12 id="printMe" v-show="hideprintAdmitReport"> |
215 | <v-layout> | 215 | <v-layout> |
216 | <v-flex xs12 style="text-align:center;margin-bottom:10px"> | 216 | <v-flex xs12 style="text-align:center;margin-bottom:10px"> |
217 | <img :src="userData.schoolLogoUrl" width="140" alt="logo" v-if="userData.profilePicUrl"/> | 217 | <img :src="userData.schoolLogoUrl" width="140" alt="logo" v-if="userData.profilePicUrl"/> |
218 | <img src="/static/icon/dashboard icons-18.png" width="140" v-else-if="!userData.profilePicUrl" /> | 218 | <img src="/static/icon/dashboard icons-18.png" width="140" v-else-if="!userData.profilePicUrl" /> |
219 | <p class="title">{{ userData.name }}</p> | 219 | <p class="title">{{ userData.name }}</p> |
220 | <p>{{ userData.address }}, {{ userData.pinCode }}</p> | 220 | <p>{{ userData.address }}, {{ userData.pinCode }}</p> |
221 | <div> | 221 | <div> |
222 | <h4>First Terminal Exam Admit Card - (2019-2020)</h4> | 222 | <h4>First Terminal Exam Admit Card - (2019-2020)</h4> |
223 | </div> | 223 | </div> |
224 | </v-flex> | 224 | </v-flex> |
225 | </v-layout> | 225 | </v-layout> |
226 | <table | 226 | <table |
227 | class="mb-5 tableRsponsive feeTypeTable" | 227 | class="mb-5 tableRsponsive feeTypeTable" |
228 | style="border: 1px solid lightgrey; | 228 | style="border: 1px solid lightgrey; |
229 | border-collapse: collapse;!important | 229 | border-collapse: collapse;!important |
230 | table-layout: auto !important; | 230 | table-layout: auto !important; |
231 | width: 100% !important;" | 231 | width: 100% !important;" |
232 | > | 232 | > |
233 | <thead style="border: 1px solid lightgrey !important;"> | 233 | <thead style="border: 1px solid lightgrey !important;"> |
234 | <tr style="border: 1px solid lightgrey !important;padding:4px;"> | 234 | <tr style="border: 1px solid lightgrey !important;padding:4px;"> |
235 | <td style="border: 1px solid lightgrey !important;padding: 6px;">No</td> | 235 | <td style="border: 1px solid lightgrey !important;padding: 6px;">No</td> |
236 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Exam Date</td> | 236 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Exam Date</td> |
237 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Start Time</td> | 237 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Start Time</td> |
238 | <td style="border: 1px solid lightgrey !important;padding: 6px;">End Time</td> | 238 | <td style="border: 1px solid lightgrey !important;padding: 6px;">End Time</td> |
239 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> | 239 | <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> |
240 | </tr> | 240 | </tr> |
241 | </thead> | 241 | </thead> |
242 | <tbody | 242 | <tbody |
243 | style="border: 1px solid lightgrey !important;"> | 243 | style="border: 1px solid lightgrey !important;"> |
244 | <tr v-for="(scheduleData,index) in getScheduleListArray"> | 244 | <tr v-for="(scheduleData,index) in getScheduleListArray"> |
245 | <td | 245 | <td |
246 | style="border: 1px soild lightgrey !importand;padding:6px;" | 246 | style="border: 1px soild lightgrey !importand;padding:6px;" |
247 | >{{ index + 1 }}</td> | 247 | >{{ index + 1 }}</td> |
248 | <td | 248 | <td |
249 | style="border: 1px solid lightgrey !important;padding: 6px;" | 249 | style="border: 1px solid lightgrey !important;padding: 6px;" |
250 | >{{ scheduleData.date }}</td> | 250 | >{{ scheduleData.date }}</td> |
251 | <td | 251 | <td |
252 | style="border: 1px solid lightgrey !important;padding: 6px;" | 252 | style="border: 1px solid lightgrey !important;padding: 6px;" |
253 | >{{ scheduleData.timeFrom }}</td> | 253 | >{{ scheduleData.timeFrom }}</td> |
254 | <td | 254 | <td |
255 | style="border: 1px solid lightgrey !important;padding: 6px;" | 255 | style="border: 1px solid lightgrey !important;padding: 6px;" |
256 | >{{ scheduleData.timeTo }}</td> | 256 | >{{ scheduleData.timeTo }}</td> |
257 | <td | 257 | <td |
258 | style="border: 1px solid lightgrey !important;padding: 6px;" | 258 | style="border: 1px solid lightgrey !important;padding: 6px;" |
259 | >{{ scheduleData.subjectName }}</td> | 259 | >{{ scheduleData.subjectName }}</td> |
260 | </tr> | 260 | </tr> |
261 | </tbody> | 261 | </tbody> |
262 | </table> | 262 | </table> |
263 | </v-flex> | 263 | </v-flex> |
264 | </v-card> | 264 | </v-card> |
265 | </div> | 265 | </div> |
266 | </v-flex> | 266 | </v-flex> |
267 | </v-layout> | 267 | </v-layout> |
268 | </div> | 268 | </div> |
269 | <div v-if="backPart"> | 269 | <div v-if="backPart"> |
270 | <v-layout v-show="showData"> | 270 | <v-layout v-show="showData"> |
271 | <v-flex xs12> | 271 | <v-flex xs12> |
272 | <v-layout> | 272 | <v-layout> |
273 | <v-flex xs12> | 273 | <v-flex xs12> |
274 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | 274 | <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> |
275 | 275 | ||
276 | <v-icon right dark>print</v-icon> | 276 | <v-icon right dark>print</v-icon> |
277 | </v-btn> | 277 | </v-btn> |
278 | </v-flex> | 278 | </v-flex> |
279 | </v-layout> | 279 | </v-layout> |
280 | <v-flex xs12 sm12 md12 class="text-xs-center"> | 280 | <v-flex xs12 sm12 md12 class="text-xs-center"> |
281 | <div class="admitcardreportbackend" id="printMe"> | 281 | <div class="admitcardreportbackend" id="printMe"> |
282 | <ol> | 282 | <ol> |
283 | <p> | 283 | <p> |
284 | <b>1. Do not Carry these Electronic Gadgets:</b> | 284 | <b>1. Do not Carry these Electronic Gadgets:</b> |
285 | Electronic gadgets(Bluetooth devices,head phones,pen/buttonhole cameras,scanner,calculator,storage devices etc) | 285 | Electronic gadgets(Bluetooth devices,head phones,pen/buttonhole cameras,scanner,calculator,storage devices etc) |
286 | in the examination lab. These items are strictly prohibited from examination lab. | 286 | in the examination lab. These items are strictly prohibited from examination lab. |
287 | </p> | 287 | </p> |
288 | <p> | 288 | <p> |
289 | <b>2. Do not Carry these Ornaments:</b> | 289 | <b>2. Do not Carry these Ornaments:</b> |
290 | Candidates should also not wear charms,veil,items containing such as rings,bracelet,earings,nose-pin,chains, | 290 | Candidates should also not wear charms,veil,items containing such as rings,bracelet,earings,nose-pin,chains, |
291 | necklace,pendants,badge,broach,hair-pin,hair-band. | 291 | necklace,pendants,badge,broach,hair-pin,hair-band. |
292 | </p> | 292 | </p> |
293 | <p> | 293 | <p> |
294 | <b>3. What Candidates wear to Examination hall:</b> | 294 | <b>3. What Candidates wear to Examination hall:</b> |
295 | Candidates should not wear clothes with full sleeves or big button,etc. Candidates are adviced to wear open footwear | 295 | Candidates should not wear clothes with full sleeves or big button,etc. Candidates are adviced to wear open footwear |
296 | like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. | 296 | like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. |
297 | </p> | 297 | </p> |
298 | <p> | 298 | <p> |
299 | <b>4. Do not carry Stationary:</b> | 299 | <b>4. Do not carry Stationary:</b> |
300 | Pen/pencil and paper for rough work would be provided in examination lab. Electronic watch (timer)will be available | 300 | Pen/pencil and paper for rough work would be provided in examination lab. Electronic watch (timer)will be available |
301 | on the computer screen alloted to the candidates. | 301 | on the computer screen alloted to the candidates. |
302 | </p> | 302 | </p> |
303 | <p> | 303 | <p> |
304 | <b>5. Do not Carry Bags:</b> | 304 | <b>5. Do not Carry Bags:</b> |
305 | Don not Carry back pack, College bag or any other bag like hand bag. If candidates brings any bag, they must make a | 305 | Don not Carry back pack, College bag or any other bag like hand bag. If candidates brings any bag, they must make a |
306 | arrangement for safe custody of these items.The Commission shall not make any arrangement nor be responsible for the | 306 | arrangement for safe custody of these items.The Commission shall not make any arrangement nor be responsible for the |
307 | safe custody of such items. | 307 | safe custody of such items. |
308 | </p> | 308 | </p> |
309 | <p> | 309 | <p> |
310 | <b>6. What will Happen if you carry Prohibited items to Exam Hall:</b> | 310 | <b>6. What will Happen if you carry Prohibited items to Exam Hall:</b> |
311 | If any such prohibited item is found in the possession of a candidate in examination lab, his/her candidature is liable | 311 | If any such prohibited item is found in the possession of a candidate in examination lab, his/her candidature is liable |
312 | to be canceled and legal/criminal proceedings could be initiated against him/her. He/she would also liable to be debarred | 312 | to be canceled and legal/criminal proceedings could be initiated against him/her. He/she would also liable to be debarred |
313 | from appearing in future examinations of the Commission for a period of 3 years. | 313 | from appearing in future examinations of the Commission for a period of 3 years. |
314 | </p> | 314 | </p> |
315 | <p> | 315 | <p> |
316 | <b>7. Candidate should not create Disturbance in Exam Hall:</b> | 316 | <b>7. Candidate should not create Disturbance in Exam Hall:</b> |
317 | If any candidate is found obstructing the conduct of examination or creating disturbances at the examination venue, | 317 | If any candidate is found obstructing the conduct of examination or creating disturbances at the examination venue, |
318 | his/her candidature shall be summarily canceled. | 318 | his/her candidature shall be summarily canceled. |
319 | </p> | 319 | </p> |
320 | </ol> | 320 | </ol> |
321 | </div> | 321 | </div> |
322 | </v-flex> | 322 | </v-flex> |
323 | </v-flex> | 323 | </v-flex> |
324 | </v-layout> | 324 | </v-layout> |
325 | </div> | 325 | </div> |
326 | </v-container> | 326 | </v-container> |
327 | </template> | 327 | </template> |
328 | <script> | 328 | <script> |
329 | import http from "@/Services/http.js"; | 329 | import http from "@/Services/http.js"; |
330 | import moment from "moment"; | 330 | import moment from "moment"; |
331 | import _ from "underscore"; | 331 | import _ from "underscore"; |
332 | 332 | ||
333 | export default { | 333 | export default { |
334 | data: () => ({ | 334 | data: () => ({ |
335 | valid: true, | 335 | valid: true, |
336 | userData: {}, | 336 | userData: {}, |
337 | frontPart: false, | 337 | frontPart: false, |
338 | backPart: false, | 338 | backPart: false, |
339 | loading: false, | 339 | loading: false, |
340 | showTable: false, | 340 | showTable: false, |
341 | showData: false, | 341 | showData: false, |
342 | hideprintAdmitReport: false, | 342 | hideprintAdmitReport: false, |
343 | 343 | ||
344 | examRules: [v => !!v || "Exam Field is required"], | 344 | examRules: [v => !!v || "Exam Field is required"], |
345 | classRules: [v => !!v || "Class Field Required"], | 345 | classRules: [v => !!v || "Class Field Required"], |
346 | sectionRules: [v => !!v || "Section Field is required"], | 346 | sectionRules: [v => !!v || "Section Field is required"], |
347 | studentRules: [v => !!v || "Student Field is required"], | 347 | studentRules: [v => !!v || "Student Field is required"], |
348 | typeRules: [v => !!v || "Type Field is required"], | 348 | typeRules: [v => !!v || "Type Field is required"], |
349 | backgroundRules: [v => !!v || "Background Field is required"], | 349 | backgroundRules: [v => !!v || "Background Field is required"], |
350 | 350 | ||
351 | pagination: { | 351 | pagination: { |
352 | rowsPerPage: 10 | 352 | rowsPerPage: 10 |
353 | }, | 353 | }, |
354 | search: "", | 354 | search: "", |
355 | 355 | ||
356 | classList: [], | 356 | classList: [], |
357 | studentData: {}, | 357 | studentData: {}, |
358 | scheduleData: {}, | 358 | scheduleData: {}, |
359 | examData: [], | 359 | examData: [], |
360 | addSection: [], | 360 | addSection: [], |
361 | getStudentsList: [], | 361 | getStudentsList: [], |
362 | getScheduleList: [], | 362 | getScheduleList: [], |
363 | getScheduleListArray: [], | 363 | getScheduleListArray: [], |
364 | examName: [], | 364 | examName: [], |
365 | typeList: [ | 365 | typeList: [ |
366 | { | 366 | { |
367 | name: "Front Part", | 367 | name: "Front Part", |
368 | value: "frontPart" | 368 | value: "frontPart" |
369 | }, | 369 | }, |
370 | { | 370 | { |
371 | name: "Back Part", | 371 | name: "Back Part", |
372 | value: "backPart" | 372 | value: "backPart" |
373 | } | 373 | } |
374 | ], | 374 | ], |
375 | backgroundList: ["Yes", "No"], | 375 | backgroundList: ["Yes", "No"], |
376 | 376 | ||
377 | headers: [ | 377 | headers: [ |
378 | { | 378 | { |
379 | text: "No", | 379 | text: "No", |
380 | align: "", | 380 | align: "", |
381 | sortable: false, | 381 | sortable: false, |
382 | value: "No" | 382 | value: "No" |
383 | }, | 383 | }, |
384 | { | 384 | { |
385 | text: "Exam Date", | 385 | text: "Exam Date", |
386 | align: "center", | 386 | align: "center", |
387 | sortable: false, | 387 | sortable: false, |
388 | value: "date" | 388 | value: "date" |
389 | }, | 389 | }, |
390 | { | 390 | { |
391 | text: "Start Time", | 391 | text: "Start Time", |
392 | align: "center", | 392 | align: "center", |
393 | sortable: false, | 393 | sortable: false, |
394 | value: "timeFrom" | 394 | value: "timeFrom" |
395 | }, | 395 | }, |
396 | { | 396 | { |
397 | text: "End Time", | 397 | text: "End Time", |
398 | align: "center", | 398 | align: "center", |
399 | sortable: false, | 399 | sortable: false, |
400 | value: "timeTo" | 400 | value: "timeTo" |
401 | }, | 401 | }, |
402 | { | 402 | { |
403 | text: "Subject Name", | 403 | text: "Subject Name", |
404 | align: "center", | 404 | align: "center", |
405 | sortable: false, | 405 | sortable: false, |
406 | value: "subjectName" | 406 | value: "subjectName" |
407 | } | 407 | } |
408 | ] | 408 | ] |
409 | }), | 409 | }), |
410 | 410 | ||
411 | mounted() { | 411 | mounted() { |
412 | this.token = this.$store.state.token; | 412 | this.token = this.$store.state.token; |
413 | this.getClass(); | 413 | this.getClass(); |
414 | this.getExamList(); | 414 | this.getExamList(); |
415 | this.getUserData(); | 415 | this.getUserData(); |
416 | }, | 416 | }, |
417 | 417 | ||
418 | methods: { | 418 | methods: { |
419 | getReport() { | 419 | getReport() { |
420 | if (this.getReport.form === "frontPart") { | 420 | if (this.getReport.form === "frontPart") { |
421 | this.frontPart = true; | 421 | this.frontPart = true; |
422 | this.backPart = false; | 422 | this.backPart = false; |
423 | } | 423 | } |
424 | if (this.getReport.form === "backPart") { | 424 | if (this.getReport.form === "backPart") { |
425 | this.frontPart = false; | 425 | this.frontPart = false; |
426 | this.backPart = true; | 426 | this.backPart = true; |
427 | } | 427 | } |
428 | }, | 428 | }, |
429 | getExamList() { | 429 | getExamList() { |
430 | this.showLoader = true; | 430 | this.showLoader = true; |
431 | this.loadingSearch = true; | 431 | this.loadingSearch = true; |
432 | http() | 432 | http() |
433 | .get("/getExamsList", { | 433 | .get("/getExamsList", { |
434 | headers: { Authorization: "Bearer " + this.token } | 434 | headers: { Authorization: "Bearer " + this.token } |
435 | }) | 435 | }) |
436 | .then(response => { | 436 | .then(response => { |
437 | this.examData = response.data.data; | 437 | this.examData = response.data.data; |
438 | this.showLoader = false; | 438 | this.showLoader = false; |
439 | this.loadingSearch = false; | 439 | this.loadingSearch = false; |
440 | }) | 440 | }) |
441 | .catch(error => { | 441 | .catch(error => { |
442 | this.showLoader = false; | 442 | this.showLoader = false; |
443 | this.loadingSearch = false; | 443 | this.loadingSearch = false; |
444 | this.snackbar = true; | 444 | this.snackbar = true; |
445 | this.text = error.response.data.message; | 445 | this.text = error.response.data.message; |
446 | if (error.response.status === 401) { | 446 | if (error.response.status === 401) { |
447 | this.$router.replace({ path: "/" }); | 447 | this.$router.replace({ path: "/" }); |
448 | this.$store.dispatch("setToken", null); | 448 | this.$store.dispatch("setToken", null); |
449 | this.$store.dispatch("Id", null); | 449 | this.$store.dispatch("Id", null); |
450 | } | 450 | } |
451 | }); | 451 | }); |
452 | }, | 452 | }, |
453 | getClass() { | 453 | getClass() { |
454 | this.showLoader = true; | 454 | this.showLoader = true; |
455 | http() | 455 | http() |
456 | .get("/getClassesList", { | 456 | .get("/getClassesList", { |
457 | headers: { Authorization: "Bearer " + this.token } | 457 | headers: { Authorization: "Bearer " + this.token } |
458 | }) | 458 | }) |
459 | .then(response => { | 459 | .then(response => { |
460 | this.classList = response.data.data; | 460 | this.classList = response.data.data; |
461 | this.showLoader = false; | 461 | this.showLoader = false; |
462 | }) | 462 | }) |
463 | .catch(error => { | 463 | .catch(error => { |
464 | this.showLoader = false; | 464 | this.showLoader = false; |
465 | // console.log("err====>", err); | 465 | // console.log("err====>", err); |
466 | }); | 466 | }); |
467 | }, | 467 | }, |
468 | getSections(_id) { | 468 | getSections(_id) { |
469 | this.showLoader = true; | 469 | this.showLoader = true; |
470 | http() | 470 | http() |
471 | .get( | 471 | .get( |
472 | "/getSectionsList", | 472 | "/getSectionsList", |
473 | { params: { classId: _id } }, | 473 | { params: { classId: _id } }, |
474 | { | 474 | { |
475 | headers: { Authorization: "Bearer " + this.token } | 475 | headers: { Authorization: "Bearer " + this.token } |
476 | } | 476 | } |
477 | ) | 477 | ) |
478 | .then(response => { | 478 | .then(response => { |
479 | this.addSection = response.data.data; | 479 | this.addSection = response.data.data; |
480 | this.showLoader = false; | 480 | this.showLoader = false; |
481 | }) | 481 | }) |
482 | .catch(err => { | 482 | .catch(err => { |
483 | this.showLoader = false; | 483 | this.showLoader = false; |
484 | // console.log("err====>", err); | 484 | // console.log("err====>", err); |
485 | }); | 485 | }); |
486 | }, | 486 | }, |
487 | getStudents() { | 487 | getStudents() { |
488 | this.showLoader = true; | 488 | this.showLoader = true; |
489 | http() | 489 | http() |
490 | .get("/getStudentWithClass", { | 490 | .get("/getStudentWithClass", { |
491 | params: { | 491 | params: { |
492 | classId: this.getReport.classId, | 492 | classId: this.getReport.classId, |
493 | sectionId: this.getReport.sectionId | 493 | sectionId: this.getReport.sectionId |
494 | } | 494 | } |
495 | }) | 495 | }) |
496 | .then(response => { | 496 | .then(response => { |
497 | this.getStudentsList = response.data.data; | 497 | this.getStudentsList = response.data.data; |
498 | this.showLoader = false; | 498 | this.showLoader = false; |
499 | }) | 499 | }) |
500 | .catch(error => { | 500 | .catch(error => { |
501 | console.log("err====>", error); | 501 | console.log("err====>", error); |
502 | this.showLoader = false; | 502 | this.showLoader = false; |
503 | }); | 503 | }); |
504 | }, | 504 | }, |
505 | getSchedule() { | 505 | getSchedule() { |
506 | this.showLoader = true; | 506 | this.showLoader = true; |
507 | http() | 507 | http() |
508 | .get("/getScheduleForParticularStudent", { | 508 | .get("/getScheduleForParticularStudent", { |
509 | params: { | 509 | params: { |
510 | examId: this.getReport.examId, | 510 | examId: this.getReport.examId, |
511 | classId: this.getReport.classId, | 511 | classId: this.getReport.classId, |
512 | sectionId: this.getReport.sectionId, | 512 | sectionId: this.getReport.sectionId, |
513 | studentId: this.getReport.studentId | 513 | studentId: this.getReport.studentId |
514 | } | 514 | } |
515 | }) | 515 | }) |
516 | .then(response => { | 516 | .then(response => { |
517 | this.getScheduleList = response.data.data; | 517 | this.getScheduleList = response.data.data; |
518 | this.getScheduleListArray = response.data.data.scheduleData; | 518 | this.getScheduleListArray = response.data.data.scheduleData; |
519 | this.examName = response.data.data.scheduleData[0].examId.examName; | 519 | this.examName = response.data.data.scheduleData[0].examId.examName; |
520 | this.showTable = true; | 520 | this.showTable = true; |
521 | this.showData = true; | 521 | this.showData = true; |
522 | this.showLoader = false; | 522 | this.showLoader = false; |
523 | }) | 523 | }) |
524 | .catch(error => { | 524 | .catch(error => { |
525 | this.showLoader = false; | 525 | this.showLoader = false; |
526 | }); | 526 | }); |
527 | }, | 527 | }, |
528 | 528 | ||
529 | printAdmitReport() { | 529 | printAdmitReport() { |
530 | // Pass the element id here | 530 | // Pass the element id here |
531 | this.$htmlToPaper("printMe"); | 531 | this.$htmlToPaper("printMe"); |
532 | }, | 532 | }, |
533 | getUserData() { | 533 | getUserData() { |
534 | http() | 534 | http() |
535 | .get("/getParticularUserDetail") | 535 | .get("/getParticularUserDetail") |
536 | .then(response => { | 536 | .then(response => { |
537 | this.userData = response.data.data; | 537 | this.userData = response.data.data; |
538 | }) | 538 | }) |
539 | .catch(error => { | 539 | .catch(error => { |
540 | // if (error.response.status === 401) { | 540 | // if (error.response.status === 401) { |
541 | // this.$router.replace({ path: "/" }); | 541 | // this.$router.replace({ path: "/" }); |
542 | // this.$store.dispatch("setToken", null); | 542 | // this.$store.dispatch("setToken", null); |
543 | // this.$store.dispatch("Id", null); | 543 | // this.$store.dispatch("Id", null); |
544 | // } | 544 | // } |
545 | }); | 545 | }); |
546 | }, | 546 | }, |
547 | // created() { | 547 | // created() { |
548 | // this.$root.$on("app:search", search => { | 548 | // this.$root.$on("app:search", search => { |
549 | // this.search = search; | 549 | // this.search = search; |
550 | // }); | 550 | // }); |
551 | // }, | 551 | // }, |
552 | // beforeDestroy() { | 552 | // beforeDestroy() { |
553 | // // dont forget to remove the listener | 553 | // // dont forget to remove the listener |
554 | // this.$root.$off("app:search"); | 554 | // this.$root.$off("app:search"); |
555 | // } | 555 | // } |
556 | } | 556 | } |
557 | }; | 557 | }; |
558 | </script> | 558 | </script> |
559 | <style scoped> | 559 | <style scoped> |
560 | .admincardreport { | 560 | .admincardreport { |
561 | border: 1px solid #ddd; | 561 | border: 1px solid #ddd; |
562 | overflow: hidden; | 562 | overflow: hidden; |
563 | padding: 20px 50px; | 563 | padding: 20px 50px; |
564 | /* margin-bottom: 10px; | 564 | /* margin-bottom: 10px; |
565 | min-height: 443px; */ | 565 | min-height: 443px; */ |
566 | } | 566 | } |
567 | .line { | 567 | .line { |
568 | border-bottom: 1px solid #ddd; | 568 | border-bottom: 1px solid #ddd; |
569 | overflow: hidden; | 569 | overflow: hidden; |
570 | padding-bottom: 10px; | 570 | padding-bottom: 10px; |
571 | vertical-align: middle; | 571 | vertical-align: middle; |
572 | /* margin-bottom: 4px; */ | 572 | /* margin-bottom: 4px; */ |
573 | } | 573 | } |
574 | .school-logo { | 574 | .school-logo { |
575 | float: left; | 575 | float: left; |
576 | } | 576 | } |
577 | .student-logo { | 577 | .student-logo { |
578 | position: absolute; | 578 | position: absolute; |
579 | top: 221px; | 579 | top: 221px; |
580 | right: 221px; | 580 | right: 221px; |
581 | } | 581 | } |
582 | .school-name { | 582 | .school-name { |
583 | box-sizing: border-box; | 583 | box-sizing: border-box; |
584 | align-items: center; | 584 | align-items: center; |
585 | } | 585 | } |
586 | /* .student-info { | 586 | /* .student-info { |
587 | float: left; | 587 | float: left; |
588 | width: max-content; | 588 | width: max-content; |
589 | text-align: initial; | 589 | text-align: initial; |
590 | } */ | 590 | } */ |
591 | .student-info { | 591 | .student-info { |
592 | width: 50%; | 592 | width: 50%; |
593 | float: left; | 593 | float: left; |
594 | text-align: initial; | 594 | text-align: initial; |
595 | } | 595 | } |
596 | .student-info p { | 596 | .student-info p { |
597 | width: 50%; | 597 | width: 50%; |
598 | float: left; | 598 | float: left; |
599 | margin-bottom: 1px; | 599 | margin-bottom: 1px; |
600 | padding: 0 0px; | 600 | padding: 0 0px; |
601 | font-size: 12px; | 601 | font-size: 12px; |
602 | } | 602 | } |
603 | .admitcardreportbackend { | 603 | .admitcardreportbackend { |
604 | border: 1px solid #ddd; | 604 | border: 1px solid #ddd; |
605 | overflow: hidden; | 605 | overflow: hidden; |
606 | padding: 5% 25%; | 606 | padding: 5% 25%; |
607 | /* margin-bottom: 10px; | 607 | /* margin-bottom: 10px; |
608 | color: black; */ | 608 | color: black; */ |
609 | } | 609 | } |
610 | .admitcardreportbackend ol { | 610 | .admitcardreportbackend ol { |
611 | margin: 0; | 611 | margin: 0; |
612 | margin-bottom: 10px; | 612 | margin-bottom: 10px; |
613 | } | 613 | } |
614 | .admitcardreportbackend p { | 614 | .admitcardreportbackend p { |
615 | line-height: 20px; | 615 | line-height: 20px; |
616 | text-align: left; | 616 | text-align: left; |
617 | } | 617 | } |
618 | </style> | 618 | </style> |