Blame view

src/pages/Dashboard.vue 9.72 KB
93a68cfa1   Jatinder Singh   first commit
1
2
  <template>
  <v-tabs
04e3fbc56   Jatinder Singh   minor fix
3
    slider-color="black"
93a68cfa1   Jatinder Singh   first commit
4
  >
04e3fbc56   Jatinder Singh   minor fix
5
   <v-spacer></v-spacer>
93a68cfa1   Jatinder Singh   first commit
6
7
8
9
10
11
12
13
14
    <v-tab ripple>
      Existing user
    </v-tab>
    <v-spacer></v-spacer>
    <v-tab ripple>
      Add New Users
    </v-tab>
    <v-spacer></v-spacer>
    <v-tab-item>
c35a8dafd   Jatinder Singh   minor changes
15
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>
        <v-avatar size="40px" style="position:absolute; top:10px; "> 
269061695   Jatinder Singh   changes
24
        <img src="/static/icon/user.png"/> </v-avatar> 
c35a8dafd   Jatinder Singh   minor changes
25
26
27
28
29
30
31
32
       </v-flex>  
            <v-card-text>
            <v-container grid-list-md>
            <v-layout wrap justify-center>
            <v-flex xs12 sm9> 
            <v-form>
      <v-text-field
        v-model="editedItem.Name" 
269061695   Jatinder Singh   changes
33
        v-validate="'required'"
c35a8dafd   Jatinder Singh   minor changes
34
35
36
37
38
39
        :error-messages="errors.collect('Name')"
        label="First Name"
        data-vv-name="Name"
        required >
      </v-text-field>
        <v-text-field
269061695   Jatinder Singh   changes
40
        v-validate="'required'"
c35a8dafd   Jatinder Singh   minor changes
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
        v-model="editedItem.LName"
        :error-messages="errors.collect('name')"
        label="Last Name"
        data-vv-name="name"
        required>
      </v-text-field>
      <v-text-field
        v-model="editedItem.Email" 
        v-validate="'required|email'"
        :error-messages="errors.collect('email')"
        label="E-mail"
        data-vv-name="email"
        required>
      </v-text-field>
      <v-text-field
         v-model="editedItem.DOB" 
         label="Date of Birth"
        :rules="[rules.required, rules.min]"
         >
      </v-text-field>
      <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>
  </v-flex>
  </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>
        <v-avatar size="40px" style="position:absolute; top:10px;"> 
269061695   Jatinder Singh   changes
88
        <img src="/static/icon/user.png"/> </v-avatar> 
c35a8dafd   Jatinder Singh   minor changes
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
       </v-flex>  
   <v-card-text>
      <v-container grid-list-md>
        <v-layout wrap justify-center>
          <v-flex offset-xs3>
            
            <br><br>
            <table>
              <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
118

269061695   Jatinder Singh   changes
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
  <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>
           <img id="e" @click="" src="/static/avatar/email1.png"/>
      
           <img id="d" @click="" src="/static/avatar/download1.png"/>
         </span>
         </div>
      </v-card>
c35a8dafd   Jatinder Singh   minor changes
140
    
269061695   Jatinder Singh   changes
141
  </v-dialog>
93a68cfa1   Jatinder Singh   first commit
142
        <v-data-table
c35a8dafd   Jatinder Singh   minor changes
143
144
          :headers="headers"
          :items="desserts"
c35a8dafd   Jatinder Singh   minor changes
145
146
        >
          <template slot="items" slot-scope="props">
269061695   Jatinder Singh   changes
147
148
149
150
151
152
153
154
155
156
157
158
159
            <td id="td">{{ props.item.No }}</td>
            <td id="td">{{ props.item.Name+' '+props.item.LName }}</td>
            <td id="td">{{ props.item.Email }}</td>
            
        
            <td id="td" class="justify-center align-center layout px-0">
            
             <span>
            <img style="cursor:pointer; height:20px; " class="mr-2" @click="report(props.item)" src="/static/icon/List1.png"/>
            <img style="cursor:pointer; width:25px; height:18px; " class="mr-2" @click="profile(props.item)" src="/static/icon/eye1.png"/>
            <img style="cursor:pointer; width:20px; height:18px; " class="mr-2" @click="editItem(props.item)" src="/static/icon/edit1.png"/>
            <img style="cursor:pointer; height:20px; " class="mr-2" @click="deleteItem(props.item)" src="/static/icon/delete1.png"/>
            </span>
c35a8dafd   Jatinder Singh   minor changes
160
            </td>
269061695   Jatinder Singh   changes
161
            
c35a8dafd   Jatinder Singh   minor changes
162
163
          </template>
        </v-data-table>
93a68cfa1   Jatinder Singh   first commit
164
165
166
167
168
    </v-tab-item>
    <v-tab-item>
         <v-flex xs12 sm6 offset-sm3>
   
   
04e3fbc56   Jatinder Singh   minor fix
169
  <v-card flat>
c35a8dafd   Jatinder Singh   minor changes
170
       <!-- <v-card-text>Contents for Item 2 go here</v-card-text> -->
04e3fbc56   Jatinder Singh   minor fix
171
    <v-container fluid fill-height>
93a68cfa1   Jatinder Singh   first commit
172
      <v-layout align-center>
04e3fbc56   Jatinder Singh   minor fix
173
174
        <v-flex xs12 sm8 offset-sm2> 
         <v-flex offset-sm5>
269061695   Jatinder Singh   changes
175
176
          <v-avatar size="55px"> 
          <img src="/static/icon/user.png"/> </v-avatar> 
04e3fbc56   Jatinder Singh   minor fix
177
        </v-flex>
c35a8dafd   Jatinder Singh   minor changes
178
179
180
181
  <v-form ref="form" v-model="valid" lazy-validation>
      <v-text-field
        v-model="Name"
        :rules="nameRules"
269061695   Jatinder Singh   changes
182
        label="First Name"
c35a8dafd   Jatinder Singh   minor changes
183
        required
93a68cfa1   Jatinder Singh   first commit
184
185
      ></v-text-field>
      <v-text-field
c35a8dafd   Jatinder Singh   minor changes
186
187
188
189
190
191
        :rules="nameRules"
        v-model="LName"
        label="Last name"
        required
        ></v-text-field>
      <v-text-field
93a68cfa1   Jatinder Singh   first commit
192
        v-model="email"
c35a8dafd   Jatinder Singh   minor changes
193
        :rules="emailRules"
93a68cfa1   Jatinder Singh   first commit
194
        label="E-mail"
c35a8dafd   Jatinder Singh   minor changes
195
196
        required
      ></v-text-field>
93a68cfa1   Jatinder Singh   first commit
197
      <v-text-field
04e3fbc56   Jatinder Singh   minor fix
198
        :rules="[rules.required, rules.min]"
c35a8dafd   Jatinder Singh   minor changes
199
200
201
202
203
204
205
206
207
208
209
        label="Date of Birth"
        v-model="DOB"
        required >
        </v-text-field>
  <v-card-actions>
      <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
210
211
212
213
214
  </v-flex>
  </v-layout>
  </v-container>
      </v-card>
         </v-flex>
c35a8dafd   Jatinder Singh   minor changes
215
    </v-tab-item> 
93a68cfa1   Jatinder Singh   first commit
216
217
218
219
220
221
  </v-tabs>
  
   
  </template>
  
  <script>
c35a8dafd   Jatinder Singh   minor changes
222
  import axios from 'axios';
93a68cfa1   Jatinder Singh   first commit
223
  export default {
93a68cfa1   Jatinder Singh   first commit
224
    data: () => ({
c35a8dafd   Jatinder Singh   minor changes
225
226
      No: '',
      Name: '',
04e3fbc56   Jatinder Singh   minor fix
227
      LName: '',
c35a8dafd   Jatinder Singh   minor changes
228
      Email: '',
93a68cfa1   Jatinder Singh   first commit
229
      DOB: '',
04e3fbc56   Jatinder Singh   minor fix
230
      clear: '',
c35a8dafd   Jatinder Singh   minor changes
231
      submit: '',
93a68cfa1   Jatinder Singh   first commit
232
233
      search: '',
      dialog: false,
c35a8dafd   Jatinder Singh   minor changes
234
235
236
      dialog1: false,
      dialog2: false,
      valid: true,
04e3fbc56   Jatinder Singh   minor fix
237
238
239
      rules: {
        required: value => !!value || 'This field is Required.',
        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
240
      },
c35a8dafd   Jatinder Singh   minor changes
241
242
243
244
245
246
247
248
      nameRules: [
        v => !!v || 'Name is required',
      ],
      email: '',
      emailRules: [
        v => !!v || 'E-mail is required',
        v => /.+@.+/.test(v) || 'E-mail must be valid'
      ],
93a68cfa1   Jatinder Singh   first commit
249
250
251
252
253
      headers: [
        {
          text: 'No',
          align: 'left',
          sortable: false,
c35a8dafd   Jatinder Singh   minor changes
254
          value: 'No'
93a68cfa1   Jatinder Singh   first commit
255
256
257
        },
        { text: 'Name', value: 'Name', sortable: false },
        { text: 'Email', value: 'Email', sortable: false },
269061695   Jatinder Singh   changes
258
      
c35a8dafd   Jatinder Singh   minor changes
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
      ],
      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'
        }
93a68cfa1   Jatinder Singh   first commit
275
      ],
93a68cfa1   Jatinder Singh   first commit
276
277
278
279
      editedIndex: -1,
      editedItem: {
        No: '',
        Name: '',
c35a8dafd   Jatinder Singh   minor changes
280
        LName: '',
93a68cfa1   Jatinder Singh   first commit
281
282
283
284
285
        Email: '',
      },
      defaultItem: {
        No: '',
        Name: '',
c35a8dafd   Jatinder Singh   minor changes
286
        LName: '',
93a68cfa1   Jatinder Singh   first commit
287
        Email: '',
c35a8dafd   Jatinder Singh   minor changes
288
      }
93a68cfa1   Jatinder Singh   first commit
289
    }),
93a68cfa1   Jatinder Singh   first commit
290
    methods: {
93a68cfa1   Jatinder Singh   first commit
291
292
293
294
295
      editItem (item) {
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog = true;
      },
c35a8dafd   Jatinder Singh   minor changes
296
297
298
299
300
301
302
303
304
      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
305
      },
93a68cfa1   Jatinder Singh   first commit
306
307
308
309
310
311
312
313
314
315
316
317
318
319
  
      deleteItem (item) {
        const index = this.desserts.indexOf(item);
        confirm('Are you sure you want to delete this item?') &&
          this.desserts.splice(index, 1);
      },
  
      close () {
        this.dialog = false;
        setTimeout(() => {
          this.editedItem = Object.assign({}, this.defaultItem);
          this.editedIndex = -1;
        }, 300);
      },
c35a8dafd   Jatinder Singh   minor changes
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
      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,
            DOB: this.DOB,
  
          });
        }
      },
269061695   Jatinder Singh   changes
338
339
340
      // clear () {
      //   this.$refs.form.reset();
      // },
c35a8dafd   Jatinder Singh   minor changes
341
   
93a68cfa1   Jatinder Singh   first commit
342
343
344
345
346
347
348
349
350
  
      save () {
        if (this.editedIndex > -1) {
          Object.assign(this.desserts[this.editedIndex], this.editedItem);
        } else {
          this.desserts.push(this.editedItem);
        }
        this.close();
      }
93a68cfa1   Jatinder Singh   first commit
351
352
353
354
    }
  };
  
  </script>
04e3fbc56   Jatinder Singh   minor fix
355
356
357
358
359
  <style scoped>
  .v-card__actions .v-btn{
    margin: 0 15px;
    min-width: 120px;
  }
269061695   Jatinder Singh   changes
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
  h4{
      background-repeat: no-repeat;
      padding: 8px;
      margin: auto;
      font-size: 25px;
  }
  #name{
  position: absolute;
  left: 100px;
  top: 17px
  }
  #icon{
    position: absolute;
    right: 8px;
    top: 8px;
  }
  #m{
    position: relative;
    left: 135px;
    top: -11px;
  }
  #G{
   position: absolute;
   top: 38px;
  }
  #bt{
    position: relative;
     top: -20px;
     left:115px;
  }
  #e{
   position: relative;
   right: -110px;
    height: 17px;
    cursor: pointer;
  }
  #d{
   position: relative;
   right: -150px;
   height: 17px;
   cursor: pointer;
  }
  #td {
      border: 1px solid #dddddd;
      text-align: left;
      padding: 8px;
  }
  #dialog{
    height:550px;
    
  }
04e3fbc56   Jatinder Singh   minor fix
411
  </style>