Blame view

src/pages/Provider.vue 12 KB
93a68cfa1   Jatinder Singh   first commit
1
  <template>
eba96ec51   Neeraj Sharma   set login name on...
2
    <v-flex xs12>
f7979ec1a   Neeraj Sharma   add seach in heal...
3
      <app-toolbar class="app--toolbar"></app-toolbar> 
eba96ec51   Neeraj Sharma   set login name on...
4
5
6
7
8
9
10
      <v-card>
        <v-card-title>
          <v-flex xs12 lg2 md3 sm4>
            <h4 class="text-xs-center">Healthcare Providers</h4>
          </v-flex>
          <v-spacer></v-spacer>
          <!-- SEARCH ALL HEALTH PROVIDER -->
659b42db7   Neeraj Sharma   changes something...
11
          <v-flex xs12 sm4 lg3 class="top">
eba96ec51   Neeraj Sharma   set login name on...
12
13
14
            <v-text-field
              justify-right
              prepend-icon="search"
d6b5a579c   Neeraj Sharma   add seach in heal...
15
              v-model="term"
eba96ec51   Neeraj Sharma   set login name on...
16
17
              label="Find Yours Users"
              color="black"
d6b5a579c   Neeraj Sharma   add seach in heal...
18
              @change="getProviderList"
eba96ec51   Neeraj Sharma   set login name on...
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
            ></v-text-field>
          </v-flex>
        </v-card-title>
        <!-- EDIT HEALTH PROVIDER -->
        <v-snackbar
          :timeout="timeout"
          :top="y === 'top'"
          :right="x === 'right'"
          :vertical="mode === 'vertical'"
          v-model="snackbar"
          color="success"
        >{{ text }}</v-snackbar>
        <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="50px" style="position:absolute; top:10px; ">
                <img src="/static/icon/user.png">
              </v-avatar>
            </v-flex>
93a68cfa1   Jatinder Singh   first commit
43
            <v-card-text>
eba96ec51   Neeraj Sharma   set login name on...
44
              <v-container grid-list-md>
03dcbf0c1   Neeraj Sharma   fix all api and r...
45
                <v-layout wrap justify-center>
eba96ec51   Neeraj Sharma   set login name on...
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
88
                  <v-flex xs12 sm9>
                    <v-form ref="form" v-model="valid" lazy-validation>
                      <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" :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>
                          <v-text-field v-model="editedItem.lastname" 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"
                            :rules="emailRules"
                            data-vv-name="E-mail"
                            required
                          ></v-text-field>
                        </v-flex>
                      </v-layout>
                      <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>
dd4ecae1d   Neeraj Sharma   search very fast ...
89
        <!-- VIEW PROFILE OF PRVIDE LIST -->
eba96ec51   Neeraj Sharma   set login name on...
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
        <v-dialog v-model="dialog1" max-width="700px">
          <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="60px" style="position:absolute; top:10px;">
                <img src="/static/icon/user.png">
              </v-avatar>
            </v-flex>
            <v-card-text>
              <v-container grid-list-md>
                <v-layout wrap justify-center>
                  <v-flex sm12 offset-sm3>
                    <br>
                    <br>
                    <v-layout>
                      <v-flex xs4>
                        <h5 class="right">First Name:</h5>
03dcbf0c1   Neeraj Sharma   fix all api and r...
112
113
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
114
115
116
                        <h5 class="left">{{ editedItem.name }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
117
                    <v-layout>
eba96ec51   Neeraj Sharma   set login name on...
118
119
                      <v-flex xs4>
                        <h5 class="right my-3">Last Name:</h5>
03dcbf0c1   Neeraj Sharma   fix all api and r...
120
121
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
122
123
124
                        <h5 class="my-3 left">{{ editedItem.name }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
125
                    <v-layout>
eba96ec51   Neeraj Sharma   set login name on...
126
127
                      <v-flex xs4>
                        <h5 class="right">Email:</h5>
03dcbf0c1   Neeraj Sharma   fix all api and r...
128
129
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
130
131
132
                        <h5 class="left">{{ editedItem.email }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
133
134
135
                  </v-flex>
                </v-layout>
              </v-container>
eba96ec51   Neeraj Sharma   set login name on...
136
137
            </v-card-text>
          </v-card>
dd4ecae1d   Neeraj Sharma   search very fast ...
138
          <!-- PROVIDER DATA TABLE OF PROVIDER DEATILS -->
eba96ec51   Neeraj Sharma   set login name on...
139
140
141
142
        </v-dialog>
        <v-data-table
          :headers="headers"
          :items="desserts"
eba96ec51   Neeraj Sharma   set login name on...
143
144
145
146
147
148
149
150
151
152
153
154
          class="elevation-1"
          :pagination.sync="pagination"
        >
          <template slot="items" slot-scope="props">
            <v-snackbar
              :timeout="timeout"
              :top="y === 'top'"
              :right="x === 'right'"
              :vertical="mode === 'vertical'"
              v-model="statussnackbar"
              color="success"
            >{{ text }}</v-snackbar>
03dcbf0c1   Neeraj Sharma   fix all api and r...
155
156
157
158
159
            <td id="td" class="text-xs-center">{{ props.index }}</td>
            <td id="td" class="text-xs-center">{{ props.item.name}}</td>
            <td id="td" class="text-xs-center">{{ props.item.email }}</td>
            <td id="td" class="text-xs-center">
              <v-flex xs12 sm12>
eba96ec51   Neeraj Sharma   set login name on...
160
161
162
163
164
165
166
167
168
                <v-select
                  :items="statusList"
                  @change="changeswitch(props.item)"
                  v-model="props.item.e1"
                  menu-props="auto"
                  :label="props.item.verified"
                  hide-details
                  single-line
                ></v-select>
c1fd43e24   Jatinder Singh   changes
169
              </v-flex>
eba96ec51   Neeraj Sharma   set login name on...
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
            </td>
            <td class="text-xs-center">
              <span>
                <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"
                >
                <img
                  style="cursor:pointer; height:20px; "
                  class="mr-5"
                  @click="deleteItem(props.item)"
                  src="/static/icon/delete1.png"
                >
              </span>
            </td>
          </template>
          <v-alert
            slot="no-results"
            :value="true"
            color="error"
            icon="warning"
d6b5a579c   Neeraj Sharma   add seach in heal...
199
          >Your search for "{{ term }}" found no results.</v-alert>
eba96ec51   Neeraj Sharma   set login name on...
200
201
202
        </v-data-table>
      </v-card>
    </v-flex>
93a68cfa1   Jatinder Singh   first commit
203
204
  </template>
  <script>
eba96ec51   Neeraj Sharma   set login name on...
205
  import http from "@/Services/http.js";
f7979ec1a   Neeraj Sharma   add seach in heal...
206
  import AppToolbar from '@/components/AppToolbar';
93a68cfa1   Jatinder Singh   first commit
207
  export default {
f7979ec1a   Neeraj Sharma   add seach in heal...
208
209
210
    components: {
      AppToolbar,
    },
93a68cfa1   Jatinder Singh   first commit
211
    data: () => ({
03dcbf0c1   Neeraj Sharma   fix all api and r...
212
      snackbar: false,
eba96ec51   Neeraj Sharma   set login name on...
213
      statussnackbar: false,
03dcbf0c1   Neeraj Sharma   fix all api and r...
214
215
216
217
218
      y: "top",
      x: "right",
      mode: "",
      timeout: 3000,
      text: "",
eba96ec51   Neeraj Sharma   set login name on...
219
220
      valid: "",
      modaledit: false,
93a68cfa1   Jatinder Singh   first commit
221
222
      dialog: false,
      dialog1: false,
eba96ec51   Neeraj Sharma   set login name on...
223
      statusList: ["APPROVED", "DECLINED"],
d6b5a579c   Neeraj Sharma   add seach in heal...
224
      term:'',
eba96ec51   Neeraj Sharma   set login name on...
225
      e1: "",
c35a8dafd   Jatinder Singh   minor changes
226
      rules: {
eba96ec51   Neeraj Sharma   set login name on...
227
228
229
230
231
232
233
        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"
c35a8dafd   Jatinder Singh   minor changes
234
      },
eba96ec51   Neeraj Sharma   set login name on...
235
      nameRules: [v => !!v || " First Name is required"],
03dcbf0c1   Neeraj Sharma   fix all api and r...
236
      // lnameRules: [v => !!v || ' Last Name is required'],
e2e46164f   Jatinder Singh   edit profile changes
237
      emailRules: [
eba96ec51   Neeraj Sharma   set login name on...
238
239
        v => !!v || "E-mail is required",
        v => /.+@.+/.test(v) || "E-mail must be valid"
e2e46164f   Jatinder Singh   edit profile changes
240
      ],
5ac5570a9   Jatinder Singh   datatable changes
241
      pagination: {
eba96ec51   Neeraj Sharma   set login name on...
242
        rowsPerPage: 13
5ac5570a9   Jatinder Singh   datatable changes
243
      },
93a68cfa1   Jatinder Singh   first commit
244
      headers: [
eba96ec51   Neeraj Sharma   set login name on...
245
246
247
        {
          text: "No",
          align: "center",
93a68cfa1   Jatinder Singh   first commit
248
          sortable: false,
eba96ec51   Neeraj Sharma   set login name on...
249
          value: "no"
93a68cfa1   Jatinder Singh   first commit
250
        },
eba96ec51   Neeraj Sharma   set login name on...
251
252
253
254
        { text: "Name", value: "name", sortable: false, align: "center" },
        { text: "Email", value: "email", sortable: false, align: "center" },
        { text: "Status", value: "verified", sortable: false, align: "center" },
        { text: "", value: "", sortable: false }
93a68cfa1   Jatinder Singh   first commit
255
256
257
258
      ],
      desserts: [],
      editedIndex: -1,
      editedItem: {
eba96ec51   Neeraj Sharma   set login name on...
259
260
261
262
263
        No: "",
        Name: "",
        lastname: "",
        Email: "",
        dob: ""
93a68cfa1   Jatinder Singh   first commit
264
265
      },
      defaultItem: {
eba96ec51   Neeraj Sharma   set login name on...
266
267
268
269
270
271
        No: "",
        Name: "",
        lastname: "",
        Email: "",
        dob: ""
      }
93a68cfa1   Jatinder Singh   first commit
272
    }),
93a68cfa1   Jatinder Singh   first commit
273
    watch: {
eba96ec51   Neeraj Sharma   set login name on...
274
      dialog(val) {
93a68cfa1   Jatinder Singh   first commit
275
276
277
        val || this.close();
      }
    },
eba96ec51   Neeraj Sharma   set login name on...
278
    created() {
93a68cfa1   Jatinder Singh   first commit
279
280
      this.initialize();
    },
eba96ec51   Neeraj Sharma   set login name on...
281
    mounted() {
e173bab21   Jatinder Singh   api
282
283
      this.getProviderList();
    },
93a68cfa1   Jatinder Singh   first commit
284
    methods: {
eba96ec51   Neeraj Sharma   set login name on...
285
286
287
      getProviderList() {
        var token = this.$store.state.token;
        http()
d6b5a579c   Neeraj Sharma   add seach in heal...
288
          .get("/provider-list?term=" + this.term, {
eba96ec51   Neeraj Sharma   set login name on...
289
290
            headers: { Authorization: "Bearer " + token }
          })
e173bab21   Jatinder Singh   api
291
          .then(response => {
03dcbf0c1   Neeraj Sharma   fix all api and r...
292
            this.desserts = response.data.data.providerList;
eba96ec51   Neeraj Sharma   set login name on...
293
294
295
296
          })
          .catch(err => {
            console.log("err====>", err);
          });
e173bab21   Jatinder Singh   api
297
      },
eba96ec51   Neeraj Sharma   set login name on...
298
      initialize() {
03dcbf0c1   Neeraj Sharma   fix all api and r...
299
        this.desserts = [];
93a68cfa1   Jatinder Singh   first commit
300
      },
eba96ec51   Neeraj Sharma   set login name on...
301
      editItem(item) {
93a68cfa1   Jatinder Singh   first commit
302
303
304
305
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog = true;
      },
eba96ec51   Neeraj Sharma   set login name on...
306
      profile(item) {
a259e694f   Jatinder Singh   minor change
307
308
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
04e3fbc56   Jatinder Singh   minor fix
309
310
        this.dialog1 = true;
      },
eba96ec51   Neeraj Sharma   set login name on...
311
      changeswitch(item) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
312
        let addStatus = {
eba96ec51   Neeraj Sharma   set login name on...
313
314
          userId: item.userId,
          status: item.e1
03dcbf0c1   Neeraj Sharma   fix all api and r...
315
        };
eba96ec51   Neeraj Sharma   set login name on...
316
317
        http()
          .post("/approve-decline", addStatus)
03dcbf0c1   Neeraj Sharma   fix all api and r...
318
319
          .then(response => {
            if ((this.statussnackbar = true)) {
eba96ec51   Neeraj Sharma   set login name on...
320
              this.text = "Successfully change your status is" + " " + item.e1;
03dcbf0c1   Neeraj Sharma   fix all api and r...
321
322
323
324
325
326
327
            }
            this.getProviderList();
          })
          .catch(error => {
            console.log(error);
          });
      },
eba96ec51   Neeraj Sharma   set login name on...
328
      deleteItem(item) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
329
        let addUsers = {
eba96ec51   Neeraj Sharma   set login name on...
330
          userId: item.userId
03dcbf0c1   Neeraj Sharma   fix all api and r...
331
        };
eba96ec51   Neeraj Sharma   set login name on...
332
        http()
ac10393a4   Neeraj Sharma   add calender date...
333
          .post("/deleteProvider", confirm('Are you sure you want to delete this?') && addUsers)
03dcbf0c1   Neeraj Sharma   fix all api and r...
334
          .then(response => {
eba96ec51   Neeraj Sharma   set login name on...
335
            if ((this.snackbar = true)) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
336
              this.text = "Successfully delete Health Care Priovider";
eba96ec51   Neeraj Sharma   set login name on...
337
            }
03dcbf0c1   Neeraj Sharma   fix all api and r...
338
339
340
341
342
            this.getProviderList();
          })
          .catch(error => {
            console.log(error);
          });
93a68cfa1   Jatinder Singh   first commit
343
      },
eba96ec51   Neeraj Sharma   set login name on...
344
      close() {
93a68cfa1   Jatinder Singh   first commit
345
346
347
348
349
350
        this.dialog = false;
        setTimeout(() => {
          this.editedItem = Object.assign({}, this.defaultItem);
          this.editedIndex = -1;
        }, 300);
      },
eba96ec51   Neeraj Sharma   set login name on...
351
      close1() {
04e3fbc56   Jatinder Singh   minor fix
352
353
        this.dialog1 = false;
      },
93a68cfa1   Jatinder Singh   first commit
354

eba96ec51   Neeraj Sharma   set login name on...
355
356
      save() {
        let editUsers = {
ac10393a4   Neeraj Sharma   add calender date...
357
          name: this.editedItem.name + " " + this.editedItem.lastname,
eba96ec51   Neeraj Sharma   set login name on...
358
          dob: this.editedItem.dob,
03dcbf0c1   Neeraj Sharma   fix all api and r...
359
360
          email: this.editedItem.email,
          userId: this.editedItem.userId
eba96ec51   Neeraj Sharma   set login name on...
361
362
363
        };
        http()
          .post("/provider-detail", editUsers)
03dcbf0c1   Neeraj Sharma   fix all api and r...
364
          .then(response => {
eba96ec51   Neeraj Sharma   set login name on...
365
            if ((this.snackbar = true)) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
366
367
368
369
370
371
372
              this.text = "Successfully Edit Health Care Priovider";
            }
            this.getProviderList();
          })
          .catch(error => {
            console.log(error);
          });
eba96ec51   Neeraj Sharma   set login name on...
373
        this.close();
93a68cfa1   Jatinder Singh   first commit
374
      }
eba96ec51   Neeraj Sharma   set login name on...
375
    }
93a68cfa1   Jatinder Singh   first commit
376
  };
04e3fbc56   Jatinder Singh   minor fix
377
378
379
  </script>
  <style scoped>
  .v-card__actions .v-btn {
eba96ec51   Neeraj Sharma   set login name on...
380
381
    margin: 0px;
    min-width: 120px;
04e3fbc56   Jatinder Singh   minor fix
382
  }
269061695   Jatinder Singh   changes
383
  #td {
eba96ec51   Neeraj Sharma   set login name on...
384
385
    border: 1px solid #dddddd;
    padding: 8px;
269061695   Jatinder Singh   changes
386
  }
eba96ec51   Neeraj Sharma   set login name on...
387
388
  #flex {
    height: 300px;
03dcbf0c1   Neeraj Sharma   fix all api and r...
389
  }
eba96ec51   Neeraj Sharma   set login name on...
390
  .v-select_selctions.v-select_slot.v-select_selection {
03dcbf0c1   Neeraj Sharma   fix all api and r...
391
392
    color: black !important;
  }
659b42db7   Neeraj Sharma   changes something...
393
394
395
396
397
398
  @media screen and (max-width: 769px){
    .top{
      margin-top:30px;
    }
    
  }
eba96ec51   Neeraj Sharma   set login name on...
399
400
  @media screen and (max-width: 476px) {
    .flex.xs4 {
03dcbf0c1   Neeraj Sharma   fix all api and r...
401
402
      flex-basis: 55.666667%;
      max-width: 71.666667%;
eba96ec51   Neeraj Sharma   set login name on...
403
    }
03dcbf0c1   Neeraj Sharma   fix all api and r...
404
  }
eba96ec51   Neeraj Sharma   set login name on...
405
406
  @media screen and (max-width: 402px) {
    h5 {
03dcbf0c1   Neeraj Sharma   fix all api and r...
407
      font-size: 13px;
eba96ec51   Neeraj Sharma   set login name on...
408
409
    }
    /* .right{
03dcbf0c1   Neeraj Sharma   fix all api and r...
410
411
    float:none !important;
  } */
eba96ec51   Neeraj Sharma   set login name on...
412
413
414
    .left {
      float: none !important;
    }
03dcbf0c1   Neeraj Sharma   fix all api and r...
415
  }
03dcbf0c1   Neeraj Sharma   fix all api and r...
416
  </style>
789f8298f   Jatinder Singh   change
417