Blame view

src/pages/Report/progressCardReport.vue 28.1 KB
006544386   Neeraj Sharma   implement task
1
  <template>
68d742034   Neeraj Sharma   implement new des...
2
    <v-container fluid class="body-color">
495e4037c   Neeraj Sharma   update
3
      <!-- ******  Progress Card Report Table****** -->
68d742034   Neeraj Sharma   implement new des...
4
      <v-card flat class="elevation-0 transparent">
495e4037c   Neeraj Sharma   update
5
6
7
8
9
        <v-form ref="form" v-model="valid" lazy-validation>
          <v-flex xs12 sm12 lg12>
            <v-layout wrap>
              <v-flex xs12 sm12 lg3>
                <v-layout>
c571cc325   Neeraj Sharma   responsive progre...
10
                  <v-flex xs3 sm3 lg2 class="subheading mt-4">
495e4037c   Neeraj Sharma   update
11
12
                    <label class="right">Class:</label>
                  </v-flex>
79583580d   Neeraj Sharma   implement task ma...
13
                  <v-flex xs9 sm6 lg8 class="ml-2">
495e4037c   Neeraj Sharma   update
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
                    <v-select
                      v-model="getReport.classId"
                      label="Select your class"
                      type="text"
                      :items="classList"
                      item-text="classNum"
                      item-value="_id"
                      :rules="classRules"
                      @change="getSections(getReport.classId)"
                      required
                    ></v-select>
                  </v-flex>
                </v-layout>
              </v-flex>
              <v-flex xs12 sm12 lg3>
                <v-layout>
c571cc325   Neeraj Sharma   responsive progre...
30
                  <v-flex xs3 sm3 lg2 class="subheading mt-4">
495e4037c   Neeraj Sharma   update
31
32
                    <label class="right">Section:</label>
                  </v-flex>
79583580d   Neeraj Sharma   implement task ma...
33
                  <v-flex xs9 sm6 lg8 class="ml-2">
495e4037c   Neeraj Sharma   update
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
                    <v-select
                      :items="addSection"
                      label="Select your Section"
                      v-model="getReport.sectionId"
                      item-text="name"
                      item-value="_id"
                      name="Select Section"
                      @change="getStudents"
                      :rules="sectionRules"
                      required
                    ></v-select>
                  </v-flex>
                </v-layout>
              </v-flex>
              <v-flex xs12 sm12 lg3>
                <v-layout>
c571cc325   Neeraj Sharma   responsive progre...
50
                  <v-flex xs3 sm3 lg2 class="subheading mt-4">
495e4037c   Neeraj Sharma   update
51
52
                    <label class="right">Student:</label>
                  </v-flex>
ec5677f43   Neeraj Sharma   implement print o...
53
                  <v-flex xs9 sm6 lg8 class="ml-2">
495e4037c   Neeraj Sharma   update
54
55
56
57
58
59
60
61
62
63
64
65
                    <v-select
                      :items="getStudentsList"
                      label="Select your student"
                      v-model="getReport.studentId"
                      item-text="name"
                      item-value="_id"
                      :rules="studentRules"
                      required
                    ></v-select>
                  </v-flex>
                </v-layout>
              </v-flex>
c571cc325   Neeraj Sharma   responsive progre...
66
              <v-flex xs12 sm12 lg3>
79583580d   Neeraj Sharma   implement task ma...
67
                <v-btn
c571cc325   Neeraj Sharma   responsive progre...
68
69
                  style="margin: auto;
                  display: block;"
79583580d   Neeraj Sharma   implement task ma...
70
71
72
73
                  @click="getMarkReportList"
                  round
                  dark
                  :loading="loading"
3e79b2f9f   Neeraj Sharma   implement functio...
74
                  class="open-dialog-button mt-3"
79583580d   Neeraj Sharma   implement task ma...
75
                >Get Report</v-btn>
495e4037c   Neeraj Sharma   update
76
77
78
79
              </v-flex>
            </v-layout>
          </v-flex>
        </v-form>
006544386   Neeraj Sharma   implement task
80
      </v-card>
1d7227237   Neeraj Sharma   implement view ma...
81

d4735dce7   Shikha Mishra   show school logo ...
82
83
84
      <v-layout v-show="showReport">
        <v-flex xs12>
          <v-card class="transparent elevation-0">
1d7227237   Neeraj Sharma   implement view ma...
85
            <v-container grid-list-md class="report">
4d8198ee4   Neeraj Sharma   implement pdf fun...
86
              <v-flex xs12 sm12>
d4735dce7   Shikha Mishra   show school logo ...
87
88
89
                <v-layout wrap>
                  <!-- ****** TABLE DATA MARK  ****** -->
                  <v-flex xs12 sm12 md12>
3e79b2f9f   Neeraj Sharma   implement functio...
90
91
                    <v-layout>
                      <v-flex xs12>
240f5da2c   Neeraj Sharma   test progress card
92
93
94
95
96
97
98
                        <v-btn
                          class="open-dialog-button"
                          :loading="printLoader"
                          round
                          dark
                          @click="printProgressReport()"
                        >
3e79b2f9f   Neeraj Sharma   implement functio...
99
100
101
102
103
                          Print
                          <v-icon right dark>print</v-icon>
                        </v-btn>
                      </v-flex>
                    </v-layout>
a76a6f135   Neeraj Sharma   implelement task
104
                    <div id="printMe">
4d8198ee4   Neeraj Sharma   implement pdf fun...
105
106
107
                      <card class="elevation-0" v-for="(value, id, Index) in filterData" :key="Index">
                        <!-- <v-flex xs12  flat> -->
                        <!-- {{value}}---{{id}}---{{index}} -->
bdaae72ca   Neeraj Sharma   complete task of ...
108
                        <v-card
4d8198ee4   Neeraj Sharma   implement pdf fun...
109
110
111
                          class="ma-3"
                          style="
                          border: 1px solid lightgrey;
a76a6f135   Neeraj Sharma   implelement task
112
113
                          margin-bottom:0px;
                          padding: 0px"
bdaae72ca   Neeraj Sharma   complete task of ...
114
                        >
4d8198ee4   Neeraj Sharma   implement pdf fun...
115
116
117
                          <div style="border: 1px solid lightgray;">
                            <v-layout>
                              <v-flex xs12 sm12 md12>
664cc2c52   Neeraj Sharma   test progress card
118
                                <div
4d8198ee4   Neeraj Sharma   implement pdf fun...
119
120
121
122
123
                                  style="    
                                border-bottom: 1px solid #ddd;
                                overflow: hidden;
                                vertical-align: middle;
                                margin: 10px;
a76a6f135   Neeraj Sharma   implelement task
124
                                padding-bottom: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
125
                                >
664cc2c52   Neeraj Sharma   test progress card
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
                                  <!-- <v-flex xs12 sm12 md12> -->
                                  <v-layout>
                                    <div class="school-logo">
                                      <img
                                        :src="userData.schoolLogoUrl"
                                        v-if="userData.schoolLogoUrl"
                                        style="width:40px !important;height:40px !important; float: left;"
                                      />
                                      <img
                                        src="/static/schoolIcons/INTRACK_White.png"
                                        v-else-if="!userData.schoolLogoUrl"
                                        style="width:40px !important;height:40px !important; float: left;"
                                      />
                                    </div>
                                    <div class="school-name">
                                      <h3>{{ userData.name }}</h3>
                                    </div>
                                  </v-layout>
                                  <!-- </v-flex> -->
                                </div>
4d8198ee4   Neeraj Sharma   implement pdf fun...
146
                                <!-- Profile School -->
a76a6f135   Neeraj Sharma   implelement task
147
                                <v-flex xs12 sm12 md12 lg12 style="margin:0px 0px; ">
4d8198ee4   Neeraj Sharma   implement pdf fun...
148
                                  <v-layout>
664cc2c52   Neeraj Sharma   test progress card
149
150
151
152
153
154
                                    <div
                                      style="flex-basis: 40%;
                                        -webkit-box-flex: 0;
                                        -ms-flex-positive: 0;
                                        flex-grow: 0;
                                        max-width: 40%;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
155
                                    >
664cc2c52   Neeraj Sharma   test progress card
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
                                      <div
                                        style="padding: 4px;    
                                      padding-left: 16px !important;"
                                      >
                                        <p
                                          style="font-size:20px;margin-bottom: 0px;"
                                        >{{ userData.name }}</p>
                                        <p
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >{{ userData.address }}</p>
                                        <p
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >Phone : {{ userData.mobile }}</p>
                                        <p
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >Email : {{ userData.email }}</p>
                                      </div>
                                    </div>
4d8198ee4   Neeraj Sharma   implement pdf fun...
174
                                    <!-- Profile Student Report Card-->
664cc2c52   Neeraj Sharma   test progress card
175
176
177
178
179
180
181
                                    <div
                                      style="flex-basis: 40%;
                                        -webkit-box-flex: 0;
                                        -ms-flex-positive: 0;
                                        flex-grow: 0;
                                        max-width: 40%;"
                                    >
4d8198ee4   Neeraj Sharma   implement pdf fun...
182
183
184
                                      <div v-for="(studentMark,i,index) in value" :key="index">
                                        <p
                                          v-if="index == 0"
a76a6f135   Neeraj Sharma   implelement task
185
                                          style="font-size:20px;margin-bottom: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
                                        >{{ studentMark[0].studentId.name }}</p>
                                        <p
                                          v-if="index == 0"
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >
                                          Class :
                                          <b>{{ studentMark[0].classId.classNum }}</b>
                                        </p>
                                        <p
                                          v-if="index == 0"
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >
                                          Section :
                                          <b>{{ studentMark[0].sectionId.name }}</b>
                                        </p>
                                        <p
                                          v-if="index == 0"
                                          style="font-size: 15px;color: #707478;margin:0px;margin-bottom:8px;"
                                        >
                                          Roll NO :
                                          <b>{{ studentMark[0].studentId.rollNo }}</b>
                                        </p>
                                      </div>
664cc2c52   Neeraj Sharma   test progress card
209
210
211
212
213
214
215
216
217
218
                                    </div>
                                    <div
                                      style="
                                          -ms-flex-preferred-size: 20%;
                                          flex-basis: 20%;
                                          -webkit-box-flex: 0;
                                          -ms-flex-positive: 0;
                                          flex-grow: 0;
                                          max-width: 20%;"
                                    >
4d8198ee4   Neeraj Sharma   implement pdf fun...
219
                                      <div v-for="(studentMark,i,index) in value" :key="index">
05746bfae   Neeraj Sharma   test progress card
220
221
                                        <div
                                          style="padding-top:16px"
4d8198ee4   Neeraj Sharma   implement pdf fun...
222
                                          v-if="index == 0"
c571cc325   Neeraj Sharma   responsive progre...
223
                                          class="hidden-sm-only hidden-xs-only"
4d8198ee4   Neeraj Sharma   implement pdf fun...
224
225
226
227
                                        >
                                          <img
                                            src="/static/icon/user.png"
                                            v-if="!studentMark[0].studentId.profilePicUrl"
05746bfae   Neeraj Sharma   test progress card
228
                                            style="width:60px;height:60px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
229
230
231
232
                                          />
                                          <img
                                            :src="studentMark[0].studentId.profilePicUrl"
                                            v-else-if="studentMark[0].studentId.profilePicUrl"
05746bfae   Neeraj Sharma   test progress card
233
                                            style="width:60px;height:60px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
234
                                          />
05746bfae   Neeraj Sharma   test progress card
235
                                        </div>
4d8198ee4   Neeraj Sharma   implement pdf fun...
236
                                      </div>
664cc2c52   Neeraj Sharma   test progress card
237
                                    </div>
4d8198ee4   Neeraj Sharma   implement pdf fun...
238
                                  </v-layout>
c571cc325   Neeraj Sharma   responsive progre...
239
                                </v-flex>
4d8198ee4   Neeraj Sharma   implement pdf fun...
240
241
242
243
244
245
                              </v-flex>
                            </v-layout>
                            <v-card
                              v-for="studentMarks in value"
                              :key="studentMarks"
                              style="    
c571cc325   Neeraj Sharma   responsive progre...
246
247
248
249
250
251
252
                             background-color: #fff;
                             border-color: #fff;
                             color: rgba(0,0,0,0.87);
                             overflow-x: auto;
                             display: block;
                             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;
                             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;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
253
254
255
                            >
                              <!-- {{studentMark}} -->
                              <!-- <div
bdaae72ca   Neeraj Sharma   complete task of ...
256
257
                            style="overflow-x:auto;    
                          border: 1px solid lightgrey !important;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
258
259
260
261
262
263
                              >-->
                              <table
                                v-for="(studentMark,key) in studentMarks"
                                :key="key"
                                class="tableRsponsive feeTypeTable subheading"
                                style="border: 1px solid black;
bdaae72ca   Neeraj Sharma   complete task of ...
264
265
266
267
                               border-collapse: collapse;!important
                               table-layout: auto !important;
                               width: 100% !important;
                               overflow: hidden;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
268
269
270
271
272
273
274
275
276
                              >
                                <thead
                                  style="border: 1px solid transparent !important"
                                  v-if="key == 0"
                                >
                                  <tr style="border: 1px solid transparent !important">
                                    <td
                                      colspan="4"
                                      style="text-align: inherit !important;
bdaae72ca   Neeraj Sharma   complete task of ...
277
278
279
                                      border-right: inherit;
                                      border-top: inherit;
                                      padding:14px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
280
281
282
283
284
                                    >{{studentMark.examId.examName}}</td>
                                  </tr>
                                  <tr style="border: 1px solid lightgrey !important;padding:4px;">
                                    <td
                                      rowspan="2"
a76a6f135   Neeraj Sharma   implelement task
285
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
286
287
288
289
290
291
                                    >Subject</td>
                                    <template>
                                      <td
                                        v-for="(studentMarkData,i) in studentMark.studentsMarks"
                                        :key="i"
                                        colspan="2"
a76a6f135   Neeraj Sharma   implelement task
292
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
293
294
                                      >{{studentMarkData.markDistributionId.distributionType}}</td>
                                      <td
a76a6f135   Neeraj Sharma   implelement task
295
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
296
297
298
299
300
301
302
                                      >Total Marks</td>
                                    </template>
                                  </tr>
                                  <tr style="border: 1px solid lightgrey !important;">
                                    <template v-for="(exam, ind) in studentMark.studentsMarks">
                                      <td
                                        :key="ind"
a76a6f135   Neeraj Sharma   implelement task
303
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
304
305
306
                                      >Marks</td>
                                      <td
                                        :key="ind"
a76a6f135   Neeraj Sharma   implelement task
307
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
308
309
310
311
312
313
314
315
316
317
                                      >Highest Marks</td>
                                    </template>
                                  </tr>
                                </thead>
                                <tbody
                                  style="border: 1px solid lightgrey !important;"
                                  v-if="key == 0"
                                >
                                  <tr v-for="studentMark in studentMarks" :key="studentMark">
                                    <td
a76a6f135   Neeraj Sharma   implelement task
318
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
319
320
321
322
                                    >{{studentMark.subjectName}}</td>
                                    <template v-for="(exam, index) in  studentMark.studentsMarks">
                                      <td
                                        :key="index"
a76a6f135   Neeraj Sharma   implelement task
323
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
324
325
326
                                      >{{exam.marksScored}}</td>
                                      <td
                                        :key="index"
a76a6f135   Neeraj Sharma   implelement task
327
                                        style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
328
329
                                      >{{exam.markDistributionId.markValue}}</td>
                                    </template>
bdaae72ca   Neeraj Sharma   complete task of ...
330
                                    <td
a76a6f135   Neeraj Sharma   implelement task
331
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
332
333
334
335
336
                                    >{{studentMark.totalMarks}}</td>
                                  </tr>
                                </tbody>
                                <tfoot v-if="key == studentMarks.length - 1">
                                  <tr style="border: 1px solid lightgrey !important;">
bdaae72ca   Neeraj Sharma   complete task of ...
337
                                    <td
4d8198ee4   Neeraj Sharma   implement pdf fun...
338
339
340
341
342
                                      colspan="5"
                                      class="subheding"
                                      style="    
                                      border: 1px solid #e2e7eb;
                                      text-align:center
a76a6f135   Neeraj Sharma   implelement task
343
                                      padding: 0px;"
bdaae72ca   Neeraj Sharma   complete task of ...
344
                                    >Total Marks</td>
bdaae72ca   Neeraj Sharma   complete task of ...
345
                                    <td
4d8198ee4   Neeraj Sharma   implement pdf fun...
346
                                      colspan="7"
a76a6f135   Neeraj Sharma   implelement task
347
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
348
349
350
351
352
353
354
355
356
                                    >{{ studentMark.allSubjectTotalMarks }}</td>
                                  </tr>
                                  <tr>
                                    <td
                                      colspan="5"
                                      class="subheding"
                                      style="    
                                      border: 1px solid #e2e7eb;
                                      text-align:center
a76a6f135   Neeraj Sharma   implelement task
357
                                      padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
358
359
360
                                    >Grade</td>
                                    <td
                                      colspan="7"
a76a6f135   Neeraj Sharma   implelement task
361
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
362
363
364
365
366
367
368
369
                                    >{{ studentMark.grade ? studentMark.grade : "-" }}</td>
                                  </tr>
                                  <tr>
                                    <td
                                      colspan="5"
                                      style="
                                       border: 1px solid #e2e7eb;
                                      text-align:center
a76a6f135   Neeraj Sharma   implelement task
370
                                      padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
371
372
                                      class="subheding"
                                    >Average Mark</td>
bdaae72ca   Neeraj Sharma   complete task of ...
373
                                    <td
4d8198ee4   Neeraj Sharma   implement pdf fun...
374
                                      colspan="7"
a76a6f135   Neeraj Sharma   implelement task
375
                                      style="border: 1px solid lightgrey !important;padding: 0px;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
376
377
378
                                    >-</td>
                                  </tr>
                                  <tr>
bdaae72ca   Neeraj Sharma   complete task of ...
379
                                    <td
4d8198ee4   Neeraj Sharma   implement pdf fun...
380
381
382
383
                                      colspan="5"
                                      style="
                                      border: 1px solid #e2e7eb;
                                      text-align:center
a76a6f135   Neeraj Sharma   implelement task
384
                                      padding: 0px; !important;
4d8198ee4   Neeraj Sharma   implement pdf fun...
385
386
387
                                      font-size: 16px !important;"
                                      class="subheding"
                                    >GPA</td>
bdaae72ca   Neeraj Sharma   complete task of ...
388
                                    <td
4d8198ee4   Neeraj Sharma   implement pdf fun...
389
                                      colspan="7"
a76a6f135   Neeraj Sharma   implelement task
390
                                      style="border: 1px solid lightgrey !important;padding: 0px !important;font-size: 16px !important;"
4d8198ee4   Neeraj Sharma   implement pdf fun...
391
392
393
394
                                    >-</td>
                                  </tr>
                                </tfoot>
                              </table>
4d8198ee4   Neeraj Sharma   implement pdf fun...
395
                            </v-card>
bdaae72ca   Neeraj Sharma   complete task of ...
396
                          </div>
962a41f53   Neeraj Sharma   fixed multiple pr...
397
                        </v-card>
a76a6f135   Neeraj Sharma   implelement task
398
                        <p style="page-break-after: always;">&nbsp;</p>
4d8198ee4   Neeraj Sharma   implement pdf fun...
399
400
                      </card>
                    </div>
d4735dce7   Shikha Mishra   show school logo ...
401
402
403
404
405
                  </v-flex>
                </v-layout>
              </v-flex>
            </v-container>
          </v-card>
79583580d   Neeraj Sharma   implement task ma...
406
        </v-flex>
d4735dce7   Shikha Mishra   show school logo ...
407
      </v-layout>
006544386   Neeraj Sharma   implement task
408
409
410
      <div class="loader" v-if="showLoader">
        <v-progress-circular indeterminate color="white"></v-progress-circular>
      </div>
68d742034   Neeraj Sharma   implement new des...
411
    </v-container>
006544386   Neeraj Sharma   implement task
412
413
414
415
416
  </template>
  
  <script>
  import http from "@/Services/http.js";
  import moment from "moment";
79583580d   Neeraj Sharma   implement task ma...
417
  import _ from "underscore";
006544386   Neeraj Sharma   implement task
418
419
420
  
  export default {
    data: () => ({
006544386   Neeraj Sharma   implement task
421
      showLoader: false,
c62132b75   Shikha Mishra   invoice,progress-...
422
      cardData: [],
79583580d   Neeraj Sharma   implement task ma...
423
424
425
426
      token: "",
      markDistributions: [],
      markParticularDistributionData: [],
      loading: false,
495e4037c   Neeraj Sharma   update
427
      valid: true,
79583580d   Neeraj Sharma   implement task ma...
428
429
      loading: false,
      showReport: false,
240f5da2c   Neeraj Sharma   test progress card
430
      printLoader: false,
006544386   Neeraj Sharma   implement task
431
      addSection: [],
79583580d   Neeraj Sharma   implement task ma...
432
433
      filterData: [],
      getStudentsList: [],
495e4037c   Neeraj Sharma   update
434
435
436
      classRules: [v => !!v || "Class is required"],
      sectionRules: [v => !!v || "Class is required"],
      studentRules: [v => !!v || "Student is required"],
495e4037c   Neeraj Sharma   update
437
      getReport: {},
ec5677f43   Neeraj Sharma   implement print o...
438
      classList: [],
c0b01ae20   Neeraj Sharma   solve bugs in pro...
439
      output: null,
710438de6   Shikha Mishra   added teacher mod...
440
441
      userData: {},
      newData: [],
c62132b75   Shikha Mishra   invoice,progress-...
442
443
444
445
446
      gradeAPlus: "A+",
      gradeA: "A",
      gradeBPlus: "B+",
      gradeB: "B",
      gradeCPlus: "C+",
3e79b2f9f   Neeraj Sharma   implement functio...
447
448
      gradeC: "C",
      totalMarks: ""
006544386   Neeraj Sharma   implement task
449
    }),
79583580d   Neeraj Sharma   implement task ma...
450
451
452
    mounted() {
      this.token = this.$store.state.token;
      this.getClass();
c0b01ae20   Neeraj Sharma   solve bugs in pro...
453
      this.getUserData();
79583580d   Neeraj Sharma   implement task ma...
454
    },
006544386   Neeraj Sharma   implement task
455
    methods: {
495e4037c   Neeraj Sharma   update
456
457
458
      clear() {
        this.$refs.form.reset();
      },
006544386   Neeraj Sharma   implement task
459
      getClass() {
ec5677f43   Neeraj Sharma   implement print o...
460
        this.showLoader = true;
006544386   Neeraj Sharma   implement task
461
462
463
464
465
466
        http()
          .get("/getClassesList", {
            headers: { Authorization: "Bearer " + this.token }
          })
          .then(response => {
            this.classList = response.data.data;
ec5677f43   Neeraj Sharma   implement print o...
467
            this.showLoader = false;
006544386   Neeraj Sharma   implement task
468
          })
c0b01ae20   Neeraj Sharma   solve bugs in pro...
469
          .catch(error => {
ec5677f43   Neeraj Sharma   implement print o...
470
            this.showLoader = false;
006544386   Neeraj Sharma   implement task
471
472
473
474
            // console.log("err====>", err);
          });
      },
      getSections(_id) {
c0b01ae20   Neeraj Sharma   solve bugs in pro...
475
        this.showLoader = true;
006544386   Neeraj Sharma   implement task
476
477
478
479
480
481
482
483
484
485
        http()
          .get(
            "/getSectionsList",
            { params: { classId: _id } },
            {
              headers: { Authorization: "Bearer " + this.token }
            }
          )
          .then(response => {
            this.addSection = response.data.data;
c0b01ae20   Neeraj Sharma   solve bugs in pro...
486
            this.showLoader = false;
006544386   Neeraj Sharma   implement task
487
488
          })
          .catch(err => {
c0b01ae20   Neeraj Sharma   solve bugs in pro...
489
            this.showLoader = false;
006544386   Neeraj Sharma   implement task
490
491
492
493
494
495
496
497
            // console.log("err====>", err);
          });
      },
      getStudents() {
        this.showLoader = true;
        http()
          .get("/getStudentWithClass", {
            params: {
495e4037c   Neeraj Sharma   update
498
499
              classId: this.getReport.classId,
              sectionId: this.getReport.sectionId
006544386   Neeraj Sharma   implement task
500
501
502
            }
          })
          .then(response => {
e03bf1f92   Neeraj Sharma   solved bugs add i...
503
504
505
506
            response.data.data.unshift({
              name: "Select All",
              _id: "Select All"
            });
006544386   Neeraj Sharma   implement task
507
508
            this.getStudentsList = response.data.data;
            this.showLoader = false;
c0b01ae20   Neeraj Sharma   solve bugs in pro...
509
            // console.log("getSectionsList=====>", response.data.data);
006544386   Neeraj Sharma   implement task
510
511
512
513
514
515
          })
          .catch(error => {
            console.log("err====>", error);
            this.showLoader = false;
          });
      },
79583580d   Neeraj Sharma   implement task ma...
516
      getMarkReportList() {
1d7227237   Neeraj Sharma   implement view ma...
517
        this.showLoader = true;
79583580d   Neeraj Sharma   implement task ma...
518
        this.showReport = true;
c765369af   Neeraj Sharma   solve bugs
519
520
521
522
523
524
        var getSelectMarks = {};
        if (this.getReport.studentId == "Select All") {
          getSelectMarks = {
            classId: this.getReport.classId,
            sectionId: this.getReport.sectionId
          };
962a41f53   Neeraj Sharma   fixed multiple pr...
525
        } else if (this.getReport.studentId != "Select All") {
c765369af   Neeraj Sharma   solve bugs
526
527
528
529
530
531
          getSelectMarks = {
            classId: this.getReport.classId,
            sectionId: this.getReport.sectionId,
            studentId: this.getReport.studentId
          };
        }
79583580d   Neeraj Sharma   implement task ma...
532
533
        http()
          .get("/getParticularMark", {
c765369af   Neeraj Sharma   solve bugs
534
            params: getSelectMarks,
79583580d   Neeraj Sharma   implement task ma...
535
536
537
            headers: { Authorization: "Bearer " + this.token }
          })
          .then(response => {
c62132b75   Shikha Mishra   invoice,progress-...
538
            this.cardData = response.data.data;
79583580d   Neeraj Sharma   implement task ma...
539
540
541
            let newData = response.data.data;
            for (var i = 0; i < newData.length; i++) {
              newData[i].examination = newData[i].examId._id;
1d7227237   Neeraj Sharma   implement view ma...
542
543
544
545
546
547
548
549
              newData[i].studentsId = newData[i].studentId._id;
            }
            var studentMarkArray = [];
            studentMarkArray = _.groupBy(newData, ["studentsId"]);
            for (let data in studentMarkArray) {
              studentMarkArray[data] = _.groupBy(studentMarkArray[data], [
                "examination"
              ]);
79583580d   Neeraj Sharma   implement task ma...
550
            }
1d7227237   Neeraj Sharma   implement view ma...
551
            this.filterData = studentMarkArray;
79583580d   Neeraj Sharma   implement task ma...
552
            for (let data in this.filterData) {
79583580d   Neeraj Sharma   implement task ma...
553
              for (let item in this.filterData[data]) {
bdaae72ca   Neeraj Sharma   complete task of ...
554
                var allSubjectTotalMarks = 0;
1d7227237   Neeraj Sharma   implement view ma...
555
                for (let i = 0; i < this.filterData[data][item].length; i++) {
bdaae72ca   Neeraj Sharma   complete task of ...
556
                  var totalMarks = 0;
1d7227237   Neeraj Sharma   implement view ma...
557
558
559
560
561
562
563
564
                  for (
                    let j = 0;
                    j < studentMarkArray[data][item][i].studentsMarks.length;
                    j++
                  ) {
                    totalMarks +=
                      studentMarkArray[data][item][i].studentsMarks[j]
                        .marksScored;
1d7227237   Neeraj Sharma   implement view ma...
565
566
                  }
                  this.filterData[data][item][i].totalMarks = totalMarks;
bdaae72ca   Neeraj Sharma   complete task of ...
567
568
569
570
571
572
  
                  allSubjectTotalMarks += this.filterData[data][item][i]
                    .totalMarks;
                  this.filterData[data][item][
                    i
                  ].allSubjectTotalMarks = allSubjectTotalMarks;
c62132b75   Shikha Mishra   invoice,progress-...
573
                }
bdaae72ca   Neeraj Sharma   complete task of ...
574

1d7227237   Neeraj Sharma   implement view ma...
575
                // this.totalMarks = totalMarks;
bdaae72ca   Neeraj Sharma   complete task of ...
576
577
578
579
580
581
582
583
584
585
586
587
588
                if (totalMarks > 90) {
                  this.filterData[data][item].grade = this.gradeAPlus;
                } else if (totalMarks > 80 && totalMarks < 90) {
                  this.filterData[data][item].grade = this.gradeA;
                } else if (totalMarks > 70 && totalMarks < 80) {
                  this.filterData[data][item].grade = this.gradeBPlus;
                } else if (totalMarks > 60 && totalMarks < 70) {
                  this.filterData[data][item].grade = this.gradeB;
                } else if (totalMarks > 50 && totalMarks < 60) {
                  this.filterData[data][item].grade = this.gradeCPlus;
                } else if (totalMarks > 40 && totalMarks < 50) {
                  this.filterData[data][item].grade = this.gradeC;
                }
79583580d   Neeraj Sharma   implement task ma...
589
590
              }
            }
bdaae72ca   Neeraj Sharma   complete task of ...
591
            // console.log("this.filterData-----------last", this.filterData);
1d7227237   Neeraj Sharma   implement view ma...
592

c62132b75   Shikha Mishra   invoice,progress-...
593
            this.showLoader = false;
79583580d   Neeraj Sharma   implement task ma...
594
595
596
597
598
          })
          .catch(error => {
            // console.log("err====>", err);
            this.showLoader = false;
            this.snackbar = true;
710438de6   Shikha Mishra   added teacher mod...
599
600
601
602
603
604
            // this.text = error.response.data.message;
            // if (error.response.status === 401) {
            //   this.$router.replace({ path: "/" });
            //   this.$store.dispatch("setToken", null);
            //   this.$store.dispatch("Id", null);
            // }
79583580d   Neeraj Sharma   implement task ma...
605
          });
ec5677f43   Neeraj Sharma   implement print o...
606
      },
d4735dce7   Shikha Mishra   show school logo ...
607
      printProgressReport() {
240f5da2c   Neeraj Sharma   test progress card
608
609
610
611
612
613
        this.printLoader = true;
        setTimeout(() => {
          // Pass the element id here
          this.$htmlToPaper("printMe");
          this.printLoader = false;
        }, 4000);
c0b01ae20   Neeraj Sharma   solve bugs in pro...
614
615
616
617
618
619
620
621
      },
      getUserData() {
        http()
          .get("/getParticularUserDetail")
          .then(response => {
            this.userData = response.data.data;
          })
          .catch(error => {
25205ccca   Shikha Mishra   show school logo ...
622
623
624
625
626
            // if (error.response.status === 401) {
            //   this.$router.replace({ path: "/" });
            //   this.$store.dispatch("setToken", null);
            //   this.$store.dispatch("Id", null);
            // }
c0b01ae20   Neeraj Sharma   solve bugs in pro...
627
          });
006544386   Neeraj Sharma   implement task
628
      }
006544386   Neeraj Sharma   implement task
629
630
631
    }
  };
  </script>
79583580d   Neeraj Sharma   implement task ma...
632

006544386   Neeraj Sharma   implement task
633
  <style scoped>
79583580d   Neeraj Sharma   implement task ma...
634
635
636
637
638
639
640
641
  table {
    border-collapse: collapse;
    border: 1px solid #e2e7eb;
  }
  
  th,
  td {
    border: 1px solid #e2e7eb;
a76a6f135   Neeraj Sharma   implelement task
642
    padding: 0px;
79583580d   Neeraj Sharma   implement task ma...
643
    text-align: center;
006544386   Neeraj Sharma   implement task
644
  }
79583580d   Neeraj Sharma   implement task ma...
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
  table.feeTypeTable {
    table-layout: auto !important;
    width: 100% !important;
  }
  .bg-sky {
    background-color: #98b2cc !important;
  }
  .bg-sky-light {
    background-color: #89a0b8;
  }
  .bg-purple {
    background-color: #9583ac;
  }
  .bg-skyDark {
    background-color: #956785;
  }
46993dc1d   Shikha Mishra   solve issue login
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
  
  /* .report {
    overflow: hidden;
    max-width: 794px;
    margin: 0px auto;
    margin-bottom: 10px;
    padding: 30px;
  } */
  .line {
    border-bottom: 1px solid #ddd;
    overflow: hidden;
    padding-bottom: 10px;
    vertical-align: middle;
    margin-bottom: 4px;
  }
  .school-logo {
    float: left;
  }
  .school-name {
    box-sizing: border-box;
  }
  .school-info {
    width: 100%;
    overflow: hidden;
  }
  .school-address {
    float: left;
    width: 40%;
  }
  .student-data {
    float: right;
    width: 40%;
  }
  .student-info {
    float: left;
  }
79583580d   Neeraj Sharma   implement task ma...
697
698
  @media screen and (max-width: 380px) {
    .tableRsponsive {
d4735dce7   Shikha Mishra   show school logo ...
699
      /* display: block; */
79583580d   Neeraj Sharma   implement task ma...
700
701
702
      position: relative;
      overflow: scroll;
    }
006544386   Neeraj Sharma   implement task
703
  }
79583580d   Neeraj Sharma   implement task ma...
704
  </style> s