Commit 555e2a0e4ecda935b3c093710c5e69fdec7774e1
1 parent
aabd3df4
续费会员卡
Showing
10 changed files
with
774 additions
and
112 deletions
src/api/parkNotes/parkNotes.js
0 → 100644
src/api/suggest/suggest.js
0 → 100644
1 | +import request from '@/utils/request' | ||
2 | + | ||
3 | +// 获取反馈建议问题类型 | ||
4 | +export function getFeedbackType(params) { | ||
5 | + return request({ | ||
6 | + url: 'suggest/getFeedbackType', | ||
7 | + method: 'post', | ||
8 | + data: params | ||
9 | + }) | ||
10 | +} | ||
11 | + | ||
12 | +// 保存用户的反馈建议 | ||
13 | +export function saveFeedbackAndSuggest(params) { | ||
14 | + return request({ | ||
15 | + url: 'suggest/saveFeedbackAndSuggest', | ||
16 | + method: 'post', | ||
17 | + data: params | ||
18 | + }) | ||
19 | +} | ||
20 | + | ||
21 | + | ||
22 | + | ||
23 | + | ||
24 | + | ||
25 | + | ||
26 | + | ||
27 | + | ||
28 | + |
src/router/index.js
@@ -30,7 +30,10 @@ export default new Router({ | @@ -30,7 +30,10 @@ export default new Router({ | ||
30 | { | 30 | { |
31 | path: '/plateNumber', | 31 | path: '/plateNumber', |
32 | name: 'plateNumber', | 32 | name: 'plateNumber', |
33 | - component: plateNumber | 33 | + component: plateNumber, |
34 | + meta:{ | ||
35 | + title:'停车缴费' | ||
36 | + } | ||
34 | }, | 37 | }, |
35 | 38 | ||
36 | { | 39 | { |
@@ -109,7 +112,10 @@ export default new Router({ | @@ -109,7 +112,10 @@ export default new Router({ | ||
109 | { | 112 | { |
110 | path: '/selfNav', | 113 | path: '/selfNav', |
111 | name: 'selfNav', | 114 | name: 'selfNav', |
112 | - component: () => import("@/views/mySelf/selfNav.vue") | 115 | + component: () => import("@/views/mySelf/selfNav.vue"), |
116 | + meta:{ | ||
117 | + title:'个人中心' | ||
118 | + } | ||
113 | }, | 119 | }, |
114 | // | 120 | // |
115 | // ------------------------建议反馈 | 121 | // ------------------------建议反馈 |
@@ -126,7 +132,10 @@ export default new Router({ | @@ -126,7 +132,10 @@ export default new Router({ | ||
126 | { | 132 | { |
127 | path: '/parkNotes', | 133 | path: '/parkNotes', |
128 | name: 'parkNotes', | 134 | name: 'parkNotes', |
129 | - component: () => import("@/views/mySelf/parkNotes/parkNotes.vue") | 135 | + component: () => import("@/views/mySelf/parkNotes/parkNotes.vue"), |
136 | + meta:{ | ||
137 | + title:'停车记录' | ||
138 | + } | ||
130 | }, | 139 | }, |
131 | // | 140 | // |
132 | // | 141 | // |
@@ -184,6 +193,18 @@ export default new Router({ | @@ -184,6 +193,18 @@ export default new Router({ | ||
184 | } | 193 | } |
185 | }, | 194 | }, |
186 | 195 | ||
196 | + { | ||
197 | + path: '/renew', | ||
198 | + name: 'renew', | ||
199 | + component: () => import("@/views/cards/renew.vue"), | ||
200 | + meta:{ | ||
201 | + title:'续费会员卡' | ||
202 | + } | ||
203 | + }, | ||
204 | + | ||
205 | + | ||
206 | + | ||
207 | + | ||
187 | 208 | ||
188 | 209 | ||
189 | 210 |
src/utils/utils.js
@@ -209,7 +209,7 @@ export default { | @@ -209,7 +209,7 @@ export default { | ||
209 | deviceInfo: this.myDeviceInfo, | 209 | deviceInfo: this.myDeviceInfo, |
210 | salt: salt, | 210 | salt: salt, |
211 | sign_type: "md5", | 211 | sign_type: "md5", |
212 | - token: sessionStorage.getItem("wx_Token"), //de8eb9cce14b4c8f81d027fcda0b78f8 sessionStorage.getItem("wx_Token") | 212 | + token: sessionStorage.getItem("wx_Token"), //c23849735f3442f3b95f7bec816317ae sessionStorage.getItem("wx_Token") |
213 | orgId: this.myOrgId | 213 | orgId: this.myOrgId |
214 | }; | 214 | }; |
215 | return reqData; | 215 | return reqData; |
src/views/cards/Cards.vue
1 | <template> | 1 | <template> |
2 | <div style="height: 100%;display: flex;flex-direction: column;"> | 2 | <div style="height: 100%;display: flex;flex-direction: column;"> |
3 | <div style="flex: 1;overflow-y: auto;padding: 15px"> | 3 | <div style="flex: 1;overflow-y: auto;padding: 15px"> |
4 | - <div class="noCardData" v-if="cardList.length == 0"> | 4 | + <div class="noCardData" v-if="cardList.length == 0"> |
5 | <p>您目前没有任何会员卡,</p> | 5 | <p>您目前没有任何会员卡,</p> |
6 | <p>请绑定车牌通过认证后再购买会员卡!</p> | 6 | <p>请绑定车牌通过认证后再购买会员卡!</p> |
7 | </div> | 7 | </div> |
8 | 8 | ||
9 | <div v-else> | 9 | <div v-else> |
10 | - <div class="cardBg" v-for="(i ,index) in cardList"> | 10 | + <div v-for="(i ,index) in cardList" class="cardBg" |
11 | + :class="{'nianka':i.cardType==1,'bannianka':i.cardType==2,'jika':i.cardType==3,'yueka':i.cardType==4,'rika':i.cardType==5,shixiao:i.cardStatus==0}" | ||
12 | + > | ||
11 | <ul class="cardList"> | 13 | <ul class="cardList"> |
12 | - <li> | ||
13 | - 会员卡- {{i.cardType=='1'?'年卡':(i.cardType=='2'?'半年卡':(i.cardType=='3'?'季卡':(i.cardType=='4'?'月卡':(i.cardType=='5'?'日卡':''))))}} | 14 | + <li style="padding-left: 25px;"> |
15 | + 会员卡- | ||
16 | + {{i.cardType=="1"?"年卡":(i.cardType=="2"?"半年卡":(i.cardType=="3"?"季卡":(i.cardType=="4"?"月卡":(i.cardType=="5"?"日卡":""))))}} | ||
14 | </li> | 17 | </li> |
15 | <li> | 18 | <li> |
16 | 绑定车牌号: {{ i.carNumber }} | 19 | 绑定车牌号: {{ i.carNumber }} |
@@ -22,6 +25,17 @@ | @@ -22,6 +25,17 @@ | ||
22 | 卡名称: {{ i.cardName }} | 25 | 卡名称: {{ i.cardName }} |
23 | </li> | 26 | </li> |
24 | </ul> | 27 | </ul> |
28 | + <div class="cardStatus" | ||
29 | + v-if="i.cardStatus==1" | ||
30 | + :class="{'niankaStatus':i.cardType==1,'banniankaStatus':i.cardType==2,'jikaStatus':i.cardType==3,'yuekaStatus':i.cardType==4,'rikaStatus':i.cardType==5}" | ||
31 | + > | ||
32 | + 月卡生效中 | ||
33 | + </div> | ||
34 | + <div class="cardStatus shixiaocardStatus" v-else>月卡已失效</div> | ||
35 | + <div class="renewBtn" @click="toReNew(i)" | ||
36 | + v-if="i.cardStatus==1" | ||
37 | + :class="{'niankaStatus':i.cardType==1,'banniankaStatus':i.cardType==2,'jikaStatus':i.cardType==3,'yuekaStatus':i.cardType==4,'rikaStatus':i.cardType==5}" | ||
38 | + >续费</div> | ||
25 | </div> | 39 | </div> |
26 | <!--cardType=='1'?'年卡':(cardType=='2'?'半年卡':(cardType=='3'?'季卡':(cardType=='4'?'月卡':(cardType=='5'?'日卡':''))))--> | 40 | <!--cardType=='1'?'年卡':(cardType=='2'?'半年卡':(cardType=='3'?'季卡':(cardType=='4'?'月卡':(cardType=='5'?'日卡':''))))--> |
27 | 41 | ||
@@ -29,7 +43,6 @@ | @@ -29,7 +43,6 @@ | ||
29 | </div> | 43 | </div> |
30 | 44 | ||
31 | 45 | ||
32 | - | ||
33 | </div> | 46 | </div> |
34 | <x-button type="primary" @click.native="$router.push({path:'buyCard'})">购买会员卡</x-button> | 47 | <x-button type="primary" @click.native="$router.push({path:'buyCard'})">购买会员卡</x-button> |
35 | </div> | 48 | </div> |
@@ -48,6 +61,7 @@ export default { | @@ -48,6 +61,7 @@ export default { | ||
48 | this.queryVipCardsByCustId(); | 61 | this.queryVipCardsByCustId(); |
49 | }, | 62 | }, |
50 | methods: { | 63 | methods: { |
64 | + // 获取会员卡列表 | ||
51 | queryVipCardsByCustId: function() { | 65 | queryVipCardsByCustId: function() { |
52 | let jsondata = this.$utils.commonParams(); | 66 | let jsondata = this.$utils.commonParams(); |
53 | jsondata.sign = this.$utils.signObject(jsondata); | 67 | jsondata.sign = this.$utils.signObject(jsondata); |
@@ -55,11 +69,17 @@ export default { | @@ -55,11 +69,17 @@ export default { | ||
55 | console.log(data); | 69 | console.log(data); |
56 | if (data.code == 0) { | 70 | if (data.code == 0) { |
57 | let res = data.data; | 71 | let res = data.data; |
58 | - this.cardList = res | 72 | + this.cardList = res; |
59 | } else { | 73 | } else { |
60 | this.$vux.toast.text(data.message, "top"); | 74 | this.$vux.toast.text(data.message, "top"); |
61 | } | 75 | } |
62 | }); | 76 | }); |
77 | + }, | ||
78 | + // 续费 | ||
79 | + toReNew: function(i) { | ||
80 | + console.log(i); | ||
81 | + sessionStorage.setItem("renewData", JSON.stringify(i)); | ||
82 | + this.$router.push("renew"); | ||
63 | } | 83 | } |
64 | } | 84 | } |
65 | }; | 85 | }; |
@@ -76,17 +96,82 @@ export default { | @@ -76,17 +96,82 @@ export default { | ||
76 | .cardBg { | 96 | .cardBg { |
77 | width: 100%; | 97 | width: 100%; |
78 | height: 150px; | 98 | height: 150px; |
79 | - background: #26a2ff url("../../assets/images/cards/cards.png") no-repeat 20px 20px; | 99 | + position: relative; |
100 | + background-image: url("../../assets/images/cards/cards.png"); | ||
101 | + background-repeat: no-repeat; | ||
102 | + background-position: 20px 20px; | ||
80 | background-size: 90% 90%; | 103 | background-size: 90% 90%; |
81 | border-radius: 8px; | 104 | border-radius: 8px; |
82 | margin-bottom: 15px; | 105 | margin-bottom: 15px; |
106 | + overflow: hidden; | ||
107 | + } | ||
108 | + .nianka{ | ||
109 | + background-color: #dd6c1e; | ||
83 | } | 110 | } |
84 | - .cardList{ | 111 | + .bannianka{ |
112 | + background-color: #2A1DD2; | ||
113 | + } | ||
114 | + .jika{ | ||
115 | + background-color: #DF6B1B; | ||
116 | + } | ||
117 | + | ||
118 | + .yueka{ | ||
119 | + background-color: #33CCFF; | ||
120 | + } | ||
121 | + .rika{ | ||
122 | + background-color: #498816; | ||
123 | + } | ||
124 | + .shixiao{ | ||
125 | + background-color: #ccc; | ||
126 | + } | ||
127 | + | ||
128 | + .cardList { | ||
85 | padding: 20px 0 0 20px; | 129 | padding: 20px 0 0 20px; |
86 | color: #fff; | 130 | color: #fff; |
87 | - li{ | 131 | + li { |
88 | line-height: 30px; | 132 | line-height: 30px; |
89 | } | 133 | } |
90 | } | 134 | } |
135 | + .cardStatus{ | ||
136 | + position: absolute; | ||
137 | + left: -22px; | ||
138 | + top: 21px; | ||
139 | + font-size: 12px; | ||
140 | + -webkit-transform: rotate(30deg); | ||
141 | + transform: rotate(-43deg); | ||
142 | + width: 100px; | ||
143 | + text-align: center; | ||
144 | + color: #fff; | ||
145 | + } | ||
146 | + .niankaStatus{ | ||
147 | + background-color: #c17b12; | ||
148 | + } | ||
149 | + .yuekaStatus{ | ||
150 | + background-color: #3989a3; | ||
151 | + } | ||
152 | + .banniankaStatus{ | ||
153 | + background-color: #7972cb; | ||
154 | + } | ||
155 | + .jikaStatus{ | ||
156 | + background-color: #f19f67; | ||
157 | + } | ||
158 | + .rikaStatus{ | ||
159 | + background-color: #7edb33; | ||
160 | + } | ||
161 | + .shixiaocardStatus{ | ||
162 | + background-color: #a59d9d; | ||
163 | + } | ||
164 | + | ||
165 | + .renewBtn { | ||
166 | + position: absolute; | ||
167 | + top: 20px; | ||
168 | + right: 20px; | ||
169 | + /*border: 1px solid #ffbe00;*/ | ||
170 | + /*background: #ffbe00;*/ | ||
171 | + color: #fff; | ||
172 | + padding: 2px 10px; | ||
173 | + border-radius: 4px; | ||
174 | + cursor: pointer; | ||
175 | + } | ||
91 | 176 | ||
92 | </style> | 177 | </style> |
src/views/cards/renew.vue
0 → 100644
1 | +<template> | ||
2 | + <div> | ||
3 | + <ul class="choose-area"> | ||
4 | + | ||
5 | + | ||
6 | + <li> | ||
7 | + <div style="color: #666">选择停车场</div> | ||
8 | + <div >{{renewData.parkName}}</div> | ||
9 | + <!--<div class="arrow">></div>--> | ||
10 | + <!--<div class="arrow">></div>--> | ||
11 | + </li> | ||
12 | + | ||
13 | + | ||
14 | + <!--<li>--> | ||
15 | + <!--<div style="color: #666">卡名称</div>--> | ||
16 | + <!--<div>微纳园卡</div>--> | ||
17 | + <!--</li>--> | ||
18 | + | ||
19 | + <li> | ||
20 | + <div style="color: #666">选择卡类型</div> | ||
21 | + <div >{{renewData.cardName}}</div> | ||
22 | + | ||
23 | + <!--<div class="arrow">></div>--> | ||
24 | + </li> | ||
25 | + | ||
26 | + | ||
27 | + <li> | ||
28 | + <div style="color: #666">绑定车牌</div> | ||
29 | + <div>{{renewData.carNumber}}</div> | ||
30 | + <!--<div class="arrow">></div>--> | ||
31 | + </li> | ||
32 | + | ||
33 | + <li> | ||
34 | + <div style="color: #A31414">生效时间</div> | ||
35 | + <div style="color: #A31414" >{{renewData.expDate }}</div> | ||
36 | + <!--<div class="arrow">></div>--> | ||
37 | + </li> | ||
38 | + | ||
39 | + <li> | ||
40 | + <div style="color: #666">有效期至</div> | ||
41 | + <div>{{ $utils.timestampToTime(endTimeFunc) }}</div> | ||
42 | + </li> | ||
43 | + | ||
44 | + | ||
45 | + <li> | ||
46 | + <div style="color: #666">购买数量</div> | ||
47 | + <div class="choose-num"> | ||
48 | + <span @click="addCardNum">+</span> | ||
49 | + <span>{{cardNum}}</span> | ||
50 | + <span @click="reduceCarNum">-</span> | ||
51 | + </div> | ||
52 | + </li> | ||
53 | + | ||
54 | + <li> | ||
55 | + <div style="color: #666">单价</div> | ||
56 | + <div>¥{{ (unitPrice/100).toFixed(2)}}</div> | ||
57 | + </li> | ||
58 | + | ||
59 | + | ||
60 | + <li> | ||
61 | + <div style="color: #666">优惠金额</div> | ||
62 | + <div>¥{{(disPrice/100).toFixed(2)}}</div> | ||
63 | + </li> | ||
64 | + | ||
65 | + <li> | ||
66 | + <div style="color: #666">应付金额</div> | ||
67 | + <div style="color: #A31414">¥{{(needPay/100).toFixed(2)}}</div> | ||
68 | + </li> | ||
69 | + | ||
70 | + </ul> | ||
71 | + | ||
72 | + <div style="padding:15px;text-align: center"> | ||
73 | + <check-icon :value.sync="agreement"> | ||
74 | + </check-icon> | ||
75 | + <p style="display: inline-block;height: 23px;line-height: 23px;">我已阅读并同意 <span style="color: blue" | ||
76 | + @click="showHideOnBlur=true">《购买须知》</span> | ||
77 | + </p> | ||
78 | + </div> | ||
79 | + | ||
80 | + | ||
81 | + <div style="margin-top: 34px" class="leftRightPadding"> | ||
82 | + <mt-button type="danger" size="large" @click="toPay">确定购买</mt-button> | ||
83 | + </div> | ||
84 | + | ||
85 | + | ||
86 | + | ||
87 | + <div v-transfer-dom> | ||
88 | + <x-dialog v-model="showHideOnBlur" class="dialog-demo" hide-on-blur> | ||
89 | + <div class="agreen-box"> | ||
90 | + <p> | ||
91 | + 1. 本停车卡为指定停车场有效使用,为特定的场地停车权限,请按照停车场场地自主选择购买。 | ||
92 | + </p> | ||
93 | + <p> | ||
94 | + 2. 月卡(季卡)一经售出,概不退卡,允许车牌变更1次(有效期内)。 | ||
95 | + </p> | ||
96 | + <p> | ||
97 | + 3. 年卡可以支持车牌变更3次(有效期内),年卡退卡需要按照原价扣除已经使用月份(不满一个月按照一个月计算)并退回已开具发票。 | ||
98 | + </p> | ||
99 | + <p> | ||
100 | + 4. 停车场管理方对车辆及车内财务无看管保全义务,车主须遵守停车场管理规定将车辆停在车场的停车位内,乱停车辆引起的贴条和拖车等后果由车主自行承担。 | ||
101 | + </p> | ||
102 | + <p> | ||
103 | + 5. 友情提醒:妥善关闭和锁定已停车入位的车辆,不在车内放置现金和其它贵重物品,其它停车规定须遵守所辖停车场的管理规定(参见停车场公示)。 | ||
104 | + </p> | ||
105 | + </div> | ||
106 | + <div @click="showHideOnBlur=false"> | ||
107 | + <span class="vux-close">X</span> | ||
108 | + </div> | ||
109 | + </x-dialog> | ||
110 | + </div> | ||
111 | + | ||
112 | + | ||
113 | + </div> | ||
114 | +</template> | ||
115 | + | ||
116 | +<script> | ||
117 | +import { TransferDomDirective as TransferDom } from "vux"; | ||
118 | +import { | ||
119 | + queryParkListForVipCard, | ||
120 | + queryVipCardInfoByPlNo, | ||
121 | + queryUserCars, | ||
122 | + weixinpay, | ||
123 | + createVipCardOrder | ||
124 | +} from "@/api/cards/cards"; | ||
125 | +import { timestampToTime } from "../../utils/utils.js"; | ||
126 | +export default { | ||
127 | + name: "renew", | ||
128 | + directives: { | ||
129 | + TransferDom | ||
130 | + }, | ||
131 | + data() { | ||
132 | + return { | ||
133 | + startDate:new Date(), | ||
134 | + dateVal: "", | ||
135 | + startData: "", | ||
136 | + endDate: "", | ||
137 | + parkName: "", | ||
138 | + parkNo: "", | ||
139 | + cardNum: 1, // 卡数量 | ||
140 | + unitPrice: 0, // 单价 | ||
141 | + disPrice: 0, // 优惠金额 | ||
142 | + needPay: 0, // 应付 | ||
143 | + agreement: false, | ||
144 | + typeNum: 1, // 卡类型判断 | ||
145 | + showHideOnBlur: false, // 购买协议 | ||
146 | + createVipCardOrder: {}, // 创建订单对象 | ||
147 | + orderId: "", // 订单号 | ||
148 | + renewData: {} // 续费数据 | ||
149 | + }; | ||
150 | + }, | ||
151 | + mounted() { | ||
152 | + this.renewData = JSON.parse(sessionStorage.getItem("renewData")); | ||
153 | + console.log(this.renewData); | ||
154 | + this.unitPrice = this.renewData.price; | ||
155 | + this.disPrice = this.renewData.price * ((10 - this.renewData.discount) / 10); | ||
156 | + this.needPay = this.unitPrice - this.disPrice; | ||
157 | + this.typeNum = this.renewData.cardType | ||
158 | + this.startData = this.renewData.expDate | ||
159 | + // this.queryParkListForVipCard(); // 获取停车场 | ||
160 | + // this.queryUserCars(); // 获取用户车牌 | ||
161 | + }, | ||
162 | + computed: { | ||
163 | + // 卡类型 1-年卡;2-半年卡;3-季卡;4-月卡;5-日卡; | ||
164 | + endTimeFunc() { | ||
165 | + | ||
166 | + if (this.startData) { | ||
167 | + | ||
168 | + switch (this.typeNum) { | ||
169 | + case '1': | ||
170 | + this.endDate = this.$moment(this.startData).add(12, "month").format("YYYY-MM-DD"); | ||
171 | + return this.$moment(this.startData).add(12, "month").format("YYYY-MM-DD"); | ||
172 | + break; | ||
173 | + case '2': | ||
174 | + this.endDate = this.$moment(this.startData).add(6, "month").format("YYYY-MM-DD"); | ||
175 | + return this.$moment(this.startData).add(6, "month").format("YYYY-MM-DD"); | ||
176 | + break; | ||
177 | + case '3': | ||
178 | + this.endDate = this.$moment(this.startData).add(3, "month").format("YYYY-MM-DD"); | ||
179 | + return this.$moment(this.startData).add(3, "month").format("YYYY-MM-DD"); | ||
180 | + break; | ||
181 | + case '4': | ||
182 | + this.endDate = this.$moment(this.startData).add(1, "month").format("YYYY-MM-DD"); | ||
183 | + return this.$moment(this.startData).add(1, "month").format("YYYY-MM-DD"); | ||
184 | + break; | ||
185 | + case '5': | ||
186 | + this.endDate = this.$moment(this.startData).add(1, "days").format("YYYY-MM-DD"); | ||
187 | + return this.$moment(this.startData).add(1, "days").format("YYYY-MM-DD"); | ||
188 | + break; | ||
189 | + } | ||
190 | + // return this.$moment(this.startData).add(1,"month").format("YYYY-MM-DD"); | ||
191 | + // return this.startData.getMonth()+1 | ||
192 | + } | ||
193 | + // switch (val){ | ||
194 | + // case 2: | ||
195 | + // return this.startData.setMonth(this.startData.getMonth()+1); | ||
196 | + // break; | ||
197 | + // } | ||
198 | + } | ||
199 | + }, | ||
200 | + methods: { | ||
201 | + | ||
202 | + | ||
203 | + | ||
204 | + | ||
205 | + clickActionCarNum(e) { | ||
206 | + this.carNumber = e.name; | ||
207 | + }, | ||
208 | + addCardNum() { // 增加购买数量 | ||
209 | + this.cardNum++; | ||
210 | + this.calcMoney(); | ||
211 | + }, | ||
212 | + reduceCarNum() { // 增加购买数量 | ||
213 | + if (this.cardNum == 1) { | ||
214 | + return; | ||
215 | + } | ||
216 | + this.cardNum--; | ||
217 | + this.calcMoney(); | ||
218 | + }, | ||
219 | + calcMoney() { | ||
220 | + this.needPay = this.cardNum * (this.unitPrice - this.disPrice); | ||
221 | + }, | ||
222 | + // 购买 | ||
223 | + toPay() { | ||
224 | + | ||
225 | + if (!this.agreement) { | ||
226 | + this.$vux.toast.text("请同意购买须知", "top"); | ||
227 | + return; | ||
228 | + } | ||
229 | + this.createOrder(); | ||
230 | + }, | ||
231 | + createOrder() { | ||
232 | + console.log(this.createVipCardOrder); | ||
233 | + let me = this; | ||
234 | + let jsondata = this.$utils.commonParams(); | ||
235 | + jsondata.plNo = this.renewData.parkNo; // 停车场id | ||
236 | + jsondata.cardNo = this.renewData.cardNo; // 卡券编码 | ||
237 | + jsondata.cardType = this.renewData.cardType; // 卡类型 | ||
238 | + jsondata.carType = this.renewData.carType; // 1-大型车;2-小型车 | ||
239 | + // jsondata.plNo = this.createVipCardOrder.id; // 1-大型车;2-小型车 | ||
240 | + jsondata.price = this.renewData.price; // 卡单价 | ||
241 | + jsondata.totalAmount = (this.needPay).toString(); // 购买的总金额 | ||
242 | + jsondata.num = (this.cardNum).toString(); // 购买数量 | ||
243 | + jsondata.effDate = this.renewData.expDate; // 生效时间 | ||
244 | + jsondata.expDate = this.$utils.timestampToTime(this.endTimeFunc); // 失效时间 | ||
245 | + jsondata.carNumber = this.renewData.carNumber; // 卡适用车牌 | ||
246 | + jsondata.optType = "2"; // 操作类型 1 购买 2 续费 | ||
247 | + jsondata.forceBuy = "1"; | ||
248 | + jsondata.cardCouponsId = this.renewData.custCardNo | ||
249 | + jsondata.sign = this.$utils.signObject(jsondata); | ||
250 | + createVipCardOrder(jsondata).then(data => { | ||
251 | + console.log(data); | ||
252 | + // orderId | ||
253 | + if (data.code == 0) { | ||
254 | + this.orderId = data.data.orderId; | ||
255 | + this.vxPay(); | ||
256 | + } else { | ||
257 | + this.$vux.toast.text(data.message, "top"); | ||
258 | + } | ||
259 | + }); | ||
260 | + }, | ||
261 | + vxPay() { | ||
262 | + let vm = this; | ||
263 | + let jsondata = this.$utils.commonParams(); | ||
264 | + jsondata.orderId = this.orderId; // 订单号 | ||
265 | + jsondata.payType = "4"; // 支付方式-- 1:支付宝 2:微信 3:银联. | ||
266 | + jsondata.paySrcType = "302"; // 支付单来源 101:停车付款单 102:停车预付单 103:停车补缴单 104 共享车位 201 余额充值单 202 押金充值单 301 会员卡购买单 302 会员卡续费 | ||
267 | + jsondata.appId = this.$utils.myVxAppId; // 微信标识符 | ||
268 | + jsondata.terminalSource = "3"; // 请求端来源 1: 任你停 2:pda 3:微信公共号 | ||
269 | + jsondata.paySource = "3"; | ||
270 | + jsondata.couponPersonId = ""; | ||
271 | + jsondata.openId = 'o0Moh6eQhTm5bZVqT6wjdSUsZonM'; // o0Moh6eQhTm5bZVqT6wjdSUsZonM sessionStorage.getItem("wx_openId") | ||
272 | + jsondata.sign = this.$utils.signObject(jsondata); | ||
273 | + weixinpay(jsondata).then(res => { | ||
274 | + console.log(data); | ||
275 | + if (res.code == 0) { // | ||
276 | + if (res.data) { | ||
277 | + var data = res.data; | ||
278 | + console.log(JSON.stringify(data)); | ||
279 | + if (typeof WeixinJSBridge === "undefined") { // 微信浏览器内置对象。参考微信官方文档 | ||
280 | + if (document.addEventListener) { | ||
281 | + document.addEventListener("WeixinJSBridgeReady", vm.onBridgeReady(data), false); | ||
282 | + } else if (document.attachEvent) { | ||
283 | + document.attachEvent("WeixinJSBridgeReady", vm.onBridgeReady(data)); | ||
284 | + document.attachEvent("onWeixinJSBridgeReady", vm.onBridgeReady(data)); | ||
285 | + } | ||
286 | + } else { | ||
287 | + console.log("准备调用微信支付"); | ||
288 | + vm.onBridgeReady(data); | ||
289 | + } | ||
290 | + } else { | ||
291 | + alert("没有找到返回值"); | ||
292 | + } | ||
293 | + } else { | ||
294 | + alert(res.message); | ||
295 | + } | ||
296 | + }); | ||
297 | + }, | ||
298 | + onBridgeReady(params) { | ||
299 | + let me = this; | ||
300 | + console.log("调用微信支付WeixinJSBridge"); | ||
301 | + WeixinJSBridge.invoke( | ||
302 | + "getBrandWCPayRequest", params, | ||
303 | + // | ||
304 | + // 'getBrandWCPayRequest', { // 下面参数内容都是后台返回的 | ||
305 | + // 'appId': data.appId, // 公众号名称,由商户传入 | ||
306 | + // 'timeStamp': data.timeStamp, // 时间戳 | ||
307 | + // 'nonceStr': data.nonceStr, // 随机串 | ||
308 | + // 'package': data.package, // 预支付id | ||
309 | + // 'signType': data.signType, // 微信签名方式 | ||
310 | + // 'paySign': data.paySign // 微信签名 | ||
311 | + // }, | ||
312 | + function(res) { | ||
313 | + // 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。 | ||
314 | + if (res.err_msg === "get_brand_wcpay_request:ok") { | ||
315 | + console.log("成功"); | ||
316 | + this.$vux.toast.text("支付成功", "top"); | ||
317 | + me.$router.go(-2); | ||
318 | + } else { | ||
319 | + console.log("失败"); | ||
320 | + alert("支付失败"); | ||
321 | + me.$router.go(-2); | ||
322 | + } | ||
323 | + } | ||
324 | + ); | ||
325 | + } | ||
326 | + } | ||
327 | +}; | ||
328 | +</script> | ||
329 | + | ||
330 | +<style scoped lang="scss"> | ||
331 | + .choose-area { | ||
332 | + background: #fff; | ||
333 | + padding: 0 10px; | ||
334 | + } | ||
335 | + | ||
336 | + .choose-area > li { | ||
337 | + padding-right: 20px; | ||
338 | + position: relative; | ||
339 | + height: 38px; | ||
340 | + line-height: 38px; | ||
341 | + border-bottom: 1px solid #EFEFEF; | ||
342 | + display: flex; | ||
343 | + justify-content: space-between; | ||
344 | + .arrow { | ||
345 | + position: absolute; | ||
346 | + right: 0; | ||
347 | + top: 0; | ||
348 | + font-size: 16px; | ||
349 | + } | ||
350 | + &:last-child { | ||
351 | + border-bottom: 0; | ||
352 | + } | ||
353 | + } | ||
354 | + | ||
355 | + .choose-num { | ||
356 | + height: 28px; | ||
357 | + margin-top: 5px; | ||
358 | + line-height: 28px; | ||
359 | + display: flex; | ||
360 | + border: 1px solid #D8D8D8; | ||
361 | + span { | ||
362 | + display: inline-block; | ||
363 | + &:nth-of-type(1) { | ||
364 | + width: 28px; | ||
365 | + height: 28px; | ||
366 | + text-align: center; | ||
367 | + cursor: pointer; | ||
368 | + } | ||
369 | + &:nth-of-type(2) { | ||
370 | + width: 50px; | ||
371 | + text-align: center; | ||
372 | + border-left: 1px solid #D8D8D8; | ||
373 | + border-right: 1px solid #D8D8D8; | ||
374 | + } | ||
375 | + &:nth-of-type(3) { | ||
376 | + width: 28px; | ||
377 | + height: 28px; | ||
378 | + text-align: center; | ||
379 | + cursor: pointer; | ||
380 | + } | ||
381 | + } | ||
382 | + } | ||
383 | + | ||
384 | + .parkArea { | ||
385 | + padding-top: 10px; | ||
386 | + padding-bottom: 10px; | ||
387 | + margin-top: 10px; | ||
388 | + background: #fff; | ||
389 | + color: #999; | ||
390 | + } | ||
391 | + | ||
392 | + .parkAreaTitle { | ||
393 | + display: flex; | ||
394 | + justify-content: space-between; | ||
395 | + color: #666; | ||
396 | + } | ||
397 | + | ||
398 | + .parkMore { | ||
399 | + cursor: pointer; | ||
400 | + } | ||
401 | + | ||
402 | + .park-list-wrap { | ||
403 | + width: 80%; | ||
404 | + max-height: 70%; | ||
405 | + overflow-y: scroll; | ||
406 | + border-radius: 5px; | ||
407 | + } | ||
408 | + | ||
409 | + .park-list { | ||
410 | + /*width: 80%;*/ | ||
411 | + li { | ||
412 | + padding-left: 20px; | ||
413 | + line-height: 25px; | ||
414 | + } | ||
415 | + } | ||
416 | + | ||
417 | + .agreen-box { | ||
418 | + padding: 15px; | ||
419 | + text-align: left; | ||
420 | + p { | ||
421 | + margin-bottom: 15px; | ||
422 | + } | ||
423 | + } | ||
424 | + | ||
425 | + .vux-close { | ||
426 | + margin-top: 8px; | ||
427 | + margin-bottom: 8px; | ||
428 | + font-size: 18px; | ||
429 | + } | ||
430 | + | ||
431 | + /deep/ .picker-items { | ||
432 | + width: 100% | ||
433 | + } | ||
434 | + | ||
435 | + | ||
436 | +</style> |
src/views/mySelf/feedback/suggestionBack.vue
@@ -3,46 +3,80 @@ | @@ -3,46 +3,80 @@ | ||
3 | <p class="suggestion-tip">请选择您反馈的问题类型</p> | 3 | <p class="suggestion-tip">请选择您反馈的问题类型</p> |
4 | <ul class="suggestionList"> | 4 | <ul class="suggestionList"> |
5 | <li | 5 | <li |
6 | - @click="chooseHandle(index)" | ||
7 | v-for="(i, index) in suggestionList" | 6 | v-for="(i, index) in suggestionList" |
8 | - :key="i.id" | 7 | + @click="chooseHandle(index,i.code)" |
8 | + :key="i.name" | ||
9 | :class="{choosedActive: currentIndex==index}" | 9 | :class="{choosedActive: currentIndex==index}" |
10 | > | 10 | > |
11 | - {{i.text}} | 11 | + {{i.name}} |
12 | </li> | 12 | </li> |
13 | </ul> | 13 | </ul> |
14 | 14 | ||
15 | <div class="clear"></div> | 15 | <div class="clear"></div> |
16 | 16 | ||
17 | - <mt-field label="" placeholder="请详细描述反馈问题,或提出改进建议。(300字以内)" type="textarea" rows="4" v-model="introduction" :attr="{ maxlength: 2 }"></mt-field> | 17 | + <mt-field label="" placeholder="请详细描述反馈问题,或提出改进建议。(300字以内)" type="textarea" rows="4" v-model.trim="introduction" :attr="{ maxlength: 300 }"></mt-field> |
18 | 18 | ||
19 | <div style="margin-top: 34px"> | 19 | <div style="margin-top: 34px"> |
20 | - <mt-button type="danger" size="large">提交</mt-button> | 20 | + <mt-button type="danger" size="large" @click="saveHandle">提交</mt-button> |
21 | </div> | 21 | </div> |
22 | </div> | 22 | </div> |
23 | </template> | 23 | </template> |
24 | 24 | ||
25 | <script> | 25 | <script> |
26 | +import { | ||
27 | + getFeedbackType, | ||
28 | + saveFeedbackAndSuggest | ||
29 | +} from "@/api/suggest/suggest"; | ||
30 | + | ||
26 | export default { | 31 | export default { |
27 | name: 'suggestionBack', | 32 | name: 'suggestionBack', |
28 | data() { | 33 | data() { |
29 | return { | 34 | return { |
30 | - suggestionList: [ | ||
31 | - { id: 1, text: 'APP问题' }, | ||
32 | - { id: 2, text: '支付问题' }, | ||
33 | - { id: 3, text: '停车场问题' }, | ||
34 | - { id: 4, text: '服务投诉' }, | ||
35 | - { id: 5, text: '改进建议' }, | ||
36 | - { id: 6, text: '其他问题' }, | ||
37 | - ], | 35 | + suggestionList: [], |
38 | currentIndex: 0, | 36 | currentIndex: 0, |
37 | + feedbackCode:1, | ||
39 | introduction: '', | 38 | introduction: '', |
40 | } | 39 | } |
41 | }, | 40 | }, |
41 | + mounted(){ | ||
42 | + this.getFeedbackType1() | ||
43 | + }, | ||
42 | methods: { | 44 | methods: { |
43 | - chooseHandle: function (i) { | ||
44 | - console.log(i) | 45 | + // 获取反馈建议问题类型 |
46 | + getFeedbackType1: function(){ | ||
47 | + let jsondata = this.$utils.commonParams(); | ||
48 | + console.log(jsondata) | ||
49 | + jsondata.sign = this.$utils.signObject(jsondata); | ||
50 | + getFeedbackType(jsondata).then(data => { | ||
51 | + console.log(data) | ||
52 | + this.suggestionList = data.data | ||
53 | + }) | ||
54 | + }, | ||
55 | + // 反馈建议问题类型切换事件 | ||
56 | + chooseHandle: function (i,code) { | ||
57 | + console.log(code) | ||
45 | this.currentIndex = i | 58 | this.currentIndex = i |
59 | + this.feedbackCode = code | ||
60 | + }, | ||
61 | + // 提交建议反馈事件 | ||
62 | + saveHandle: function() { | ||
63 | + if(this.introduction){ | ||
64 | + let jsondata = this.$utils.commonParams(); | ||
65 | + jsondata.feedbackCode = this.feedbackCode | ||
66 | + jsondata.suggestDesc = this.introduction | ||
67 | + jsondata.sign = this.$utils.signObject(jsondata); | ||
68 | + saveFeedbackAndSuggest(jsondata).then(data => { | ||
69 | + console.log(data) | ||
70 | + if (data.code == 0) { | ||
71 | + this.introduction = '' | ||
72 | + this.$vux.toast.text('提交反馈成功', "top"); | ||
73 | + }else{ | ||
74 | + this.$vux.toast.text(data.message, "top"); | ||
75 | + } | ||
76 | + }) | ||
77 | + }else{ | ||
78 | + this.$vux.toast.text('请输入反馈内容后再提交', "top"); | ||
79 | + } | ||
46 | } | 80 | } |
47 | } | 81 | } |
48 | } | 82 | } |
src/views/mySelf/parkNotes/parkNotes.vue
1 | <template> | 1 | <template> |
2 | <div> | 2 | <div> |
3 | - <ul class="notesList"> | ||
4 | - <li>车牌号: <span>蒙DMW169</span></li> | ||
5 | - <li>车牌颜色: <span>蓝色</span></li> | ||
6 | - <li>进场时间: <span>2020-12-19 12:59:18</span></li> | ||
7 | - <li>出场时间: <span>2020-12-19 12:59:18</span></li> | ||
8 | - <li>停车时长: <span>18分33秒</span></li> | ||
9 | - </ul> | ||
10 | - <ul class="notesList"> | ||
11 | - <li>车牌号: <span>蒙DMW169</span></li> | ||
12 | - <li>车牌颜色: <span>蓝色</span></li> | ||
13 | - <li>进场时间: <span>2020-12-19 12:59:18</span></li> | ||
14 | - <li>出场时间: <span>2020-12-19 12:59:18</span></li> | ||
15 | - <li>停车时长: <span>18分33秒</span></li> | ||
16 | - </ul> | 3 | + <div v-if="notesList.length>0"> |
4 | + <ul class="notesList" v-for="(i, index) in notesList"> | ||
5 | + <li>车牌号: <span>{{i.carNumber}}</span></li> | ||
6 | + <li>车牌颜色: <span>蓝色</span></li> | ||
7 | + <li>进场时间: <span>{{i.parkInTime}}</span></li> | ||
8 | + <li>出场时间: <span>{{i.parkOutTime}}</span></li> | ||
9 | + <li>停车时长: <span>{{i.parkDuration}}</span></li> | ||
10 | + </ul> | ||
11 | + <ul class="notesList"> | ||
12 | + <li>车牌号: <span>蒙DMW169</span></li> | ||
13 | + <li>车牌颜色: <span>蓝色</span></li> | ||
14 | + <li>进场时间: <span>2020-12-19 12:59:18</span></li> | ||
15 | + <li>出场时间: <span>2020-12-19 12:59:18</span></li> | ||
16 | + <li>停车时长: <span>18分33秒</span></li> | ||
17 | + </ul> | ||
18 | + </div> | ||
17 | 19 | ||
18 | - <div class="noRecord" >暂无记录</div> | 20 | + |
21 | + <div class="noRecord" v-else>暂无记录</div> | ||
19 | 22 | ||
20 | </div> | 23 | </div> |
21 | </template> | 24 | </template> |
22 | 25 | ||
23 | <script> | 26 | <script> |
27 | +import { | ||
28 | + queryParkingRecordCarNumbers | ||
29 | +} from "@/api/parkNotes/parkNotes"; | ||
24 | export default { | 30 | export default { |
25 | - name: 'parkRecord' | ||
26 | -} | 31 | + name: "parkRecord", |
32 | + data() { | ||
33 | + return { | ||
34 | + notesList: [] | ||
35 | + }; | ||
36 | + }, | ||
37 | + mounted() { | ||
38 | + this.getRecord(); | ||
39 | + }, | ||
40 | + methods: { | ||
41 | + getRecord: function() { | ||
42 | + let jsondata = this.$utils.commonParams(); | ||
43 | + console.log(jsondata); | ||
44 | + jsondata.parkState = "20"; | ||
45 | + /**停车状态 10:在场 ,20:离场.*/ | ||
46 | + jsondata.orderState = "40"; | ||
47 | + /**订单状态[字典表:ORDER_STATE]:10:待核算,20:待支付,30:支付中,40:支付完成,52:欠费逃逸, 53:已补缴 60:退款中 70:退款成功*/ | ||
48 | + jsondata.sign = this.$utils.signObject(jsondata); | ||
49 | + queryParkingRecordCarNumbers(jsondata).then(data => { | ||
50 | + console.log(data); | ||
51 | + this.notesList = data.data; | ||
52 | + console.log(this.notesList) | ||
53 | + }); | ||
54 | + } | ||
55 | + } | ||
56 | +}; | ||
27 | </script> | 57 | </script> |
28 | 58 | ||
29 | <style scoped lang="scss"> | 59 | <style scoped lang="scss"> |
src/views/mySelf/selfNav.vue
@@ -40,6 +40,7 @@ export default { | @@ -40,6 +40,7 @@ export default { | ||
40 | data() { | 40 | data() { |
41 | return { | 41 | return { |
42 | menuList: [ | 42 | menuList: [ |
43 | + { name: "停车缴费", path: "plateNumber" }, | ||
43 | { name: "会员卡", path: "Cards" }, | 44 | { name: "会员卡", path: "Cards" }, |
44 | { name: "车辆管理", path: "myCars" }, | 45 | { name: "车辆管理", path: "myCars" }, |
45 | { name: "发票管理", path: "eInvoiceWrap" }, | 46 | { name: "发票管理", path: "eInvoiceWrap" }, |
@@ -68,7 +69,7 @@ export default { | @@ -68,7 +69,7 @@ export default { | ||
68 | let that = this; | 69 | let that = this; |
69 | if(sessionStorage.getItem("wx_openId")){ | 70 | if(sessionStorage.getItem("wx_openId")){ |
70 | this.getTokenByOpenId(sessionStorage.getItem("wx_openId")); | 71 | this.getTokenByOpenId(sessionStorage.getItem("wx_openId")); |
71 | - this.getinfoself() | 72 | + // this.getinfoself() |
72 | }else{ | 73 | }else{ |
73 | if (this.webAppCode) { | 74 | if (this.webAppCode) { |
74 | this.getopenid(); | 75 | this.getopenid(); |
src/views/parkPay/plateNumber.vue
@@ -18,20 +18,20 @@ | @@ -18,20 +18,20 @@ | ||
18 | <div class="wrap"> | 18 | <div class="wrap"> |
19 | <!--<p style="margin-bottom: 18px;margin-top: 18px;">请选择车牌颜色</p>--> | 19 | <!--<p style="margin-bottom: 18px;margin-top: 18px;">请选择车牌颜色</p>--> |
20 | 20 | ||
21 | - <!--<ul class="color-choose">--> | ||
22 | - <!--<li v-for="(i,index) in colorList" :key="i.name" @click="chooseColor(index)"--> | ||
23 | - <!--:style="{color:currentColor==index?'#FFF':'',background: currentColor==index?activeBG:'' }"--> | ||
24 | - <!-->--> | ||
25 | - <!--{{i.name}}--> | ||
26 | - <!--</li>--> | 21 | + <ul class="color-choose"> |
22 | + <li v-for="(i,index) in colorList" :key="i.name" @click="chooseColor(index)" | ||
23 | + :style="{color:currentColor==index?'#FFF':'',background: currentColor==index?activeBG:'' }" | ||
24 | + > | ||
25 | + {{i.name}} | ||
26 | + </li> | ||
27 | 27 | ||
28 | - <!--</ul>--> | 28 | + </ul> |
29 | 29 | ||
30 | 30 | ||
31 | 31 | ||
32 | 32 | ||
33 | - | ||
34 | - <p style="margin-bottom: 18px;margin-top: 18px;">请输入车牌号码</p> | 33 | + <p style="margin-bottom: 18px;margin-top: 18px;"></p> |
34 | + <!--<p style="margin-bottom: 18px;margin-top: 18px;">请输入车牌号码</p>--> | ||
35 | <div class="num-box"> | 35 | <div class="num-box"> |
36 | <div class="num0" @click="clickFirstWrap()"> | 36 | <div class="num0" @click="clickFirstWrap()"> |
37 | <span>{{formData.num0}}</span> | 37 | <span>{{formData.num0}}</span> |
@@ -47,30 +47,30 @@ | @@ -47,30 +47,30 @@ | ||
47 | </div> | 47 | </div> |
48 | 48 | ||
49 | 49 | ||
50 | - <div class="radio-box"> | ||
51 | - <label class="flex-items-center"> | ||
52 | - <img v-if="formData.commonCard == 1" | ||
53 | - src="../../assets/images/parkPay/icon_chose_s@2x.png" | ||
54 | - alt=""> | ||
55 | - <img v-else | ||
56 | - src="../../assets/images/parkPay/icon_chose_n@2x.png" | ||
57 | - alt=""> | ||
58 | - <input type="radio" | ||
59 | - v-model="formData.commonCard" | ||
60 | - value="1" />普通车牌 | ||
61 | - </label> | ||
62 | - <label class="flex-items-center"> | ||
63 | - <img v-if="formData.commonCard == 2" | ||
64 | - src="../../assets/images/parkPay/icon_chose_s@2x.png" | ||
65 | - alt=""> | ||
66 | - <img v-else | ||
67 | - src="../../assets/images/parkPay/icon_chose_n@2x.png" | ||
68 | - alt=""> | ||
69 | - <input type="radio" | ||
70 | - v-model="formData.commonCard" | ||
71 | - value="2" />新能源车牌 | ||
72 | - </label> | ||
73 | - </div> | 50 | + <!--<div class="radio-box">--> |
51 | + <!--<label class="flex-items-center">--> | ||
52 | + <!--<img v-if="formData.commonCard == 1"--> | ||
53 | + <!--src="../../assets/images/parkPay/icon_chose_s@2x.png"--> | ||
54 | + <!--alt="">--> | ||
55 | + <!--<img v-else--> | ||
56 | + <!--src="../../assets/images/parkPay/icon_chose_n@2x.png"--> | ||
57 | + <!--alt="">--> | ||
58 | + <!--<input type="radio"--> | ||
59 | + <!--v-model="formData.commonCard"--> | ||
60 | + <!--value="1" />普通车牌--> | ||
61 | + <!--</label>--> | ||
62 | + <!--<label class="flex-items-center">--> | ||
63 | + <!--<img v-if="formData.commonCard == 2"--> | ||
64 | + <!--src="../../assets/images/parkPay/icon_chose_s@2x.png"--> | ||
65 | + <!--alt="">--> | ||
66 | + <!--<img v-else--> | ||
67 | + <!--src="../../assets/images/parkPay/icon_chose_n@2x.png"--> | ||
68 | + <!--alt="">--> | ||
69 | + <!--<input type="radio"--> | ||
70 | + <!--v-model="formData.commonCard"--> | ||
71 | + <!--value="2" />新能源车牌--> | ||
72 | + <!--</label>--> | ||
73 | + <!--</div>--> | ||
74 | 74 | ||
75 | 75 | ||
76 | <div class="submit-box" @click="submitFn()"> | 76 | <div class="submit-box" @click="submitFn()"> |
@@ -97,7 +97,7 @@ | @@ -97,7 +97,7 @@ | ||
97 | <div class="first-word" | 97 | <div class="first-word" |
98 | @click="selectFirstWord($event)"> | 98 | @click="selectFirstWord($event)"> |
99 | <div class="word"> | 99 | <div class="word"> |
100 | - <span>苏</span> | 100 | + <span>蒙</span> |
101 | </div> | 101 | </div> |
102 | <div class="word"> | 102 | <div class="word"> |
103 | <span>湘</span> | 103 | <span>湘</span> |
@@ -157,7 +157,7 @@ | @@ -157,7 +157,7 @@ | ||
157 | <span>甘</span> | 157 | <span>甘</span> |
158 | </div> | 158 | </div> |
159 | <div class="word"> | 159 | <div class="word"> |
160 | - <span>蒙</span> | 160 | + <span>苏</span> |
161 | </div> | 161 | </div> |
162 | <div class="word"> | 162 | <div class="word"> |
163 | <span>青</span> | 163 | <span>青</span> |
@@ -199,38 +199,38 @@ | @@ -199,38 +199,38 @@ | ||
199 | <span>新</span> | 199 | <span>新</span> |
200 | </div> | 200 | </div> |
201 | <!--<div class="word">--> | 201 | <!--<div class="word">--> |
202 | - <!--<span>学</span>--> | 202 | + <!--<span>学</span>--> |
203 | <!--</div>--> | 203 | <!--</div>--> |
204 | <div class="word bordernone"> | 204 | <div class="word bordernone"> |
205 | - <!-- <img src="../assets/images/icon-switch.png" alt=""> --> | 205 | + <!-- <img src="../assets/images/icon-switch.png" alt=""> --> |
206 | </div> | 206 | </div> |
207 | </div> | 207 | </div> |
208 | 208 | ||
209 | <!--<div class="first-word"--> | 209 | <!--<div class="first-word"--> |
210 | - <!--@click="selectFirstWord($event)">--> | ||
211 | - <!--<div class="word">--> | ||
212 | - <!--<span>港</span>--> | ||
213 | - <!--</div>--> | ||
214 | - <!--<div class="word">--> | ||
215 | - <!--<span>澳</span>--> | ||
216 | - <!--</div>--> | ||
217 | - <!--<div class="word">--> | ||
218 | - <!--<span>领</span>--> | ||
219 | - <!--</div>--> | 210 | + <!--@click="selectFirstWord($event)">--> |
211 | + <!--<div class="word">--> | ||
212 | + <!--<span>港</span>--> | ||
213 | + <!--</div>--> | ||
214 | + <!--<div class="word">--> | ||
215 | + <!--<span>澳</span>--> | ||
216 | + <!--</div>--> | ||
217 | + <!--<div class="word">--> | ||
218 | + <!--<span>领</span>--> | ||
219 | + <!--</div>--> | ||
220 | 220 | ||
221 | - <!--<div class="word">--> | ||
222 | - <!--<span>警</span>--> | ||
223 | - <!--</div>--> | 221 | + <!--<div class="word">--> |
222 | + <!--<span>警</span>--> | ||
223 | + <!--</div>--> | ||
224 | 224 | ||
225 | 225 | ||
226 | - <!--<div class="word bordernone">--> | ||
227 | - <!--</div>--> | ||
228 | - <!--<div class="word bordernone">--> | ||
229 | - <!--</div>--> | ||
230 | - <!--<div class="word bordernone">--> | ||
231 | - <!--</div>--> | ||
232 | - <!--<div class="word bordernone">--> | ||
233 | - <!--</div>--> | 226 | + <!--<div class="word bordernone">--> |
227 | + <!--</div>--> | ||
228 | + <!--<div class="word bordernone">--> | ||
229 | + <!--</div>--> | ||
230 | + <!--<div class="word bordernone">--> | ||
231 | + <!--</div>--> | ||
232 | + <!--<div class="word bordernone">--> | ||
233 | + <!--</div>--> | ||
234 | <!--</div>--> | 234 | <!--</div>--> |
235 | </div> | 235 | </div> |
236 | <div class="keyboard-wrap" v-if="keyBoardStatus === true"> | 236 | <div class="keyboard-wrap" v-if="keyBoardStatus === true"> |
@@ -301,6 +301,8 @@ import {swiperQuery} from '../../api/plateNumber/plateNumber' | @@ -301,6 +301,8 @@ import {swiperQuery} from '../../api/plateNumber/plateNumber' | ||
301 | export default { | 301 | export default { |
302 | data () { | 302 | data () { |
303 | return { | 303 | return { |
304 | + | ||
305 | + // 0:蓝牌;1:黄牌;2:白牌;3:黑牌;4:绿色 | ||
304 | colorList:[ | 306 | colorList:[ |
305 | { | 307 | { |
306 | name:'蓝牌', | 308 | name:'蓝牌', |
@@ -310,16 +312,17 @@ export default { | @@ -310,16 +312,17 @@ export default { | ||
310 | name:'黄牌', | 312 | name:'黄牌', |
311 | id:'2' | 313 | id:'2' |
312 | }, | 314 | }, |
315 | + | ||
313 | { | 316 | { |
314 | - name:'绿牌', | 317 | + name:'白牌', |
315 | id:'3' | 318 | id:'3' |
316 | }, | 319 | }, |
317 | { | 320 | { |
318 | - name:'白牌', | 321 | + name:'黑牌', |
319 | id:'4' | 322 | id:'4' |
320 | }, | 323 | }, |
321 | { | 324 | { |
322 | - name:'黑牌', | 325 | + name:'绿牌', |
323 | id:'5' | 326 | id:'5' |
324 | }, | 327 | }, |
325 | ], | 328 | ], |
@@ -420,23 +423,28 @@ export default { | @@ -420,23 +423,28 @@ export default { | ||
420 | } | 423 | } |
421 | }) | 424 | }) |
422 | }, | 425 | }, |
423 | - chooseColor (index){ // 颜色选择 | 426 | + chooseColor (index){ // 颜色选择 0:蓝牌;1:黄牌;2:白牌;3:黑牌;4:绿色 |
424 | this.currentColor = index | 427 | this.currentColor = index |
425 | switch (this.currentColor) { | 428 | switch (this.currentColor) { |
426 | case 0 : | 429 | case 0 : |
430 | + this.formData.commonCard = '1' | ||
427 | return this.activeBG = '#0054C0' | 431 | return this.activeBG = '#0054C0' |
428 | break; | 432 | break; |
429 | case 1 : | 433 | case 1 : |
434 | + this.formData.commonCard = '1' | ||
430 | return this.activeBG = '#FEBE00' | 435 | return this.activeBG = '#FEBE00' |
431 | break; | 436 | break; |
432 | case 2 : | 437 | case 2 : |
433 | - return this.activeBG = '#97DEA1' | 438 | + this.formData.commonCard = '1' |
439 | + return this.activeBG = '#E4E5E7' | ||
434 | break; | 440 | break; |
435 | case 3 : | 441 | case 3 : |
436 | - return this.activeBG = '#E4E5E7' | 442 | + this.formData.commonCard = '1' |
443 | + return this.activeBG = '#333333' | ||
437 | break; | 444 | break; |
438 | case 4 : | 445 | case 4 : |
439 | - return this.activeBG = '#333333' | 446 | + this.formData.commonCard = '2' |
447 | + return this.activeBG = '#97DEA1' | ||
440 | break; | 448 | break; |
441 | } | 449 | } |
442 | }, | 450 | }, |
@@ -504,7 +512,7 @@ export default { | @@ -504,7 +512,7 @@ export default { | ||
504 | plateLicense = this.plate_license_2 | 512 | plateLicense = this.plate_license_2 |
505 | plateLicense = this.palindrome(plateLicense) | 513 | plateLicense = this.palindrome(plateLicense) |
506 | if (plateLicense.length < 8) { | 514 | if (plateLicense.length < 8) { |
507 | - this.$msgbox('提示', '请输入正确的车牌号') | 515 | + this.$msgbox('提示', '请输入正确的车牌号') |
508 | return | 516 | return |
509 | } | 517 | } |
510 | } | 518 | } |