Blame view

src/pages/Dashboard.vue 12 KB
93a68cfa1   Jatinder Singh   first commit
1
2
  <template>
  <v-tabs
ee83012b3   Jatinder Singh   changes
3
4
   grow
   slider-color="black"
93a68cfa1   Jatinder Singh   first commit
5
  >
ee83012b3   Jatinder Singh   changes
6
7
  
    <v-tab ripple @click="activeTab('existing')" v-bind:class="{ active: isActive }" id="tab">
93a68cfa1   Jatinder Singh   first commit
8
9
      Existing user
    </v-tab>
ee83012b3   Jatinder Singh   changes
10
11
    
    <v-tab ripple @click="activeTab('new')" v-bind:class="{ active: newActive }" id="tab1">
93a68cfa1   Jatinder Singh   first commit
12
13
      Add New Users
    </v-tab>
ee83012b3   Jatinder Singh   changes
14

93a68cfa1   Jatinder Singh   first commit
15
    <v-tab-item>
c35a8dafd   Jatinder Singh   minor changes
16
17
18
19
20
21
22
23
       <v-dialog v-model="dialog" max-width="500px">
       <v-toolbar color="white">
         <v-spacer></v-spacer>
         <v-toolbar-title>Edit Profile</v-toolbar-title>
         <v-spacer></v-spacer>
         </v-toolbar>
        <v-card>
        <v-flex align-center justify-center layout text-xs-center>
8fc85e8ec   Jatinder Singh   data table changes
24
        <v-avatar size="50px" style="position:absolute; top:10px; "> 
269061695   Jatinder Singh   changes
25
        <img src="/static/icon/user.png"/> </v-avatar> 
c35a8dafd   Jatinder Singh   minor changes
26
27
       </v-flex>  
            <v-card-text>
e2e46164f   Jatinder Singh   edit profile changes
28
            <v-container>
c35a8dafd   Jatinder Singh   minor changes
29
            <v-layout wrap justify-center>
e2e46164f   Jatinder Singh   edit profile changes
30
          <v-flex xs12 sm9>
c35a8dafd   Jatinder Singh   minor changes
31
            <v-form>
e2e46164f   Jatinder Singh   edit profile changes
32
33
34
35
36
37
38
39
     
      <v-layout style="position:relative; top:15px;">
        <v-flex xs4 class="pt-4 subheading">
        <label>First Name: </label>
        </v-flex>
        <v-flex xs8>
        <v-text-field
        v-model="editedItem.Name"
269061695   Jatinder Singh   changes
40
        v-validate="'required'"
e2e46164f   Jatinder Singh   edit profile changes
41
        :rules="nameRules"
c35a8dafd   Jatinder Singh   minor changes
42
        data-vv-name="Name"
e2e46164f   Jatinder Singh   edit profile changes
43
44
45
46
47
48
49
        required
        ></v-text-field></v-flex></v-layout>
         <v-layout>
        <v-flex xs4 class="pt-4 subheading">
        <label>Last Name: </label>
        </v-flex>
        <v-flex xs8>
c35a8dafd   Jatinder Singh   minor changes
50
        <v-text-field
c35a8dafd   Jatinder Singh   minor changes
51
        v-model="editedItem.LName"
e2e46164f   Jatinder Singh   edit profile changes
52
53
54
55
56
57
58
59
60
61
62
63
64
        v-validate="'required'"
        :rules="lnameRules"
        data-vv-name="Name"
        required
        ></v-text-field></v-flex></v-layout>
       
       <v-layout>
        <v-flex xs4 class="pt-4 subheading">
        <label>Email ID: </label>
        </v-flex>
        <v-flex xs8>
        <v-text-field
        v-model="editedItem.Email"
c35a8dafd   Jatinder Singh   minor changes
65
        v-validate="'required|email'"
e2e46164f   Jatinder Singh   edit profile changes
66
67
68
69
70
71
72
73
74
75
76
77
78
        :rules="emailRules"
        data-vv-name="E-mail"
        required
        ></v-text-field></v-flex></v-layout>
         <v-layout>
        <v-flex xs4 class="pt-4 subheading">
        <label>Date of Birth: </label>
        </v-flex>
        <v-flex xs8>
        <v-text-field
        v-model="editedItem.DOB"
       :rules="[rules.required, rules.min]"
        ></v-text-field></v-flex></v-layout>
c35a8dafd   Jatinder Singh   minor changes
79
80
81
82
83
84
85
86
      <v-card-actions>
  
        <v-btn round dark @click.native="close">Cancel</v-btn>
        <v-spacer></v-spacer>
        <v-btn round dark @click.native="save">Save</v-btn>
       
        </v-card-actions>
      </v-form>
e2e46164f   Jatinder Singh   edit profile changes
87
          </v-flex>
c35a8dafd   Jatinder Singh   minor changes
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
  </v-layout>
  </v-container>
  </v-card-text>
  </v-card>
  </v-dialog>
  
  <v-dialog v-model="dialog1" max-width="500px">
         <v-toolbar color="white">
         <v-spacer></v-spacer>
         <v-toolbar-title>Profile</v-toolbar-title>
         <v-spacer></v-spacer>
         <v-icon @click="close1">close</v-icon>
         </v-toolbar>
         
  
        <v-card>
        <v-flex align-center justify-center layout text-xs-center>
e2e46164f   Jatinder Singh   edit profile changes
105
        <v-avatar size="50px" style="position:absolute; top:20px;"> 
269061695   Jatinder Singh   changes
106
        <img src="/static/icon/user.png"/> </v-avatar> 
c35a8dafd   Jatinder Singh   minor changes
107
108
109
110
       </v-flex>  
   <v-card-text>
      <v-container grid-list-md>
        <v-layout wrap justify-center>
e2e46164f   Jatinder Singh   edit profile changes
111
          <v-flex offset-xs3 id="flex">
c35a8dafd   Jatinder Singh   minor changes
112
113
            
            <br><br>
e2e46164f   Jatinder Singh   edit profile changes
114
            <table style="position:absolute; top:110px;">
c35a8dafd   Jatinder Singh   minor changes
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
              <th>
                <tr><h5><b>First Name:</b></h5></tr><br>
                <tr><h5><b>Last Name:</b></h5></tr><br>
                <tr><h5><b>Email:</b></h5></tr><br>
                <tr><h5><b>Date Of Birth:</b></h5></tr>
              </th>
              <th>
               <tr><td><h5><b>{{ editedItem.Name }}</b></h5></td></tr><br>
              <tr> <td><h5><b>{{ editedItem.LName }}</b></h5></td></tr><br>
              <tr><td><h5><b>{{ editedItem.Email }}</b></h5></td></tr><br>
              <tr><td><h5><b>{{ editedItem.DOB }}</b></h5></td></tr>
              </th>
              
          
            </table>
          </v-flex>
        </v-layout>
      </v-container>
      </v-card-text>
      </v-card>
  </v-dialog>
c35a8dafd   Jatinder Singh   minor changes
136

269061695   Jatinder Singh   changes
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
  <v-dialog v-model="dialog2" max-width="800px">
   
    <v-card>
       <div id="dialog">
       <h4><b> Report </b> </h4>
       <h5 id="name"><b>Patient Name:</b> {{ editedItem.Name+' '+editedItem.LName }}</h5>
       <h5 id="m">Select Month:</h5>
       <v-btn flat id="G">Generate</v-btn>
     <v-spacer></v-spacer>
         <v-icon id="icon" @click="close2">close</v-icon>
         <span id="bt">
           <v-btn flat>1 month</v-btn>
           <v-btn flat>3 Month</v-btn>
           <v-btn flat>6 Month</v-btn>
           <v-btn flat>12 Month</v-btn>
789f8298f   Jatinder Singh   change
152
           <img id="e" @click="mail" src="/static/icon/email1.png"/>
269061695   Jatinder Singh   changes
153
      
789f8298f   Jatinder Singh   change
154
           <img id="d" @click="download" src="/static/icon/download1.png"/>
269061695   Jatinder Singh   changes
155
         </span>
8fc85e8ec   Jatinder Singh   data table changes
156
157
158
         <v-card-text>
           <h5 style="position: absolute; top:275px; left:270px"><b>Select month to generate report</b></h5>
         </v-card-text>
269061695   Jatinder Singh   changes
159
160
         </div>
      </v-card>
269061695   Jatinder Singh   changes
161
  </v-dialog>
93a68cfa1   Jatinder Singh   first commit
162
        <v-data-table
c35a8dafd   Jatinder Singh   minor changes
163
164
          :headers="headers"
          :items="desserts"
c35a8dafd   Jatinder Singh   minor changes
165
166
        >
          <template slot="items" slot-scope="props">
e2e46164f   Jatinder Singh   edit profile changes
167
168
169
            <td id="td" class="text-xs-center">{{ props.item.No }}</td>
            <td id="td" class="text-xs-center">{{ props.item.Name+' '+props.item.LName }}</td>
            <td id="td" class="text-xs-center">{{ props.item.Email }}</td>
269061695   Jatinder Singh   changes
170
171
            
        
4413a8d93   Jatinder Singh   changes
172
            <td class="text-xs-center">
269061695   Jatinder Singh   changes
173
174
            
             <span>
4413a8d93   Jatinder Singh   changes
175
176
177
            <img style="cursor:pointer; height:20px; " class="mr-5" @click="report(props.item)" src="/static/icon/List1.png"/>
            <img style="cursor:pointer; width:25px; height:18px; " class="mr-5" @click="profile(props.item)" src="/static/icon/eye1.png"/>
            <img style="cursor:pointer; width:20px; height:18px; " class="mr-5" @click="editItem(props.item)" src="/static/icon/edit1.png"/>
269061695   Jatinder Singh   changes
178
179
            <img style="cursor:pointer; height:20px; " class="mr-2" @click="deleteItem(props.item)" src="/static/icon/delete1.png"/>
            </span>
c35a8dafd   Jatinder Singh   minor changes
180
            </td>
269061695   Jatinder Singh   changes
181
            
c35a8dafd   Jatinder Singh   minor changes
182
          </template>
4413a8d93   Jatinder Singh   changes
183
          
c35a8dafd   Jatinder Singh   minor changes
184
        </v-data-table>
e2e46164f   Jatinder Singh   edit profile changes
185
        
93a68cfa1   Jatinder Singh   first commit
186
187
188
189
190
    </v-tab-item>
    <v-tab-item>
         <v-flex xs12 sm6 offset-sm3>
   
   
04e3fbc56   Jatinder Singh   minor fix
191
  <v-card flat>
04e3fbc56   Jatinder Singh   minor fix
192
    <v-container fluid fill-height>
93a68cfa1   Jatinder Singh   first commit
193
      <v-layout align-center>
04e3fbc56   Jatinder Singh   minor fix
194
195
        <v-flex xs12 sm8 offset-sm2> 
         <v-flex offset-sm5>
269061695   Jatinder Singh   changes
196
197
          <v-avatar size="55px"> 
          <img src="/static/icon/user.png"/> </v-avatar> 
04e3fbc56   Jatinder Singh   minor fix
198
        </v-flex>
c35a8dafd   Jatinder Singh   minor changes
199
  <v-form ref="form" v-model="valid" lazy-validation>
4413a8d93   Jatinder Singh   changes
200
201
      <v-layout>
        <v-flex xs4 class="pt-4 subheading">
e2e46164f   Jatinder Singh   edit profile changes
202
        <label>First Name: </label>
4413a8d93   Jatinder Singh   changes
203
204
205
206
207
208
209
210
211
212
213
214
215
216
        </v-flex>
        <v-flex xs8>
        <v-text-field
          v-model="Name"
          :rules="nameRules"
          required
        ></v-text-field>
        </v-flex>
      </v-layout>
      <v-layout>
      <v-flex xs4 class="pt-4 subheading">
      <label>Last Name: </label>
      </v-flex>
      <v-flex xs8>
c35a8dafd   Jatinder Singh   minor changes
217
      <v-text-field
4413a8d93   Jatinder Singh   changes
218
        :rules="lnameRules"
c35a8dafd   Jatinder Singh   minor changes
219
        v-model="LName"
c35a8dafd   Jatinder Singh   minor changes
220
221
        required
        ></v-text-field>
4413a8d93   Jatinder Singh   changes
222
223
224
225
        </v-flex>
        </v-layout>
        <v-layout>
      <v-flex xs4 class="pt-4 subheading">
e2e46164f   Jatinder Singh   edit profile changes
226
      <label>Email ID: </label>
4413a8d93   Jatinder Singh   changes
227
228
      </v-flex>
      <v-flex xs8>
c35a8dafd   Jatinder Singh   minor changes
229
      <v-text-field
c35a8dafd   Jatinder Singh   minor changes
230
        :rules="emailRules"
4413a8d93   Jatinder Singh   changes
231
        v-model="email"
c35a8dafd   Jatinder Singh   minor changes
232
        required
4413a8d93   Jatinder Singh   changes
233
234
235
236
237
238
239
240
241
        ></v-text-field>
        </v-flex>
        </v-layout>
      
       <v-layout>
      <v-flex xs4 class="pt-4 subheading">
      <label>Date of Birth: </label>
      </v-flex>
      <v-flex xs8>
93a68cfa1   Jatinder Singh   first commit
242
      <v-text-field
04e3fbc56   Jatinder Singh   minor fix
243
        :rules="[rules.required, rules.min]"
c35a8dafd   Jatinder Singh   minor changes
244
        v-model="DOB"
4413a8d93   Jatinder Singh   changes
245
246
247
248
249
        required
        ></v-text-field>
        </v-flex>
        </v-layout>
   <v-card-actions>
c35a8dafd   Jatinder Singh   minor changes
250
251
252
253
254
255
      <v-btn @click="clear" round dark>clear</v-btn>
          <v-spacer></v-spacer>
      <v-btn @click="submit" round dark> Add </v-btn>
  
  </v-card-actions>
    </v-form>
93a68cfa1   Jatinder Singh   first commit
256
257
258
259
260
  </v-flex>
  </v-layout>
  </v-container>
      </v-card>
         </v-flex>
c35a8dafd   Jatinder Singh   minor changes
261
    </v-tab-item> 
93a68cfa1   Jatinder Singh   first commit
262
263
264
265
266
267
  </v-tabs>
  
   
  </template>
  
  <script>
c35a8dafd   Jatinder Singh   minor changes
268
  import axios from 'axios';
93a68cfa1   Jatinder Singh   first commit
269
  export default {
93a68cfa1   Jatinder Singh   first commit
270
    data: () => ({
c35a8dafd   Jatinder Singh   minor changes
271
272
      No: '',
      Name: '',
04e3fbc56   Jatinder Singh   minor fix
273
      LName: '',
c35a8dafd   Jatinder Singh   minor changes
274
      Email: '',
93a68cfa1   Jatinder Singh   first commit
275
      DOB: '',
93a68cfa1   Jatinder Singh   first commit
276
277
      search: '',
      dialog: false,
c35a8dafd   Jatinder Singh   minor changes
278
279
280
      dialog1: false,
      dialog2: false,
      valid: true,
ee83012b3   Jatinder Singh   changes
281
282
      isActive: true,
      newActive: false,
4413a8d93   Jatinder Singh   changes
283
284
285
      // pagination: {
      //   rowsPerPage: 5
      // },
04e3fbc56   Jatinder Singh   minor fix
286
287
      rules: {
        required: value => !!value || 'This field is Required.',
ee83012b3   Jatinder Singh   changes
288
289
290
291
292
293
        min: v =>
          (/^(0?[1-9]|[12][0-9]|3[01])[\/\-](0?[1-9]|1[012])[\/\-]\d{4}$/.test(
            v
          ) &&
            v.length > 0) ||
          'Please enter a date in the format dd/mm/yyyy'
04e3fbc56   Jatinder Singh   minor fix
294
      },
4413a8d93   Jatinder Singh   changes
295
      nameRules: [v => !!v || ' First Name is required'],
c35a8dafd   Jatinder Singh   minor changes
296
297
298
299
300
      email: '',
      emailRules: [
        v => !!v || 'E-mail is required',
        v => /.+@.+/.test(v) || 'E-mail must be valid'
      ],
4413a8d93   Jatinder Singh   changes
301
      lnameRules: [v => !!v || ' Last Name is required'],
93a68cfa1   Jatinder Singh   first commit
302
303
304
      headers: [
        {
          text: 'No',
e2e46164f   Jatinder Singh   edit profile changes
305
          align: 'center',
93a68cfa1   Jatinder Singh   first commit
306
          sortable: false,
c35a8dafd   Jatinder Singh   minor changes
307
          value: 'No'
93a68cfa1   Jatinder Singh   first commit
308
        },
e2e46164f   Jatinder Singh   edit profile changes
309
310
311
        { text: 'Name', value: 'Name', sortable: false, align: 'center' },
        { text: 'Email', value: 'Email', sortable: false, align: 'center' },
        { text: '', value: '', sortable: false, align: 'center' }
c35a8dafd   Jatinder Singh   minor changes
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
      ],
      desserts: [
        {
          No: 1,
          Name: 'Amit',
          LName: 'goyal',
          Email: 'jsi@gmail.com',
          DOB: '22/09/1996'
        },
        {
          No: 2,
          Name: 'Sumit',
          LName: 'kumar',
          Email: 'aasi@gmail.com',
          DOB: '16/09/1997'
e2e46164f   Jatinder Singh   edit profile changes
327
        }
93a68cfa1   Jatinder Singh   first commit
328
      ],
93a68cfa1   Jatinder Singh   first commit
329
330
331
332
      editedIndex: -1,
      editedItem: {
        No: '',
        Name: '',
c35a8dafd   Jatinder Singh   minor changes
333
        LName: '',
ee83012b3   Jatinder Singh   changes
334
        Email: ''
93a68cfa1   Jatinder Singh   first commit
335
336
337
338
      },
      defaultItem: {
        No: '',
        Name: '',
c35a8dafd   Jatinder Singh   minor changes
339
        LName: '',
ee83012b3   Jatinder Singh   changes
340
        Email: ''
c35a8dafd   Jatinder Singh   minor changes
341
      }
93a68cfa1   Jatinder Singh   first commit
342
    }),
4413a8d93   Jatinder Singh   changes
343
344
345
346
347
348
349
350
    // computed: {
    //   pages () {
    //     if (this.pagination.rowsPerPage == null ||
    //       this.pagination.totalItems == null
    //     ) return 0;
    //     return Math.ceil(this.pagination.totalItems / this.pagination.rowsPerPage);
    //   }
    // },
93a68cfa1   Jatinder Singh   first commit
351
    methods: {
93a68cfa1   Jatinder Singh   first commit
352
353
354
355
356
      editItem (item) {
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog = true;
      },
c35a8dafd   Jatinder Singh   minor changes
357
358
359
360
361
362
363
364
365
      profile (item) {
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog1 = true;
      },
      report (item) {
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog2 = true;
a259e694f   Jatinder Singh   minor change
366
      },
93a68cfa1   Jatinder Singh   first commit
367
368
369
370
371
372
  
      deleteItem (item) {
        const index = this.desserts.indexOf(item);
        confirm('Are you sure you want to delete this item?') &&
          this.desserts.splice(index, 1);
      },
ee83012b3   Jatinder Singh   changes
373
374
375
376
377
378
379
380
381
382
383
384
385
      activeTab (type) {
        switch (type) {
          case 'existing':
            this.newActive = false;
            this.isActive = true;
            break;
  
          default:
            this.newActive = true;
            this.isActive = false;
            break;
        }
      },
93a68cfa1   Jatinder Singh   first commit
386
387
388
389
390
391
392
393
  
      close () {
        this.dialog = false;
        setTimeout(() => {
          this.editedItem = Object.assign({}, this.defaultItem);
          this.editedIndex = -1;
        }, 300);
      },
c35a8dafd   Jatinder Singh   minor changes
394
395
396
397
398
399
400
401
402
403
404
405
406
      close1 () {
        this.dialog1 = false;
      },
      close2 () {
        this.dialog2 = false;
      },
      submit () {
        if (this.$refs.form.validate()) {
          // Native form submission is not yet supported
          axios.post('/api/submit', {
            Name: this.Name,
            LName: this.LName,
            Email: this.Email,
ee83012b3   Jatinder Singh   changes
407
            DOB: this.DOB
c35a8dafd   Jatinder Singh   minor changes
408
409
410
          });
        }
      },
789f8298f   Jatinder Singh   change
411
      mail () {
4413a8d93   Jatinder Singh   changes
412
        // this.editedIndex = this.desserts.indexOf();
789f8298f   Jatinder Singh   change
413
414
      },
      download () {
4413a8d93   Jatinder Singh   changes
415
416
        // this.editedIndex = this.desserts.indexOf();
      
789f8298f   Jatinder Singh   change
417
      },
ee83012b3   Jatinder Singh   changes
418
419
420
      clear () {
        this.$refs.form.reset();
      },
93a68cfa1   Jatinder Singh   first commit
421
422
423
424
425
426
427
428
      save () {
        if (this.editedIndex > -1) {
          Object.assign(this.desserts[this.editedIndex], this.editedItem);
        } else {
          this.desserts.push(this.editedItem);
        }
        this.close();
      }
4413a8d93   Jatinder Singh   changes
429
    },
93a68cfa1   Jatinder Singh   first commit
430
  };
93a68cfa1   Jatinder Singh   first commit
431
  </script>
04e3fbc56   Jatinder Singh   minor fix
432
  <style scoped>
ee83012b3   Jatinder Singh   changes
433
  .v-card__actions .v-btn {
04e3fbc56   Jatinder Singh   minor fix
434
435
436
    margin: 0 15px;
    min-width: 120px;
  }
8fc85e8ec   Jatinder Singh   data table changes
437

ee83012b3   Jatinder Singh   changes
438
439
440
441
442
  h4 {
    background-repeat: no-repeat;
    padding: 8px;
    margin: auto;
    font-size: 25px;
269061695   Jatinder Singh   changes
443
  }
ee83012b3   Jatinder Singh   changes
444
445
446
447
  #name {
    position: absolute;
    left: 100px;
    top: 17px;
269061695   Jatinder Singh   changes
448
  }
ee83012b3   Jatinder Singh   changes
449
  #icon {
269061695   Jatinder Singh   changes
450
451
452
453
    position: absolute;
    right: 8px;
    top: 8px;
  }
ee83012b3   Jatinder Singh   changes
454
  #m {
269061695   Jatinder Singh   changes
455
456
457
458
    position: relative;
    left: 135px;
    top: -11px;
  }
ee83012b3   Jatinder Singh   changes
459
460
461
  #G {
    position: absolute;
    top: 38px;
269061695   Jatinder Singh   changes
462
  }
ee83012b3   Jatinder Singh   changes
463
  #bt {
269061695   Jatinder Singh   changes
464
    position: relative;
ee83012b3   Jatinder Singh   changes
465
466
    top: -20px;
    left: 115px;
269061695   Jatinder Singh   changes
467
  }
ee83012b3   Jatinder Singh   changes
468
469
470
  #e {
    position: relative;
    right: -110px;
269061695   Jatinder Singh   changes
471
472
473
    height: 17px;
    cursor: pointer;
  }
ee83012b3   Jatinder Singh   changes
474
475
476
477
478
  #d {
    position: relative;
    right: -150px;
    height: 17px;
    cursor: pointer;
269061695   Jatinder Singh   changes
479
480
  }
  #td {
ee83012b3   Jatinder Singh   changes
481
482
483
    border: 1px solid #dddddd;
    text-align: left;
    padding: 8px;
269061695   Jatinder Singh   changes
484
  }
ee83012b3   Jatinder Singh   changes
485
486
487
488
489
490
  #dialog {
    height: 550px;
  }
  .active {
    background-color: black;
    color: white !important;
269061695   Jatinder Singh   changes
491
  }
e2e46164f   Jatinder Singh   edit profile changes
492
493
494
  #flex{
    height: 300px;
  }
04e3fbc56   Jatinder Singh   minor fix
495
  </style>