Commit fe0d05d2976de695f6903dea1013d0cb390a8df5
1 parent
0fa3b3a791
Exists in
master
and in
3 other branches
complete design and functionality of id card and admit card
Showing
4 changed files
with
330 additions
and
295 deletions
Show diff stats
src/pages/Exam/examSchedule.vue
... | ... | @@ -358,7 +358,7 @@ |
358 | 358 | <td class="td td-row text-xs-center">{{ props.item.room }}</td> |
359 | 359 | <td class="td td-row text-xs-center"> |
360 | 360 | <span> |
361 | - <v-tooltip top > | |
361 | + <v-tooltip top> | |
362 | 362 | <img |
363 | 363 | slot="activator" |
364 | 364 | style="cursor:pointer; width:25px; height:25px; " |
... | ... | @@ -661,7 +661,7 @@ export default { |
661 | 661 | editExamScheduleDialog: false, |
662 | 662 | profileExamScheduleDialog: false, |
663 | 663 | valid: true, |
664 | - role: "", | |
664 | + role: "", | |
665 | 665 | pagination: { |
666 | 666 | rowsPerPage: 10 |
667 | 667 | }, |
... | ... | @@ -716,13 +716,13 @@ export default { |
716 | 716 | sortable: false, |
717 | 717 | align: "center" |
718 | 718 | }, |
719 | - { | |
719 | + { | |
720 | 720 | text: "Room", |
721 | 721 | value: "room", |
722 | 722 | sortable: false, |
723 | 723 | align: "center" |
724 | 724 | }, |
725 | - { text: "Action", value: "", sortable: false, align: "center"} | |
725 | + { text: "Action", value: "", sortable: false, align: "center" } | |
726 | 726 | ], |
727 | 727 | classList: [], |
728 | 728 | addSection: [], |
... | ... | @@ -746,6 +746,9 @@ export default { |
746 | 746 | this.$refs.image.click(); |
747 | 747 | }, |
748 | 748 | getSchedulesList() { |
749 | + if (this.addSchedule.classId) { | |
750 | + this.getScheduleData.classId = this.addSchedule.classId; | |
751 | + } | |
749 | 752 | this.showLoader = true; |
750 | 753 | http() |
751 | 754 | .get("/getSchedulesList", { |
... | ... | @@ -774,7 +777,7 @@ export default { |
774 | 777 | // console.log("item", item); |
775 | 778 | this.editedIndex = this.ScheduleData.indexOf(item); |
776 | 779 | this.editedItem = Object.assign({}, item); |
777 | - this.editedItem.examId = this.editedItem.examId._id; | |
780 | + this.editedItem.examId = this.editedItem.examId._id; | |
778 | 781 | this.editedItem.classId = this.editedItem.classId._id; |
779 | 782 | this.editedItem.sectionId = this.editedItem.sectionId._id; |
780 | 783 | this.editedItem.date = |
... | ... | @@ -823,11 +826,12 @@ export default { |
823 | 826 | http() |
824 | 827 | .post("/createSchedule", this.addSchedule) |
825 | 828 | .then(response => { |
829 | + this.loading = false; | |
826 | 830 | this.snackbar = true; |
827 | 831 | this.text = response.data.message; |
828 | - this.addExamScheduleDialog = false; | |
829 | 832 | this.color = "green"; |
830 | - this.loading = false; | |
833 | + this.addExamScheduleDialog = false; | |
834 | + this.getSchedulesList(); | |
831 | 835 | this.clear(); |
832 | 836 | }) |
833 | 837 | .catch(error => { |
... | ... | @@ -851,7 +855,7 @@ export default { |
851 | 855 | this.snackbar = true; |
852 | 856 | this.text = "Successfully Edit Exam Schedule"; |
853 | 857 | this.color = "green"; |
854 | - this.editExamScheduleDialog = false | |
858 | + this.editExamScheduleDialog = false; | |
855 | 859 | this.getSchedulesList(); |
856 | 860 | this.close(); |
857 | 861 | }) |
... | ... | @@ -890,8 +894,7 @@ export default { |
890 | 894 | .then(response => { |
891 | 895 | this.addSection = response.data.data; |
892 | 896 | }) |
893 | - .catch(err => { | |
894 | - }); | |
897 | + .catch(err => {}); | |
895 | 898 | }, |
896 | 899 | getExamList() { |
897 | 900 | this.showLoader = true; |
... | ... | @@ -931,7 +934,6 @@ export default { |
931 | 934 | this.getClass(); |
932 | 935 | this.getExamList(); |
933 | 936 | this.role = this.$store.state.role; |
934 | - | |
935 | 937 | } |
936 | 938 | }; |
937 | 939 | </script> |
938 | 940 | \ No newline at end of file | ... | ... |
src/pages/Gallery/gallery.vue
... | ... | @@ -757,6 +757,7 @@ export default { |
757 | 757 | .post("/createGallery", galleryData) |
758 | 758 | .then(response => { |
759 | 759 | this.getGalleryList(); |
760 | + this.addGalleryDialog = false; | |
760 | 761 | this.loading = false; |
761 | 762 | this.snackbar = true; |
762 | 763 | this.text = response.data.message; |
... | ... | @@ -776,12 +777,14 @@ export default { |
776 | 777 | .post("/createGallery", this.addGallery) |
777 | 778 | .then(response => { |
778 | 779 | this.getGalleryList(); |
779 | - this.files = []; | |
780 | + this.addGalleryDialog = false; | |
781 | + this.files = "nmn"; | |
780 | 782 | this.loading = false; |
781 | 783 | this.snackbar = true; |
782 | 784 | this.color = "green"; |
783 | 785 | this.text = response.data.message; |
784 | 786 | this.clear(); |
787 | + this.removeAddFind(); | |
785 | 788 | this.files = ""; |
786 | 789 | }) |
787 | 790 | .catch(error => { |
... | ... | @@ -841,7 +844,8 @@ export default { |
841 | 844 | this.text = response.data.message; |
842 | 845 | this.color = "green"; |
843 | 846 | this.editGalleryLoading = false; |
844 | - (this.editImageName = ""), (this.editFiles = []); | |
847 | + this.editImageName = ""; | |
848 | + this.editFiles = []; | |
845 | 849 | }) |
846 | 850 | .catch(error => { |
847 | 851 | this.editGalleryLoading = false; |
... | ... | @@ -862,6 +866,9 @@ export default { |
862 | 866 | // console.log("err====>", err); |
863 | 867 | }); |
864 | 868 | }, |
869 | + removeAddFind: function() { | |
870 | + this.finds = [{ value: "" }]; | |
871 | + }, | |
865 | 872 | addFind: function() { |
866 | 873 | this.finds.push({ value: "" }); |
867 | 874 | }, |
... | ... | @@ -899,7 +906,8 @@ export default { |
899 | 906 | }); |
900 | 907 | }, |
901 | 908 | displaySearch() { |
902 | - (this.show = false), (this.showSearch = true); | |
909 | + this.show = false; | |
910 | + this.showSearch = true; | |
903 | 911 | }, |
904 | 912 | closeSearch() { |
905 | 913 | this.showSearch = false; | ... | ... |
src/pages/Report/admitCard.vue
... | ... | @@ -7,13 +7,13 @@ |
7 | 7 | <v-layout wrap> |
8 | 8 | <v-flex xs12 sm12 lg3> |
9 | 9 | <v-layout> |
10 | - <v-flex xs3 sm6 lg4 class="subheading mt-4"> | |
10 | + <!-- <v-flex xs3 sm12 lg3 class="subheading mt-4"> | |
11 | 11 | <label class="right">Exam :</label> |
12 | - </v-flex> | |
13 | - <v-flex xs7 sm6 lg8 class="ml-2"> | |
12 | + </v-flex>--> | |
13 | + <v-flex xs12 sm12 lg10 class="ml-2"> | |
14 | 14 | <v-autocomplete |
15 | 15 | v-model="getReport.examId" |
16 | - label="Please Select" | |
16 | + label="Please Select Exam" | |
17 | 17 | :items="examData" |
18 | 18 | item-text="examName" |
19 | 19 | item-value="_id" |
... | ... | @@ -27,10 +27,10 @@ |
27 | 27 | |
28 | 28 | <v-flex xs12 sm12 lg3 v-if="getReport.examId"> |
29 | 29 | <v-layout> |
30 | - <v-flex xs3 sm6 lg2 class="subheading mt-4"> | |
30 | + <!-- <v-flex xs3 sm12 lg2 class="subheading mt-4"> | |
31 | 31 | <label class="right">Class:</label> |
32 | - </v-flex> | |
33 | - <v-flex xs9 sm6 lg8 class="ml-2"> | |
32 | + </v-flex>--> | |
33 | + <v-flex xs12 sm12 lg10 class="ml-2"> | |
34 | 34 | <v-select |
35 | 35 | v-model="getReport.classId" |
36 | 36 | label="Select your class" |
... | ... | @@ -47,10 +47,10 @@ |
47 | 47 | </v-flex> |
48 | 48 | <v-flex xs12 sm12 lg3 v-if="getReport.classId"> |
49 | 49 | <v-layout> |
50 | - <v-flex xs3 sm6 lg2 class="subheading mt-4"> | |
50 | + <!-- <v-flex xs3 sm12 lg2 class="subheading mt-4"> | |
51 | 51 | <label class="right">Section:</label> |
52 | - </v-flex> | |
53 | - <v-flex xs9 sm6 lg8 class="ml-2"> | |
52 | + </v-flex>--> | |
53 | + <v-flex xs12 sm12 lg10 class="ml-2"> | |
54 | 54 | <v-select |
55 | 55 | :items="addSection" |
56 | 56 | label="Select your Section" |
... | ... | @@ -67,10 +67,10 @@ |
67 | 67 | </v-flex> |
68 | 68 | <v-flex xs12 sm12 lg3 v-if="getReport.sectionId"> |
69 | 69 | <v-layout> |
70 | - <v-flex xs3 sm6 lg2 class="subheading mt-4"> | |
70 | + <!-- <v-flex xs3 sm12 lg2 class="subheading mt-4"> | |
71 | 71 | <label class="right">Student:</label> |
72 | - </v-flex> | |
73 | - <v-flex xs9 sm6 lg8 class="ml-2"> | |
72 | + </v-flex>--> | |
73 | + <v-flex xs12 sm12 lg10 class="ml-2"> | |
74 | 74 | <v-select |
75 | 75 | :items="getStudentsList" |
76 | 76 | label="Select your student" |
... | ... | @@ -84,14 +84,14 @@ |
84 | 84 | </v-layout> |
85 | 85 | </v-flex> |
86 | 86 | |
87 | - <v-flex xs12 sm12 lg4> | |
87 | + <v-flex xs12 sm12 lg3> | |
88 | 88 | <v-layout> |
89 | - <v-flex xs4 sm4 lg3 class="subheading mt-4"> | |
89 | + <!-- <v-flex xs4 sm4 lg3 class="subheading mt-4"> | |
90 | 90 | <label class="right">Type:</label> |
91 | - </v-flex> | |
92 | - <v-flex xs7 sm6 lg8 class="ml-2"> | |
91 | + </v-flex>--> | |
92 | + <v-flex xs12 sm12 lg10 class="ml-2"> | |
93 | 93 | <v-autocomplete |
94 | - label="Please Select" | |
94 | + label="Please Select View Type" | |
95 | 95 | type="text" |
96 | 96 | :rules="typeRules" |
97 | 97 | :items="typeList" |
... | ... | @@ -104,224 +104,250 @@ |
104 | 104 | </v-flex> |
105 | 105 | </v-layout> |
106 | 106 | </v-flex> |
107 | - <!-- <v-flex xs12 sm12 lg4> | |
108 | - <v-layout> | |
109 | - <v-flex xs4 sm4 lg3 class="subheading mt-4"> | |
110 | - <label class="right">Background:</label> | |
111 | - </v-flex> | |
112 | - <v-flex xs7 sm6 lg8 class="ml-2"> | |
113 | - <v-autocomplete | |
114 | - label="Please Select" | |
115 | - type="text" | |
116 | - :rules="backgroundRules" | |
117 | - :items="backgroundList" | |
118 | - required | |
119 | - ></v-autocomplete> | |
120 | - </v-flex> | |
121 | - </v-layout> | |
122 | - </v-flex>--> | |
123 | - <v-flex xs12 sm12 lg4 class="hidden-xs-only hidden-sm-only pl-5"> | |
107 | + <v-flex xs12 sm12 lg3> | |
124 | 108 | <v-btn |
125 | 109 | @click="getSchedule" |
126 | 110 | round |
127 | 111 | dark |
128 | 112 | :loading="loading" |
129 | - class="open-dialog-button mt-3 ml-5" | |
113 | + class="open-dialog-button mt-3" | |
130 | 114 | >Get Report</v-btn> |
131 | 115 | </v-flex> |
132 | 116 | </v-layout> |
133 | 117 | </v-flex> |
134 | 118 | </v-form> |
135 | 119 | </v-card> |
136 | - <div v-if="frontPart"> | |
137 | - <v-layout v-show="showTable"> | |
138 | - <v-flex xs12> | |
139 | - <v-layout> | |
140 | - <v-flex xs12> | |
141 | - <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | |
142 | ||
143 | - <v-icon right dark>print</v-icon> | |
144 | - </v-btn> | |
145 | - </v-flex> | |
146 | - </v-layout> | |
147 | - <div class="admincardreport"> | |
148 | - <v-card class="transparent elevation-0"> | |
149 | - <v-layout> | |
150 | - <v-flex xs12 sm12 md12 class="text-xs-center"> | |
151 | - <div class="line"> | |
152 | - <div class="school-logo"> | |
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" /> | |
155 | - </div> | |
156 | - <div class="school-name"> | |
157 | - <h2>{{ userData.name }}</h2> | |
158 | - <v-flex class="school-address"> | |
159 | - <p>{{ userData.address }}, {{ userData.pinCode }}</p> | |
160 | - <h4>{{ examName }} Exam Admit Card - (2019-2020)</h4> | |
161 | - </v-flex> | |
162 | - </div> | |
163 | - <!-- <div class="student-logo"> | |
164 | - <v-avatar> | |
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" /> | |
167 | - </v-avatar> | |
168 | - </div> --> | |
169 | - </div> | |
170 | - <div class="school-info"> | |
171 | - <v-flex xs12 sm12 md12 > | |
172 | - <div class="student-info" v-if="getScheduleList.studentData"> | |
173 | - <p | |
174 | - style="font-size:18px;margin:0px;margin-bottom:4px;" | |
175 | - >Name : {{ getScheduleList.studentData.name }}</p> | |
176 | - <p | |
177 | - style="font-size: 18px;margin:0px;margin-bottom:4px;" | |
178 | - >Class : {{ getScheduleList.studentData.classId.classNum}}</p> | |
179 | - <p | |
180 | - style="font-size: 18px;margin:0px;margin-bottom:4px;" | |
181 | - >Section : {{ getScheduleList.studentData.sectionId.name }}</p> | |
182 | - <p | |
183 | - style="font-size: 18px;margin:0px;margin-bottom:4px;" | |
184 | - >Roll NO : {{ getScheduleList.studentData.rollNo }}</p> | |
185 | - <p | |
186 | - style="font-size: 18px;margin:0px;margin-bottom:4px;" | |
187 | - >Blood Group : {{ getScheduleList.studentData.bloodGroup }}</p> | |
188 | - <p style="font-size: 18px;color: #707478;">Subject in which Appearing</p> | |
189 | - </div> | |
190 | - </v-flex> | |
191 | - </div> | |
192 | - </v-flex> | |
193 | - </v-layout> | |
194 | - <v-data-table | |
195 | - :headers="headers" | |
196 | - :items="getScheduleListArray" | |
197 | - :pagination.sync="pagination" | |
198 | - :search="search" | |
120 | + <div v-show="showTable"> | |
121 | + <v-flex xs12 sm12 md10 style="margin:auto"> | |
122 | + <v-layout> | |
123 | + <v-flex xs12> | |
124 | + <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | |
125 | ||
126 | + <v-icon right dark>print</v-icon> | |
127 | + </v-btn> | |
128 | + </v-flex> | |
129 | + </v-layout> | |
130 | + <div id="printMe" v-if="frontPart"> | |
131 | + <v-card | |
132 | + style=" | |
133 | + background-color: #fff; | |
134 | + border: 1px solid #ddd; | |
135 | + color: rgba(0,0,0,0.87); | |
136 | + overflow-x: auto; | |
137 | + display: block; | |
138 | + padding:14px !important; | |
139 | + webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; | |
140 | + box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" | |
141 | + > | |
142 | + <v-layout style="border-bottom: 1px solid #ddd;margin-bottom: 6px;"> | |
143 | + <v-flex xs3 style="margin-bottom:0px"> | |
144 | + <img | |
145 | + :src="userData.schoolLogoUrl" | |
146 | + width="90" | |
147 | + alt="logo" | |
148 | + v-if="userData.schoolLogoUrl" | |
149 | + /> | |
150 | + <img | |
151 | + src="/static/default_thumb.png" | |
152 | + width="140" | |
153 | + v-else-if="!userData.schoolLogoUrl" | |
154 | + /> | |
155 | + </v-flex> | |
156 | + <v-flex xs5 style="text-align:center;margin-bottom:0px"> | |
157 | + <p | |
158 | + style="font-size:24px;color: #700CE8;letter-spacing:1px;margin-bottom: 4px" | |
159 | + >{{ userData.name }}</p> | |
160 | + <p>{{ userData.address }}, {{ userData.pinCode }}</p> | |
161 | + <div> | |
162 | + <h4>First Terminal Exam Admit Card - ( {{ userData.establishmentYear }})</h4> | |
163 | + </div> | |
164 | + </v-flex> | |
165 | + <v-flex xs4 style="text-align:center;margin-bottom:0px"> | |
166 | + <!-- {{userData.profilePicUrl}} --> | |
167 | + <img src="/static/icon/user.png" style="widht:80px;" /> | |
168 | + </v-flex> | |
169 | + </v-layout> | |
170 | + <v-layout> | |
171 | + <v-flex xs5 style="margin-bottom:10px"> | |
172 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | |
173 | + <b>Name :</b> | |
174 | + <span>{{getScheduleList.studentData.name}}</span> | |
175 | + </p> | |
176 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | |
177 | + <b>Class :</b> | |
178 | + <span>{{getScheduleList.studentData.classId.classNum}}</span> | |
179 | + </p> | |
180 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | |
181 | + <b>Roll :</b> | |
182 | + <span>{{getScheduleList.studentData.rollNo}}</span> | |
183 | + </p> | |
184 | + </v-flex> | |
185 | + <v-flex xs5 style="margin-bottom:10px"> | |
186 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | |
187 | + <b>Section :</b> | |
188 | + <span>{{getScheduleList.studentData.sectionId.name }}</span> | |
189 | + </p> | |
190 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;"> | |
191 | + <b>Blood Group :</b> | |
192 | + <span style="color: #707478">{{getScheduleList.studentData.bloodGroup }}</span> | |
193 | + </p> | |
194 | + <p style="font-size: 16px;margin:0px;margin-bottom:8px;">Subject in which Appearing</p> | |
195 | + </v-flex> | |
196 | + </v-layout> | |
197 | + <table | |
198 | + class="mb-5 tableRsponsive feeTypeTable" | |
199 | + style="border: 1px solid lightgrey; | |
200 | + border-collapse: collapse;!important | |
201 | + table-layout: auto !important; | |
202 | + width: 100% !important;" | |
203 | + > | |
204 | + <thead style="border: 1px solid lightgrey !important;"> | |
205 | + <tr style="border: 1px solid lightgrey !important;padding:4px;"> | |
206 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">No</td> | |
207 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">Exam Date</td> | |
208 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">Start Time</td> | |
209 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">End Time</td> | |
210 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> | |
211 | + </tr> | |
212 | + </thead> | |
213 | + <tbody style="border: 1px solid lightgrey !important;"> | |
214 | + <tr v-for="(scheduleData,i) in getScheduleList.scheduleData" :key="i"> | |
215 | + <td style="border:1px solid lightgrey !important; padding:6px;">{{ i + 1 }}</td> | |
216 | + <td | |
217 | + style="border: 1px solid lightgrey !important;padding: 6px;" | |
218 | + >{{ scheduleData.date ? scheduleData.date : '-' }}</td> | |
219 | + <td | |
220 | + style="border: 1px solid lightgrey !important;padding: 6px;" | |
221 | + >{{ scheduleData.timeFrom ? scheduleData.timeFrom : "-" }}</td> | |
222 | + <td | |
223 | + style="border: 1px solid lightgrey !important;padding: 6px;" | |
224 | + >{{ scheduleData.timeTo ? scheduleData.timeTo : "-"}}</td> | |
225 | + <td | |
226 | + style="border: 1px solid lightgrey !important;padding: 6px;" | |
227 | + >{{ scheduleData.subjectName ? scheduleData.subjectName : "-" }}</td> | |
228 | + </tr> | |
229 | + <tr v-if="getScheduleList.scheduleData.length === 0"> | |
230 | + <td style="border: 1px soild lightgrey !importand;padding:6px;">-</td> | |
231 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | |
232 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | |
233 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | |
234 | + <td style="border: 1px solid lightgrey !important;padding: 6px;">-</td> | |
235 | + </tr> | |
236 | + </tbody> | |
237 | + </table> | |
238 | + </v-card> | |
239 | + </div> | |
240 | + <div id="printMe" v-if="backPart"> | |
241 | + <v-card | |
242 | + style=" | |
243 | + text-align:center | |
244 | + background-color: #fff; | |
245 | + border: 1px solid #ddd; | |
246 | + color: rgba(0,0,0,0.87); | |
247 | + overflow-x: auto; | |
248 | + display: block; | |
249 | + padding:14px !important; | |
250 | + webkit-box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important; | |
251 | + box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.2), 0px 0px 0px 0px rgba(0,0,0,0.14), 0px 0px 0px 0px rgba(0,0,0,0.12) !important;" | |
252 | + > | |
253 | + <div | |
254 | + style=" | |
255 | + margin-bottom: 16px; | |
256 | + overflow: hidden; | |
257 | + padding: 50px 90px;" | |
258 | + > | |
259 | + <ol style=" | |
260 | + margin: 0; | |
261 | + margin-bottom: 10px;"> | |
262 | + <p | |
263 | + style=" | |
264 | + margin-bottom: 16px; | |
265 | + line-height: 20px; | |
266 | + text-align: left;" | |
199 | 267 | > |
200 | - <template slot="items" slot-scope="props"> | |
201 | - <td class="td td-row">{{ props.index + 1}}</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> | |
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> | |
206 | - </template> | |
207 | - <v-alert | |
208 | - slot="no-results" | |
209 | - :value="true" | |
210 | - color="error" | |
211 | - icon="warning" | |
212 | - >Your search for "{{ search }}" found no results.</v-alert> | |
213 | - </v-data-table> | |
214 | - <v-flex xs12 id="printMe" v-show="hideprintAdmitReport"> | |
215 | - <v-layout> | |
216 | - <v-flex xs12 style="text-align:center;margin-bottom:10px"> | |
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" /> | |
219 | - <p class="title">{{ userData.name }}</p> | |
220 | - <p>{{ userData.address }}, {{ userData.pinCode }}</p> | |
221 | - <div> | |
222 | - <h4>First Terminal Exam Admit Card - (2019-2020)</h4> | |
223 | - </div> | |
224 | - </v-flex> | |
225 | - </v-layout> | |
226 | - <table | |
227 | - class="mb-5 tableRsponsive feeTypeTable" | |
228 | - style="border: 1px solid lightgrey; | |
229 | - border-collapse: collapse;!important | |
230 | - table-layout: auto !important; | |
231 | - width: 100% !important;" | |
232 | - > | |
233 | - <thead style="border: 1px solid lightgrey !important;"> | |
234 | - <tr style="border: 1px solid lightgrey !important;padding:4px;"> | |
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> | |
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> | |
239 | - <td style="border: 1px solid lightgrey !important;padding: 6px;">Subject Name</td> | |
240 | - </tr> | |
241 | - </thead> | |
242 | - <tbody | |
243 | - style="border: 1px solid lightgrey !important;"> | |
244 | - <tr v-if="(scheduleData) in getScheduleListArray" slot="items" slot-scope="props"> | |
245 | - <td | |
246 | - style="border: 1px soild lightgrey !importand;padding:6px;" | |
247 | - >{{ props.index + 1 }}</td> | |
248 | - <td | |
249 | - style="border: 1px solid lightgrey !important;padding: 6px;" | |
250 | - >{{ scheduleData.date }}</td> | |
251 | - <td | |
252 | - style="border: 1px solid lightgrey !important;padding: 6px;" | |
253 | - >{{ scheduleData.timeFrom }}</td> | |
254 | - <td | |
255 | - style="border: 1px solid lightgrey !important;padding: 6px;" | |
256 | - >{{ scheduleData.timeTo }}</td> | |
257 | - <td | |
258 | - style="border: 1px solid lightgrey !important;padding: 6px;" | |
259 | - >{{ scheduleData.subjectName }}</td> | |
260 | - </tr> | |
261 | - </tbody> | |
262 | - </table> | |
263 | - </v-flex> | |
264 | - </v-card> | |
265 | - </div> | |
266 | - </v-flex> | |
267 | - </v-layout> | |
268 | + <b>1. Do not Carry these Electronic Gadgets:</b> | |
269 | + Electronic gadgets(Bluetooth devices,head phones,pen/buttonhole cameras,scanner,calculator,storage devices etc) | |
270 | + in the examination lab. These items are strictly prohibited from examination lab. | |
271 | + </p> | |
272 | + <p | |
273 | + style=" | |
274 | + margin-bottom: 16px; | |
275 | + line-height: 20px; | |
276 | + text-align: left;" | |
277 | + > | |
278 | + <b>2. Do not Carry these Ornaments:</b> | |
279 | + Candidates should also not wear charms,veil,items containing such as rings,bracelet,earings,nose-pin,chains, | |
280 | + necklace,pendants,badge,broach,hair-pin,hair-band. | |
281 | + </p> | |
282 | + <p | |
283 | + style=" | |
284 | + margin-bottom: 16px; | |
285 | + line-height: 20px; | |
286 | + text-align: left;" | |
287 | + > | |
288 | + <b>3. What Candidates wear to Examination hall:</b> | |
289 | + Candidates should not wear clothes with full sleeves or big button,etc. Candidates are adviced to wear open footwear | |
290 | + like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. | |
291 | + </p> | |
292 | + <p | |
293 | + style=" | |
294 | + margin-bottom: 16px; | |
295 | + line-height: 20px; | |
296 | + text-align: left;" | |
297 | + > | |
298 | + <b>4. Do not carry Stationary:</b> | |
299 | + Pen/pencil and paper for rough work would be provided in examination lab. Electronic watch (timer)will be available | |
300 | + on the computer screen alloted to the candidates. | |
301 | + </p> | |
302 | + <p | |
303 | + style=" | |
304 | + margin-bottom: 16px; | |
305 | + line-height: 20px; | |
306 | + text-align: left;" | |
307 | + > | |
308 | + <b>5. Do not Carry Bags:</b> | |
309 | + Don not Carry back pack, College bag or any other bag like hand bag. If candidates brings any bag, they must make a | |
310 | + arrangement for safe custody of these items.The Commission shall not make any arrangement nor be responsible for the | |
311 | + safe custody of such items. | |
312 | + </p> | |
313 | + <p | |
314 | + style=" | |
315 | + margin-bottom: 16px; | |
316 | + line-height: 20px; | |
317 | + text-align: left;" | |
318 | + > | |
319 | + <b>6. What will Happen if you carry Prohibited items to Exam Hall:</b> | |
320 | + If any such prohibited item is found in the possession of a candidate in examination lab, his/her candidature is liable | |
321 | + to be canceled and legal/criminal proceedings could be initiated against him/her. He/she would also liable to be debarred | |
322 | + from appearing in future examinations of the Commission for a period of 3 years. | |
323 | + </p> | |
324 | + <p | |
325 | + style=" | |
326 | + margin-bottom: 16px; | |
327 | + line-height: 20px; | |
328 | + text-align: left; | |
329 | + " | |
330 | + > | |
331 | + <b>7. Candidate should not create Disturbance in Exam Hall:</b> | |
332 | + If any candidate is found obstructing the conduct of examination or creating disturbances at the examination venue, | |
333 | + his/her candidature shall be summarily canceled. | |
334 | + </p> | |
335 | + </ol> | |
336 | + </div> | |
337 | + </v-card> | |
338 | + </div> | |
339 | + </v-flex> | |
268 | 340 | </div> |
269 | - <div v-if="backPart"> | |
270 | - <v-layout v-show="showData"> | |
271 | - <v-flex xs12> | |
272 | - <v-layout> | |
273 | - <v-flex xs12> | |
274 | - <v-btn class="open-dialog-button right" round dark @click="printAdmitReport()"> | |
275 | ||
276 | - <v-icon right dark>print</v-icon> | |
277 | - </v-btn> | |
278 | - </v-flex> | |
279 | - </v-layout> | |
280 | - <v-flex xs12 sm12 md12 class="text-xs-center"> | |
281 | - <div class="admitcardreportbackend" id="printMe"> | |
282 | - <ol> | |
283 | - <p> | |
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) | |
286 | - in the examination lab. These items are strictly prohibited from examination lab. | |
287 | - </p> | |
288 | - <p> | |
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, | |
291 | - necklace,pendants,badge,broach,hair-pin,hair-band. | |
292 | - </p> | |
293 | - <p> | |
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 | |
296 | - like slippers,sandals instead of shoes as the candidates could be asked to remove shoes by the frisking staff. | |
297 | - </p> | |
298 | - <p> | |
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 | |
301 | - on the computer screen alloted to the candidates. | |
302 | - </p> | |
303 | - <p> | |
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 | |
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. | |
308 | - </p> | |
309 | - <p> | |
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 | |
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. | |
314 | - </p> | |
315 | - <p> | |
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, | |
318 | - his/her candidature shall be summarily canceled. | |
319 | - </p> | |
320 | - </ol> | |
321 | - </div> | |
322 | - </v-flex> | |
323 | - </v-flex> | |
324 | - </v-layout> | |
341 | + <v-snackbar | |
342 | + :timeout="timeout" | |
343 | + :top="y === 'top'" | |
344 | + :right="x === 'right'" | |
345 | + :vertical="mode === 'vertical'" | |
346 | + v-model="snackbar" | |
347 | + :color="color" | |
348 | + >{{ text }}</v-snackbar> | |
349 | + <div class="loader" v-if="showLoader"> | |
350 | + <v-progress-circular indeterminate color="white"></v-progress-circular> | |
325 | 351 | </div> |
326 | 352 | </v-container> |
327 | 353 | </template> |
... | ... | @@ -332,6 +358,14 @@ import _ from "underscore"; |
332 | 358 | |
333 | 359 | export default { |
334 | 360 | data: () => ({ |
361 | + snackbar: false, | |
362 | + color: "", | |
363 | + y: "top", | |
364 | + x: "right", | |
365 | + mode: "", | |
366 | + timeout: 10000, | |
367 | + text: "", | |
368 | + showLoader: false, | |
335 | 369 | valid: true, |
336 | 370 | userData: {}, |
337 | 371 | frontPart: false, |
... | ... | @@ -340,7 +374,6 @@ export default { |
340 | 374 | showTable: false, |
341 | 375 | showData: false, |
342 | 376 | hideprintAdmitReport: false, |
343 | - | |
344 | 377 | examRules: [v => !!v || "Exam Field is required"], |
345 | 378 | classRules: [v => !!v || "Class Field Required"], |
346 | 379 | sectionRules: [v => !!v || "Section Field is required"], |
... | ... | @@ -363,17 +396,16 @@ export default { |
363 | 396 | getScheduleListArray: [], |
364 | 397 | examName: [], |
365 | 398 | typeList: [ |
366 | - { | |
367 | - name: "Front Part", | |
368 | - value: "frontPart" | |
369 | - }, | |
370 | - { | |
371 | - name: "Back Part", | |
372 | - value: "backPart" | |
373 | - } | |
399 | + { | |
400 | + name: "Front Part", | |
401 | + value: "frontPart" | |
402 | + }, | |
403 | + { | |
404 | + name: "Back Part", | |
405 | + value: "backPart" | |
406 | + } | |
374 | 407 | ], |
375 | 408 | backgroundList: ["Yes", "No"], |
376 | - | |
377 | 409 | headers: [ |
378 | 410 | { |
379 | 411 | text: "No", |
... | ... | @@ -417,14 +449,14 @@ export default { |
417 | 449 | |
418 | 450 | methods: { |
419 | 451 | getReport() { |
420 | - if (this.getReport.form === "frontPart") { | |
421 | - this.frontPart = true; | |
422 | - this.backPart = false; | |
423 | - } | |
424 | - if (this.getReport.form === "backPart") { | |
425 | - this.frontPart = false; | |
426 | - this.backPart = true; | |
427 | - } | |
452 | + if (this.getReport.form === "frontPart") { | |
453 | + this.frontPart = true; | |
454 | + this.backPart = false; | |
455 | + } | |
456 | + if (this.getReport.form === "backPart") { | |
457 | + this.frontPart = false; | |
458 | + this.backPart = true; | |
459 | + } | |
428 | 460 | }, |
429 | 461 | getExamList() { |
430 | 462 | this.showLoader = true; |
... | ... | @@ -503,27 +535,27 @@ export default { |
503 | 535 | }); |
504 | 536 | }, |
505 | 537 | getSchedule() { |
506 | - this.showLoader = true; | |
507 | - http() | |
508 | - .get("/getScheduleForParticularStudent", { | |
509 | - params: { | |
510 | - examId: this.getReport.examId, | |
511 | - classId: this.getReport.classId, | |
512 | - sectionId: this.getReport.sectionId, | |
513 | - studentId: this.getReport.studentId | |
514 | - } | |
515 | - }) | |
516 | - .then(response => { | |
517 | - this.getScheduleList = response.data.data; | |
518 | - this.getScheduleListArray = response.data.data.scheduleData; | |
519 | - this.examName = response.data.data.scheduleData[0].examId.examName; | |
520 | - this.showTable = true; | |
521 | - this.showData = true; | |
522 | - this.showLoader = false; | |
523 | - }) | |
524 | - .catch(error => { | |
525 | - this.showLoader = false; | |
526 | - }); | |
538 | + if (this.$refs.form.validate()) { | |
539 | + this.showLoader = true; | |
540 | + http() | |
541 | + .get("/getScheduleForParticularStudent", { | |
542 | + params: { | |
543 | + examId: this.getReport.examId, | |
544 | + classId: this.getReport.classId, | |
545 | + sectionId: this.getReport.sectionId, | |
546 | + studentId: this.getReport.studentId | |
547 | + } | |
548 | + }) | |
549 | + .then(response => { | |
550 | + this.showTable = true; | |
551 | + this.getScheduleList = response.data.data; | |
552 | + this.showData = true; | |
553 | + this.showLoader = false; | |
554 | + }) | |
555 | + .catch(error => { | |
556 | + this.showLoader = false; | |
557 | + }); | |
558 | + } | |
527 | 559 | }, |
528 | 560 | |
529 | 561 | printAdmitReport() { |
... | ... | @@ -537,13 +569,13 @@ export default { |
537 | 569 | this.userData = response.data.data; |
538 | 570 | }) |
539 | 571 | .catch(error => { |
540 | - // if (error.response.status === 401) { | |
541 | - // this.$router.replace({ path: "/" }); | |
542 | - // this.$store.dispatch("setToken", null); | |
543 | - // this.$store.dispatch("Id", null); | |
544 | - // } | |
572 | + if (error.response.status === 401) { | |
573 | + this.$router.replace({ path: "/" }); | |
574 | + this.$store.dispatch("setToken", null); | |
575 | + this.$store.dispatch("Id", null); | |
576 | + } | |
545 | 577 | }); |
546 | - }, | |
578 | + } | |
547 | 579 | // created() { |
548 | 580 | // this.$root.$on("app:search", search => { |
549 | 581 | // this.search = search; |
... | ... | @@ -556,7 +588,7 @@ export default { |
556 | 588 | } |
557 | 589 | }; |
558 | 590 | </script> |
559 | -<style scoped> | |
591 | +<style> | |
560 | 592 | .admincardreport { |
561 | 593 | border: 1px solid #ddd; |
562 | 594 | overflow: hidden; |
... | ... | @@ -600,19 +632,12 @@ export default { |
600 | 632 | padding: 0 0px; |
601 | 633 | font-size: 12px; |
602 | 634 | } |
603 | -.admitcardreportbackend { | |
604 | - border: 1px solid #ddd; | |
605 | - overflow: hidden; | |
606 | - padding: 5% 25%; | |
607 | - /* margin-bottom: 10px; | |
608 | - color: black; */ | |
609 | -} | |
610 | 635 | .admitcardreportbackend ol { |
611 | - margin: 0; | |
612 | - margin-bottom: 10px; | |
636 | + margin: 0; | |
637 | + margin-bottom: 10px; | |
613 | 638 | } |
614 | 639 | .admitcardreportbackend p { |
615 | - line-height: 20px; | |
616 | - text-align: left; | |
640 | + line-height: 20px; | |
641 | + text-align: left; | |
617 | 642 | } |
618 | 643 | </style> |
619 | 644 | \ No newline at end of file | ... | ... |
src/pages/Report/idCard.vue