Blame view
src/pages/Report/idCard.vue
30.1 KB
7c435b5bb
|
1 2 |
<template> <v-container fluid class="body-color"> |
ecf8cdfdd
|
3 |
<!-- **** Id Card Select options **** --> |
7c435b5bb
|
4 5 6 7 |
<v-card flat class="elevation-0 transparent"> <v-form ref="form" v-model="valid" lazy-validation> <v-flex xs12 sm12 lg12> <v-layout wrap> |
5ddc6bb04
|
8 |
<v-flex xs12 sm12 lg4> |
7c435b5bb
|
9 |
<v-layout> |
5ddc6bb04
|
10 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
11 12 |
<v-autocomplete v-model="getReport.role" |
a55b7fca2
|
13 |
label="Select Type" |
7c435b5bb
|
14 15 |
:items="getRoles" item-text="name" |
d84fa5db2
|
16 |
return-object |
7c435b5bb
|
17 18 19 20 21 22 |
@change="getRoleInputs(getReport.role)" required ></v-autocomplete> </v-flex> </v-layout> </v-flex> |
d84fa5db2
|
23 |
<!-- SELECT CLASS --> |
5ddc6bb04
|
24 |
<v-flex xs12 sm12 lg4 v-if="showClass"> |
7c435b5bb
|
25 |
<v-layout> |
5ddc6bb04
|
26 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
27 28 29 30 31 32 |
<v-select v-model="getReport.classId" label="Select Class" :items="classList" item-text="classNum" item-value="_id" |
7c435b5bb
|
33 34 35 36 37 38 |
@change="getSections(getReport.classId)" required ></v-select> </v-flex> </v-layout> </v-flex> |
d84fa5db2
|
39 |
<!-- SELECT SECTION --> |
5ddc6bb04
|
40 |
<v-flex xs12 sm12 lg4 v-if="showSections"> |
7c435b5bb
|
41 |
<v-layout> |
5ddc6bb04
|
42 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
43 44 45 46 47 48 49 50 |
<v-select :items="addSection" label="Select Section" v-model="getReport.sectionId" item-text="name" item-value="_id" name="Select Section" @change="getStudents" |
7c435b5bb
|
51 52 53 54 55 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
d84fa5db2
|
56 |
<!-- SELECT STUDENT --> |
5ddc6bb04
|
57 |
<v-flex xs12 sm12 lg4 v-if="showStudents"> |
7c435b5bb
|
58 |
<v-layout> |
5ddc6bb04
|
59 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
60 |
<v-select |
11d037abe
|
61 |
:items="getSelectUserData" |
7c435b5bb
|
62 63 64 65 |
label="Select Student" v-model="getReport._id" item-text="name" item-value="_id" |
7c435b5bb
|
66 67 68 69 70 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
71 |
<v-flex xs12 sm12 lg4 v-if="showTeacher"> |
7c435b5bb
|
72 |
<v-layout> |
5ddc6bb04
|
73 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
74 75 76 |
<v-select v-model="getReport._id" label="Select Teacher" |
11d037abe
|
77 |
:items="getSelectUserData" |
7c435b5bb
|
78 79 |
item-text="name" item-value="_id" |
7c435b5bb
|
80 81 82 83 84 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
85 |
<v-flex xs12 sm12 lg4 v-if="showAdmin"> |
7c435b5bb
|
86 |
<v-layout> |
5ddc6bb04
|
87 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
88 89 90 |
<v-select v-model="getReport._id" label="Select Admin" |
11d037abe
|
91 |
:items="getSelectUserData" |
7c435b5bb
|
92 93 |
item-text="name" item-value="_id" |
7c435b5bb
|
94 95 96 97 98 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
99 |
<v-flex xs12 sm12 lg4 v-if="showAccountant"> |
7c435b5bb
|
100 |
<v-layout> |
5ddc6bb04
|
101 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
102 103 104 |
<v-select v-model="getReport._id" label="Select Accountant" |
11d037abe
|
105 |
:items="getSelectUserData" |
7c435b5bb
|
106 107 |
item-text="name" item-value="_id" |
7c435b5bb
|
108 109 110 111 112 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
113 |
<v-flex xs12 sm12 lg4 v-if="showLibrarian"> |
7c435b5bb
|
114 |
<v-layout> |
5ddc6bb04
|
115 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
116 117 118 |
<v-select v-model="getReport._id" label="Select Librarian" |
11d037abe
|
119 |
:items="getSelectUserData " |
7c435b5bb
|
120 121 |
item-text="name" item-value="_id" |
7c435b5bb
|
122 123 124 125 126 |
required ></v-select> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
127 |
<v-flex xs12 sm12 lg4> |
7c435b5bb
|
128 |
<v-layout> |
5ddc6bb04
|
129 |
<v-flex xs12 sm12 lg10 class="ml-2"> |
7c435b5bb
|
130 |
<v-autocomplete |
a55b7fca2
|
131 |
label="Select View Type" |
7c435b5bb
|
132 |
type="text" |
7c435b5bb
|
133 134 135 136 |
:items="typeList" v-model="getReport.form" item-text="name" item-value="value" |
a55b7fca2
|
137 |
:rules="typeRules" |
ecf8cdfdd
|
138 |
@change="getReportType(getReport.form)" |
7c435b5bb
|
139 140 141 142 143 |
required ></v-autocomplete> </v-flex> </v-layout> </v-flex> |
5ddc6bb04
|
144 |
<v-flex xs12 sm12 lg4> |
7c435b5bb
|
145 146 147 148 149 |
<v-btn @click="getCards" round dark :loading="loading" |
0fa3b3a79
|
150 |
class="open-dialog-button mt-3" |
7c435b5bb
|
151 152 153 154 155 156 |
>Get Report</v-btn> </v-flex> </v-layout> </v-flex> </v-form> </v-card> |
ecf8cdfdd
|
157 |
<div> |
7c435b5bb
|
158 159 160 |
<v-layout v-show="showReport"> <v-flex xs12> <v-card class="transparent elevation-0"> |
20fba3a75
|
161 |
<!-- print button --> |
7c435b5bb
|
162 163 164 165 166 167 168 169 |
<v-layout> <v-flex xs12> <v-btn class="open-dialog-button right" round dark @click="prindIDCardReport()"> Print <v-icon right dark>print</v-icon> </v-btn> </v-flex> </v-layout> |
ecf8cdfdd
|
170 |
</v-card> |
1c422f1bf
|
171 172 173 174 175 |
<v-card v-for="(getCard,index) in getCard" :key="index"> <v-container grid-list-md id='printMe'> <v-layout class="col-sm-12"> <div style="font-family: arial; |
ecf8cdfdd
|
176 177 178 179 180 |
max-width: 794px; max-height: 1123px; margin-left: auto; margin-right: auto; -webkit-print-color-adjust: exact;" |
1c422f1bf
|
181 182 183 |
> <div style=" |
ecf8cdfdd
|
184 185 186 187 188 189 |
float: left; height: 520px; width: 520px; background: #fff; border: 1px solid lightgray; position:relative;" |
1c422f1bf
|
190 191 192 193 194 195 196 197 198 199 |
> <!-- bottom-right-side-image --> <img src="/static/icon/shape1.png" alt="shape" style="position:absolute;width: 90px;" /> <!-- Front Side --> <v-layout style=" |
ecf8cdfdd
|
200 201 |
text-align: center; margin-top: 50px;" |
1c422f1bf
|
202 203 204 205 206 207 208 209 210 |
v-if="frontPart" > <v-flex xs12> <!-- school Logo Url --> <img v-if="getCard.schoolLogoUrl" :src="getCard.schoolLogoUrl" alt="schoollogo" style=" |
ecf8cdfdd
|
211 212 213 |
width: 110px; margin-top:10px; overflow:hidden" |
1c422f1bf
|
214 215 216 217 218 219 |
/> <img src="/static/default_thumb.png" v-if="!getCard.schoolLogoUrl" alt="schoollogo" style=" |
9b444e5c3
|
220 221 222 |
width: 110px; margin-top:10px; overflow:hidden" |
1c422f1bf
|
223 224 225 226 227 228 229 230 |
/> <v-layout style="margin:auto"> <!-- profile url --> <img v-if="getCard.profilePicUrl" :src="getCard.profilePicUrl" alt="profileImage" style="; |
ecf8cdfdd
|
231 232 233 234 235 236 |
width: 110px; margin:10px auto; width: 110px; margin: 10px auto; border: 3px solid #323232; border-radius: 12px;" |
1c422f1bf
|
237 238 239 |
/> <img style=" |
ecf8cdfdd
|
240 241 242 243 |
width: 110px; margin:10px auto; width: 110px; margin: 10px auto;" |
1c422f1bf
|
244 245 246 247 248 |
alt="dummy" src="/static/icon/user.png" v-if="!getCard.profilePicUrl && getCard.role != '2'" /> </v-layout> |
ecf8cdfdd
|
249 |
|
1c422f1bf
|
250 251 |
<p style="color: #302653;font-size:24px; |
0fa3b3a79
|
252 253 |
letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
254 255 256 257 258 |
> <b>{{ getCard.name}}</b> </p> <p style="color: #302653; |
0fa3b3a79
|
259 260 261 |
font-size:14px; letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
262 263 264 265 266 267 |
> <b>{{ getCard.gender}}</b> </p> <p v-if="getCard.classId" style="color: #302653; |
0fa3b3a79
|
268 269 270 |
font-size:24px; letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
271 272 273 274 |
>{{ getCard.classId.classNum }}</p> <p v-if="getCard.classId" style="color: #302653; |
0fa3b3a79
|
275 276 277 |
font-size:24px; letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
278 279 280 281 |
>{{ getCard.sectionId.name }}</p> <p v-if="getCard.rollNo" style="color: #302653; |
0fa3b3a79
|
282 283 284 |
font-size:24px; letter-spacing: 2px; margin-bottom:10px;" |
1c422f1bf
|
285 286 287 288 |
>Roll: {{ getCard.rollNo }}</p> <p v-if="getCard.joinDate" style="color: #302653; |
0fa3b3a79
|
289 290 |
margin-bottom:10px; font-size:16px; |
ecf8cdfdd
|
291 |
letter-spacing: 2px;" |
1c422f1bf
|
292 293 294 295 |
>{{ dates(getCard.joinDate) }}</p> <p v-if="getCard.joiningDate" style="color: #302653; |
0fa3b3a79
|
296 297 |
margin-bottom:10px; font-size:16px; |
ecf8cdfdd
|
298 |
letter-spacing: 2px;" |
1c422f1bf
|
299 300 301 302 |
>{{ dates(getCard.joiningDate) }}</p> <p v-if="getCard.phone" style="color: #302653; |
0fa3b3a79
|
303 304 |
margin-bottom:10px; font-size:16px; |
ecf8cdfdd
|
305 |
letter-spacing: 2px;" |
1c422f1bf
|
306 307 308 |
>{{ getCard.phone }}</p> <p style=" |
ecf8cdfdd
|
309 310 311 |
font-size: 19px; font-weight: 100; color: rgb(48, 38, 83); |
0fa3b3a79
|
312 313 |
letter-spacing: 5px; margin-bottom:10px;" |
1c422f1bf
|
314 315 316 317 318 319 |
> <span v-if="getCard.mobile">{{ getCard.mobile}}</span> <span v-if="getCard.mobileNo">{{ getCard.mobileNo }}</span> </p> <p style=" |
ecf8cdfdd
|
320 321 322 |
font-size: 17px; font-weight: 100; color: rgb(48, 38, 83); |
0fa3b3a79
|
323 324 |
letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
325 326 327 328 329 |
>{{ getCard.email}}</p> </v-flex> </v-layout> <!-- back side --> <v-layout style=" |
ecf8cdfdd
|
330 |
text-align: center;" v-if="backPart"> |
1c422f1bf
|
331 332 333 334 335 336 337 |
<v-flex xs12> <!-- school Logo Url --> <img v-if="getCard.schoolLogoUrl" :src="getCard.schoolLogoUrl" alt="schoollogo" style=" |
ecf8cdfdd
|
338 339 340 |
width: 110px; margin-top:10px; overflow:hidden" |
1c422f1bf
|
341 342 343 344 345 346 |
/> <img v-if="getCard.schoolId" :src="getCard.schoolId.schoolLogoUrl" alt="schoollogo" style=" |
ecf8cdfdd
|
347 348 349 |
width: 110px; margin-top:10px; overflow:hidden" |
1c422f1bf
|
350 351 352 353 |
/> <p v-if="getCard.schoolLogoUrl" style="color: #302653; |
0fa3b3a79
|
354 355 356 |
font-size:24px; letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
357 358 359 |
> <b>{{ getCard.name}}</b> </p> |
a55b7fca2
|
360 |
|
1c422f1bf
|
361 362 363 |
<p v-if="getCard.city" style=" |
ecf8cdfdd
|
364 365 366 |
font-size: 17px; font-weight: 100; color: rgb(48, 38, 83); |
0fa3b3a79
|
367 368 |
letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
369 370 371 |
>{{ getCard.city}}</p> <p style=" |
ecf8cdfdd
|
372 373 374 |
font-size: 17px; font-weight: 100; color: rgb(48, 38, 83); |
0fa3b3a79
|
375 376 |
letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
377 378 379 380 381 382 383 384 385 386 |
> {{ getCard.address }} {{ getCard.presentAddress }} <span v-if="getCard.state" >({{ getCard.state }})</span> </p> <p v-if="getCard.establishmentYear" style=" |
ecf8cdfdd
|
387 388 389 |
font-size: 17px; font-weight: 100; color: rgb(48, 38, 83); |
0fa3b3a79
|
390 391 |
letter-spacing: 4px; margin-bottom:14px;" |
1c422f1bf
|
392 393 394 395 396 397 398 399 |
>{{ getCard.establishmentYear }}</p> </v-flex> </v-layout> <!-- bottom-right-side-image --> <img src="static/icon/shape2.png" alt="shape2" style="bottom: 0; |
ecf8cdfdd
|
400 401 402 |
position: absolute; right: 0; width: 110px;" |
1c422f1bf
|
403 404 |
/> </div> |
37cb39130
|
405 |
</div> |
1c422f1bf
|
406 407 408 |
</v-layout> </v-container> </v-card> |
7c435b5bb
|
409 410 411 |
</v-flex> </v-layout> </div> |
ecf8cdfdd
|
412 413 414 415 416 417 418 419 |
<v-snackbar :timeout="timeout" :top="y === 'top'" :right="x === 'right'" :vertical="mode === 'vertical'" v-model="snackbar" :color="color" >{{ text }}</v-snackbar> |
5ddc6bb04
|
420 421 422 |
<div class="loader" v-if="showLoader"> <v-progress-circular indeterminate color="white"></v-progress-circular> </div> |
7c435b5bb
|
423 424 425 426 427 428 |
</v-container> </template> <script> import http from "@/Services/http.js"; import moment from "moment"; |
d84fa5db2
|
429 |
var qs = require("qs"); |
7c435b5bb
|
430 431 432 |
export default { data: () => ({ |
5ddc6bb04
|
433 |
showLoader: false, |
7c435b5bb
|
434 435 436 |
valid: true, report: {}, userData: {}, |
ecf8cdfdd
|
437 438 439 440 441 442 443 |
snackbar: false, color: "", y: "top", x: "right", mode: "", timeout: 10000, text: "", |
7c435b5bb
|
444 445 446 447 448 449 450 451 452 453 |
loading: false, showReport: false, frontPart: false, backPart: false, showClass: false, showTeacher: false, showAdmin: false, showAccountant: false, showLibrarian: false, hideprintIdCard: false, |
37cb39130
|
454 |
hidebackprintIdCard: false, |
ecf8cdfdd
|
455 456 |
showStudents: false, showSections: false, |
7c435b5bb
|
457 458 459 460 |
getRoles: [], classList: [], getCard: [], addSection: [], |
11d037abe
|
461 462 463 464 |
// getStudentsList: // teacherList: [], getSelectUserData: [], // Users: [], |
ecf8cdfdd
|
465 |
getReport: {}, |
d84fa5db2
|
466 |
typeRules: [(v) => !!v || "Type is required"], |
7c435b5bb
|
467 468 469 |
typeList: [ { name: "Front Part", |
d84fa5db2
|
470 |
value: "frontPart", |
7c435b5bb
|
471 472 473 |
}, { name: "Back Part", |
d84fa5db2
|
474 475 |
value: "backPart", }, |
7c435b5bb
|
476 |
], |
d84fa5db2
|
477 |
backgroundList: ["Yes", "No"], |
7c435b5bb
|
478 479 480 481 482 483 484 485 486 |
}), mounted() { this.token = this.$store.state.token; this.getUserData(); this.getRole(); }, methods: { |
d84fa5db2
|
487 |
dates: function (date) { |
ecf8cdfdd
|
488 489 490 491 |
return moment(date).format("MMMM DD, YYYY"); return date; }, getReportType() { |
7c435b5bb
|
492 493 494 495 496 497 498 499 500 501 |
if (this.getReport.form === "frontPart") { this.frontPart = true; this.backPart = false; } if (this.getReport.form === "backPart") { this.frontPart = false; this.backPart = true; } }, getRoleInputs(role) { |
11d037abe
|
502 |
// console.log("role", role); |
ecf8cdfdd
|
503 504 505 |
this.showReport = false; this.getReport._id = ""; this.getCard = ""; |
d84fa5db2
|
506 |
if (role.name === "STUDENT") { |
7c435b5bb
|
507 508 |
// console.log("role", role); this.showClass = true; |
ecf8cdfdd
|
509 510 511 512 513 514 |
this.showTeacher = false; this.showAdmin = false; this.showAccountant = false; this.showLibrarian = false; this.showStudents = false; this.showSections = false; |
7c435b5bb
|
515 516 |
this.getClass(); } |
d84fa5db2
|
517 |
if (role.name === "TEACHER") { |
7c435b5bb
|
518 |
this.showTeacher = true; |
ecf8cdfdd
|
519 520 521 522 523 524 |
this.showClass = false; this.showAdmin = false; this.showAccountant = false; this.showLibrarian = false; this.showStudents = false; this.showSections = false; |
7c435b5bb
|
525 526 |
this.getTeacherList(); } |
d84fa5db2
|
527 |
if (role.name === "ADMIN") { |
7c435b5bb
|
528 |
this.showAdmin = true; |
ecf8cdfdd
|
529 530 531 532 533 534 |
this.showTeacher = false; this.showClass = false; this.showAccountant = false; this.showLibrarian = false; this.showStudents = false; this.showSections = false; |
20fba3a75
|
535 |
this.getUsersList(role.role); |
7c435b5bb
|
536 |
} |
d84fa5db2
|
537 |
if (role.name === "ACCOUNTANT") { |
7c435b5bb
|
538 |
this.showAccountant = true; |
ecf8cdfdd
|
539 540 541 542 543 544 |
this.showAdmin = false; this.showTeacher = false; this.showClass = false; this.showLibrarian = false; this.showStudents = false; this.showSections = false; |
d84fa5db2
|
545 |
this.getUsersList(role.role); |
7c435b5bb
|
546 |
} |
d84fa5db2
|
547 |
if (role.name === "LIBRARIAN") { |
7c435b5bb
|
548 |
this.showLibrarian = true; |
ecf8cdfdd
|
549 550 551 552 553 554 |
this.showAccountant = false; this.showAdmin = false; this.showTeacher = false; this.showClass = false; this.showStudents = false; this.showSections = false; |
d84fa5db2
|
555 |
this.getUsersList(role.role); |
7c435b5bb
|
556 557 558 559 560 |
} }, prindIDCardReport() { // Pass the element id here |
1c422f1bf
|
561 562 563 564 |
for(var i = 0; i < this.getCard.length; i++){ this.$htmlToPaper("printMe" + i); } |
7c435b5bb
|
565 566 |
}, getUserData() { |
11d037abe
|
567 |
this.getSelectUserData = []; |
5ddc6bb04
|
568 |
this.showLoader = true; |
7c435b5bb
|
569 570 |
http() .get("/getParticularUserDetail") |
d84fa5db2
|
571 |
.then((response) => { |
11d037abe
|
572 573 |
let mergeObj = { name: "Select All", |
d84fa5db2
|
574 |
id: "Select All", |
11d037abe
|
575 576 577 578 |
}; this.getSelectUserData.push(mergeObj); let getUserDetails = response.data.data; this.getSelectUserData.push(getUserDetails); |
5ddc6bb04
|
579 |
this.showLoader = false; |
7c435b5bb
|
580 581 |
// this.adminList = response.data.data; }) |
d84fa5db2
|
582 |
.catch((error) => { |
5ddc6bb04
|
583 |
this.showLoader = false; |
ecf8cdfdd
|
584 585 586 587 588 |
if (error.response.status === 401) { this.$router.replace({ path: "/" }); this.$store.dispatch("setToken", null); this.$store.dispatch("Id", null); } |
7c435b5bb
|
589 590 591 592 593 594 |
}); }, getRole() { this.showLoader = true; http() .get("/getRolesList", { |
d84fa5db2
|
595 |
headers: { Authorization: "Bearer " + this.token }, |
7c435b5bb
|
596 |
}) |
d84fa5db2
|
597 |
.then((response) => { |
ecf8cdfdd
|
598 599 |
var getRoles = []; getRoles = response.data.data; |
ecf8cdfdd
|
600 |
for (let i = 0; i < getRoles.length; i++) { |
d84fa5db2
|
601 602 603 604 |
if ( getRoles[i].name != "SUPERADMIN" && getRoles[i].name != "PARENT" ) { |
ecf8cdfdd
|
605 606 |
this.getRoles.push(getRoles[i]); } |
36883961f
|
607 |
} |
7c435b5bb
|
608 609 |
this.showLoader = false; }) |
d84fa5db2
|
610 |
.catch((error) => { |
7c435b5bb
|
611 |
this.showLoader = false; |
ecf8cdfdd
|
612 613 614 615 616 617 |
if (error.response.status === 401) { this.$router.replace({ path: "/" }); this.$store.dispatch("setToken", null); this.$store.dispatch("Id", null); this.$store.dispatch("Role", null); } |
7c435b5bb
|
618 619 620 |
}); }, getClass() { |
11d037abe
|
621 |
// console.log("get classes"); |
7c435b5bb
|
622 623 624 |
this.showLoader = true; http() .get("/getClassesList", { |
d84fa5db2
|
625 |
headers: { Authorization: "Bearer " + this.token }, |
7c435b5bb
|
626 |
}) |
d84fa5db2
|
627 |
.then((response) => { |
7c435b5bb
|
628 629 630 |
this.classList = response.data.data; this.showLoader = false; }) |
d84fa5db2
|
631 |
.catch((error) => { |
7c435b5bb
|
632 633 634 635 636 637 638 639 640 641 642 |
this.showLoader = false; // console.log("err====>", err); }); }, getSections(_id) { this.showLoader = true; http() .get( "/getSectionsList", { params: { classId: _id } }, { |
d84fa5db2
|
643 |
headers: { Authorization: "Bearer " + this.token }, |
7c435b5bb
|
644 645 |
} ) |
d84fa5db2
|
646 |
.then((response) => { |
7c435b5bb
|
647 |
this.addSection = response.data.data; |
ecf8cdfdd
|
648 |
this.showSections = true; |
7c435b5bb
|
649 650 |
this.showLoader = false; }) |
d84fa5db2
|
651 |
.catch((err) => { |
7c435b5bb
|
652 653 654 655 656 |
this.showLoader = false; // console.log("err====>", err); }); }, getStudents() { |
11d037abe
|
657 |
this.getSelectUserData = []; |
7c435b5bb
|
658 659 660 661 662 |
this.showLoader = true; http() .get("/getStudentWithClass", { params: { classId: this.getReport.classId, |
d84fa5db2
|
663 664 |
sectionId: this.getReport.sectionId, }, |
7c435b5bb
|
665 |
}) |
d84fa5db2
|
666 |
.then((response) => { |
11d037abe
|
667 668 |
response.data.data.unshift({ name: "Select All", |
d84fa5db2
|
669 |
_id: "Select All", |
11d037abe
|
670 671 |
}); this.getSelectUserData = response.data.data; |
ecf8cdfdd
|
672 |
this.showStudents = true; |
7c435b5bb
|
673 674 |
this.showLoader = false; }) |
d84fa5db2
|
675 |
.catch((error) => { |
7c435b5bb
|
676 677 678 679 680 |
console.log("err====>", error); this.showLoader = false; }); }, getCards() { |
11d037abe
|
681 682 |
var getSelectUserId = []; for (let i = 0; i < this.getSelectUserData.length; i++) { |
d84fa5db2
|
683 684 |
/* if the selected user id mathches any id in the original user data then push it in array, this way only one id will be pushed */ |
11d037abe
|
685 |
if (this.getReport._id === this.getSelectUserData[i]._id) { |
11d037abe
|
686 |
getSelectUserId.push(this.getSelectUserData[i]._id); |
d84fa5db2
|
687 688 689 |
} /* else if select all option is selected then all ids will be pushed */ else if ( this.getReport._id == "Select All" ) { |
11d037abe
|
690 |
getSelectUserId.push(this.getSelectUserData[i]._id); |
d84fa5db2
|
691 692 693 694 695 |
if ( getSelectUserId[0] == undefined || getSelectUserId[0] == "Select All" ) { getSelectUserId.shift(); |
11d037abe
|
696 697 698 |
} } } |
d84fa5db2
|
699 |
|
a55b7fca2
|
700 |
if (this.$refs.form.validate()) { |
fe0d05d29
|
701 |
this.showLoader = true; |
20fba3a75
|
702 |
// var strigified = JSON.stringify(getSelectUserId) |
d84fa5db2
|
703 704 |
// var profileId = []; // profileId = getSelectUserId; |
a55b7fca2
|
705 706 707 |
http() .get("/getIdCardDetail", { headers: { |
d84fa5db2
|
708 |
Authorization: "Bearer " + this.token, |
a55b7fca2
|
709 |
}, |
20fba3a75
|
710 711 712 713 |
params: { profileId: getSelectUserId, role: this.getReport.role.role, }, |
d84fa5db2
|
714 715 716 717 718 719 720 |
paramsSerializer: (params) => { return qs.stringify(params); }, // params: { // profileId: strigified, // role: this.getReport.role.role, // }, |
a55b7fca2
|
721 |
}) |
d84fa5db2
|
722 |
.then((response) => { |
a55b7fca2
|
723 |
this.getCard = ""; |
1c422f1bf
|
724 |
|
a55b7fca2
|
725 |
var data = response.data.data; |
1c422f1bf
|
726 |
|
20fba3a75
|
727 |
if (data.adminData && data.adminData.length != 0) { |
a55b7fca2
|
728 |
this.getCard = response.data.data.adminData; |
11d037abe
|
729 |
// console.log("this.getCard ", this.getCard); |
a55b7fca2
|
730 |
} |
20fba3a75
|
731 |
if (data.teachersData && data.teachersData.length != 0) { |
a55b7fca2
|
732 |
this.getCard = response.data.data.teachersData; |
a55b7fca2
|
733 |
} |
20fba3a75
|
734 |
if (data.studentData && data.studentData.length != 0) { |
a55b7fca2
|
735 |
this.getCard = response.data.data.studentData; |
11d037abe
|
736 |
// console.log("this.getCard--studentData ", this.getCard); |
a55b7fca2
|
737 |
} |
20fba3a75
|
738 |
if (data.usersData && data.usersData.length != 0) { |
a55b7fca2
|
739 |
this.getCard = response.data.data.usersData; |
11d037abe
|
740 |
// console.log("this.getCard--usersData ", this.getCard); |
a55b7fca2
|
741 742 743 744 745 |
} // console.log("this.getCard--all ", response.data.data); this.showLoader = false; this.showReport = true; }) |
d84fa5db2
|
746 |
.catch((error) => { |
a55b7fca2
|
747 |
this.showLoader = false; |
11d037abe
|
748 |
// console.log("error", error.response.data.errors); |
20fba3a75
|
749 750 751 752 753 |
// if (error.response.data.errors) { // this.snackbar = true; // this.text = " Field is required"; // this.color = "error"; // } |
a55b7fca2
|
754 755 |
}); } |
7c435b5bb
|
756 757 |
}, getTeacherList() { |
11d037abe
|
758 |
this.getSelectUserData = []; |
7c435b5bb
|
759 760 761 762 |
this.showLoader = true; var token = this.$store.state.token; http() .get("/getTeachersList", { |
d84fa5db2
|
763 |
headers: { Authorization: "Bearer " + token }, |
7c435b5bb
|
764 |
}) |
d84fa5db2
|
765 |
.then((response) => { |
11d037abe
|
766 767 |
response.data.data.unshift({ name: "Select All", |
d84fa5db2
|
768 |
_id: "Select All", |
11d037abe
|
769 770 |
}); this.getSelectUserData = response.data.data; |
7c435b5bb
|
771 772 |
this.showLoader = false; }) |
d84fa5db2
|
773 |
.catch((error) => { |
7c435b5bb
|
774 775 776 777 778 779 780 781 |
this.showLoader = false; if (error.response.status === 401) { this.$router.replace({ path: "/" }); this.$store.dispatch("setToken", null); this.$store.dispatch("Id", null); } }); }, |
a55b7fca2
|
782 |
getUsersList(role) { |
11d037abe
|
783 |
this.getSelectUserData = []; |
7c435b5bb
|
784 785 786 |
this.showLoader = true; var token = this.$store.state.token; http() |
a55b7fca2
|
787 |
.get("/getUsersList?role=" + role, { |
d84fa5db2
|
788 |
headers: { Authorization: "Bearer " + token }, |
7c435b5bb
|
789 |
}) |
d84fa5db2
|
790 |
.then((response) => { |
11d037abe
|
791 792 |
response.data.data.unshift({ name: "Select All", |
d84fa5db2
|
793 |
_id: "Select All", |
11d037abe
|
794 795 |
}); this.getSelectUserData = response.data.data; |
7c435b5bb
|
796 797 |
this.showLoader = false; }) |
d84fa5db2
|
798 |
.catch((error) => { |
7c435b5bb
|
799 800 801 802 803 804 805 806 807 808 809 810 |
this.showLoader = false; if (error.response.status === 401) { this.$router.replace({ path: "/" }); this.$store.dispatch("setToken", null); this.$store.dispatch("Id", null); } }); }, getParentDetails() { http() .get("getParentsList", { headers: { |
d84fa5db2
|
811 812 |
Authorization: "Bearer " + this.$store.state.token, }, |
7c435b5bb
|
813 |
}) |
d84fa5db2
|
814 |
.then((response) => { |
7c435b5bb
|
815 816 |
this.parentsList = response.data.data; }) |
d84fa5db2
|
817 |
.catch((error) => { |
7c435b5bb
|
818 819 820 821 822 823 824 825 826 |
// console.log("err====>", error.response.data.message); this.showLoader = false; if (error.response.status === 401) { this.$router.replace({ path: "/" }); this.$store.dispatch("setToken", null); this.$store.dispatch("Id", null); this.$store.dispatch("Role", null); } }); |
d84fa5db2
|
827 828 |
}, }, |
7c435b5bb
|
829 830 831 832 833 834 835 836 837 838 839 840 841 |
}; </script> <style scoped> .Data { width: 100%; float: left; margin-bottom: 0px; padding: 0 15px; font-size: 14px; margin-top: 5px; text-align: justify; } |
36883961f
|
842 843 844 845 846 847 848 849 |
.idcardreport { font-family: arial; max-width: 794px; max-height: 1123px; margin-left: auto; margin-right: auto; -webkit-print-color-adjust: exact; } |
cc7844a9d
|
850 851 852 853 |
.idcardreport1 { text-align: center; margin-left: 35%; } |
7c435b5bb
|
854 855 |
.icard-front { margin: 3px; |
36883961f
|
856 |
float: left; |
37cb39130
|
857 |
padding: 10px; |
37cb39130
|
858 |
text-align: center; |
ecf8cdfdd
|
859 860 861 862 |
height: 520px; width: 520px; background: #fff; border: 1px solid lightgray; |
37cb39130
|
863 864 865 866 867 |
} .print-data { margin: 3px; float: left; /* border: 1px solid #000; */ |
7c435b5bb
|
868 |
padding: 10px; |
37cb39130
|
869 |
/* width: 55%; */ |
7c435b5bb
|
870 |
text-align: center; |
37cb39130
|
871 872 |
height: 95%; } |
cc7844a9d
|
873 874 875 |
.rightside { float: right !important; } |
36883961f
|
876 |
.icard-front h2 { |
37cb39130
|
877 878 879 880 881 882 883 884 885 886 887 888 889 |
font-size: 30px; } .icard-back h2 { font-size: 30px; } .print-data h2 { font-size: 30px; text-align: center; } .print-data img { width: 70px; height: 70px; margin-bottom: 5px; |
7c435b5bb
|
890 891 |
} .icard-front img { |
37cb39130
|
892 893 894 895 896 897 898 899 900 901 |
width: 70px; height: 70px; margin-bottom: 5px; } .icard-back img { width: 50px; height: 50px; margin-bottom: 5px; } .icard-img { |
7c435b5bb
|
902 903 904 |
width: 50px; height: 50px; margin-bottom: 5px; |
37cb39130
|
905 906 |
margin-top: 5px; border: 1px solid #ddd; |
7c435b5bb
|
907 908 |
} .icard-data { |
36883961f
|
909 |
/* font-family: Arial; */ |
7c435b5bb
|
910 911 912 913 914 915 916 917 |
max-width: 794px; max-height: 1123px; margin-left: auto; margin-right: auto; -webkit-print-color-adjust: exact; } .icard-back { margin: 3px; |
37cb39130
|
918 919 920 921 922 923 924 925 926 927 |
/* float: left; */ /* border: 1px solid #000; */ padding: 10px; /* width: 55%; */ text-align: center; /* height: 95%; */ /* margin-top: 35%; */ } .back-icard { margin: 3px; |
7c435b5bb
|
928 |
padding: 10px; |
7c435b5bb
|
929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 |
} .icard-back h3 { background-color: #000; color: #fff; font-size: 13px; padding: 5px 0px; margin: 5px; margin-top: 13px; } .icard-back h5 { font-size: 11px; color: #000; font-weight: bold; padding: 5px 0px; } |
37cb39130
|
944 |
/* .icard-back p { |
7c435b5bb
|
945 946 947 948 |
font-size: 15px; color: #000; font-weight: 500px; line-height: 17px; |
37cb39130
|
949 |
} */ |
7c435b5bb
|
950 951 952 953 954 |
.school-address { /* width: 40%; */ font-weight: 500px; color: #000; } |
cc7844a9d
|
955 956 957 958 959 |
.address { font-weight: 500px; color: #000; text-align: center; } |
7c435b5bb
|
960 961 962 963 964 965 966 967 968 969 970 |
.icard-bottom { padding-top: 5px; text-align: center; } .qrcode { float: left; width: 50%; } .qrcode img { width: 60px; height: 60px; |
37cb39130
|
971 |
margin-top: 15px; |
7c435b5bb
|
972 973 974 975 |
} .session { float: right; width: 70%; |
37cb39130
|
976 |
margin-top: 15px; |
7c435b5bb
|
977 978 979 980 981 982 983 984 985 986 987 988 |
} @media screen and (max-width: 360px) { .icard-front { width: 316px; height: 418px; float: inherit; } .icard-back { float: left; } } </style> |