Преглед изворни кода

Add Agency to User Management - Fix Timeshare Sell Resort list to include all resorts

master
Brian Conway пре 2 година
родитељ
комит
0171215a77

+ 126
- 0
src/components/admin/status/agencyUserManagementPage.vue Прегледај датотеку

@@ -0,0 +1,126 @@
1
+<template>
2
+  <!-- eslint-disable max-len -->
3
+  <main id="main">
4
+    <div class="container">
5
+      <div class="row">
6
+        <div class="col-md-12 col-lg-8">
7
+          <div class="section-header">
8
+            <h2>Agency Management</h2>
9
+          </div>
10
+        </div>
11
+      </div>
12
+      <div class="row">
13
+        <div class="col-md-1 offset-1">
14
+          <button
15
+            @click="routerGoTo('/status/userManagementPage')"
16
+            type="button"
17
+            class="btn-white-border"
18
+          >
19
+            USERS
20
+          </button>
21
+        </div>
22
+          <div class="col-md-1 offset-1">
23
+            <button
24
+              @click="routerGoTo('/status/agentUserManagementPage')"
25
+              type="button"
26
+              class="btn-white-border"
27
+            >
28
+              AGENTS
29
+            </button>
30
+          </div>
31
+        <div class="col-md-1 offset-1">
32
+            <button type="button" class="btn-solid-blue">AGENCIES</button>
33
+          </div>
34
+        <div class="col-md-2 offset-3">
35
+          <button
36
+            type="button"
37
+            class="btn-white-border"
38
+            data-toggle="modal"
39
+            :data-target="'#myModalAgency'"
40
+          >
41
+            NEW AGENCY
42
+          </button>
43
+          <div :id="'myModalAgency'" class="modal fade" role="dialog">
44
+            <div class="modal-dialog modal-lg">
45
+              <div class="modal-content">
46
+                <div class="modal-header">
47
+                  <button type="button" class="close" data-dismiss="modal">&times;</button>
48
+                </div>
49
+                <Agency name="Agency" :isAddAgent="false" :item="item" />
50
+              </div>
51
+            </div>
52
+          </div>
53
+        </div>
54
+      </div>
55
+      <div class="container">
56
+        <ListView
57
+          :items="agencies"
58
+          :showNew="false"
59
+          :editable="false"
60
+          :deleteable="false"
61
+          :showCustomAction="true"
62
+          :showColumnChooser="false"
63
+          :displayColumns="columns"
64
+          :displayHeaders="headers"
65
+          @onEdit="Edit"
66
+          @onDelete="Delete"
67
+        />
68
+      </div>
69
+    </div>
70
+  </main>
71
+</template>
72
+
73
+<script>
74
+/* eslint-disable */
75
+import { mapState, mapActions } from "vuex";
76
+import axios from "axios";
77
+import Agency from "../../user/registerAgencySection.vue";
78
+// import alert from '../../shared/alert.vue';
79
+import ListView from "../../shared/listView.vue";
80
+
81
+export default {
82
+  name: "agencyManagementPage",
83
+  components: {
84
+    ListView,
85
+    Agency
86
+    // alert,
87
+  },
88
+  props: {
89
+    delete: Boolean
90
+  },
91
+  data() {
92
+    return {
93
+      columns: ["id", "agencyName", "eaabeffcNumber", "companyRegNumber"],
94
+      headers: ["", "", "", ""],
95
+      item: {}
96
+    };
97
+  },
98
+  methods: {
99
+    ...mapActions("register", ["getAgencies", "deleteAgency"]),
100
+    addNewAgency({ commit }) {
101
+      axios
102
+        .post("/api/agency")
103
+        .then(result => commit("saveAgency", result.data))
104
+        .catch(console.error);
105
+    },
106
+    routerGoTo(goTo) {
107
+      this.$router.push(goTo);
108
+    },
109
+    Edit(item) {
110
+      this.$router.push({ name: "UpdateAgencyProfile", params: { agency: item } });
111
+    },
112
+    Delete(item) {
113
+      console.log(item.id);
114
+      this.deleteAgency(item.id);
115
+    }
116
+  },
117
+  mounted() {
118
+    this.getAgencies();
119
+  },
120
+  computed: {
121
+    ...mapState("register", ["agencies", "removeAgency"])
122
+  }
123
+};
124
+</script>
125
+
126
+<style></style>

+ 14
- 5
src/components/admin/status/agentsUserManagementPage.vue Прегледај датотеку

@@ -10,22 +10,31 @@
10 10
         </div>
11 11
       </div>
12 12
       <div class="row">
13
-        <div class="col-md-2 offset-1">
13
+        <div class="col-md-1 offset-1">
14 14
           <button
15 15
             @click="routerGoTo('/status/userManagementPage')"
16 16
             type="button"
17
-            class="btn-solid-blue"
17
+            class="btn-white-border"
18 18
           >
19 19
             USERS
20 20
           </button>
21 21
         </div>
22
-        <div class="col-md-2 offset-2">
22
+        <div class="col-md-1 offset-1">
23 23
           <button type="button" class="btn-solid-blue">AGENTS</button>
24 24
         </div>
25
-        <div class="col-md-2 offset-2">
25
+          <div class="col-md-1 offset-1">
26
+            <button
27
+              @click="routerGoTo('/status/agencyUserManagementPage')"
28
+              type="button"
29
+              class="btn-white-border"
30
+            >
31
+              AGENCIES
32
+            </button>
33
+          </div>
34
+        <div class="col-md-2 offset-3">
26 35
           <button
27 36
             type="button"
28
-            class="btn-solid-blue"
37
+            class="btn-white-border"
29 38
             data-toggle="modal"
30 39
             :data-target="'#myModalAgency'"
31 40
           >

+ 17
- 6
src/components/admin/status/userManagementPage.vue Прегледај датотеку

@@ -10,22 +10,31 @@
10 10
       </div>
11 11
       <div v-if="checkAccess">
12 12
         <div class="row">
13
-          <div class="col-md-2 offset-1">
13
+          <div class="col-md-1 offset-1">
14 14
             <button type="button" class="btn-solid-blue">USERS</button>
15 15
           </div>
16
-          <div class="col-md-2 offset-2">
16
+          <div class="col-md-1 offset-1">
17 17
             <button
18 18
               @click="routerGoTo('/status/agentUserManagementPage')"
19 19
               type="button"
20
-              class="btn-solid-blue"
20
+              class="btn-white-border"
21 21
             >
22 22
               AGENTS
23 23
             </button>
24 24
           </div>
25
-          <div class="col-md-2 offset-2">
25
+          <div class="col-md-1 offset-1">
26 26
             <button
27
+              @click="routerGoTo('/status/agencyUserManagementPage')"
27 28
               type="button"
28
-              class="btn-solid-blue"
29
+              class="btn-white-border"
30
+            >
31
+              AGENCIES
32
+            </button>
33
+          </div>
34
+          <div class="col-md-2 offset-3">
35
+            <button
36
+              type="button"
37
+              class="btn-white-border"
29 38
               data-toggle="modal"
30 39
               :data-target="'#myNewUserModal'"
31 40
             >
@@ -134,4 +143,6 @@ export default {
134 143
 };
135 144
 </script>
136 145
 
137
-<style></style>
146
+<style lang="scss" scoped>
147
+</style>
148
+

+ 3
- 5
src/components/shared/listView.vue Прегледај датотеку

@@ -136,7 +136,8 @@
136 136
               <a @click="onDelete(item)" class="p-3">
137 137
                 <img src="../../../public/img/icons/delete.png" height="25" width="25" />
138 138
               </a>
139
-              <!-- <button type="button" class="btn my-btn" @click="onDelete(item)">Delete</button> -->
139
+              <!-- <button type="button" class="btn my-btn"
140
+                @click="onDelete(item)">Delete</button> -->
140 141
             </td>
141 142
           </tr>
142 143
         </tbody>
@@ -238,9 +239,6 @@ export default {
238 239
     title: {
239 240
       default: undefined
240 241
     },
241
-    sortKey: {
242
-      default: "id"
243
-    },
244 242
     hideItemCount: {
245 243
       default: false
246 244
     },
@@ -283,7 +281,7 @@ export default {
283 281
       hover: -1,
284 282
       selectedItems: [],
285 283
       showControl: false,
286
-      sortKey: "",
284
+      sortKey: "id",
287 285
       reverse: false,
288 286
       searchItem: "",
289 287
       visibleItemsPerPageCount: 20,

+ 1
- 1
src/components/user/forgotPassword.vue Прегледај датотеку

@@ -36,7 +36,7 @@
36 36
       </div>
37 37
       <div class="row mt-2">
38 38
         <div class="col-md-6">
39
-          <button class="btn-solid-blue" @click="checkMail()">SEND</button>
39
+          <button class="btn-white-border" @click="checkMail()">SEND</button>
40 40
         </div>
41 41
       </div>
42 42
     </div>

+ 1
- 1
src/components/user/loginPage.vue Прегледај датотеку

@@ -59,7 +59,7 @@
59 59
                         >Remember password?</label
60 60
                       >
61 61
                     </div>
62
-                    <button v-on:click="Login()" class="btn-solid-blue" type="submit">
62
+                    <button v-on:click="Login()" class="btn-white-border" type="submit">
63 63
                     <!-- <button class="btn-solid-blue" type="submit"> -->
64 64
                       LOGIN
65 65
                     </button>

+ 596
- 592
src/router/index.js
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


+ 1
- 1
src/store/modules/timeshare/timeshare.js Прегледај датотеку

@@ -193,7 +193,7 @@ export default {
193 193
         getResorts({ commit }) {
194 194
             axios
195 195
                 .get(
196
-                    'https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/resorts/list/',
196
+                    'https://www.tradeunipoint.com/unibackend/seam/resource/rest/products/resorts/list?disabled=true',
197 197
                 )
198 198
                 .then((result) => {
199 199
                     commit('addResort', result.data)

+ 26
- 17
src/store/modules/user/register.js Прегледај датотеку

@@ -8,6 +8,8 @@ export default {
8 8
         individuals: [],
9 9
         agents: [],
10 10
         agent: {},
11
+        agencies: [],
12
+        agency: {},
11 13
         registerIndividual: {
12 14
             name: '',
13 15
             surname: '',
@@ -48,6 +50,9 @@ export default {
48 50
         setSingleAgent(state, agent) {
49 51
             state.agent = agent
50 52
         },
53
+        setAgencies(state, type) {
54
+            state.agencies = type
55
+        },
51 56
         setAgency(state, type) {
52 57
             state.registerAgency = type
53 58
         },
@@ -105,7 +110,9 @@ export default {
105 110
             state.individuals.splice(index, 1)
106 111
         },
107 112
         removeAgency(state, id) {
108
-            state.registerAgency.pop(state.registerAgency.find((a) => a.id === id))
113
+            state.registerAgency.pop(
114
+                state.registerAgency.find((agency) => agency.id === id),
115
+            )
109 116
         },
110 117
         removeAgent(state, id) {
111 118
             var index = state.agents.findIndex((agent) => agent.id === id)
@@ -148,6 +155,12 @@ export default {
148 155
                     console.log(e)
149 156
                 })
150 157
         },
158
+        getAgencies({ commit }) {
159
+            axios
160
+                .get('/api/agency')
161
+                .then((result) => commit('setAgencies', result.data))
162
+                .catch(console.error)
163
+        },
151 164
         getAgency({ commit }, id) {
152 165
             axios
153 166
                 .get(`/api/agency/${id}`)
@@ -200,14 +213,12 @@ export default {
200 213
                 .then((result) => console.log(result))
201 214
                 .catch(console.error)
202 215
         },
203
-        // updateAgency({
204
-        //   commit,
205
-        // }, item) {
206
-        //   axios
207
-        //     .put('/api/agency', item)
208
-        //     .then(result => commit('updateAgency', item))
209
-        //     .catch(console.error);
210
-        // },
216
+        updateAgency({ commit }, item) {
217
+            axios
218
+                .put('/api/agency', item)
219
+                .then((result) => commit('updateAgency', item))
220
+                .catch(console.error)
221
+        },
211 222
         // clearIndividual({
212 223
         //   commit,
213 224
         // }) {
@@ -230,13 +241,11 @@ export default {
230 241
                 .then((result) => commit('removeAgent', id))
231 242
                 .catch((ex) => console.log(ex.response))
232 243
         },
233
-        // deleteAgency({
234
-        //   commit,
235
-        // }, id) {
236
-        //   axios
237
-        //     .delete(`/api/agency/${id}`)
238
-        //     .then(result => commit('removeAgency', id))
239
-        //     .catch(console.error);
240
-        // },
244
+        deleteAgency({ commit }, id) {
245
+            axios
246
+                .delete(`/api/agency/${id}`)
247
+                .then((result) => commit('removeAgency', id))
248
+                .catch(console.error)
249
+        },
241 250
     },
242 251
 }

Loading…
Откажи
Сачувај