You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

user.vue 17KB

10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
1 rok temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
2 lat temu
9 miesięcy temu
1 rok temu
3 miesięcy temu
3 miesięcy temu
1 miesiąc temu
1 miesiąc temu
2 lat temu
1 miesiąc temu
1 rok temu
9 miesięcy temu
2 lat temu
2 lat temu
1 rok temu
1 rok temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
1 miesiąc temu
1 miesiąc temu
1 miesiąc temu
10 miesięcy temu
10 miesięcy temu
1 miesiąc temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
10 miesięcy temu
2 lat temu
10 miesięcy temu
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812
  1. <template>
  2. <navBar title="九州ETC" :scrollTop="scrollTop" :isBack="isBack" navbgClass="nav-bgXin" fontColor='#fff'></navBar>
  3. <filter>
  4. <view class="wrapper">
  5. <image :src="`${$imgUrl}myImage/headbg.png`" class="bg-head" mode="widthFix"></image>
  6. <view class="content" :style="{ top: margin + 'px' }">
  7. <view class="head" :style="{ marinTop: margin + 'px' }">
  8. <view class="avatar">
  9. <image :src="`${$imgUrl}myImage/touxiang.png`" :class="!state.data.opId ? 'unlogin' : ''"
  10. @click="goLogin">
  11. </image>
  12. <view v-if="!state.data.opId" class="name" @click="$util.navTo('/login/login')">
  13. <view class="nickname">登录/注册</view>
  14. </view>
  15. <view v-else class="name">
  16. <view class="nickname">{{state.accountInfoVo.nickName || state.accountInfoVo.userName}}
  17. </view>
  18. <view class="user-id">
  19. <view class="phone">{{state.accountInfoVo.mobile}}</view>
  20. <view v-if="false"
  21. @click="$util.navTo('/subpackage/personal-center/setting/change-phone', true)"
  22. class="btn-change">已关联</view>
  23. </view>
  24. <view v-if="!isSm" class="btn-change-two">已实名认证</view>
  25. </view>
  26. </view>
  27. <view class="r-setting" @click="$util.navTo('/subpackage/personal-center/setting/setting', true)">
  28. <image :src="`${$imgUrl}myImage/shezhi.png`" class="img" mode="widthFix"></image>
  29. </view>
  30. </view>
  31. <view class="my-equity" :style="{'--bgimg':`url(${$imgUrl}myImage/quanuyikuang.png)`}"
  32. @click="myEtcAccount">
  33. <view class="l-con">
  34. <image :src="`${$imgUrl}myImage/myETC.png`" class="equity-icon" mode="widthFix"></image>
  35. <view class="txt">
  36. 我的ETC账户
  37. </view>
  38. </view>
  39. <view class="r-icon1">
  40. <image :src="`${$imgUrl}myImage/quanyixiayi.png`" class="r-img1" mode="widthFix"></image>
  41. </view>
  42. </view>
  43. <view class="my-equity userName" :style="{'--bgimg':`url(${$imgUrl}myImage/loginBg.png)`,'height': '120rpx' ,'margin-top':' -30rpx',
  44. 'z-index': -1,'padding-top': '17rpx','boxSizing':'border-box' }" v-if="state.customerObj">
  45. <view class="l-con">
  46. <image :src="`${$imgUrl}myImage/person.png`" class="equity-icon" mode="widthFix"></image>
  47. <view class="txt">
  48. {{state.customerObj.userName}}
  49. </view>
  50. </view>
  51. <view style="margin-right: 26rpx;">
  52. {{state.customerObj.vehicleCount?state.customerObj.vehicleCount:'无'}}辆车
  53. </view>
  54. </view>
  55. <view class="info-content">
  56. <view class="order box">
  57. <view class="list_item"
  58. @click="$util.navTo('/subpackage/personal-center/real-name-authentication', true)">
  59. <view class="l-con">
  60. <image :src="`${$imgUrl}myImage/basicInformation.png`" class="equity-icon"
  61. mode="widthFix"></image>
  62. <view class="txt">
  63. 基本信息
  64. </view>
  65. </view>
  66. <view class="r-icon">
  67. <text v-if="isSm">请进行实名认证</text>
  68. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  69. </view>
  70. </view>
  71. <view class="list_item"
  72. @click="$util.navTo(`/subpackage/after-sale/activation-once-again/select-car?type=38`, true)">
  73. <view class="l-con">
  74. <image :src="`${$imgUrl}myImage/myCar.png`" class="equity-icon" mode="widthFix"></image>
  75. <view class="txt">
  76. 我的车辆
  77. </view>
  78. </view>
  79. <view class="r-icon">
  80. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  81. </view>
  82. </view>
  83. <view class="list_item" @click="goOrder(0)">
  84. <view class="l-con">
  85. <image :src="`${$imgUrl}myImage/etcOrder.png`" class="equity-icon" mode="widthFix">
  86. </image>
  87. <view class="txt">
  88. ETC订单
  89. </view>
  90. </view>
  91. <view class="r-icon">
  92. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  93. </view>
  94. </view>
  95. <view class="list_item">
  96. <view class="l-con">
  97. <image :src="`${$imgUrl}myImage/afterOrder.png`" class="equity-icon" mode="widthFix">
  98. </image>
  99. <view class="txt">
  100. 售后订单
  101. </view>
  102. </view>
  103. <view class="r-icon">
  104. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  105. </view>
  106. </view>
  107. <view class="list_item" @click="goEquity()">
  108. <view class="l-con">
  109. <image :src="`${$imgUrl}myImage/quanyi.png`" class="equity-icon" mode="widthFix">
  110. </image>
  111. <view class="txt">
  112. 我的权益
  113. </view>
  114. </view>
  115. <view class="r-icon">
  116. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  117. </view>
  118. </view>
  119. <view class="list_item"
  120. @click="$util.navTo(`/subpackage/orders/invoiceApply/invoice-header-list?manage=1`, true)">
  121. <view class="l-con">
  122. <image :src="`${$imgUrl}myImage/invoiceHeader.png`" class="equity-icon" mode="widthFix">
  123. </image>
  124. <view class="txt">
  125. 发票抬头
  126. </view>
  127. </view>
  128. <view class="r-icon">
  129. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  130. </view>
  131. </view>
  132. <view class="list_item"
  133. @click="$util.navTo(`/subpackage/personal-center/setting/addressManager`, true)">
  134. <view class="l-con">
  135. <image :src="`${$imgUrl}myImage/addressManager.png`" class="equity-icon"
  136. mode="widthFix"></image>
  137. <view class="txt">
  138. 收货地址
  139. </view>
  140. </view>
  141. <view class="r-icon">
  142. <image :src="`${$imgUrl}myImage/myIcon.png`" class="r-img" mode="widthFix"></image>
  143. </view>
  144. </view>
  145. </view>
  146. </view>
  147. </view>
  148. </view>
  149. </filter>
  150. </template>
  151. <script lang="ts" setup>
  152. import { reactive } from "vue";
  153. import { msg, navTo } from "@/utils/utils";
  154. import { onMounted, ref } from "vue";
  155. import { getItem, StorageKeys } from "@/utils/storage";
  156. import navBar from "../../components/nav-bar/nav-bar2.vue";
  157. import { onLoad, onShow, onPageScroll } from "@dcloudio/uni-app";
  158. import {
  159. userInfoIndex, queryVehicleBind, vehicleUnBind, showEquityListApi, orderinfosumquery, getUserMsg
  160. } from "@/utils/network/api.js";
  161. import {
  162. request, requestNew
  163. } from "@/utils/network/request.js";
  164. import filter from '@/components/filter/filter.vue';
  165. import { source } from "@/utils/network/difference";
  166. import { vehiclePlateColor, vehiclePlateColorPai, getVehiclePlateColorPaiShow } from "@/datas/vehiclePlateColor.js";
  167. const height = ref(null);
  168. const top = ref(null);
  169. const margin = ref(null);
  170. const mobile = ref(null);
  171. const scrollTop = ref(0);
  172. const isBack = ref(false);
  173. const isSm = ref(true);
  174. const state = reactive({
  175. data: {
  176. opId: "",
  177. },
  178. accountInfoVo: {
  179. nickName: '',
  180. mobile: '',
  181. userName: ''
  182. },
  183. equityNumber: 0,
  184. customerObj: {}
  185. });
  186. onMounted(() => {
  187. const res = uni.getMenuButtonBoundingClientRect();
  188. height.value = res.height + "px";
  189. top.value = res.top + "px";
  190. margin.value = res.height + res.top;
  191. });
  192. onLoad((option : any) => {
  193. state.data.opId = getItem(StorageKeys.OpenId);
  194. console.log("state.data.opId", state.data.opId)
  195. mobile.value = getItem("mobile");
  196. const options = {
  197. type: 2,
  198. data: { openId: getItem('openId') },
  199. method: "POST",
  200. showLoading: true,
  201. };
  202. requestNew(getUserMsg, options).then((res) => {
  203. const data = res;
  204. console.log(data, "用户信息"); //|| !data.userNegImgUrl || !data.userPosImgUrl
  205. if (!data.userIdNum || !data.userNegImgUrl || !data.userPosImgUrl) {
  206. isSm.value = true
  207. } else {
  208. isSm.value = false
  209. }
  210. });
  211. });
  212. const carDetails = (vehicleId) => {
  213. uni.navigateTo({
  214. url: `/subpackage/personal-center/vehicle-change/car-details?vehicleId=${vehicleId}`
  215. })
  216. }
  217. const myEtcAccount = () => {
  218. navTo(`/subpackage/personal-center/my-etc-account`)
  219. }
  220. //监听页面滚动
  221. onPageScroll((e) => {
  222. scrollTop.value = e.scrollTop;
  223. });
  224. onShow((option : any) => {
  225. state.data.opId = getItem(StorageKeys.OpenId);
  226. console.log("state.data.opId", state.data.opId)
  227. if (state.data.opId) {
  228. getUserInfo();
  229. }
  230. state.customerObj = getItem('customerObj')
  231. });
  232. const getUserInfo = () => {
  233. const options = {
  234. type: 2,
  235. data: {},
  236. method: "POST",
  237. showLoading: true,
  238. };
  239. //调用方式
  240. requestNew(userInfoIndex, options)
  241. .then((res) => {
  242. console.log('用户信息', res)
  243. let data = res
  244. state.accountInfoVo = data;
  245. console.log("获取用户信息", data);
  246. })
  247. .catch((err) => {
  248. console.log(err);
  249. });
  250. }
  251. const goOrder = (index) => {
  252. navTo(`../order/order?index=${index}`)
  253. }
  254. const goLogin = () => {
  255. if (!getItem('openId')) {
  256. uni.navigateTo({
  257. url: "/login/login"
  258. })
  259. }
  260. }
  261. const goEquity = () => {
  262. navTo('/subpackage/service/equityList/equityList')
  263. }
  264. </script>
  265. <style>
  266. page {
  267. background: #eef7f7;
  268. }
  269. </style>
  270. <style scoped lang='scss'>
  271. .unlogin {
  272. filter: grayscale(100%);
  273. opacity: 0.7;
  274. }
  275. .bgVar {
  276. background-image: var(--bgimg);
  277. background-repeat: no-repeat;
  278. background-size: 100% 100%;
  279. }
  280. .wrapper {
  281. position: relative;
  282. background-color: #f6f9fc;
  283. }
  284. .bar {
  285. width: 100%;
  286. position: fixed;
  287. text-align: center;
  288. font-size: 32rpx;
  289. font-weight: bold;
  290. }
  291. .bg-head {
  292. width: 100%;
  293. position: absolute;
  294. z-index: 1;
  295. top: 0;
  296. left: 0;
  297. }
  298. .content {
  299. position: relative;
  300. display: flex;
  301. flex-direction: column;
  302. width: 100%;
  303. z-index: 2;
  304. }
  305. .head {
  306. display: flex;
  307. justify-content: space-between;
  308. align-items: center;
  309. width: 100%;
  310. box-sizing: border-box;
  311. padding: 40rpx 0 46rpx;
  312. }
  313. .head .avatar {
  314. display: flex;
  315. align-items: center;
  316. justify-content: space-between;
  317. }
  318. .head .avatar image {
  319. width: 141rpx;
  320. height: 141rpx;
  321. /* border-radius: 80rpx; */
  322. margin: 0 20rpx 0 30rpx;
  323. }
  324. .head .setting {
  325. display: flex;
  326. align-items: center;
  327. background: rgba(0, 179, 139, .1);
  328. border: 1px solid #fff;
  329. height: 60rpx;
  330. border-radius: 30rpx;
  331. padding: 0 34rpx;
  332. color: #fff;
  333. font-size: 28rpx;
  334. margin-right: 30rpx;
  335. }
  336. .head .setting image {
  337. width: 40rpx;
  338. height: 40rpx;
  339. margin-right: 6rpx;
  340. }
  341. .head .r-setting {
  342. width: 80rpx;
  343. height: 80rpx;
  344. background: #345061;
  345. display: flex;
  346. align-items: center;
  347. justify-content: center;
  348. border-radius: 50%;
  349. margin-right: 50rpx;
  350. .img {
  351. width: 40rpx;
  352. height: 39rpx;
  353. }
  354. }
  355. .head .nickname {
  356. font-size: 36rpx;
  357. color: #fff;
  358. }
  359. .head .user-id {
  360. font-size: 26rpx;
  361. color: #fff;
  362. padding-top: 20rpx;
  363. display: flex;
  364. align-items: center;
  365. }
  366. .head .btn-change {
  367. font-size: 22rpx;
  368. height: 40rpx;
  369. padding: 0 20rpx;
  370. border: 1px solid #fff;
  371. color: #fff;
  372. box-sizing: border-box;
  373. border-radius: 20rpx;
  374. margin-left: 16rpx;
  375. background: rgba(0, 179, 139, .1);
  376. }
  377. .btn-change-two {
  378. font-size: 22rpx;
  379. height: 40rpx;
  380. padding: 0 40rpx;
  381. border: 1px solid #CCB375;
  382. color: #CCB375;
  383. box-sizing: border-box;
  384. border-radius: 20rpx;
  385. margin-top: 10rpx;
  386. background: rgba(0, 179, 139, .1);
  387. }
  388. .list_item {
  389. position: relative;
  390. z-index: 20;
  391. margin: 0 30rpx;
  392. height: 94rpx;
  393. display: flex;
  394. align-items: center;
  395. justify-content: space-between;
  396. border-bottom: 1rpx solid #DFDFDF;
  397. .l-con {
  398. display: flex;
  399. align-items: center;
  400. .equity-icon {
  401. width: 46rpx;
  402. height: 46rpx;
  403. }
  404. .txt {
  405. font-family: NotoSansHans, NotoSansHans;
  406. font-size: 28rpx;
  407. color: #01253C;
  408. margin-left: 19rpx;
  409. }
  410. }
  411. .r-icon {
  412. height: 32rpx;
  413. display: flex;
  414. align-items: center;
  415. color: rgb(177, 177, 177);
  416. font-size: 28rpx;
  417. .r-img {
  418. width: 32rpx;
  419. height: 32rpx;
  420. }
  421. }
  422. }
  423. .box>view:last-child {
  424. border: none;
  425. }
  426. .my-equity {
  427. position: relative;
  428. z-index: 20;
  429. margin: 0 auto;
  430. background-image: var(--bgimg);
  431. background-repeat: no-repeat;
  432. background-size: 100% 100%;
  433. width: 700rpx;
  434. height: 94rpx;
  435. display: flex;
  436. align-items: center;
  437. justify-content: space-between;
  438. .l-con {
  439. margin-left: 30rpx;
  440. display: flex;
  441. align-items: center;
  442. .equity-icon {
  443. width: 54rpx;
  444. height: 54rpx;
  445. }
  446. .txt {
  447. font-family: NotoSansHans, NotoSansHans;
  448. font-size: 28rpx;
  449. color: #01253C;
  450. margin-left: 19rpx;
  451. }
  452. }
  453. .r-icon {
  454. margin-right: 30rpx;
  455. width: 36rpx;
  456. height: 36rpx;
  457. .r-img {
  458. width: 36rpx;
  459. height: 36rpx;
  460. }
  461. }
  462. .r-icon1 {
  463. margin-right: 30rpx;
  464. width: 32rpx;
  465. height: 32rpx;
  466. .r-img1 {
  467. width: 32rpx;
  468. height: 32rpx;
  469. }
  470. }
  471. }
  472. .info-content {
  473. transform: translateY(-10rpx);
  474. margin-top: 30rpx;
  475. }
  476. .box .arrow {
  477. width: 10rpx;
  478. height: 18rpx;
  479. }
  480. .box {
  481. background: #ffffff;
  482. margin: 0 30rpx 30rpx;
  483. border-radius: 20rpx;
  484. box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(223, 223, 223, 0.9);
  485. }
  486. .box .more {
  487. display: flex;
  488. align-items: center;
  489. font-family: NotoSansHans, NotoSansHans;
  490. font-size: 24rpx;
  491. color: #004576;
  492. }
  493. .box .more .more-text {
  494. padding-right: 12rpx;
  495. }
  496. .box .right-head {
  497. display: flex;
  498. justify-content: space-between;
  499. }
  500. .box .right-head .tit {
  501. font-size: 32rpx;
  502. font-family: MicrosoftYaHei;
  503. }
  504. .rights .rights-items {
  505. display: flex;
  506. justify-content: space-evenly;
  507. padding: 30rpx 0;
  508. }
  509. .rights .item {
  510. display: flex;
  511. flex-direction: column;
  512. align-items: center;
  513. justify-content: center;
  514. }
  515. .rights .item .tit {
  516. font-size: 26rpx;
  517. color: #333;
  518. padding: 20rpx 0 10rpx 0;
  519. }
  520. .rights .item .sub-tit {
  521. font-size: 22rpx;
  522. color: #999;
  523. }
  524. .order .order-items {
  525. display: flex;
  526. justify-content: space-around;
  527. padding: 30rpx 0 10rpx;
  528. .rtop-badge {
  529. position: absolute;
  530. right: 0;
  531. width: 34rpx;
  532. height: 34rpx;
  533. top: 0;
  534. transform: translate(50%, -50%);
  535. line-height: 34rpx;
  536. text-align: center;
  537. font-family: SourceHanSansSC, SourceHanSansSC;
  538. font-weight: 400;
  539. font-size: 20rpx;
  540. color: #FFFFFF;
  541. }
  542. }
  543. .order .item {
  544. display: flex;
  545. flex-direction: column;
  546. align-items: center;
  547. justify-content: center;
  548. }
  549. .order .item .tit {
  550. font-size: 26rpx;
  551. color: #333;
  552. padding: 20rpx 0 10rpx 0;
  553. }
  554. .box .icon {
  555. width: 50rpx;
  556. height: 50rpx;
  557. }
  558. .go-through .pass {
  559. display: flex;
  560. flex-direction: column;
  561. }
  562. .go-through .total {
  563. display: flex;
  564. justify-content: space-between;
  565. font-size: 26rpx;
  566. color: #666;
  567. }
  568. .go-through .amount {
  569. display: flex;
  570. justify-content: space-between;
  571. align-items: center;
  572. font-family: NotoSansHans, NotoSansHans;
  573. font-size: 32rpx;
  574. color: #333333;
  575. font-weight: 400;
  576. }
  577. .go-through .line {
  578. display: flex;
  579. }
  580. .go-through .line1 {
  581. height: 14rpx;
  582. background: #005B9C;
  583. border-radius: 7rpx;
  584. }
  585. .go-through .line2 {
  586. height: 14rpx;
  587. background: #E5ECEF;
  588. border-radius: 7rpx;
  589. flex: 1;
  590. }
  591. .go-through .mileage {
  592. display: flex;
  593. justify-content: space-around;
  594. align-items: center;
  595. text-align: center;
  596. margin: 32rpx 0;
  597. .box-items {
  598. background-image: var(--bgimg);
  599. background-repeat: no-repeat;
  600. background-size: 100% 100%;
  601. padding: 20rpx 30rpx;
  602. .t-name {
  603. display: flex;
  604. .tongxing-icon {
  605. width: 29rpx;
  606. height: 29rpx;
  607. }
  608. .tit {
  609. font-size: 26rpx;
  610. color: #666666;
  611. line-height: 29rpx;
  612. margin-left: 5rpx;
  613. }
  614. }
  615. .b-info {
  616. padding-top: 20rpx;
  617. .val {
  618. font-size: 32rpx;
  619. color: #333333;
  620. }
  621. .unit {
  622. font-size: 24rpx;
  623. color: #666666;
  624. margin-left: 5rpx;
  625. }
  626. }
  627. }
  628. }
  629. .go-through .mileage .txt {
  630. display: flex;
  631. flex-direction: column;
  632. }
  633. .go-through .mileage .tit {
  634. font-size: 26rpx;
  635. color: #999;
  636. }
  637. .go-through .mileage .val {
  638. font-size: 28rpx;
  639. color: #333;
  640. margin-top: 16rpx;
  641. }
  642. .go-through .m-top {
  643. margin-top: 16rpx;
  644. }
  645. .go-through .detail {
  646. width: 100%;
  647. text-align: center;
  648. color: #00B38B;
  649. font-size: 24rpx;
  650. border-top: 1px solid #DCDCDC;
  651. padding-top: 24rpx;
  652. }
  653. .cars .car-item {
  654. display: flex;
  655. align-items: center;
  656. padding-top: 36rpx;
  657. }
  658. .cars .car-item .btn-unbind {
  659. font-weight: 400;
  660. border-radius: 30rpx;
  661. font-family: NotoSansHans, NotoSansHans;
  662. line-height: 60rpx;
  663. text-align: center;
  664. font-size: 24rpx;
  665. width: 130rpx;
  666. height: 60rpx;
  667. background: #004372;
  668. color: #fff;
  669. margin-bottom: 10rpx;
  670. }
  671. .cars .car-pic {
  672. width: 120rpx;
  673. height: 110rpx;
  674. margin-right: 20rpx;
  675. }
  676. .cars .car-info {
  677. display: flex;
  678. flex-direction: column;
  679. color: #999;
  680. font-size: 22rpx;
  681. width: 56%;
  682. }
  683. .cars .car-no {
  684. font-size: 30rpx;
  685. color: #333;
  686. }
  687. .cars .card-no {
  688. margin-top: 10rpx;
  689. font-size: 22rpx;
  690. color: #999999;
  691. }
  692. .cars .add-related {
  693. background-image: var(--bgimg);
  694. background-repeat: no-repeat;
  695. background-size: 100% 100%;
  696. height: 80rpx;
  697. display: flex;
  698. align-items: center;
  699. justify-content: center;
  700. font-family: NotoSansHans, NotoSansHans;
  701. font-weight: 400;
  702. font-size: 26rpx;
  703. color: #CCB375;
  704. margin-top: 30rpx;
  705. .add-img {
  706. margin-right: 10rpx;
  707. width: 36rpx;
  708. height: 36rpx;
  709. }
  710. }
  711. .color {
  712. padding: 4rpx 8rpx;
  713. border-radius: 10rpx;
  714. color: white;
  715. display: inline-block;
  716. margin-left: 20rpx;
  717. font-size: 24rpx;
  718. }
  719. .loading-more {
  720. text-align: center;
  721. font-size: 28rpx;
  722. margin-bottom: 20rpx;
  723. color: #999;
  724. }
  725. </style>
  726. <style>
  727. page {
  728. background-color: #f6f9fc;
  729. }
  730. </style>