Blame view

src/pages/Provider.vue 11.8 KB
93a68cfa1   Jatinder Singh   first commit
1
  <template>
eba96ec51   Neeraj Sharma   set login name on...
2
3
4
5
6
7
8
9
10
    <!-- <v-container fluid> -->
    <v-flex xs12>
      <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
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
            <v-text-field
              justify-right
              prepend-icon="search"
              v-model="search"
              label="Find Yours Users"
              color="black"
            ></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
42
            <v-card-text>
eba96ec51   Neeraj Sharma   set login name on...
43
              <v-container grid-list-md>
03dcbf0c1   Neeraj Sharma   fix all api and r...
44
                <v-layout wrap justify-center>
eba96ec51   Neeraj Sharma   set login name on...
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
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
                  <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>
        <!-- VIEW PROFILE PRVIDE LIST -->
        <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...
111
112
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
113
114
115
                        <h5 class="left">{{ editedItem.name }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
116
                    <v-layout>
eba96ec51   Neeraj Sharma   set login name on...
117
118
                      <v-flex xs4>
                        <h5 class="right my-3">Last Name:</h5>
03dcbf0c1   Neeraj Sharma   fix all api and r...
119
120
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
121
122
123
                        <h5 class="my-3 left">{{ editedItem.name }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
124
                    <v-layout>
eba96ec51   Neeraj Sharma   set login name on...
125
126
                      <v-flex xs4>
                        <h5 class="right">Email:</h5>
03dcbf0c1   Neeraj Sharma   fix all api and r...
127
128
                      </v-flex>
                      <v-flex xs8>
eba96ec51   Neeraj Sharma   set login name on...
129
130
131
                        <h5 class="left">{{ editedItem.email }}</h5>
                      </v-flex>
                    </v-layout>
03dcbf0c1   Neeraj Sharma   fix all api and r...
132
133
134
                  </v-flex>
                </v-layout>
              </v-container>
eba96ec51   Neeraj Sharma   set login name on...
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
            </v-card-text>
          </v-card>
          <!-- PROVIDER DATA TABLE PROVIDER DEATILS -->
        </v-dialog>
        <v-data-table
          :headers="headers"
          :items="desserts"
          :search="search"
          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
199
200
201
202
203
            </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"
          >Your search for "{{ search }}" found no results.</v-alert>
        </v-data-table>
      </v-card>
    </v-flex>
    <!-- </v-container> -->
93a68cfa1   Jatinder Singh   first commit
204
205
  </template>
  <script>
eba96ec51   Neeraj Sharma   set login name on...
206
  import http from "@/Services/http.js";
93a68cfa1   Jatinder Singh   first commit
207
208
  export default {
    data: () => ({
03dcbf0c1   Neeraj Sharma   fix all api and r...
209
      snackbar: false,
eba96ec51   Neeraj Sharma   set login name on...
210
      statussnackbar: false,
03dcbf0c1   Neeraj Sharma   fix all api and r...
211
212
213
214
215
      y: "top",
      x: "right",
      mode: "",
      timeout: 3000,
      text: "",
eba96ec51   Neeraj Sharma   set login name on...
216
217
      valid: "",
      modaledit: false,
93a68cfa1   Jatinder Singh   first commit
218
219
      dialog: false,
      dialog1: false,
eba96ec51   Neeraj Sharma   set login name on...
220
221
222
      statusList: ["APPROVED", "DECLINED"],
      search: "",
      e1: "",
c35a8dafd   Jatinder Singh   minor changes
223
      rules: {
eba96ec51   Neeraj Sharma   set login name on...
224
225
226
227
228
229
230
        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
231
      },
eba96ec51   Neeraj Sharma   set login name on...
232
      nameRules: [v => !!v || " First Name is required"],
03dcbf0c1   Neeraj Sharma   fix all api and r...
233
      // lnameRules: [v => !!v || ' Last Name is required'],
e2e46164f   Jatinder Singh   edit profile changes
234
      emailRules: [
eba96ec51   Neeraj Sharma   set login name on...
235
236
        v => !!v || "E-mail is required",
        v => /.+@.+/.test(v) || "E-mail must be valid"
e2e46164f   Jatinder Singh   edit profile changes
237
      ],
5ac5570a9   Jatinder Singh   datatable changes
238
      pagination: {
eba96ec51   Neeraj Sharma   set login name on...
239
        rowsPerPage: 13
5ac5570a9   Jatinder Singh   datatable changes
240
      },
93a68cfa1   Jatinder Singh   first commit
241
      headers: [
eba96ec51   Neeraj Sharma   set login name on...
242
243
244
        {
          text: "No",
          align: "center",
93a68cfa1   Jatinder Singh   first commit
245
          sortable: false,
eba96ec51   Neeraj Sharma   set login name on...
246
          value: "no"
93a68cfa1   Jatinder Singh   first commit
247
        },
eba96ec51   Neeraj Sharma   set login name on...
248
249
250
251
        { 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
252
253
254
255
      ],
      desserts: [],
      editedIndex: -1,
      editedItem: {
eba96ec51   Neeraj Sharma   set login name on...
256
257
258
259
260
        No: "",
        Name: "",
        lastname: "",
        Email: "",
        dob: ""
93a68cfa1   Jatinder Singh   first commit
261
262
      },
      defaultItem: {
eba96ec51   Neeraj Sharma   set login name on...
263
264
265
266
267
268
        No: "",
        Name: "",
        lastname: "",
        Email: "",
        dob: ""
      }
93a68cfa1   Jatinder Singh   first commit
269
    }),
93a68cfa1   Jatinder Singh   first commit
270
    watch: {
eba96ec51   Neeraj Sharma   set login name on...
271
      dialog(val) {
93a68cfa1   Jatinder Singh   first commit
272
273
274
        val || this.close();
      }
    },
eba96ec51   Neeraj Sharma   set login name on...
275
    created() {
93a68cfa1   Jatinder Singh   first commit
276
277
      this.initialize();
    },
eba96ec51   Neeraj Sharma   set login name on...
278
    mounted() {
e173bab21   Jatinder Singh   api
279
280
      this.getProviderList();
    },
93a68cfa1   Jatinder Singh   first commit
281
    methods: {
eba96ec51   Neeraj Sharma   set login name on...
282
283
284
285
286
287
      getProviderList() {
        var token = this.$store.state.token;
        http()
          .get("/provider-list", {
            headers: { Authorization: "Bearer " + token }
          })
e173bab21   Jatinder Singh   api
288
          .then(response => {
03dcbf0c1   Neeraj Sharma   fix all api and r...
289
            this.desserts = response.data.data.providerList;
eba96ec51   Neeraj Sharma   set login name on...
290
291
292
293
          })
          .catch(err => {
            console.log("err====>", err);
          });
e173bab21   Jatinder Singh   api
294
      },
eba96ec51   Neeraj Sharma   set login name on...
295
      initialize() {
03dcbf0c1   Neeraj Sharma   fix all api and r...
296
        this.desserts = [];
93a68cfa1   Jatinder Singh   first commit
297
      },
eba96ec51   Neeraj Sharma   set login name on...
298
      editItem(item) {
93a68cfa1   Jatinder Singh   first commit
299
300
301
302
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
        this.dialog = true;
      },
eba96ec51   Neeraj Sharma   set login name on...
303
      profile(item) {
a259e694f   Jatinder Singh   minor change
304
305
        this.editedIndex = this.desserts.indexOf(item);
        this.editedItem = Object.assign({}, item);
04e3fbc56   Jatinder Singh   minor fix
306
307
        this.dialog1 = true;
      },
eba96ec51   Neeraj Sharma   set login name on...
308
      changeswitch(item) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
309
        let addStatus = {
eba96ec51   Neeraj Sharma   set login name on...
310
311
          userId: item.userId,
          status: item.e1
03dcbf0c1   Neeraj Sharma   fix all api and r...
312
        };
eba96ec51   Neeraj Sharma   set login name on...
313
314
        http()
          .post("/approve-decline", addStatus)
03dcbf0c1   Neeraj Sharma   fix all api and r...
315
316
          .then(response => {
            if ((this.statussnackbar = true)) {
eba96ec51   Neeraj Sharma   set login name on...
317
              this.text = "Successfully change your status is" + " " + item.e1;
03dcbf0c1   Neeraj Sharma   fix all api and r...
318
319
320
321
322
323
324
            }
            this.getProviderList();
          })
          .catch(error => {
            console.log(error);
          });
      },
eba96ec51   Neeraj Sharma   set login name on...
325
      deleteItem(item) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
326
        let addUsers = {
eba96ec51   Neeraj Sharma   set login name on...
327
          userId: item.userId
03dcbf0c1   Neeraj Sharma   fix all api and r...
328
        };
eba96ec51   Neeraj Sharma   set login name on...
329
330
        http()
          .post("/deleteProvider", addUsers)
03dcbf0c1   Neeraj Sharma   fix all api and r...
331
          .then(response => {
eba96ec51   Neeraj Sharma   set login name on...
332
            if ((this.snackbar = true)) {
03dcbf0c1   Neeraj Sharma   fix all api and r...
333
              this.text = "Successfully delete Health Care Priovider";
eba96ec51   Neeraj Sharma   set login name on...
334
            }
03dcbf0c1   Neeraj Sharma   fix all api and r...
335
336
337
338
339
            this.getProviderList();
          })
          .catch(error => {
            console.log(error);
          });
93a68cfa1   Jatinder Singh   first commit
340
      },
eba96ec51   Neeraj Sharma   set login name on...
341
      close() {
93a68cfa1   Jatinder Singh   first commit
342
343
344
345
346
347
        this.dialog = false;
        setTimeout(() => {
          this.editedItem = Object.assign({}, this.defaultItem);
          this.editedIndex = -1;
        }, 300);
      },
eba96ec51   Neeraj Sharma   set login name on...
348
      close1() {
04e3fbc56   Jatinder Singh   minor fix
349
350
        this.dialog1 = false;
      },
93a68cfa1   Jatinder Singh   first commit
351

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