Преглед на файлове

individual on tosell page

master
Kobus преди 5 години
родител
ревизия
bc562daff6

+ 2
- 2
src/components/timeshare/sell/sellPage.vue Целия файл

23
               :type="'WARNING'"
23
               :type="'WARNING'"
24
             />
24
             />
25
           </div>
25
           </div>
26
+          {{indiv}}
26
           <hr />
27
           <hr />
27
           <br />
28
           <br />
28
           <div class="form-group row">
29
           <div class="form-group row">
296
                 </div>
297
                 </div>
297
               </div>
298
               </div>
298
             </div>
299
             </div>
299
-
300
             <DetailIndividual :currentUser="sellItem.owner" :showBank="true" />
300
             <DetailIndividual :currentUser="sellItem.owner" :showBank="true" />
301
             <hr />
301
             <hr />
302
           </div>
302
           </div>
541
       'agencies',
541
       'agencies',
542
       'agents',
542
       'agents',
543
     ]),
543
     ]),
544
-    ...mapState('individual', ['item']),
544
+    ...mapState('individual', ['indiv']),
545
     ...mapState('authentication', ['isLoggedIn']),
545
     ...mapState('authentication', ['isLoggedIn']),
546
     ...mapGetters({
546
     ...mapGetters({
547
       user: 'authentication/getUser',
547
       user: 'authentication/getUser',

+ 57
- 0
src/components/user/selectIndividual.vue Целия файл

1
+<template>
2
+  <div>
3
+    <div class="row">
4
+      <div class="col-md-8">
5
+        <label>Region *</label>
6
+        <div class="input-group mb-3">
7
+          <div class="input-group-prepend">
8
+            <span class="input-group-text" style="color: #60CBEB">
9
+              <b>R</b>
10
+            </span>
11
+          </div>
12
+          <select class="form-control" @change="onChange()" v-model="selectedItem">
13
+            <option
14
+              v-for="(item, i) in items"
15
+              :key="i"
16
+              :value="item"
17
+            >{{item.name + ' ' + item.surname}}</option>
18
+          </select>
19
+        </div>
20
+      </div>
21
+      <div class="col-md-4">
22
+        <div class="btn btn-b-n btn-lg" style="margin-top:10px;" @click="onNew()">New</div>
23
+      </div>
24
+    </div>
25
+  </div>
26
+</template>
27
+<script>
28
+import { mapState, mapActions } from 'vuex';
29
+
30
+export default {
31
+  name: 'SelectIndividual',
32
+  data() {
33
+    return { selectedItem: {} };
34
+  },
35
+  props: {
36
+    currentUser: undefined,
37
+  },
38
+  mounted() {
39
+    this.getAllIndividuals();
40
+    this.selectedItem = this.indiv;
41
+    this.$emit('onSelectedItemItemChange', this.selectedItem);
42
+  },
43
+  computed: {
44
+    ...mapState('individual', ['items', 'indiv']),
45
+  },
46
+  methods: {
47
+    ...mapActions('individual', ['getAllIndividuals']),
48
+    onChange() {
49
+      this.$emit('onSelectedItemItemChange', this.selectedItem);
50
+    },
51
+    onNew() {
52
+      this.selectedItem = {};
53
+      this.$emit('onSelectedItemItemChange', this.selectedItem);
54
+    },
55
+  },
56
+};
57
+</script>

+ 21
- 18
src/components/user/timeshareIndividual.vue Целия файл

7
       <div class="myWell">
7
       <div class="myWell">
8
         <h4>Detailed Individual Information</h4>
8
         <h4>Detailed Individual Information</h4>
9
       </div>
9
       </div>
10
+      <SelectIndividual @onSelectedItemItemChange="onSelectedItemItemChange" />
10
       <div class="row" style="text-align:left">
11
       <div class="row" style="text-align:left">
11
         <div class="col-md-6">
12
         <div class="col-md-6">
12
           <label>Name *</label>
13
           <label>Name *</label>
114
 import { mapState, mapGetters, mapActions } from 'vuex';
115
 import { mapState, mapGetters, mapActions } from 'vuex';
115
 import BankAccount from '../shared/bankAccount.vue';
116
 import BankAccount from '../shared/bankAccount.vue';
116
 import Address from '../misc/address.vue';
117
 import Address from '../misc/address.vue';
118
+import SelectIndividual from './selectIndividual.vue';
117
 
119
 
118
 export default {
120
 export default {
119
   components: {
121
   components: {
120
     BankAccount,
122
     BankAccount,
121
     Address,
123
     Address,
124
+    SelectIndividual,
125
+  },
126
+  data() {
127
+    return {
128
+      currentUser: {
129
+        name: undefined,
130
+        surname: undefined,
131
+        idNumber: undefined,
132
+        companyRegNumber: undefined,
133
+        emailAddress: undefined,
134
+        cellNumber: undefined,
135
+        landlineNumber: undefined,
136
+        bankingDetails: {},
137
+        address: {},
138
+      },
139
+    };
122
   },
140
   },
123
   props: {
141
   props: {
124
-    currentUser: {
125
-      name: undefined,
126
-      surname: undefined,
127
-      idNumber: undefined,
128
-      companyRegNumber: undefined,
129
-      emailAddress: undefined,
130
-      cellNumber: undefined,
131
-      landlineNumber: undefined,
132
-      bankingDetails: {},
133
-      address: {},
134
-    },
135
     showChangeCurrentUser: {
142
     showChangeCurrentUser: {
136
       default: false,
143
       default: false,
137
     },
144
     },
142
       default: false,
149
       default: false,
143
     },
150
     },
144
   },
151
   },
145
-  mounted() {
146
-    if (!this.currentUser) {
147
-      if (this.user) {
148
-        this.getIndividual(this.user.id);
149
-      }
150
-    }
151
-  },
152
   computed: {
152
   computed: {
153
     ...mapState('timeshare', ['maritalStatus']),
153
     ...mapState('timeshare', ['maritalStatus']),
154
     ...mapGetters({
154
     ...mapGetters({
157
   },
157
   },
158
   methods: {
158
   methods: {
159
     ...mapActions('individual', ['getIndividual']),
159
     ...mapActions('individual', ['getIndividual']),
160
+    onSelectedItemItemChange(item) {
161
+      this.currentUser = item;
162
+    },
160
   },
163
   },
161
 };
164
 };
162
 </script>
165
 </script>

+ 15
- 4
src/store/modules/user/individual.js Целия файл

18
   },
18
   },
19
   getters: {},
19
   getters: {},
20
   actions: {
20
   actions: {
21
-    getIndividual({ commit, rootGetters }, userId) {
21
+    getIndividual({
22
+      commit,
23
+      rootGetters,
24
+    }, userId) {
22
       let id = 0;
25
       let id = 0;
23
       if (!userId || userId === 0) {
26
       if (!userId || userId === 0) {
24
         const rootItem = rootGetters['authentication/getUser'];
27
         const rootItem = rootGetters['authentication/getUser'];
27
       axios
30
       axios
28
         .get(`/api/individual/getIndividual/${id}`)
31
         .get(`/api/individual/getIndividual/${id}`)
29
         .then(r => commit('setItem', {
32
         .then(r => commit('setItem', {
30
-            name: 'indiv',
31
-            value: r.data,
32
-          }),)
33
+          name: 'indiv',
34
+          value: r.data,
35
+        }))
33
         .catch(console.error);
36
         .catch(console.error);
34
     },
37
     },
38
+    getAllIndividuals({
39
+      commit,
40
+    }) {
41
+      axios.get('/api/individual/getAllIndividuals').then(x => commit('setItem', {
42
+        name: 'items',
43
+        value: x.data,
44
+      })).catch(console.error);
45
+    },
35
   },
46
   },
36
 };
47
 };

Loading…
Отказ
Запис