parkingFee.vue 28 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054
  1. <template>
  2. <div :class="[theme, 'paekingFeeClass']">
  3. <scroll-view :class="['scroll-Y' ,'color-scroll-Y']">
  4. <div class="wrap">
  5. <div class="parkingFee">
  6. <!-- <wx-points-commit ref='wxPointsCommit'></wx-points-commit> -->
  7. <!-- KIP菜单 -->
  8. <div
  9. v-if="source === 'KIP'"
  10. :class="{
  11. top_menu: true,
  12. blue_top_menu: custTypeId === 1,
  13. green_top_menu: custTypeId === 2,
  14. }"
  15. >
  16. <div class="menu_item" @click="menuToPage('PAYMENT_RECORDS')">
  17. <img :src="`${require(`@/pages/parkingFee/static/images/icon-order.png`)}`" />
  18. <span>缴费记录</span>
  19. </div>
  20. <div class="menu_item" @click="menuToPage('PARKING_INVOICE')">
  21. <img :src="`${require(`@/pages/parkingFee/static/images/icon-ticket.png`)}`" />
  22. <span>停车开票</span>
  23. </div>
  24. <div class="menu_item" @click="menuToPage('VEHICLE_MANAGE')">
  25. <img :src="`${require(`@/pages/parkingFee/static/images/icon-car.png`)}`" />
  26. <span>车辆管理</span>
  27. </div>
  28. </div>
  29. <!-- 菜单 -->
  30. <div
  31. :class="{
  32. top_menu: true,
  33. blue_top_menu: custTypeId === 1,
  34. green_top_menu: custTypeId === 2,
  35. }"
  36. v-if="custTypeId >= 0 && portalsByLbsList.length && source !== 'KIP'"
  37. >
  38. <div class="menu_item" @click="menuToPage('PAYMENT_RECORDS')" v-if="portalsByLbsList.indexOf('PAYMENT_RECORDS') > -1">
  39. <img :src="`${require(`@/pages/parkingFee/static/images/icon-order.png`)}`" />
  40. <span>缴费记录</span>
  41. </div>
  42. <div class="menu_item" @click="menuToPage('COUPON_EXCHANGE')" v-if="portalsByLbsList.indexOf('COUPON_EXCHANGE') > -1">
  43. <img :src="`${require(`@/pages/parkingFee/static/images/icon-coupon.png`)}`" />
  44. <span>停车券兑换</span>
  45. </div>
  46. <div class="menu_item" @click="menuToPage('PARKING_INVOICE')" v-if="portalsByLbsList.indexOf('PARKING_INVOICE') > -1">
  47. <img :src="`${require(`@/pages/parkingFee/static/images/icon-ticket.png`)}`" />
  48. <span>停车开票</span>
  49. </div>
  50. <div class="menu_item" @click="menuToPage('VEHICLE_MANAGE')" v-if="portalsByLbsList.indexOf('VEHICLE_MANAGE') > -1">
  51. <img :src="`${require(`@/pages/parkingFee/static/images/icon-car.png`)}`" />
  52. <span>车辆管理</span>
  53. </div>
  54. <div class="menu_item" @click="menuToPage('PARKING_BENEFITS')" v-if="portalsByLbsList.indexOf('PARKING_BENEFITS') > -1">
  55. <img :src="`${require(`@/pages/parkingFee/static/images/parkingRights.svg`)}`" />
  56. <span>停车权益</span>
  57. </div>
  58. </div>
  59. <!-- 中控 -->
  60. <div class="parkingFee-bottom">
  61. <div style="height: 40px; background-color: #FBFCFF;" v-show="source === 'KIP'"></div>
  62. <div v-show="supportUnlicensed && source !== 'KIP'" :class="['parkingFee-tab', tabbarActive === 'paymentForUnregisteredVehicle' && 'unlicensed-box-bottom']">
  63. <div :class="['bar', tabbarActive === 'manualPayment' && 'active']" @click="tabbarActiveEvent('manualPayment')">手动缴费</div>
  64. <div :class="['bar', tabbarActive === 'paymentForUnregisteredVehicle' && 'active']" @click="tabbarActiveEvent('paymentForUnregisteredVehicle')">无牌缴费</div>
  65. </div>
  66. <!-- 无牌缴费 -->
  67. <div class="unlicensed-box" v-show="tabbarActive === 'paymentForUnregisteredVehicle'">
  68. <!-- 无牌车 -->
  69. <div class="no-car-unlicensed-box" v-show="!unlicensedCar">
  70. <img :src="`${require(`@/pages/parkingFee/static/images/unlicensed-1.png`)}`" />
  71. <div class="no-car-unlicensed-info">未查询到无牌车信息</div>
  72. <div class="search-btn no-car-unlicensed-btn" @click="scanCarCode">
  73. <!-- <van-icon name="scan" />扫描进场二维码领取无牌车号牌 -->
  74. <img class="unlicensed-scan" :src="`${require(`@/pages/parkingFee/static/images/unlicensed-scan.png`)}`" /><sapn class="text">扫描进场二维码领取无牌车号牌</sapn>
  75. </div>
  76. </div>
  77. <!-- 有无牌车 -->
  78. <div class="in-car" v-show="unlicensedCar">
  79. <div class="car-number-box">
  80. <img :src="`${require(`@/pages/parkingFee/static/images/unlicensed-0.png`)}`" />
  81. <div class="car-number">
  82. <div class="number">{{ unlicensedCar }}</div>
  83. <div class="tips">车辆类型:无牌车辆</div>
  84. </div>
  85. </div>
  86. <div class="search-btn" @click="unlicensedToPay">去支付</div>
  87. </div>
  88. </div>
  89. <!-- 手动缴费 -->
  90. <div class="manual-box" v-show="tabbarActive === 'manualPayment'">
  91. <div class="parkingFee-search">
  92. <div class="search_tip_1" :style="{paddingTop: supportUnlicensed? '0': '32px'}">
  93. <div class="title">车辆类型</div>
  94. <!-- <k-tab ref="k-tab" type="fill" @change="toggleType" :tabs="['燃油车牌', '新能源', '特殊车牌']" />-->
  95. <k-tab ref="k-tab" type="fill" @change="toggleType" :tabs="['燃油车牌', '新能源', '特殊车牌']" />
  96. </div>
  97. <!-- <div class="search_tip">
  98. <div class="title">车辆类型</div>
  99. <div class="search_tip_pt">
  100. <div :class="carType == 0 ? 'search_tip_pt_index' : ''" @click="toggleType(0)">燃油车牌</div>
  101. <div :class="carType == 1 ? 'search_tip_pt_index' : ''" @click="toggleType(1)">新能源</div>
  102. <div :class="carType == 2 ? 'search_tip_pt_index' : ''" @click="toggleType(2)">特殊车牌</div>
  103. </div>
  104. </div> -->
  105. <div class="input-box">
  106. <!-- <div v-for="i in carType === 1 ? 8 : 7" class="li" :key="`numArr${i}`" @click="clickShowKeyboard(i)" :class="[active === i ? 'active' : '']">
  107. {{ numArr[i] }}
  108. </div> -->
  109. <div class="van-hairline--surround li" @click="clickShowKeyboard(0)" :class="[active === 0 ? 'active' : '']">
  110. {{ numArr[0] }}
  111. </div>
  112. <div class="van-hairline--surround li" @click="clickShowKeyboard(1)" :class="[active === 1 ? 'active' : '']">
  113. {{ numArr[1] }}
  114. </div>
  115. <div class="input_box_dian">·</div>
  116. <div class="van-hairline--surround li" @click="clickShowKeyboard(2)" :class="[active === 2 ? 'active' : '']">
  117. {{ numArr[2] }}
  118. </div>
  119. <div class="van-hairline--surround li" @click="clickShowKeyboard(3)" :class="[active === 3 ? 'active' : '']">
  120. {{ numArr[3] }}
  121. </div>
  122. <div class="van-hairline--surround li" @click="clickShowKeyboard(4)" :class="[active === 4 ? 'active' : '']">
  123. {{ numArr[4] }}
  124. </div>
  125. <div class="van-hairline--surround li" @click="clickShowKeyboard(5)" :class="[active === 5 ? 'active' : '']">
  126. {{ numArr[5] }}
  127. </div>
  128. <div :class="['van-hairline--surround li', active === 6 ? 'active' : '']" @click="clickShowKeyboard(6)">
  129. {{ numArr[6] }}
  130. </div>
  131. <div class="li dashed green-active" @click="clickShowKeyboard(7)" :class="[active === 7 ? 'active' : '']" >
  132. <span v-if="carType === 1">{{ numArr[7] }}</span>
  133. <img v-else :src="require('@/pages/parkingFee/static/images/unlicensed/leaf.svg')">
  134. </div>
  135. </div>
  136. <k-button title="查询缴费" style="margin-top: 46px;margin-bottom: 43px;" :disabled="disabledBtn" disabledColor="#D1D2D9" @click="preHandleSearch" />
  137. <!-- <div type="primary" class="search-btn" :class="disabledBtn ? 'disabled-btn' : ''" :disabled="disabledBtn" @click="preHandleSearch">查询缴费</div> -->
  138. </div>
  139. <div class="vehicleMgt-list">
  140. <div class="vehicleMgt-title">
  141. <div>历史查询车辆</div>
  142. <!-- <image src="./static/images/icon5.png" class="vehicleMgt-title-img"/> -->
  143. </div>
  144. <div class="vehicleMgt-content" v-if="carList.length">
  145. <div class="item" v-for="(item, index) in carList" :key="index" @click="toHandleSearchBefore(item, 1)" :class="vehicleNumber == item ? 'vehicleMgt-content_cls' : ''">
  146. {{ item | formatCarno }}
  147. </div>
  148. </div>
  149. </div>
  150. </div>
  151. </div>
  152. <div class="parkingFee-top">
  153. <div class="top_content">
  154. <div class="title_box">
  155. <span class="btn">缴费说明</span>
  156. </div>
  157. <!-- <div class="sub_title_box">-->
  158. <!-- <span class="btn">基础计费规则:</span>-->
  159. <!-- </div>-->
  160. <div class="info" :class="!init_ch ? 'info_show' : ''">
  161. <!-- <p></p> -->
  162. <!-- <p>{{ description }}</p> -->
  163. <div v-html="description"></div>
  164. </div>
  165. </div>
  166. <div class="top_down" @click="top_display" v-if="!init_ch && description && description.length > 60"><van-icon name="arrow-down" /></div>
  167. <div class="top_down" @click="top_display" v-else><van-icon name="arrow-up" /></div>
  168. </div>
  169. </div>
  170. </div>
  171. </scroll-view>
  172. <wx-points-auth ref="wxPointsAuth"></wx-points-auth>
  173. <plate-number ref="plateKeyboard" :noDisBtn="[32, 33, 34,35, 36, 37]" :carType="carType" :active="active" :ind="ind" :numArr="numArr" @carnoArr="updateCarno"></plate-number>
  174. <checkCarPopup ref="checkCarPopup"></checkCarPopup>
  175. </div>
  176. </template>
  177. <script>
  178. import parkingFeeJs from './mixins/parkingFee';
  179. import baseMixins from './mixins/base'
  180. export default {
  181. mixins: [baseMixins, parkingFeeJs],
  182. name: 'parkingFeeCom',
  183. };
  184. </script>
  185. <style lang="less" scoped>
  186. .scroll-Y {
  187. width: 100%;
  188. height: 100vh;
  189. }
  190. .paekingFeeClass {
  191. position:relative;
  192. }
  193. .color-scroll-Y {
  194. background: #f4f7ff;
  195. // background: red;
  196. }
  197. .wrap {
  198. display: flex;
  199. flex-direction: column;
  200. width: 100%;
  201. .parkingFee {
  202. display: flex;
  203. flex-direction: column;
  204. .top_menu {
  205. background: #FBFCFF;
  206. box-sizing: border-box;
  207. display: flex;
  208. justify-content: space-between;
  209. padding-top: 34px;
  210. margin-bottom: 20px;
  211. padding-bottom: 30px;
  212. .menu_item {
  213. display: flex;
  214. flex-direction: column;
  215. align-items: center;
  216. width: 33.3%;
  217. img {
  218. width: 100px;
  219. height: 100px;
  220. margin-bottom: 3px;
  221. }
  222. span {
  223. // font-size: 30px;
  224. margin-top: 10px;
  225. // color: #333333;
  226. // font-size: 28px;
  227. font-family: 'Inter';
  228. font-style: normal;
  229. font-weight: 400;
  230. font-size: 28px;
  231. line-height: 34px;
  232. color: #333333;
  233. }
  234. }
  235. }
  236. .parkingFee-bottom {
  237. width: 100%;
  238. display: flex;
  239. flex-direction: column;
  240. box-sizing: border-box;
  241. // tabber 切换
  242. .parkingFee-tab {
  243. padding-top: 46px;
  244. padding-left: 27px;
  245. padding-bottom: 50px;
  246. background-color: #FBFCFF;
  247. display: flex;
  248. align-items: flex-end;
  249. &.unlicensed-box-bottom {
  250. padding-bottom: 120px;
  251. }
  252. .bar {
  253. color: #666666;
  254. // font-size: 32px;
  255. // font-weight: 500;
  256. font-family: 'PingFang SC';
  257. font-style: normal;
  258. font-weight: 500;
  259. font-size: 32px;
  260. line-height: 30px;
  261. /* identical to box height, or 94% */
  262. color: #666666;
  263. &:nth-child(1) {
  264. margin-right: 24px;
  265. }
  266. &.active {
  267. font-size: 38px;
  268. color: #333333;
  269. font-family: 'PingFang SC';
  270. font-style: normal;
  271. font-weight: 500;
  272. font-size: 38px;
  273. line-height: 38px;
  274. color: #333333;
  275. }
  276. }
  277. }
  278. // 车牌号查询
  279. .parkingFee-search {
  280. width: 100%;
  281. display: flex;
  282. flex-direction: column;
  283. background: #FBFCFF;
  284. box-sizing: border-box;
  285. .search_tip {
  286. width: 100%;
  287. margin-left: -1px;
  288. display: flex;
  289. justify-content: flex-start;
  290. align-items: center;
  291. padding-right: 30px;
  292. margin-bottom: 40px;
  293. .title {
  294. font-size: 30px;
  295. color: #333333;
  296. padding-left: 27px;
  297. margin-right: 33px;
  298. }
  299. .search_tip_pt {
  300. font-size: 28px;
  301. margin-right: 30px;
  302. flex: 1;
  303. display: flex;
  304. justify-content: space-around;
  305. align-items: center;
  306. border: 1px solid #999999;
  307. height: 60px;
  308. color: #999999;
  309. overflow: hidden;
  310. border-radius: 90px;
  311. div {
  312. height: 100%;
  313. width: 100%;
  314. border-radius: 90px;
  315. line-height: 62px;
  316. text-align: center;
  317. }
  318. .search_tip_pt_index {
  319. color: #fff;
  320. //background-image: linear-gradient(to right, #7e4fa1, #433c7f);
  321. background-color: #644a79;
  322. }
  323. }
  324. }
  325. .search_tip_1 {
  326. padding: 0 27px 40px;
  327. display: flex;
  328. align-items: center;
  329. .title {
  330. // font-size: 30px;
  331. margin-right: 33px;
  332. font-family: 'PingFang SC';
  333. font-style: normal;
  334. font-weight: 500;
  335. font-size: 30px;
  336. line-height: 36px;
  337. color: #333333;
  338. }
  339. .k-tab-group-fill {
  340. flex: 1;
  341. }
  342. }
  343. // 车牌号 & 虚拟键盘
  344. .input-box {
  345. width: 100%;
  346. flex: 1;
  347. display: flex;
  348. padding-bottom: 46px;
  349. padding: 0 17px;
  350. justify-content: center;
  351. box-sizing: border-box;
  352. .li {
  353. width: 100%;
  354. //border: 1px solid #d9dbe0;
  355. box-sizing: border-box;
  356. height: 90px;
  357. display: flex;
  358. align-items: center;
  359. justify-content: center;
  360. color: #333333;
  361. background-color: #f4f7ff;
  362. border-radius: 4px;
  363. font-size: 40px;
  364. margin: 0 3px;
  365. &.dashed {
  366. background-color: #fafbff;
  367. border: 1px dashed #fafbff;
  368. }
  369. &.van-hairline--surround {
  370. &::after{
  371. border-radius: 7px;
  372. border-color: #D9DBE0;
  373. }
  374. }
  375. &.active {
  376. &::after{
  377. border-color: var(--k-color-primary-01, #064c8a);
  378. }
  379. }
  380. &.green-active {
  381. background: #F8FFED;
  382. border-color: #7DB124;
  383. color: #7DB124;
  384. img{
  385. width: 41px;
  386. height: 39px;
  387. }
  388. }
  389. }
  390. .input_box_dian {
  391. display: flex;
  392. justify-content: center;
  393. align-items: center;
  394. font-size: 120px;
  395. height: 70px;
  396. color: var(--k-color-primary);
  397. }
  398. }
  399. .search-btn {
  400. color: #fff;
  401. margin: 0 auto;
  402. height: 90px;
  403. width: calc(100% - 60px);
  404. line-height: 90px;
  405. border-radius: 80px;
  406. font-size: 36px;
  407. text-align: center;
  408. //background-image: linear-gradient(to right, #7e4fa1, #433c7f);
  409. // background-color: #644a79;
  410. background-color: var(--k-color-primary);
  411. margin-bottom: 43px;
  412. }
  413. .disabled-btn {
  414. background-color: #c1c1c1 !important;
  415. //background-image: none !important;
  416. }
  417. }
  418. /* 历史车牌 */
  419. .vehicleMgt-list {
  420. // margin-top: 43px;
  421. // padding-top: 43px;
  422. display: flex;
  423. flex-direction: column;
  424. // margin-bottom: 34px;
  425. padding-bottom: 34px;
  426. //margin-top: 20px;
  427. //padding-top: 20px;
  428. background-color: #FBFCFF;
  429. .vehicleMgt-title {
  430. //width: 91%;
  431. padding-left: 27px;
  432. display: flex;
  433. text-align: left;
  434. font-weight: 500;
  435. justify-content: space-between;
  436. //margin-left: 4%;
  437. // padding-left: 30px;
  438. //padding-top: 30px;
  439. height: 40px;
  440. line-height: 40px;
  441. box-sizing: border-box;
  442. margin-bottom: 24px;
  443. // border-top: 1px solid #f2f2f2;
  444. font-size: 30px;
  445. .vehicleMgt-title-img {
  446. width: 30px;
  447. height: 30px;
  448. }
  449. }
  450. .vehicleMgt-content {
  451. width: 94%;
  452. margin-left: 29px;
  453. display: flex;
  454. flex-wrap: wrap;
  455. // justify-content: space-around;
  456. border-radius: 15px;
  457. .item {
  458. width: 30%;
  459. height: 60px;
  460. box-sizing: content-box;
  461. //padding: 0 2px;
  462. // margin-top: 30px;
  463. // margin-left: 16px;
  464. margin-right: 15px;
  465. margin-bottom: 16px;
  466. text-align: center;
  467. box-sizing: border-box;
  468. border: 1px solid #d9dbe0;
  469. background-color: #f4f7ff;
  470. line-height: 60px;
  471. font-size: 28px;
  472. border-radius: 30px;
  473. color: #666666;
  474. }
  475. .vehicleMgt-content_cls {
  476. color: var(--k-color-primary-active);
  477. border: 2px solid var(--k-color-primary-active);
  478. }
  479. }
  480. }
  481. }
  482. /* 无牌车UI */
  483. .unlicensed-box {
  484. background-color: #FBFCFF;
  485. .no-car-unlicensed-box {
  486. box-sizing: border-box;
  487. img {
  488. width: 391px;
  489. display: block;
  490. margin: 0 auto;
  491. }
  492. .no-car-unlicensed-info {
  493. color: #919baa;
  494. font-size: 36px;
  495. line-height: 36px;
  496. text-align: center;
  497. margin-bottom: 70px;
  498. font-family: 'PingFang SC';
  499. font-style: normal;
  500. font-weight: 400;
  501. }
  502. .search-btn {
  503. font-size: 32px;
  504. height: 90px;
  505. color: #ffffff;
  506. line-height: 90px;
  507. background: var(--k-color-primary);
  508. text-align: center;
  509. margin: 0 30px;
  510. border-radius: 45px;
  511. margin-bottom: 58px;
  512. .unlicensed-scan {
  513. display: inline-block;
  514. width: 60px;
  515. height: 60px;
  516. position: relative;
  517. top: 17px;
  518. margin-right: 15px;
  519. }
  520. &.no-car-unlicensed-btn {
  521. .text{
  522. position: relative;
  523. top: -2px;
  524. }
  525. }
  526. }
  527. }
  528. .in-car {
  529. box-sizing: border-box;
  530. .car-number-box {
  531. height: 230px;
  532. //padding-top: 53px;
  533. padding-left: 18px;
  534. //padding-bottom: 34px;
  535. background: #fbfcff;
  536. border: 1px solid #d9dbe0;
  537. border-radius: 4px;
  538. margin: 0 24px;
  539. display: flex;
  540. margin-bottom: 40px;
  541. display: flex;
  542. align-items: center;
  543. img {
  544. width: 288px;
  545. height: 142px;
  546. }
  547. .car-number {
  548. .number {
  549. font-size: 50px;
  550. line-height: 56px;
  551. font-weight: 600;
  552. color: #333333;
  553. margin-bottom: 23px;
  554. }
  555. .tips {
  556. color: #999999;
  557. }
  558. }
  559. }
  560. .search-btn {
  561. background: var(--k-color-primary);
  562. border-radius: 45px;
  563. color: #ffffff;
  564. line-height: 90px;
  565. height: 90px;
  566. font-size: 36px;
  567. text-align: center;
  568. margin: 0 30px 40px;
  569. }
  570. }
  571. }
  572. /* 缴费说明 */
  573. .parkingFee-top {
  574. display: flex;
  575. flex-direction: column;
  576. background-size: 100% 30%;
  577. padding-left: 27px;
  578. padding-right: 27px;
  579. background-color: #FBFCFF;
  580. position: relative;
  581. .top_content {
  582. box-sizing: border-box;
  583. span {
  584. font-size: 24px;
  585. color: #898989;
  586. text-align: left;
  587. }
  588. .title_box {
  589. display: flex;
  590. align-items: center;
  591. justify-content: space-between;
  592. margin-bottom: 20px;
  593. .btn {
  594. box-sizing: border-box;
  595. border-radius: 20px;
  596. font-size: 30px;
  597. font-weight: 500;
  598. color: #333;
  599. text-align: left;
  600. }
  601. }
  602. .sub_title_box {
  603. margin-bottom: 5px;
  604. .btn{
  605. font-family: 'PingFang SC';
  606. font-style: normal;
  607. font-weight: 400;
  608. font-size: 26px;
  609. line-height: 40px;
  610. color: #333333;
  611. }
  612. }
  613. .info {
  614. padding-left: 2px;
  615. font-size: 27px;
  616. width: 95%;
  617. color: #666;
  618. line-height: 45px;
  619. p {
  620. margin: 0;
  621. }
  622. }
  623. .info_show {
  624. word-break: break-all;
  625. text-overflow: ellipsis;
  626. overflow: hidden;
  627. display: -webkit-box;
  628. -webkit-line-clamp: 2;
  629. -webkit-box-orient: vertical;
  630. }
  631. }
  632. .top_down {
  633. width: 100%;
  634. text-align: center;
  635. color: #999999;
  636. margin-top: 25px;
  637. margin-bottom: 20px;
  638. }
  639. }
  640. }
  641. }
  642. // 缴费说明
  643. .payInstruct_wrap {
  644. width: 300px;
  645. margin: 0 auto;
  646. display: flex;
  647. flex-direction: column;
  648. background: #fff;
  649. border-radius: 20px;
  650. .scroll {
  651. height: 600px;
  652. display: flex;
  653. flex-direction: column;
  654. padding: 20px;
  655. box-sizing: border-box;
  656. .payInstruct_title {
  657. font-size: 30px;
  658. text-align: center;
  659. padding: 20px 0;
  660. box-sizing: border-box;
  661. border-bottom: 1px solid #f2f2f2;
  662. }
  663. .payInstruct_con {
  664. display: flex;
  665. width: 100%;
  666. padding: 20px 10px;
  667. box-sizing: border-box;
  668. span {
  669. font-size: 28px;
  670. color: #999;
  671. }
  672. }
  673. }
  674. }
  675. .class-plate-box {
  676. width: 100%;
  677. padding: 24px 0;
  678. box-sizing: border-box;
  679. position: relative;
  680. }
  681. .delBtn {
  682. color: #fff;
  683. height: 38px;
  684. line-height: 38px;
  685. font-size: 20px;
  686. width: 124px;
  687. border-radius: 7px;
  688. text-align: center;
  689. padding: 4px;
  690. background-color: #c69c6d;
  691. }
  692. .payThe {
  693. background-color: #fff;
  694. width: 100%;
  695. .pay_index {
  696. text-align: center;
  697. width: 200px;
  698. padding-top: 10px;
  699. margin: 0px auto;
  700. }
  701. .pay_title {
  702. width: 500px;
  703. display: flex;
  704. align-items: center;
  705. margin-top: 30px;
  706. }
  707. .pay_title1 {
  708. width: 100%;
  709. margin-top: 20px;
  710. display: flex;
  711. align-items: center;
  712. }
  713. .pay_title_yhj {
  714. margin-left: 60px;
  715. font-size: 20px;
  716. }
  717. .pay_title_yhj1 {
  718. margin-left: 35px;
  719. font-size: 20px;
  720. }
  721. .payjf {
  722. font-size: 20px;
  723. margin-left: 30px;
  724. }
  725. .paySelect {
  726. color: rgba(16, 16, 16, 100);
  727. font-size: 20px;
  728. font-family: Arial;
  729. border: 1px solid rgba(187, 187, 187, 100);
  730. border-radius: 10px;
  731. margin-left: 80px;
  732. width: 260px;
  733. height: 80px;
  734. }
  735. .paySelect1 {
  736. color: rgba(16, 16, 16, 100);
  737. font-size: 20px;
  738. font-family: Arial;
  739. border: 1px solid rgba(187, 187, 187, 100);
  740. border-radius: 10px;
  741. margin-left: 80px;
  742. width: 260px;
  743. height: 80px;
  744. display: flex;
  745. align-items: center;
  746. }
  747. .pay-se {
  748. width: 120px;
  749. height: 100%;
  750. background-color: #d8dce6;
  751. .pay-se-l {
  752. height: 48%;
  753. text-align: center;
  754. font-size: 50px;
  755. line-height: 68px;
  756. }
  757. .pay-se-l1 {
  758. border-left: 1px solid rgba(187, 187, 187, 100);
  759. border-bottom: 1px solid rgba(187, 187, 187, 100);
  760. }
  761. .pay-se-l2 {
  762. border-left: 1px solid rgba(187, 187, 187, 100);
  763. }
  764. }
  765. .payjfzk {
  766. font-size: 20px;
  767. color: #8b8c8b;
  768. margin-top: 10px;
  769. margin-left: 210px;
  770. }
  771. .pay_time {
  772. font-size: 28px;
  773. margin-left: 180px;
  774. padding-bottom: 40px;
  775. }
  776. .pay_time1 {
  777. margin-top: 26px;
  778. }
  779. }
  780. .pay_jiaof {
  781. width: 97%;
  782. height: 60px;
  783. line-height: 60px;
  784. margin-left: 10px;
  785. background-color: #c69c6d;
  786. text-align: center;
  787. color: rgba(255, 255, 255, 100);
  788. font-size: 28px;
  789. font-family: Microsoft Yahei;
  790. border-radius: 10px;
  791. margin-top: 20px;
  792. }
  793. .sq_content {
  794. width: 700px;
  795. background-color: #fff;
  796. position: fixed;
  797. bottom: 25px;
  798. left: 25px;
  799. height: 50px;
  800. display: flex;
  801. justify-content: space-between;
  802. align-items: center;
  803. border-radius: 15px;
  804. font-size: 16px;
  805. color: #c69c6d;
  806. padding: 0px 30px;
  807. box-sizing: border-box;
  808. }
  809. .sq_content .btn {
  810. width: 180px;
  811. height: 30px;
  812. line-height: 30px;
  813. text-align: center;
  814. color: #fff;
  815. background-color: #c69c6d;
  816. margin-top: -3px;
  817. border-radius: 25px;
  818. }
  819. // 停车券弹窗
  820. .ticketPopup {
  821. display: flex;
  822. flex-direction: column;
  823. background: #fff;
  824. border-radius: 20px 20px 0 0;
  825. z-index: 999;
  826. .popup-title {
  827. display: flex;
  828. justify-content: center;
  829. align-items: center;
  830. padding: 30px 42px;
  831. box-sizing: border-box;
  832. border-bottom: 1px solid #f2f2f2;
  833. position: relative;
  834. span {
  835. color: #999;
  836. font-size: 28px;
  837. }
  838. .useRule-text {
  839. position: absolute;
  840. right: 42px;
  841. color: rgb(58, 130, 248);
  842. }
  843. }
  844. .popup_scroll {
  845. height: 70vh;
  846. background: #f2f2f2;
  847. }
  848. .popup_content {
  849. width: 100%;
  850. height: 100%;
  851. display: flex;
  852. flex-direction: column;
  853. padding: 10px 20px;
  854. box-sizing: border-box;
  855. .item {
  856. display: flex;
  857. background: #fff;
  858. margin-bottom: 20px;
  859. border-radius: 10px;
  860. .item-left {
  861. flex: 1;
  862. display: flex;
  863. align-items: center;
  864. padding: 20px 0;
  865. box-sizing: border-box;
  866. position: relative;
  867. .item-type {
  868. position: absolute;
  869. top: 0;
  870. left: 0;
  871. background: #fff5f1;
  872. border-radius: 10px 0 10px 0;
  873. width: 205px;
  874. display: flex;
  875. justify-content: center;
  876. span {
  877. color: #999;
  878. font-size: 20px;
  879. text-align: center;
  880. line-height: 28px;
  881. }
  882. }
  883. .item-value {
  884. color: #c69c6d;
  885. font-size: 40px;
  886. padding: 10px 30px;
  887. box-sizing: border-box;
  888. width: 205px;
  889. display: flex;
  890. justify-content: center;
  891. .b {
  892. color: #c69c6d;
  893. font-weight: 600;
  894. font-size: 60px;
  895. }
  896. }
  897. .color_disabled {
  898. color: #999 !important;
  899. }
  900. }
  901. .item-right {
  902. display: flex;
  903. align-items: center;
  904. justify-content: center;
  905. border-radius: 0 8px 8px 0;
  906. position: relative;
  907. span {
  908. color: #c69c6d;
  909. font-size: 24px;
  910. padding: 0 20px;
  911. box-sizing: border-box;
  912. }
  913. .color_disabled {
  914. color: #999;
  915. }
  916. // 对勾
  917. .dot {
  918. position: absolute;
  919. top: 0;
  920. right: 0;
  921. width: 2.25rem;
  922. height: 2.375rem;
  923. }
  924. }
  925. }
  926. }
  927. }
  928. // 弹窗按钮
  929. .popup_button {
  930. width: 100%;
  931. display: flex;
  932. align-items: center;
  933. justify-content: space-between;
  934. padding: 10px 20px;
  935. box-sizing: border-box;
  936. span {
  937. height: 110px;
  938. line-height: 110px;
  939. text-align: center;
  940. }
  941. .cancel_btn {
  942. background: #fff;
  943. color: #ed1c24 !important;
  944. }
  945. .ok_btn {
  946. background: #c69c6d;
  947. color: #fff !important;
  948. width: 120px;
  949. height: 40px;
  950. line-height: 40px;
  951. border-radius: 40px;
  952. }
  953. }
  954. </style>