search.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807
  1. <template>
  2. <view>
  3. <ujp-navbar title="" ref='navbar' id='navbar' :height='nav_height'>
  4. <u-search id='search' ref='search' placeholder="查询站点地址或站名" @change="search()" v-model="keyword" @search="search" @click="search" @clickicon='back' @custom='search'></u-search>
  5. </ujp-navbar>
  6. <view class="recommend">推荐充电站</view>
  7. <view class="carNone" v-if="stationslist.length == 0">
  8. <img src="@/assets/static/img/暂无数据-缺省页.png" alt="">
  9. <p class="oldTextjp2" oldstyle="font-size: 18px;">暂无可用充电站</p>
  10. </view>
  11. <view v-for="(item,index) in stationslist" :key="item.id" class="charing-slow" @click="stationDetail(item)">
  12. <view class="address">
  13. <view class="name oldTextjp" oldstyle="font-size: 20px;">
  14. {{item.name}}
  15. </view>
  16. <view class="distance " oldstyle="font-size: 16px;" v-if="item.distance != '99999999'">
  17. <text class="iconfont" style="color:#666666">&#xe615;</text>
  18. {{item.distance!=null && item.distance>0.1 ? item.distance.toFixed(1)+'公里' : '小于100米'}}
  19. </view>
  20. <view class="distance " oldstyle="font-size: 16px;" v-else>
  21. <text class="iconfont" style="color:#666666">&#xe615;</text>
  22. 暂无定位
  23. </view>
  24. </view>
  25. <view class="sign" >
  26. {{item.address}}
  27. </view>
  28. <view v-if="quickChargeReduceMethod1(item)&&personInfo&&personInfo.userType==2"
  29. style="margin-top: 10rpx;color: rgba(255, 121, 0, 1);font-size: 28rpx; display: flex; align-items: center;" >
  30. <span style="color: #fff;background: linear-gradient(93.02deg, rgba(255,121,0,1) 39.4%,rgba(255,174,0,1) 93.51%);
  31. border-radius: 4px;
  32. padding: 0rpx 10rpx;
  33. margin-right: 8rpx;
  34. font-size: 24rpx;
  35. line-height:40rpx;
  36. " >活动</span>
  37. 快充订单满{{item.quickChargeDegree}}度服务费{{discountRatio10(item.quickChargeDiscountRatio)}}折
  38. </view>
  39. <view v-if="quickChargeReduceMethod2(item)&&personInfo&&personInfo.userType==2"
  40. style="margin-top: 10rpx;color: rgba(255, 121, 0, 1);font-size: 28rpx; display: flex; align-items: center;" >
  41. <span style="color: #fff;background: linear-gradient(93.02deg, rgba(255,121,0,1) 39.4%,rgba(255,174,0,1) 93.51%);
  42. border-radius: 4px;
  43. padding: 0rpx 10rpx;
  44. margin-right: 8rpx;
  45. font-size: 24rpx;
  46. line-height:40rpx;
  47. " >活动</span>
  48. 喜迎国庆,充电有奖
  49. </view>
  50. <view class="sign" >
  51. <view class="sign-1" v-if="item.giveDiscount&&item.discountRatio&&item.discountRatio!=100">会员{{discountRatio10(item.discountRatio)}}折</view>
  52. <view class="sign-3" v-if="item.category=='超充'">160kW超充站</view>
  53. <view class="sign-4" v-if="item.nightLowPriceEnabled">夜间超低价</view>
  54. <view class="sign-2" v-if="item.platformType==1">自营站</view>
  55. <view class="sign-2" v-if="item.tagList.length != 0" v-for="(tagName,tagIndex) in item.tagList" :style="'border: 1px solid '+tagNameBy(tagName,1)+';color:'+tagNameBy(tagName,1)"
  56. :key="tagIndex">{{tagNameBy(tagName,0)}}</view>
  57. </view>
  58. <view class="price-free price-freeList">
  59. <view class="price" v-if="personInfo&&personInfo.userType==2">
  60. <view class="price-1">
  61. <text class="num">{{!item.giveDiscount ? (item.electricityPrice+item.servicePrice).toFixed(2)
  62. : (item.electricityPrice+item.discountServicePrice).toFixed(2)}}</text>
  63. <text class="unit " oldstyle="font-size: 14px;">
  64. 元/度
  65. </text>
  66. </view>
  67. <view class="price-2 " oldstyle="font-size: 14px;" v-if="item.giveDiscount">
  68. <text class="num">{{(item.electricityPrice+item.servicePrice).toFixed(2)}}</text>
  69. <text class="unit">元/度</text>
  70. </view>
  71. </view>
  72. <!-- 游客价格-->
  73. <view class="price" v-else>
  74. <view class="price-1">
  75. <text class="num">
  76. {{(item.electricityPrice+item.servicePrice).toFixed(2)}}</text>
  77. <text class="unit " oldstyle="font-size: 48rpx;">元/度</text>
  78. </view>
  79. <view class="price-3 " oldstyle="font-size: 48rpx;" v-if="item.giveDiscount">
  80. <text class="num1">会员</text>
  81. <text class="num">{{ (item.electricityPrice+item.discountServicePrice).toFixed(2)}}</text>
  82. <text class="unit ">元/度</text>
  83. </view>
  84. </view>
  85. <view class="free" >
  86. <view class="fast" v-if="item.fastNum">
  87. <view class="fast-font">
  88. </view>
  89. <view class="num">
  90. {{item.fastAvailableNum}}/{{item.fastNum}}
  91. </view>
  92. </view>
  93. <view class="slow" v-if="item.slowNum">
  94. <view class="slow-font">
  95. </view>
  96. <view class="num">
  97. {{item.slowAvailableNum}}/{{item.slowNum}}
  98. </view>
  99. </view>
  100. </view>
  101. </view>
  102. </view>
  103. <u-divider margin-top="20" bg-color="#F2F4F4" v-if="stationslist.length == recordsTotal">已经到底了</u-divider>
  104. </view>
  105. </template>
  106. <script>
  107. let _self;
  108. import * as API from '@/apis/site.js';
  109. import * as WxJsApi from '@/utils/wxJsApi.js'
  110. import MapLoader from '@/utils/AMap'
  111. export default {
  112. data() {
  113. return {
  114. elderMode:false,
  115. inputStyle:{
  116. backgroundColor: 'transparent',
  117. "font-size":'32rpx',
  118. },
  119. pageIndex:1,
  120. recordsTotal: 0,
  121. nav_height:54,
  122. personInfo:{},
  123. userId:'',
  124. keyword:'',
  125. stationslist:[],
  126. stations:[
  127. /* {name:'荆鹏软件园充电站',position:'湖北省荆州市沙市区江津东路附155号',price:1.2,idleNum:10,total:10,distance:0.1,time:1,type:'慢充',park:'2小时免费停车'},
  128. {name:'荆鹏软件园充电站2',position:'湖北省荆州市沙市区江津东路附156号',price:1.2,idleNum:10,total:10,distance:0.15,time:12,type:'快充',park:'3小时免费停车'},
  129. {name:'荆鹏软件园充电站3',position:'湖北省荆州市沙市区江津东路附157号',price:1.2,idleNum:10,total:10,distance:0.2,time:13,type:'慢充',park:'4小时免费停车'},
  130. {name:'荆鹏大道求助站充电站',position:'湖北省荆州市沙市区江津东路附158号',price:1.2,idleNum:10,total:10,distance:0.3,time:14,type:'快充',park:'5小时免费停车'},
  131. */
  132. ],
  133. }
  134. },
  135. onLoad(op){
  136. _self = this;
  137. //var px1 = uni.upx2px(88);
  138. //var rpx = 40/(uni.upx2px(100)/100);
  139. // 验证上面rpx的值
  140. var px = uni.upx2px(88);
  141. this.nav_height = px;
  142. // //('搜索框高度'+JSON.stringify(rpx))
  143. // //('搜索框高度'+JSON.stringify(px))
  144. /*
  145. if(op!= null && op.stationlist != null){
  146. this.stations = decodeURIComponent(op.stationlist)
  147. //('stations'+JSON.stringify(this.stations))
  148. }
  149. //('op'+JSON.stringify(op))*/
  150. },
  151. onReady() {
  152. this.elderMode = this.carhelp.get('getElderModeClass') == '长辈模式';
  153. if(this.elderMode)
  154. this.theme('elder')
  155. else
  156. this.theme('standard')
  157. if (this.carhelp.getPersonInfo()) {
  158. this.userId = this.carhelp.getPersonInfo().id;
  159. this.personInfo=this.carhelp.getPersonInfo();
  160. }
  161. WxJsApi.getWxConfig(['getLocation','openLocation', 'addEventListener']).then((res)=>{
  162. }).catch(error => {
  163. })
  164. this.getPoint();
  165. },
  166. onReachBottom() {
  167. if (this.stationslist.length < this.recordsTotal) {
  168. this.myLoadmore();
  169. }
  170. },
  171. // conponents:{charingSlows},
  172. methods: {
  173. gotoStationDetails(stationData){
  174. if(stationData.stationType==50&&stationData.fastNum==0&&stationData.slowNum==1){
  175. this.gotoUrl('pages/searchPile/stationAndPile/chargingPileDetails?isback=1&sid=' + stationData.id)
  176. }else{
  177. this.gotoUrl('pages/searchPile/stationAndPile/stationDetails?id=' + stationData.id)
  178. }
  179. },
  180. theme(type) {
  181. if(type == 'elder')
  182. {
  183. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  184. let data = {
  185. backgroundColor: 'transparent',
  186. "font-size":'32rpx',
  187. };
  188. this.inputStyle = data;
  189. }
  190. else
  191. {
  192. document.getElementsByTagName('body')[0].setAttribute('data-theme',type);
  193. let data ={
  194. backgroundColor: 'transparent',
  195. "font-size":'32rpx',
  196. };
  197. this.inputStyle = data;
  198. }
  199. },
  200. navigateTo(item){
  201. uni.showLoading({
  202. })
  203. WxJsApi.openLocation({
  204. latitude:parseFloat( item.latitude),//目的地latitude
  205. longitude:parseFloat( item.longitude),//目的地longitude
  206. name: item.name,
  207. address: item.address,
  208. scale: 15,//地图缩放大小,可根据情况具体调整
  209. success(res) {
  210. uni.hideLoading()
  211. },
  212. complete() {
  213. // uni.hideLoading()
  214. }
  215. });
  216. //window.location.href="https://uri.amap.com/marker?position="+ item.longitude+","+item.latitude+"&name="+item.name;
  217. },
  218. stationDetail(item){
  219. this.gotoStationDetails(item)
  220. //('stationDetail item'+JSON.stringify(item))
  221. // uni.navigateTo({
  222. // url:'../searchPile/stationAndPile/stationDetails?id='+item.id
  223. // })
  224. /*
  225. uni.navigateTo({
  226. url:'stationAndPile/stationDetails?station='+encodeURIComponent(JSON.stringify(item))
  227. })
  228. */
  229. // //('stationDetail'+JSON.stringify(item))
  230. },
  231. calculateDistance(startLngLat,obj){
  232. var _this = this;
  233. var endLngLat = [obj.longitude,obj.latitude];
  234. MapLoader().then(AMap1 => {
  235. this.AMap=AMap;
  236. var lnglat = new AMap.LngLat(startLngLat.longitude,startLngLat.latitude);
  237. var myDistance = lnglat.distance([obj.longitude, obj.latitude]);
  238. obj.distance = myDistance/1000;
  239. obj.time = myDistance/500;
  240. }, e => {
  241. //_this.mui.toast('地图加载失败');
  242. //('地图加载失败', e)
  243. })
  244. },
  245. getPoint() {
  246. var _this = this;
  247. //('getPoint')
  248. this.getChargingStationData(true);
  249. WxJsApi.getLocation().then((res) => {
  250. var latitude = parseFloat(res.latitude);
  251. var longitude = parseFloat(res.longitude);
  252. _this.latitude = latitude;
  253. _this.longitude = longitude;
  254. this.getChargingStationData(true);
  255. }).catch(error => {
  256. uni.showToast({
  257. title:JSON.stringify(error)
  258. })
  259. })
  260. },
  261. myLoadmore() {
  262. this.pageIndex += 1;
  263. this.getChargingStationData()
  264. },
  265. getChargingStationData(bl){
  266. uni.showLoading({
  267. title: "加载中",
  268. mask: true,
  269. })
  270. if (bl) {
  271. this.stationslist = [];
  272. this.pageIndex = 1;
  273. }
  274. var data = {
  275. pageIndex: this.pageIndex,
  276. pageSize:20,
  277. radius:500,
  278. stationName:this.keyword,
  279. findType: 0,
  280. };
  281. if(this.longitude&&this.latitude){
  282. data.longitude=this.longitude;
  283. data.latitude=this.latitude;
  284. }
  285. if (this.carhelp.getPersonInfo()) {
  286. data.openId=this.carhelp.getOpenId()
  287. }
  288. data.radius=500
  289. API.getChargingStationData(data).then((response) => {
  290. if (bl) {
  291. this.stationslist = [];
  292. this.pageIndex = 1;
  293. }
  294. console.log(response)
  295. var stationDataList=response.data.data
  296. if(this.longitude&&this.latitude){
  297. MapLoader().then(AMap1 => {
  298. for(var i in stationDataList){
  299. var item=stationDataList[i]
  300. var lnglat = new AMap.LngLat(this.longitude,this.latitude);
  301. var myDistance = lnglat.distance([item.longitude,item.latitude]);
  302. item.distance = myDistance/1000;
  303. }
  304. })
  305. }
  306. this.stationslist = [
  307. ...this.stationslist,
  308. ...stationDataList
  309. ];
  310. this.recordsTotal = response.data.recordsTotal;
  311. //this.detail=response.data.monthlyRentCard
  312. uni.hideLoading()
  313. }).catch(error => {
  314. uni.showToast({
  315. title: error
  316. })
  317. })
  318. },
  319. back(){
  320. //('back');
  321. uni.navigateBack({
  322. delta:1
  323. })
  324. },
  325. search(){
  326. //('search keyword'+this.keyword + ' '+JSON.stringify(this.stations))
  327. this.getChargingStationData(true)
  328. //('search ' + this.keyword);
  329. }
  330. }
  331. }
  332. </script>
  333. <style lang="scss" scoped>
  334. @import "@/_theme.scss";
  335. ::v-deep.u-content[data-v-1a326067] {
  336. flex: 0.95;
  337. color: #bdbdbd;
  338. }
  339. ::v-deep.u-action {
  340. margin-right: 0rpx;
  341. color: #c8c8c8;
  342. }
  343. .recommend {
  344. width: 100%;
  345. height: 88rpx;
  346. line-height: 88rpx;
  347. color: #101010;
  348. padding: 0 32rpx;
  349. background-color: #fff;
  350. font-weight: 600;
  351. }
  352. .charing-slow-2{
  353. margin: 0 0 10px 0 !important;
  354. // border-bottom: 1px solid rgba(238, 242, 240, 100);
  355. }
  356. .charing-slow {
  357. background-color: #fff;
  358. margin: 36rpx;
  359. border-radius: 16rpx;
  360. padding: 40rpx 24rpx 24rpx;
  361. position: relative;
  362. left: 0;
  363. right: 0;
  364. }
  365. .fast-charge {
  366. display: inline-block;
  367. border-radius: 50px;
  368. border-radius: 4px;
  369. background-color: rgba(208, 209, 255, 100);
  370. color: rgba(56, 60, 255, 100);
  371. margin: auto 0;
  372. @include themeify{
  373. width: themed('font-size18');
  374. font-size: themed('font-size2');
  375. line-height: themed('font-size7');
  376. height: themed('font-size8');
  377. }
  378. text-align: center;
  379. }
  380. .fast-trickle-charge {
  381. display: inline-block;
  382. margin: auto 0;
  383. border-radius: 4px;
  384. background-color: rgba(172, 236, 240, 100);
  385. color: rgba(0, 124, 134, 100);
  386. @include themeify{
  387. width: themed('font-size18');
  388. font-size: themed('font-size2');
  389. line-height: themed('font-size7');
  390. height: themed('font-size8');
  391. }
  392. text-align: center;
  393. }
  394. .trickle-charge {
  395. display: inline-block;
  396. border-radius: 4px;
  397. margin: auto 0;
  398. background-color: rgba(186, 240, 215, 100);
  399. color: rgba(0, 130, 69, 100);
  400. @include themeify{
  401. width: themed('font-size18');
  402. font-size: themed('font-size2');
  403. line-height: themed('font-size7');
  404. height: themed('font-size8');
  405. }
  406. text-align: center;
  407. }
  408. .station-items {
  409. display: inline-block;
  410. /* height: 16px;
  411. line-height: 16px;*/
  412. @include themeify{
  413. font-size: themed('font-size3');
  414. font-weight: themed('fontWeight');
  415. line-height: themed('font-size3');
  416. height: themed('font-size3');
  417. }
  418. margin-left: 8rpx;
  419. color: #101010;
  420. }
  421. //
  422. .address {
  423. width: 100%;
  424. line-height: 20px;
  425. display: flex;
  426. justify-content: space-between;
  427. .name{
  428. font-size: 16px;
  429. white-space: nowrap;
  430. overflow: hidden;
  431. text-overflow: ellipsis;
  432. }
  433. .distance{
  434. color: rgba(102, 102, 102, 100);
  435. font-size: 12px;
  436. text-align: right;
  437. width: 100px;
  438. .iconfont{
  439. font-size: 12px;
  440. margin-right: 2px;
  441. }
  442. }
  443. @include themeify{
  444. font-size: themed('font-size5');
  445. line-height: themed('font-size7');
  446. }
  447. /* font-size: 11px;*/
  448. font-weight: 600;
  449. color: #101010;
  450. }
  451. .price-free{
  452. width: 100%;
  453. display: flex;
  454. align-items: center;
  455. justify-content: space-between;
  456. }
  457. .price {
  458. display: flex;
  459. align-items: baseline;
  460. line-height: 40rpx;
  461. .price-3 {
  462. font-size: 24rpx;
  463. color: #fff;
  464. margin-left: 8rpx;
  465. padding-right: 9rpx;
  466. background:#00B962 ;
  467. border-radius: 8rpx;
  468. .num1{
  469. padding-left: 12rpx;
  470. border-radius: 8rpx 0 8rpx 8rpx;
  471. padding-right: 18rpx;
  472. background: #121212;
  473. -webkit-clip-path: polygon(0 0, 93% 0, 84% 100%, 0% 100%);
  474. clip-path: polygon(0 0, 93% 0, 84% 100%, 0% 100%);
  475. }
  476. }
  477. .price-1{
  478. .num {
  479. color: rgba(255, 98, 0, 100);
  480. font-size: 44rpx;
  481. height: 44rpx;
  482. text-align: left;
  483. font-family: Roboto-medium;
  484. }
  485. .unit {
  486. // font-size: 12px;
  487. color: rgba(102, 102, 102, 100);
  488. @include themeify{
  489. // font-size: themed('font-size2');
  490. font-size: 24rpx;
  491. height: themed('font-size2');
  492. }
  493. text-align: left;
  494. font-family: AlibabaPuHui-regular;
  495. margin-left: 8rpx;
  496. }
  497. }
  498. .price-2{
  499. color: rgba(153, 153, 153, 100);
  500. margin-left: 6rpx;
  501. text-decoration: line-through;
  502. font-size: 24rpx
  503. }
  504. }
  505. .free{
  506. display: flex;
  507. align-items: center;
  508. .slow,.fast{
  509. display: flex;
  510. .sp-font{
  511. width: 40rpx;
  512. height: 40rpx;
  513. line-height: 40rpx;
  514. border-radius: 4px;
  515. background-color: #7a68f6;
  516. color: #fff;
  517. font-size: 28rpx;
  518. text-align: center;
  519. margin-right: 2rpx;
  520. }
  521. .fast-font{
  522. width: 40rpx;
  523. height: 40rpx;
  524. line-height: 40rpx;
  525. border-radius: 4px;
  526. // background-color: rgba(186, 240, 215, 100);
  527. // color: rgba(0, 130, 69, 100);
  528. background-color: #1677FF;
  529. color: rgba(255, 255, 255, 1);
  530. font-size: 28rpx;
  531. text-align: center;
  532. margin-right: 2rpx;
  533. }
  534. .slow-font{
  535. width: 40rpx;
  536. height: 40rpx;
  537. line-height: 40rpx;
  538. border-radius: 4px;
  539. // background-color: rgba(226, 226, 226, 100);
  540. // color: rgba(128, 128, 128, 100);
  541. background-color: #00B962;
  542. color: rgba(255, 255, 255, 1);
  543. font-size: 28rpx;
  544. text-align: center;
  545. margin-right: 2rpx;
  546. }
  547. .num {
  548. font-size: 32rpx;
  549. color: #666;
  550. line-height: 40rpx;
  551. }
  552. .num1 {
  553. font-size: 32rpx;
  554. color: #bbb;
  555. line-height: 40rpx;
  556. }
  557. }
  558. .slow{
  559. margin-left: 16rpx;
  560. }
  561. }
  562. .park {
  563. margin-top: 16rpx;
  564. display: flex;
  565. }
  566. .park-p {
  567. display: inline-block;
  568. width: 20px;
  569. /* height: 18px;
  570. line-height: 12px;*/
  571. @include themeify{
  572. line-height: themed('font-size1');
  573. height: themed('font-size4');
  574. }
  575. text-align: center;
  576. // background-color: rgba(125, 177, 255, 100);
  577. background-color: #00b962;
  578. color: #fff;
  579. }
  580. .park-text {
  581. display: inline-block;
  582. color: rgba(102, 102, 102, 100);
  583. @include themeify{
  584. font-size: themed('font-size1');
  585. height:themed('font-size4');
  586. }
  587. /* font-size: 12px;*/
  588. text-align: left;
  589. margin-left: 4px;
  590. margin-top: 2px;
  591. }
  592. .map {
  593. width: 100%;
  594. height: 100%;
  595. position: relative;
  596. }
  597. #container {
  598. width: 100%;
  599. height: 100%;
  600. }
  601. .distance-font {
  602. @include themeify{
  603. font-size: themed('font-size3');
  604. }
  605. /* font-size: 16px*/
  606. }
  607. .position{
  608. color: #1677ff;
  609. @include themeify{
  610. font-size: themed('font-size2');
  611. }
  612. /* font-size: 14px*/
  613. }
  614. .position-box{
  615. position:absolute;
  616. top: 341px;
  617. right: 118px;
  618. width: 16px;
  619. height: 16px;
  620. /* line-height: 20px; */
  621. background-color: rgba(22, 119, 255, 100);
  622. text-align: center;
  623. box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.4);
  624. border: 2px solid rgba(255, 255, 255, 100);
  625. border-radius: 999px;
  626. }
  627. .min-h{
  628. min-height: 65px;
  629. }
  630. .sign{
  631. display: flex;
  632. flex-wrap: wrap;
  633. margin-top: 10px;
  634. .sign-1{
  635. height: 20px;
  636. line-height: 20px;
  637. border-radius: 4px;
  638. background-color: rgba(255, 255, 255, 100);
  639. color: rgba(255, 139, 0, 100);
  640. font-size: 12px;
  641. text-align: center;
  642. border: 1px solid rgba(255, 139, 0, 100);
  643. padding: 0 4px;
  644. margin-right: 8px;
  645. margin-bottom: 4px;
  646. }
  647. .sign-2{
  648. height: 20px;
  649. line-height: 20px;
  650. border-radius: 4px;
  651. background-color: rgba(255, 255, 255, 100);
  652. color: rgba(153, 153, 153, 100);
  653. font-size: 12px;
  654. text-align: center;
  655. border: 1px solid rgba(204, 204, 204, 100);
  656. padding: 0 4px;
  657. margin-right: 8px;
  658. margin-bottom: 4px;
  659. }
  660. .sign-3{
  661. line-height: 40rpx;
  662. border-radius: 8rpx;
  663. background-color: rgba(255, 255, 255, 100);
  664. color: #8161FF ;
  665. font-size: 24rpx;
  666. text-align: center;
  667. border: 1px solid #8161FF;
  668. padding: 0 8rpx;
  669. margin-right: 16rpx;
  670. margin-bottom: 8rpx;
  671. }
  672. .sign-4{
  673. line-height: 40rpx;
  674. border-radius: 8rpx;
  675. background-color: rgba(255, 255, 255, 100);
  676. color: #00B962 ;
  677. font-size: 24rpx;
  678. text-align: center;
  679. border: 1px solid #00B962 ;
  680. padding: 0 8rpx;
  681. margin-right: 16rpx;
  682. margin-bottom: 8rpx;
  683. }
  684. }
  685. .park-text2 {
  686. width: 140%;
  687. }
  688. .park-text3 {
  689. white-space: nowrap;
  690. text-overflow: ellipsis;
  691. overflow: hidden;
  692. }
  693. .carNone{
  694. display: flex;
  695. flex-direction: column;
  696. justify-content: center;
  697. align-items: center;
  698. img{
  699. width: 100%;
  700. height: 100%;
  701. }
  702. p{
  703. margin-top: -60px;
  704. }
  705. }
  706. </style>