George Williams 4 年前
父节点
当前提交
0324027673

+ 5
- 5
src/App.vue 查看文件

@@ -6,7 +6,7 @@
6 6
     <div v-if="!isLandingPage" class="click-closed"></div>
7 7
     <NavBar v-if="!isLandingPage" @routerGoTo="routerGoTo" />
8 8
     <div v-if="!isLandingPage"></div>
9
-    <router-view @setLandingPage="setLandingPage" />
9
+    <router-view @setLandingPage="setLandingPage" style="margin-top:190px" />
10 10
     <FooterSection v-if="!isLandingPage" />
11 11
   </div>
12 12
 </template>
@@ -20,12 +20,12 @@ export default {
20 20
   name: "app",
21 21
   data() {
22 22
     return {
23
-      isLandingPage: false,
23
+      isLandingPage: false
24 24
     };
25 25
   },
26 26
   components: {
27 27
     NavBar,
28
-    FooterSection,
28
+    FooterSection
29 29
   },
30 30
 
31 31
   methods: {
@@ -34,8 +34,8 @@ export default {
34 34
     },
35 35
     setLandingPage(item) {
36 36
       this.isLandingPage = item;
37
-    },
38
-  },
37
+    }
38
+  }
39 39
 };
40 40
 </script>
41 41
 

+ 7
- 4
src/components/home/carouselSection.vue 查看文件

@@ -223,32 +223,35 @@ export default {
223 223
 /* Extra small devices (phones, 600px and down) */
224 224
 @media only screen and (max-width: 600px) {
225 225
   .introContentAdjust {
226
-    margin-top: -35px !important;
226
+    margin-top: 140px !important;
227 227
   }
228 228
 }
229 229
 
230 230
 /* Small devices (portrait tablets and large phones, 600px and up) */
231 231
 @media only screen and (min-width: 600px) {
232 232
   .introContentAdjust {
233
-    margin-top: -15px !important;
233
+    margin-top: 150px !important;
234 234
   }
235 235
 }
236 236
 
237 237
 /* Medium devices (landscape tablets, 768px and up) */
238 238
 @media only screen and (min-width: 768px) {
239
+  .introContentAdjust {
240
+    margin-top: 160px !important;
241
+  }
239 242
 }
240 243
 
241 244
 /* Large devices (laptops/desktops, 992px and up) */
242 245
 @media only screen and (min-width: 992px) {
243 246
   .introContentAdjust {
244
-    margin-top: 25px !important;
247
+    margin-top: 160px !important;
245 248
   }
246 249
 }
247 250
 
248 251
 /* Extra large devices (large laptops and desktops, 1200px and up) */
249 252
 @media only screen and (min-width: 1200px) {
250 253
   .introContentAdjust {
251
-    margin-top: 0px !important;
254
+    margin-top: 120px !important;
252 255
   }
253 256
 }
254 257
 </style>

+ 15
- 3
src/components/property/commercial/createProperty/commercialCreate.vue 查看文件

@@ -1,11 +1,10 @@
1 1
 <template>
2 2
   <div>
3 3
     <carouselSection :salesType="salesType" />
4
-
5 4
     <main id="main" style="margin-top:-20px">
6 5
       <div class="container pt-5 pb-5">
7 6
         <div class="row">
8
-          <div class="col-md-5">
7
+          <div class="col-md-6">
9 8
             <div v-if="!property.propertyName">
10 9
               <label for="propertyName" class="uniSelectLabel">PROPERTY NAME</label>
11 10
             </div>
@@ -16,7 +15,20 @@
16 15
               v-model="property.propertyName"
17 16
             />
18 17
           </div>
19
-          <div class="col-md-5">
18
+          <div class="col-md-6">
19
+            <div v-if="!property.propertyRef">
20
+              <label for="propertyName" class="uniSelectLabel">PROPERTY REFERENCE</label>
21
+            </div>
22
+            <input
23
+              class="form-control uniInput"
24
+              type="text"
25
+              name="propertyRef"
26
+              v-model="property.propertyRef"
27
+            />
28
+          </div>
29
+        </div>
30
+        <div class="row my-5">
31
+          <div class="col-md-6">
20 32
             <select
21 33
               class="form-control uniSelect"
22 34
               name="propertyType"

+ 1
- 1
src/components/property/commercial/singleView/contentSection.vue 查看文件

@@ -3,7 +3,7 @@
3 3
     <div class="container">
4 4
       <div class="row" id="resort-profile">
5 5
         <div class="col-md-4">
6
-          <div class="resPortfolioSection">
6
+          <div class="resPortfolioSection" style="margin-top:-5px">
7 7
             <div v-for="(image, i) in propertyImages" @click="index = i" :key="i">
8 8
               <div v-if="i < 3">
9 9
                 <img v-if="i === 0" style="width:100%; height:201px;object-fit: cover" :src="image" />

+ 2
- 2
src/components/property/propertyCard.vue 查看文件

@@ -15,7 +15,7 @@
15 15
                   <img :src="currentProperty.displayImage" alt="" />
16 16
                 </div>
17 17
                 <h1>{{ currentProperty.suburb }}</h1>
18
-                <a href="#"> </a>
18
+                <p><strong>Property Reference</strong> #{{ currentProperty.id }}</p>
19 19
               </div>
20 20
             </router-link>
21 21
           </div>
@@ -27,7 +27,7 @@
27 27
                   <img :src="currentProperty.displayImage" alt="" />
28 28
                 </div>
29 29
                 <h1>{{ currentProperty.suburb }}</h1>
30
-                <a href="#"> </a>
30
+                <p><strong>Property Reference</strong> #{{ currentProperty.id }}</p>
31 31
               </div>
32 32
             </router-link>
33 33
           </div>

+ 15
- 2
src/components/property/residential/createProperty/residentialCreate.vue 查看文件

@@ -5,7 +5,7 @@
5 5
     <main id="main" style="margin-top:-20px">
6 6
       <div class="container pt-5 pb-5">
7 7
         <div class="row">
8
-          <div class="col-md-5">
8
+          <div class="col-md-6">
9 9
             <div v-if="!property.propertyName">
10 10
               <label for="propertyName" class="uniSelectLabel">PROPERTY NAME</label>
11 11
             </div>
@@ -16,7 +16,20 @@
16 16
               v-model="property.propertyName"
17 17
             />
18 18
           </div>
19
-          <div class="col-md-5">
19
+          <div class="col-md-6">
20
+            <div v-if="!property.propertyRef">
21
+              <label for="propertyName" class="uniSelectLabel">PROPERTY REFERENCE</label>
22
+            </div>
23
+            <input
24
+              class="form-control uniInput"
25
+              type="text"
26
+              name="propertyRef"
27
+              v-model="property.propertyRef"
28
+            />
29
+          </div>
30
+        </div>
31
+        <div class="row my-5">
32
+          <div class="col-md-6">
20 33
             <select
21 34
               class="form-control uniSelect"
22 35
               name="propertyType"

+ 7
- 0
src/components/property/residential/singleView/contentSection.vue 查看文件

@@ -37,6 +37,13 @@
37 37
             v-if="property.showAddress"
38 38
           >{{ property.propertyName }} / {{ property.streetNumber }} {{ property.streetName }}</h2>
39 39
           <h2 v-else>{{ property.propertyName }}</h2>
40
+          <div class="container">
41
+            <div class="row">
42
+              <div class="col">
43
+                <p v-html="property.description"></p>
44
+              </div>
45
+            </div>
46
+          </div>
40 47
           <div>
41 48
             <!-- <table class="table table-striped">
42 49
               <thead>

+ 1
- 1
src/components/property/residential/singleView/singleResidentialPage.vue 查看文件

@@ -1,7 +1,7 @@
1 1
 <template>
2 2
   <div>
3 3
     <carouselSection v-if="propertyImages.length > 0" :propertyImages="propertyImages" />
4
-    <main id="main" style="margin-top:-20px">
4
+    <main id="main">
5 5
       <contentSection
6 6
         v-if="propertyImages.length > 0"
7 7
         :property="property"

+ 0
- 61
src/components/propertyManagement/rentalManagement/carouselSecitonNew.vue 查看文件

@@ -1,61 +0,0 @@
1
-<template>
2
-  <section id="intro">
3
-    <div class="container">
4
-      <div class="row">
5
-        <div align="left" class="col-sm-12 col-md-8">
6
-          <div class="intro-content box">
7
-            <h2>Let us manage your property</h2>
8
-            <p>
9
-              At Uni-Vate we appreciate the significant and positive relationship between effective
10
-              Property Management and property prices. We understand that effective management not
11
-              only relies on administrative processes being intact, but also on a clear plan and
12
-              good communication with our clients based on respect, trust understanding, openness
13
-              and accountability. We have access to a comprehensive set of human and other resources
14
-              to ensure that your property is proactively managed to protect your investment and to
15
-              ensure the contentedness of occupants. We offer comprehensive property management
16
-              services, whether it being Sectional Title Management, HOA Management or Rental
17
-              Property Portfolio Management.
18
-            </p>
19
-            <a href="#" class="btn-solid-blue">LIST YOUR PROPERTY WITH UNI-VATE PROPERTIES</a>
20
-            <router-link v-if="!isLoggedIn" to="/user/login" class="btn-white-border"
21
-              >LOGIN TO OWNERS PORTAL</router-link
22
-            >
23
-          </div>
24
-        </div>
25
-      </div>
26
-    </div>
27
-
28
-    <carousel
29
-      :nav="false"
30
-      :dots="false"
31
-      :items="1"
32
-      :autoplay="true"
33
-      :loop="true"
34
-      :autoHeight="true"
35
-      id="intro-carousel"
36
-      style="margin-top:-50px;"
37
-      :responsive="{ 0: { items: 1, nav: false }, 600: { items: 1, nav: false } }"
38
-    >
39
-      <img class="item" src="/img/intro-carousel/home-1.jpg" alt="" />
40
-      <img class="item" src="/img/intro-carousel/16.jpg" alt="" />
41
-      <img class="item" src="/img/intro-carousel/comm-1.jpg" alt="" />
42
-      <img class="item" src="/img/intro-carousel/comm-4.jpg" alt="" />
43
-      <img class="item" src="/img/intro-carousel/3.jpg" alt="" />
44
-      <img class="item" src="/img/intro-carousel/home-5.jpg" alt="" />
45
-    </carousel>
46
-
47
-    <div id="intro-carousel" class="owl-carousel"></div>
48
-  </section>
49
-</template>
50
-
51
-<script>
52
-/* eslint-disable */
53
-import carousel from "vue-owl-carousel";
54
-export default {
55
-  components: {
56
-    carousel
57
-  }
58
-};
59
-</script>
60
-
61
-<style lang="scss" scoped></style>

+ 6
- 1
src/components/propertyManagement/rentalManagement/contentSection.vue 查看文件

@@ -19,7 +19,12 @@
19 19
       <div class="row">
20 20
         <div class="col-md-6"></div>
21 21
         <div class="col-md-6">
22
-          <h4>Contact us for a quote</h4>
22
+          <h4
23
+            style="cursor:pointer"
24
+            @click="$vuetify.goTo('#contactFoot', { duration: 2000, easing: 'easeInOutCubic' })"
25
+          >
26
+            Contact us for a quote
27
+          </h4>
23 28
         </div>
24 29
       </div>
25 30
 

+ 6
- 1
src/components/propertyManagement/sectionalTitle/ourServicesSection.vue 查看文件

@@ -18,7 +18,12 @@
18 18
       <div class="row mt-2">
19 19
         <div class="col-md-6"></div>
20 20
         <div class="col-md-6">
21
-          <h4>Contact us for a quote</h4>
21
+          <h4
22
+            style="cursor:pointer"
23
+            @click="$vuetify.goTo('#contactFoot', { duration: 2000, easing: 'easeInOutCubic' })"
24
+          >
25
+            Contact us for a quote
26
+          </h4>
22 27
         </div>
23 28
       </div>
24 29
       <div class="row">

+ 11
- 5
src/components/shared/footerSection.vue 查看文件

@@ -18,16 +18,18 @@
18 18
               <a href="commercial.php">Rent Commercial Property</a><br />
19 19
               <a href="residential.php">Buy Residential Property</a><br />
20 20
               <a href="residential.php">Rent Residential Property</a><br /> -->
21
-              <router-link class="footerText" v-if="isLoggedIn" to="/properties"
21
+              <router-link v-if="isLoggedIn" class="footerText" to="/properties"
22 22
                 >Property Management</router-link
23
-              ><br />
23
+              ><br v-if="isLoggedIn" />
24
+              <router-link to="/property/residential">Residential Property</router-link><br />
25
+              <router-link to="/property/commercial">Commercial Property</router-link><br />
24 26
               <router-link class="footerText" to="/privacyPolicy">Privacy Policy</router-link><br />
25 27
               <router-link class="footerText" to="/websiteDisclaimer"
26 28
                 >Website Disclaimer</router-link
27 29
               ><br />
28 30
             </p>
29 31
           </div>
30
-          <div class="col-lg-9 section-header">
32
+          <div class="col-lg-9 section-header" id="contactFoot">
31 33
             <h2 align="left">Contact Us</h2>
32 34
             <div class="row">
33 35
               <div class="col-md-4">
@@ -88,9 +90,9 @@
88 90
           <div class="col-md-12">
89 91
             <div class="copyright-footer">
90 92
               <p class="copyright color-text-a">
91
-                &copy; Copyright
93
+                Copyright © {{ currentYear }} Copyright
92 94
                 <span class="color-a">
93
-                  <b>Univate Properties</b>
95
+                  <b>Uni-Vate Properties.</b>
94 96
                 </span>
95 97
                 All Rights Reserved.
96 98
               </p>
@@ -138,6 +140,10 @@ export default {
138 140
     // eslint-disable-next-line vue/return-in-computed-property
139 141
     Logout() {
140 142
       return this.logout();
143
+    },
144
+    currentYear() {
145
+      var d = new Date();
146
+      return d.getFullYear();
141 147
     }
142 148
   }
143 149
 };

+ 52
- 41
src/components/shared/navBar.vue 查看文件

@@ -3,7 +3,7 @@
3 3
     <!-- <button type="button" id="mobile-nav-toggle">
4 4
       <i class="fa fa-bars"></i>
5 5
     </button> -->
6
-    <div id="header-sticky-wrapper" class="sticky-wrapper is-sticky" style="min-height: 120px;">
6
+    <div>
7 7
       <header id="header" style="width: 100%; position: fixed; top:0px; z-index: 50;">
8 8
         <div class="container">
9 9
           <div class="row">
@@ -16,7 +16,7 @@
16 16
                   style="height:100px;"
17 17
               /></a>
18 18
             </div>
19
-            <div class="col-md-9" id="topbar">
19
+            <div id="topbar" class="col-md-9">
20 20
               <div class="container clearFix">
21 21
                 <div class="social-links  ">
22 22
                   <a href="mailto:info@univateproperties.co.za">
@@ -38,34 +38,9 @@
38 38
                   </a>
39 39
                 </div>
40 40
               </div>
41
-
42 41
               <nav id="nav-menu-container">
43 42
                 <ul class="nav-menu sf-js-enabled sf-arrows">
44
-                  <li class="menu-has-children">
45
-                    <div
46
-                      @mouseover="timeShareClass = 'ts-display'"
47
-                      @mouseleave="timeShareClass = 'no-display'"
48
-                    ></div>
49
-                    <a href="#" class="sf-with-ul">
50
-                      Timeshare
51
-                    </a>
52
-                    <ul style="margin-top:-10px;text-align:left" :class="timeShareClass">
53
-                      <li>
54
-                        <router-link to="/timeshare/buy">To Buy</router-link>
55
-                      </li>
56
-                      <li>
57
-                        <router-link to="/timeshare/sell">To Sell</router-link>
58
-                      </li>
59
-                      <li>
60
-                        <router-link to="/timeshare/faq">FAQ</router-link>
61
-                      </li>
62
-                      <li v-if="isLoggedIn">
63
-                        <hr />
64
-                        <router-link to="/timeshare/myWeeks">My Timeshare Weeks</router-link>
65
-                      </li>
66
-                    </ul>
67
-                  </li>
68
-                  <li class="menu-has-children">
43
+                  <li class="menu-has-children" style="margin-left:-20px">
69 44
                     <div
70 45
                       @mouseover="commercialClass = 'ts-display'"
71 46
                       @mouseleave="commercialClass = 'no-display'"
@@ -86,7 +61,7 @@
86 61
                       </li>
87 62
                     </ul>
88 63
                   </li>
89
-                  <li class="menu-has-children">
64
+                  <li class="menu-has-children mx-1">
90 65
                     <div
91 66
                       @mouseover="residentialClass = 'ts-display'"
92 67
                       @mouseleave="residentialClass = 'no-display'"
@@ -107,6 +82,30 @@
107 82
                       </li>
108 83
                     </ul>
109 84
                   </li>
85
+                  <li class="menu-has-children mx-1">
86
+                    <div
87
+                      @mouseover="timeShareClass = 'ts-display'"
88
+                      @mouseleave="timeShareClass = 'no-display'"
89
+                    ></div>
90
+                    <a href="#" class="sf-with-ul">
91
+                      Timeshare
92
+                    </a>
93
+                    <ul style="margin-top:-10px;text-align:left" :class="timeShareClass">
94
+                      <li>
95
+                        <router-link to="/timeshare/buy">To Buy</router-link>
96
+                      </li>
97
+                      <li>
98
+                        <router-link to="/timeshare/sell">To Sell</router-link>
99
+                      </li>
100
+                      <li>
101
+                        <router-link to="/timeshare/faq">FAQ</router-link>
102
+                      </li>
103
+                      <li v-if="isLoggedIn">
104
+                        <hr />
105
+                        <router-link to="/timeshare/myWeeks">My Timeshare Weeks</router-link>
106
+                      </li>
107
+                    </ul>
108
+                  </li>
110 109
                   <!-- <li class="menu-has-children">
111 110
                     <div
112 111
                       @mouseover="propertiesClass = 'ts-display'"
@@ -131,7 +130,7 @@
131 130
                       </li>
132 131
                     </ul>
133 132
                   </li> -->
134
-                  <li class="menu-has-children">
133
+                  <li class="menu-has-children mx-1">
135 134
                     <div
136 135
                       @mouseover="propManClass = 'ts-display'"
137 136
                       @mouseleave="propManClass = 'no-display'"
@@ -152,7 +151,7 @@
152 151
                       </li>
153 152
                     </ul>
154 153
                   </li>
155
-                  <li class="menu-has-children">
154
+                  <li class="menu-has-children mx-1">
156 155
                     <div
157 156
                       @mouseover="aboutClass = 'ts-display'"
158 157
                       @mouseleave="aboutClass = 'no-display'"
@@ -169,10 +168,10 @@
169 168
                       </li>
170 169
                     </ul>
171 170
                   </li>
172
-                  <li>
171
+                  <li class="mx-1">
173 172
                     <router-link to="/share/contact">Contact Us</router-link>
174 173
                   </li>
175
-                  <li v-if="isLoggedIn" class="menu-has-children">
174
+                  <li v-if="isLoggedIn" class="menu-has-children mx-1">
176 175
                     <div
177 176
                       @mouseover="userClass = 'ts-display'"
178 177
                       @mouseleave="userClass = 'no-display'"
@@ -235,14 +234,17 @@
235 234
                         <router-link to="/landingPages">Landing Pages / Campaignes</router-link>
236 235
                       </li>
237 236
                       <li>
238
-                        <a class="btn-white-border p-2" @click="logout(routerGoTo('/user/login'))"
239
-                          >Logout</a
237
+                        <router-link class="btn-white-border p-2" to="/user/login"
238
+                          >Logout</router-link
240 239
                         >
241 240
                       </li>
242 241
                     </ul>
243 242
                   </li>
243
+
244 244
                   <li v-if="!isLoggedIn">
245
-                    <router-link class="btn-white-border p-2" to="/user/login">Login</router-link>
245
+                    <router-link class="btn-white-border p-2 ml-1 mr-1" to="/user/login"
246
+                      >Login</router-link
247
+                    >
246 248
                   </li>
247 249
 
248 250
                   <li v-if="!isLoggedIn" class="menu-has-children">
@@ -250,10 +252,10 @@
250 252
                       @mouseover="registerClass = 'ts-display'"
251 253
                       @mouseleave="registerClass = 'no-display'"
252 254
                     ></div>
253
-                    <a href="#" class="sf-with-ul btn-solid-blue pt-2 pb-1" style="height:39px">
255
+                    <a href="#" class="sf-with-ul btn-solid-blue pt-2 pb-1" style="height:39px;">
254 256
                       Register
255 257
                     </a>
256
-                    <ul style="margin-top:-10px;text-align:left" :class="registerClass">
258
+                    <ul style="margin-top:-10px;" :class="registerClass">
257 259
                       <li>
258 260
                         <router-link to="/user/register">Register</router-link>
259 261
                       </li>
@@ -343,7 +345,10 @@ export default {
343 345
     },
344 346
     // eslint-disable-next-line vue/return-in-computed-property
345 347
     Logout() {
346
-      return this.logout();
348
+      this.logout().then(res => {
349
+        console.log("something");
350
+      });
351
+      //return this.logout();
347 352
     }
348 353
   }
349 354
 };
@@ -377,7 +382,7 @@ export default {
377 382
   }
378 383
 
379 384
   #header {
380
-    min-height: 145px;
385
+    min-height: 120px;
381 386
   }
382 387
 }
383 388
 
@@ -391,15 +396,21 @@ export default {
391 396
 /* Medium devices (landscape tablets, 768px and up) */
392 397
 @media only screen and (min-width: 768px) {
393 398
   #header {
394
-    min-height: 120px;
399
+    height: 170px;
395 400
   }
396 401
 }
397 402
 
398 403
 /* Large devices (laptops/desktops, 992px and up) */
399 404
 @media only screen and (min-width: 992px) {
405
+  #header {
406
+    height: 165px;
407
+  }
400 408
 }
401 409
 
402 410
 /* Extra large devices (large laptops and desktops, 1200px and up) */
403 411
 @media only screen and (min-width: 1200px) {
412
+  #header {
413
+    height: 120px;
414
+  }
404 415
 }
405 416
 </style>

+ 4
- 3
src/components/timeshare/buy/latestWeeks.vue 查看文件

@@ -3,14 +3,15 @@
3 3
     <div class="container">
4 4
       <div v-if="boolLoaded" class="row">
5 5
         <div v-for="week in latestWeeks" :key="week.id" class="col-lg-3 col-md-4 col-sm-6">
6
-          <div class="portfolio-item justify-content-md-center" style="min-height:430px">
7
-            <img :src="week.image" alt="" />
6
+          <div class="portfolio-item justify-content-md-center my-3" style="min-height:430px">
7
+            <img :src="week.image" alt="" style="max-height: 250px" />
8 8
             <div class="my-3">
9 9
               <h4>{{ week.resort.resortName }}</h4>
10 10
               <p>
11 11
                 <strong>Week</strong> {{ week.weekNumber }} &nbsp;|&nbsp;
12 12
                 <strong>Season</strong> Peak <br />
13
-                <strong>Levy</strong> R{{ week.levyAmount }}
13
+                <strong>Levy</strong> R{{ week.levyAmount }} &nbsp;|&nbsp;
14
+                <strong>Week Reference</strong> #{{ week.id }}
14 15
               </p>
15 16
               <h4>R{{ week.sellPrice }}</h4>
16 17
               <router-link :to="'/resort/' + week.resort.resortCode" class="btn-white-border"

+ 7
- 5
src/components/timeshare/buy/weekListComponent.vue 查看文件

@@ -4,6 +4,7 @@
4 4
       <table class="table table-striped table-responsive">
5 5
         <thead>
6 6
           <tr>
7
+            <th scope="col">Reference</th>
7 8
             <th scope="col">Unit</th>
8 9
             <th scope="col">Module</th>
9 10
             <th scope="col">Bedrooms</th>
@@ -14,6 +15,7 @@
14 15
         </thead>
15 16
         <tbody>
16 17
           <tr v-for="(item, i) in filteredWeeks" :key="i">
18
+            <td>#{{ item.id }}</td>
17 19
             <td>{{ item.unitNumber }}</td>
18 20
             <td>{{ item.weekNumber }}</td>
19 21
             <td>{{ item.bedrooms }}</td>
@@ -66,15 +68,15 @@ import { mapState, mapActions, mapGetters } from "vuex";
66 68
 export default {
67 69
   props: {
68 70
     resortCode: undefined,
69
-    userId: undefined,
71
+    userId: undefined
70 72
   },
71 73
   components: {},
72 74
   computed: {
73 75
     ...mapState("weekList", ["weeks", "status"]),
74 76
     ...mapGetters({
75 77
       filteredWeeks: "weekList/filteredWeeks",
76
-      getRegions: "weekList/getRegions",
77
-    }),
78
+      getRegions: "weekList/getRegions"
79
+    })
78 80
   },
79 81
   mounted() {
80 82
     if (this.resortCode) {
@@ -86,8 +88,8 @@ export default {
86 88
     View(item) {
87 89
       this.$router.push(`/resort/${item.resort.resortCode}/${item.unitNumber}`);
88 90
     },
89
-    ...mapActions("weekList", ["getWeeks", "applyResortFilter"]),
90
-  },
91
+    ...mapActions("weekList", ["getWeeks", "applyResortFilter"])
92
+  }
91 93
 };
92 94
 </script>
93 95
 

+ 8
- 8
src/components/timeshare/resort/unit/summarySection.vue 查看文件

@@ -8,12 +8,14 @@
8 8
       </div>
9 9
     </div>
10 10
     <div class="row mt-5">
11
-      <div class="col-md-6">
11
+      <div class="col-md-12 col-lg-4">
12 12
         <gallerySection :images="images" />
13 13
       </div>
14
-      <div class="col-md-6 summarySection">
14
+      <div class="col-md-12 col-lg-8 summarySection">
15 15
         <h3>Summary</h3>
16
-
16
+        <div class="row">
17
+          <div align="center" class="col-md-12">#{{ week.id }}</div>
18
+        </div>
17 19
         <div class="row mb-3">
18 20
           <div align="center" class="col">
19 21
             <label for="unit">Unit: </label>
@@ -35,13 +37,11 @@
35 37
             <h5>R {{ formatPrice(week ? week.sellPrice : 0) }}</h5>
36 38
           </div>
37 39
         </div>
38
-
39
-        <div class="row mt-5"></div>
40
-        <div class="row mt-3">
41
-          <div class="col">
40
+        <div class="row mt-5">
41
+          <div align="center" class="col-md-6">
42 42
             <a href="javascript:history.back()" class="btn-white-border">Back</a>
43 43
           </div>
44
-          <div class="col">
44
+          <div align="center" class="col-md-6">
45 45
             <button
46 46
               class="btn-solid-blue"
47 47
               style="color:white"

+ 64
- 86
src/components/timeshare/sell/contentSection.vue 查看文件

@@ -19,9 +19,7 @@
19 19
                   @change="changeRef"
20 20
                 />
21 21
                 <label class="custom-control-label" for="customSwitch1">
22
-                  {{
23
-                  refAgent ? "Yes" : "No"
24
-                  }}
22
+                  {{ refAgent ? "Yes" : "No" }}
25 23
                 </label>
26 24
                 <div class="refbyAgent" :class="{ 'refbyAgent--clicked': refAgent }">
27 25
                   <div class="col-md-6" v-if="refAgent">
@@ -32,11 +30,9 @@
32 30
                       name="agency"
33 31
                       v-model="sellItem.agencyId"
34 32
                     >
35
-                      <option
36
-                        v-for="(item, i) in agencies"
37
-                        :key="i"
38
-                        :value="item.id"
39
-                      >{{ item.agencyName }}</option>
33
+                      <option v-for="(item, i) in agencies" :key="i" :value="item.id">{{
34
+                        item.agencyName
35
+                      }}</option>
40 36
                     </select>
41 37
                   </div>
42 38
                   <div class="col-md-6" v-if="refAgent">
@@ -68,11 +64,9 @@
68 64
             <div class="form-row">
69 65
               <div class="form-group col-md-6">
70 66
                 <div class="input-group">
71
-                  <label
72
-                    v-if="!sellItem.region"
73
-                    class="uniSelectLabel"
74
-                    for="weekInfoRegionSelect"
75
-                  >REGION</label>
67
+                  <label v-if="!sellItem.region" class="uniSelectLabel" for="weekInfoRegionSelect"
68
+                    >REGION</label
69
+                  >
76 70
 
77 71
                   <select
78 72
                     id="weekInfoRegionSelect"
@@ -82,9 +76,7 @@
82 76
                     style="font-size: 15px"
83 77
                   >
84 78
                     <option v-for="(region, r) in regions" :key="r" :value="region">
85
-                      {{
86
-                      region.regionName
87
-                      }}
79
+                      {{ region.regionName }}
88 80
                     </option>
89 81
                   </select>
90 82
                 </div>
@@ -102,11 +94,9 @@
102 94
               </div>
103 95
               <div class="form-group col-md-6">
104 96
                 <div class="input-group">
105
-                  <label
106
-                    v-if="!sellItem.resort"
107
-                    class="uniSelectLabel"
108
-                    for="weekInfoResortSelect"
109
-                  >RESORT NAME</label>
97
+                  <label v-if="!sellItem.resort" class="uniSelectLabel" for="weekInfoResortSelect"
98
+                    >RESORT NAME</label
99
+                  >
110 100
 
111 101
                   <select
112 102
                     id="weekInfoResortSelect"
@@ -116,9 +106,7 @@
116 106
                   >
117 107
                     <option value="Other">Other</option>
118 108
                     <option v-for="(resort, r) in filteredResort" :key="r" :value="resort">
119
-                      {{
120
-                      resort.resortName
121
-                      }}
109
+                      {{ resort.resortName }}
122 110
                     </option>
123 111
                   </select>
124 112
                 </div>
@@ -196,7 +184,9 @@
196 184
                 <div class="validation"></div>
197 185
               </div>
198 186
               <div class="form-group col-md-6">
199
-                <label v-if="!sellItem.bedrooms" class="uniSelectLabel" for="region">BEDROOM/S</label>
187
+                <label v-if="!sellItem.bedrooms" class="uniSelectLabel" for="region"
188
+                  >BEDROOM/S</label
189
+                >
200 190
 
201 191
                 <select
202 192
                   class="form-control uniSelect"
@@ -209,7 +199,9 @@
209 199
                 <div class="validation"></div>
210 200
               </div>
211 201
               <div class="form-group col-md-6">
212
-                <label v-if="!sellItem.maxSleep" class="uniSelectLabel" for="region">SLEEP MAX</label>
202
+                <label v-if="!sellItem.maxSleep" class="uniSelectLabel" for="region"
203
+                  >SLEEP MAX</label
204
+                >
213 205
 
214 206
                 <select
215 207
                   class="form-control uniSelect"
@@ -247,19 +239,16 @@
247 239
                   @change="changeCurrentBanked"
248 240
                 />
249 241
                 <label class="custom-control-label" for="customSwitch2">
250
-                  {{
251
-                  sellItem.currentYearBanked ? "Yes" : "No"
252
-                  }}
242
+                  {{ sellItem.currentYearBanked ? "Yes" : "No" }}
253 243
                 </label>
254 244
                 <div
255 245
                   class="spacebanked1"
256 246
                   :class="{ 'spacebanked1--clicked': sellItem.currentYearBanked }"
257 247
                 >
258 248
                   <div class="col-md-6">
259
-                    <label
260
-                      for="If yes, please confirm with whom"
261
-                      v-if="sellItem.currentYearBanked"
262
-                    >Please confirm with whom</label>
249
+                    <label for="If yes, please confirm with whom" v-if="sellItem.currentYearBanked"
250
+                      >Please confirm with whom</label
251
+                    >
263 252
                     <select
264 253
                       class="form-control uniSelect"
265 254
                       name="spacebankOwner"
@@ -493,7 +482,8 @@
493 482
                     v-if="!indiv.bankingDetails.bank"
494 483
                     class="uniSelectLabel"
495 484
                     for="weekInfoRegionSelect"
496
-                  >BANK</label>
485
+                    >BANK</label
486
+                  >
497 487
 
498 488
                   <select
499 489
                     id="weekInfoRegionSelect"
@@ -503,9 +493,7 @@
503 493
                     v-model="indiv.bankingDetails.bank"
504 494
                   >
505 495
                     <option v-for="bank in banks" :key="bank.id" :value="bank">
506
-                      {{
507
-                      bank.name
508
-                      }}
496
+                      {{ bank.name }}
509 497
                     </option>
510 498
                   </select>
511 499
                 </div>
@@ -551,9 +539,9 @@
551 539
                 class="form-group col-md-12"
552 540
                 style="border:solid;border-width:2px; border-color:rgb(27, 117, 187); border-radius: 3px"
553 541
               >
554
-                <p
555
-                  style="text-align: left; margin:auto; padding:10px"
556
-                >1. With respect to my timeshare module/week, I confirm that:</p>
542
+                <p style="text-align: left; margin:auto; padding:10px">
543
+                  1. With respect to my timeshare module/week, I confirm that:
544
+                </p>
557 545
                 <div class="validation"></div>
558 546
               </div>
559 547
             </div>
@@ -572,9 +560,7 @@
572 560
                     @change="changeLeviesPaidInFull"
573 561
                   />
574 562
                   <label class="custom-control-label" for="customSwitch3">
575
-                    {{
576
-                    sellItem.leviesPaidInFull ? "Yes" : "No"
577
-                    }}
563
+                    {{ sellItem.leviesPaidInFull ? "Yes" : "No" }}
578 564
                   </label>
579 565
                 </div>
580 566
                 <div class="validation"></div>
@@ -595,9 +581,7 @@
595 581
                     @change="changeWeekPlacedForRental"
596 582
                   />
597 583
                   <label class="custom-control-label" for="customSwitch4">
598
-                    {{
599
-                    sellItem.weekPlacedForRental ? "Yes" : "No"
600
-                    }}
584
+                    {{ sellItem.weekPlacedForRental ? "Yes" : "No" }}
601 585
                   </label>
602 586
                 </div>
603 587
                 <div class="validation"></div>
@@ -716,11 +700,15 @@
716 700
               </div>
717 701
             </div>
718 702
             <div class="text-center col-12">
719
-              <button class="btn-solid-blue" v-if="!sellItem.id" @click="submitSale()">SUBMIT</button>
703
+              <button class="btn-solid-blue" v-if="!sellItem.id" @click="submitSale()">
704
+                SUBMIT
705
+              </button>
720 706
               <button class="btn-solid-blue" v-else @click="newSale()">NEW WEEK</button>
721 707
             </div>
722 708
             <div class="text-center col-12">
723
-              <button class="btn-solid-blue" v-if="sellItem.id > 0" @click="paygateTest()">PayGate</button>
709
+              <button class="btn-solid-blue" @click="paygateRedirect()">
710
+                PayGate
711
+              </button>
724 712
             </div>
725 713
             <br />
726 714
             <br />
@@ -746,18 +734,18 @@ export default {
746 734
   name: "TimeshareToSell",
747 735
   props: {
748 736
     weekId: {
749
-      default: 0,
750
-    },
737
+      default: 0
738
+    }
751 739
   },
752 740
   data() {
753 741
     return {
754 742
       wait: false,
755
-      userLoggedIn: Log.isLoggedIn(),
743
+      userLoggedIn: Log.isLoggedIn()
756 744
     };
757 745
   },
758 746
   components: {
759 747
     addressAutoComplete,
760
-    Alert,
748
+    Alert
761 749
   },
762 750
   mounted() {
763 751
     if (this.sellItem.id) {
@@ -783,13 +771,13 @@ export default {
783 771
       "sellItem",
784 772
       "agencies",
785 773
       "agents",
786
-      "getTemplate",
774
+      "getTemplate"
787 775
     ]),
788 776
     ...mapState("individual", ["indiv"]),
789 777
     ...mapState("authentication", ["isLoggedIn"]),
790 778
     ...mapGetters({
791 779
       user: "authentication/getUser",
792
-      person: "authentication/getPerson",
780
+      person: "authentication/getPerson"
793 781
     }),
794 782
     ...mapState("bank", ["banks"]),
795 783
     refAgent() {
@@ -797,14 +785,9 @@ export default {
797 785
     },
798 786
     filteredResort() {
799 787
       let list = [];
800
-      if (
801
-        this.sellItem &&
802
-        this.sellItem.region &&
803
-        this.sellItem.region.regionCode
804
-      ) {
788
+      if (this.sellItem && this.sellItem.region && this.sellItem.region.regionCode) {
805 789
         const item = this.detailedRegion.find(
806
-          (region) =>
807
-            region.region.regionCode === this.sellItem.region.regionCode
790
+          region => region.region.regionCode === this.sellItem.region.regionCode
808 791
         );
809 792
         if (item) {
810 793
           list = item.children;
@@ -812,14 +795,14 @@ export default {
812 795
       } else {
813 796
         list = this.resorts;
814 797
       }
815
-      return _.sortBy(list, (x) => x.resortName);
798
+      return _.sortBy(list, x => x.resortName);
816 799
     },
817 800
     isLoggedIn() {
818 801
       return this.user && this.person;
819 802
     },
820 803
     displayNotDeletedAgents() {
821 804
       var notDeletedArr = [];
822
-      this.agents.forEach((agent) => {
805
+      this.agents.forEach(agent => {
823 806
         if (!agent.isDeleted) {
824 807
           if (agent.agencyId === this.sellItem.agencyId) {
825 808
             notDeletedArr.push(agent);
@@ -827,16 +810,11 @@ export default {
827 810
         }
828 811
       });
829 812
       return notDeletedArr;
830
-    },
813
+    }
831 814
   },
832 815
   methods: {
833 816
     ...mapActions("individual", ["getIndividual"]),
834
-    ...mapActions("timeshare", [
835
-      "initTimeshare",
836
-      "onResortChange",
837
-      "saveWeek",
838
-      "getBlankWeek",
839
-    ]),
817
+    ...mapActions("timeshare", ["initTimeshare", "onResortChange", "saveWeek", "getBlankWeek"]),
840 818
     ...mapActions("payment", ["addPayment"]),
841 819
     ...mapActions("bank", ["getBanks"]),
842 820
     newSale() {
@@ -846,28 +824,30 @@ export default {
846 824
     submitSale() {
847 825
       if (this.userLoggedIn) {
848 826
         this.sellItem.ownerObject = this.indiv;
849
-        this.saveWeek(this.sellItem).then((fulfilled) => {
850
-          this.paygateTest();
851
-        });
827
+        console.log(this.sellItem);
828
+
829
+        // this.saveWeek(this.sellItem).then(fulfilled => {
830
+        //   this.paygateRedirect();
831
+        // });
852 832
       } else this.$router.push("/user/login");
853 833
     },
854
-    paygateTest() {
834
+    paygateRedirect() {
855 835
       var paymentObj = {
856
-        timeshareWeekId: 3, // this.sellItem.Id,
836
+        timeshareWeekId: this.sellItem.id, // this.sellItem.Id,
857 837
         propertyId: 0,
858
-        creatydById: 14, //Log.getUser().id,
838
+        creatydById: Log.getUser().id, //Log.getUser().id,
859 839
         amount: 380.0,
860 840
         paymentStatus: "",
861
-        paymentToken: "",
841
+        paymentToken: ""
862 842
       };
863 843
 
864
-      this.addPayment(paymentObj).then((res) => {
844
+      this.addPayment(paymentObj).then(res => {
865 845
         this.$router.push({
866 846
           name: "PaymentGateway",
867 847
           params: {
868 848
             paymentReqId: res.PAY_REQUEST_ID,
869
-            checksum: res.CHECKSUM,
870
-          },
849
+            checksum: res.CHECKSUM
850
+          }
871 851
         });
872 852
       });
873 853
     },
@@ -892,7 +872,7 @@ export default {
892 872
     resortChange() {
893 873
       this.onResortChange({
894 874
         resortName: this.sellItem.resort.resortName,
895
-        resortCode: this.sellItem.resort.resortCode,
875
+        resortCode: this.sellItem.resort.resortCode
896 876
       });
897 877
 
898 878
       if (this.sellItem && this.sellItem.resort === "Other") {
@@ -904,9 +884,7 @@ export default {
904 884
       }
905 885
     },
906 886
     regionChange() {
907
-      this.sellItem.regionId = this.sellItem.region
908
-        ? this.sellItem.region.id
909
-        : 1;
887
+      this.sellItem.regionId = this.sellItem.region ? this.sellItem.region.id : 1;
910 888
     },
911 889
     UpdateAddress(address) {
912 890
       this.indiv.address.streetNumber = address.streetNumber;
@@ -915,8 +893,8 @@ export default {
915 893
       this.indiv.address.city = address.city;
916 894
       this.indiv.address.suburb = address.suburb;
917 895
       this.indiv.address.postalCode = address.postalCode;
918
-    },
919
-  },
896
+    }
897
+  }
920 898
 };
921 899
 </script>
922 900
 

+ 11
- 1
src/components/user/loginPage.vue 查看文件

@@ -79,6 +79,7 @@
79 79
 /* eslint-disable */
80 80
 import { mapActions, mapState } from "vuex";
81 81
 import alert from "../shared/alert.vue";
82
+import Log from "../../assets/Log";
82 83
 import carousel from "vue-owl-carousel";
83 84
 export default {
84 85
   name: "Login",
@@ -105,8 +106,11 @@ export default {
105 106
   computed: {
106 107
     ...mapState("authentication", ["token", "status"])
107 108
   },
109
+  mounted() {
110
+    this.checkUserStatus();
111
+  },
108 112
   methods: {
109
-    ...mapActions("authentication", ["login", "init"]),
113
+    ...mapActions("authentication", ["login", "init", "logout"]),
110 114
     ToggleTrouble() {
111 115
       if (this.troubleToggle) {
112 116
         this.troubleToggle = false;
@@ -121,6 +125,12 @@ export default {
121 125
           this.error = true;
122 126
         });
123 127
     },
128
+    checkUserStatus() {
129
+      if (Log.isLoggedIn()) {
130
+        this.logout();
131
+        this.$router.go();
132
+      }
133
+    },
124 134
     togglePassword() {
125 135
       this.showPassword = true;
126 136
       this.isPasswordShown = "text";

+ 4
- 2
src/main.js 查看文件

@@ -7,8 +7,10 @@ import App from "./App.vue";
7 7
 import router from "./router";
8 8
 import store from "./store";
9 9
 import * as VueGoogleMaps from "vue2-google-maps";
10
+import Vuetify from "vuetify";
10 11
 
11 12
 Vue.use(EvaIcons);
13
+Vue.use(Vuetify);
12 14
 Vue.use(VueGoogleMaps, {
13 15
   load: {
14 16
     key: "AIzaSyD8k_Kwml_C8IDfs-gX8JFV8acli3L9cAE",
@@ -23,8 +25,8 @@ Vue.use(VueGoogleMaps, {
23 25
 });
24 26
 Vue.config.productionTip = false;
25 27
 //axios.defaults.baseURL = "http://localhost:57260";
26
-axios.defaults.baseURL = "http://training.provision-sa.com:82";
27
-//axios.defaults.baseURL = "http://localhost:8080/";
28
+//axios.defaults.baseURL = "http://training.provision-sa.com:82";
29
+axios.defaults.baseURL = "http://localhost:8080/";
28 30
 
29 31
 Vue.prototype.$axios = axios;
30 32
 

+ 2
- 2
vue.config.js 查看文件

@@ -2,8 +2,8 @@ module.exports = {
2 2
   devServer: {
3 3
     proxy: {
4 4
       "/api": {
5
-        //target: "http://localhost:57260/",
6
-        target: "http://training.provision-sa.com:82",
5
+        target: "http://localhost:57260/",
6
+        //target: "http://training.provision-sa.com:82",
7 7
         changeOrigin: true
8 8
       },
9 9
       "/nph-srep": {

正在加载...
取消
保存