Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

user.vue 17KB

2 år sedan
10 månader sedan
10 månader sedan
10 månader sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
10 månader sedan
1 år sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
2 år sedan
3 veckor sedan
2 år sedan
9 månader sedan
1 år sedan
3 månader sedan
3 månader sedan
1 månad sedan
1 månad sedan
2 år sedan
1 månad sedan
1 år sedan
9 månader sedan
3 veckor sedan
3 veckor sedan
2 år sedan
1 år sedan
1 år sedan
1 år sedan
2 år sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
1 månad sedan
10 månader sedan
1 månad sedan
10 månader sedan
1 månad sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
1 månad sedan
10 månader sedan
1 månad sedan
1 månad sedan
1 månad sedan
10 månader sedan
10 månader sedan
1 månad sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
10 månader sedan
2 år sedan
10 månader sedan
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820
  1. <template>
  2. <navBar title="我的" :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.userName || state.accountInfoVo.nickName}}
  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. import { useUserStore } from "@/stores/user";
  168. const userStore = useUserStore();
  169. const { saveUserInfo } = userStore;
  170. const height = ref(null);
  171. const top = ref(null);
  172. const margin = ref(null);
  173. const mobile = ref(null);
  174. const scrollTop = ref(0);
  175. const isBack = ref(false);
  176. const isSm = ref(true);
  177. const state = reactive({
  178. data: {
  179. opId: "",
  180. },
  181. accountInfoVo: {
  182. nickName: '',
  183. mobile: '',
  184. userName: ''
  185. },
  186. equityNumber: 0,
  187. customerObj: {}
  188. });
  189. onMounted(() => {
  190. const res = uni.getMenuButtonBoundingClientRect();
  191. height.value = res.height + "px";
  192. top.value = res.top + "px";
  193. margin.value = res.height + res.top;
  194. });
  195. onLoad((option : any) => {
  196. state.data.opId = getItem(StorageKeys.OpenId);
  197. console.log("state.data.opId", state.data.opId)
  198. mobile.value = getItem("mobile");
  199. getAuthInfo();
  200. });
  201. const carDetails = (vehicleId) => {
  202. uni.navigateTo({
  203. url: `/subpackage/personal-center/vehicle-change/car-details?vehicleId=${vehicleId}`
  204. })
  205. }
  206. const myEtcAccount = () => {
  207. navTo(`/subpackage/personal-center/my-etc-account`)
  208. }
  209. //监听页面滚动
  210. onPageScroll((e) => {
  211. scrollTop.value = e.scrollTop;
  212. });
  213. onShow((option : any) => {
  214. state.data.opId = getItem(StorageKeys.OpenId);
  215. console.log("state.data.opId", state.data.opId)
  216. if (state.data.opId) {
  217. getUserInfo();
  218. getAuthInfo();
  219. }
  220. state.customerObj = getItem('customerObj')
  221. });
  222. const getAuthInfo = () => {
  223. const options = {
  224. type: 2,
  225. data: { openId: getItem('openId') },
  226. method: "POST",
  227. showLoading: true,
  228. };
  229. requestNew(getUserMsg, options).then((res) => {
  230. const data = res;
  231. console.log(data, "用户信息"); //|| !data.userNegImgUrl || !data.userPosImgUrl
  232. if (!data.userIdNum || !data.userNegImgUrl || !data.userPosImgUrl) {
  233. isSm.value = true
  234. } else {
  235. isSm.value = false
  236. }
  237. });
  238. }
  239. const getUserInfo = () => {
  240. const options = {
  241. type: 2,
  242. data: {},
  243. method: "POST",
  244. showLoading: true,
  245. };
  246. //调用方式
  247. requestNew(userInfoIndex, options)
  248. .then((res) => {
  249. console.log('用户信息', res)
  250. let data = res
  251. saveUserInfo(data)
  252. state.accountInfoVo = data;
  253. console.log("获取用户信息", getItem('userInfo'));
  254. })
  255. .catch((err) => {
  256. console.log(err);
  257. });
  258. }
  259. const goOrder = (index) => {
  260. navTo(`../order/order?index=${index}`)
  261. }
  262. const goLogin = () => {
  263. if (!getItem('openId')) {
  264. uni.navigateTo({
  265. url: "/login/login"
  266. })
  267. }
  268. }
  269. const goEquity = () => {
  270. navTo('/subpackage/service/equityList/equityList')
  271. }
  272. </script>
  273. <style>
  274. page {
  275. background: #eef7f7;
  276. }
  277. </style>
  278. <style scoped lang='scss'>
  279. .unlogin {
  280. filter: grayscale(100%);
  281. opacity: 0.7;
  282. }
  283. .bgVar {
  284. background-image: var(--bgimg);
  285. background-repeat: no-repeat;
  286. background-size: 100% 100%;
  287. }
  288. .wrapper {
  289. position: relative;
  290. background-color: #f6f9fc;
  291. }
  292. .bar {
  293. width: 100%;
  294. position: fixed;
  295. text-align: center;
  296. font-size: 32rpx;
  297. font-weight: bold;
  298. }
  299. .bg-head {
  300. width: 100%;
  301. position: absolute;
  302. z-index: 1;
  303. top: 0;
  304. left: 0;
  305. }
  306. .content {
  307. position: relative;
  308. display: flex;
  309. flex-direction: column;
  310. width: 100%;
  311. z-index: 2;
  312. }
  313. .head {
  314. display: flex;
  315. justify-content: space-between;
  316. align-items: center;
  317. width: 100%;
  318. box-sizing: border-box;
  319. padding: 40rpx 0 46rpx;
  320. }
  321. .head .avatar {
  322. display: flex;
  323. align-items: center;
  324. justify-content: space-between;
  325. }
  326. .head .avatar image {
  327. width: 141rpx;
  328. height: 141rpx;
  329. /* border-radius: 80rpx; */
  330. margin: 0 20rpx 0 30rpx;
  331. }
  332. .head .setting {
  333. display: flex;
  334. align-items: center;
  335. background: rgba(0, 179, 139, .1);
  336. border: 1px solid #fff;
  337. height: 60rpx;
  338. border-radius: 30rpx;
  339. padding: 0 34rpx;
  340. color: #fff;
  341. font-size: 28rpx;
  342. margin-right: 30rpx;
  343. }
  344. .head .setting image {
  345. width: 40rpx;
  346. height: 40rpx;
  347. margin-right: 6rpx;
  348. }
  349. .head .r-setting {
  350. width: 80rpx;
  351. height: 80rpx;
  352. background: #345061;
  353. display: flex;
  354. align-items: center;
  355. justify-content: center;
  356. border-radius: 50%;
  357. margin-right: 50rpx;
  358. .img {
  359. width: 40rpx;
  360. height: 39rpx;
  361. }
  362. }
  363. .head .nickname {
  364. font-size: 36rpx;
  365. color: #fff;
  366. }
  367. .head .user-id {
  368. font-size: 26rpx;
  369. color: #fff;
  370. padding-top: 20rpx;
  371. display: flex;
  372. align-items: center;
  373. }
  374. .head .btn-change {
  375. font-size: 22rpx;
  376. height: 40rpx;
  377. padding: 0 20rpx;
  378. border: 1px solid #fff;
  379. color: #fff;
  380. box-sizing: border-box;
  381. border-radius: 20rpx;
  382. margin-left: 16rpx;
  383. background: rgba(0, 179, 139, .1);
  384. }
  385. .btn-change-two {
  386. font-size: 22rpx;
  387. height: 40rpx;
  388. padding: 0 40rpx;
  389. border: 1px solid #CCB375;
  390. color: #CCB375;
  391. box-sizing: border-box;
  392. border-radius: 20rpx;
  393. margin-top: 10rpx;
  394. background: rgba(0, 179, 139, .1);
  395. }
  396. .list_item {
  397. position: relative;
  398. z-index: 20;
  399. margin: 0 30rpx;
  400. height: 94rpx;
  401. display: flex;
  402. align-items: center;
  403. justify-content: space-between;
  404. border-bottom: 1rpx solid #DFDFDF;
  405. .l-con {
  406. display: flex;
  407. align-items: center;
  408. .equity-icon {
  409. width: 46rpx;
  410. height: 46rpx;
  411. }
  412. .txt {
  413. font-family: NotoSansHans, NotoSansHans;
  414. font-size: 28rpx;
  415. color: #01253C;
  416. margin-left: 19rpx;
  417. }
  418. }
  419. .r-icon {
  420. height: 32rpx;
  421. display: flex;
  422. align-items: center;
  423. color: rgb(177, 177, 177);
  424. font-size: 28rpx;
  425. .r-img {
  426. width: 32rpx;
  427. height: 32rpx;
  428. }
  429. }
  430. }
  431. .box>view:last-child {
  432. border: none;
  433. }
  434. .my-equity {
  435. position: relative;
  436. z-index: 20;
  437. margin: 0 auto;
  438. background-image: var(--bgimg);
  439. background-repeat: no-repeat;
  440. background-size: 100% 100%;
  441. width: 700rpx;
  442. height: 94rpx;
  443. display: flex;
  444. align-items: center;
  445. justify-content: space-between;
  446. .l-con {
  447. margin-left: 30rpx;
  448. display: flex;
  449. align-items: center;
  450. .equity-icon {
  451. width: 54rpx;
  452. height: 54rpx;
  453. }
  454. .txt {
  455. font-family: NotoSansHans, NotoSansHans;
  456. font-size: 28rpx;
  457. color: #01253C;
  458. margin-left: 19rpx;
  459. }
  460. }
  461. .r-icon {
  462. margin-right: 30rpx;
  463. width: 36rpx;
  464. height: 36rpx;
  465. .r-img {
  466. width: 36rpx;
  467. height: 36rpx;
  468. }
  469. }
  470. .r-icon1 {
  471. margin-right: 30rpx;
  472. width: 32rpx;
  473. height: 32rpx;
  474. .r-img1 {
  475. width: 32rpx;
  476. height: 32rpx;
  477. }
  478. }
  479. }
  480. .info-content {
  481. transform: translateY(-10rpx);
  482. margin-top: 30rpx;
  483. }
  484. .box .arrow {
  485. width: 10rpx;
  486. height: 18rpx;
  487. }
  488. .box {
  489. background: #ffffff;
  490. margin: 0 30rpx 30rpx;
  491. border-radius: 20rpx;
  492. box-shadow: 0rpx 2rpx 6rpx 0rpx rgba(223, 223, 223, 0.9);
  493. }
  494. .box .more {
  495. display: flex;
  496. align-items: center;
  497. font-family: NotoSansHans, NotoSansHans;
  498. font-size: 24rpx;
  499. color: #004576;
  500. }
  501. .box .more .more-text {
  502. padding-right: 12rpx;
  503. }
  504. .box .right-head {
  505. display: flex;
  506. justify-content: space-between;
  507. }
  508. .box .right-head .tit {
  509. font-size: 32rpx;
  510. font-family: MicrosoftYaHei;
  511. }
  512. .rights .rights-items {
  513. display: flex;
  514. justify-content: space-evenly;
  515. padding: 30rpx 0;
  516. }
  517. .rights .item {
  518. display: flex;
  519. flex-direction: column;
  520. align-items: center;
  521. justify-content: center;
  522. }
  523. .rights .item .tit {
  524. font-size: 26rpx;
  525. color: #333;
  526. padding: 20rpx 0 10rpx 0;
  527. }
  528. .rights .item .sub-tit {
  529. font-size: 22rpx;
  530. color: #999;
  531. }
  532. .order .order-items {
  533. display: flex;
  534. justify-content: space-around;
  535. padding: 30rpx 0 10rpx;
  536. .rtop-badge {
  537. position: absolute;
  538. right: 0;
  539. width: 34rpx;
  540. height: 34rpx;
  541. top: 0;
  542. transform: translate(50%, -50%);
  543. line-height: 34rpx;
  544. text-align: center;
  545. font-family: SourceHanSansSC, SourceHanSansSC;
  546. font-weight: 400;
  547. font-size: 20rpx;
  548. color: #FFFFFF;
  549. }
  550. }
  551. .order .item {
  552. display: flex;
  553. flex-direction: column;
  554. align-items: center;
  555. justify-content: center;
  556. }
  557. .order .item .tit {
  558. font-size: 26rpx;
  559. color: #333;
  560. padding: 20rpx 0 10rpx 0;
  561. }
  562. .box .icon {
  563. width: 50rpx;
  564. height: 50rpx;
  565. }
  566. .go-through .pass {
  567. display: flex;
  568. flex-direction: column;
  569. }
  570. .go-through .total {
  571. display: flex;
  572. justify-content: space-between;
  573. font-size: 26rpx;
  574. color: #666;
  575. }
  576. .go-through .amount {
  577. display: flex;
  578. justify-content: space-between;
  579. align-items: center;
  580. font-family: NotoSansHans, NotoSansHans;
  581. font-size: 32rpx;
  582. color: #333333;
  583. font-weight: 400;
  584. }
  585. .go-through .line {
  586. display: flex;
  587. }
  588. .go-through .line1 {
  589. height: 14rpx;
  590. background: #005B9C;
  591. border-radius: 7rpx;
  592. }
  593. .go-through .line2 {
  594. height: 14rpx;
  595. background: #E5ECEF;
  596. border-radius: 7rpx;
  597. flex: 1;
  598. }
  599. .go-through .mileage {
  600. display: flex;
  601. justify-content: space-around;
  602. align-items: center;
  603. text-align: center;
  604. margin: 32rpx 0;
  605. .box-items {
  606. background-image: var(--bgimg);
  607. background-repeat: no-repeat;
  608. background-size: 100% 100%;
  609. padding: 20rpx 30rpx;
  610. .t-name {
  611. display: flex;
  612. .tongxing-icon {
  613. width: 29rpx;
  614. height: 29rpx;
  615. }
  616. .tit {
  617. font-size: 26rpx;
  618. color: #666666;
  619. line-height: 29rpx;
  620. margin-left: 5rpx;
  621. }
  622. }
  623. .b-info {
  624. padding-top: 20rpx;
  625. .val {
  626. font-size: 32rpx;
  627. color: #333333;
  628. }
  629. .unit {
  630. font-size: 24rpx;
  631. color: #666666;
  632. margin-left: 5rpx;
  633. }
  634. }
  635. }
  636. }
  637. .go-through .mileage .txt {
  638. display: flex;
  639. flex-direction: column;
  640. }
  641. .go-through .mileage .tit {
  642. font-size: 26rpx;
  643. color: #999;
  644. }
  645. .go-through .mileage .val {
  646. font-size: 28rpx;
  647. color: #333;
  648. margin-top: 16rpx;
  649. }
  650. .go-through .m-top {
  651. margin-top: 16rpx;
  652. }
  653. .go-through .detail {
  654. width: 100%;
  655. text-align: center;
  656. color: #00B38B;
  657. font-size: 24rpx;
  658. border-top: 1px solid #DCDCDC;
  659. padding-top: 24rpx;
  660. }
  661. .cars .car-item {
  662. display: flex;
  663. align-items: center;
  664. padding-top: 36rpx;
  665. }
  666. .cars .car-item .btn-unbind {
  667. font-weight: 400;
  668. border-radius: 30rpx;
  669. font-family: NotoSansHans, NotoSansHans;
  670. line-height: 60rpx;
  671. text-align: center;
  672. font-size: 24rpx;
  673. width: 130rpx;
  674. height: 60rpx;
  675. background: #004372;
  676. color: #fff;
  677. margin-bottom: 10rpx;
  678. }
  679. .cars .car-pic {
  680. width: 120rpx;
  681. height: 110rpx;
  682. margin-right: 20rpx;
  683. }
  684. .cars .car-info {
  685. display: flex;
  686. flex-direction: column;
  687. color: #999;
  688. font-size: 22rpx;
  689. width: 56%;
  690. }
  691. .cars .car-no {
  692. font-size: 30rpx;
  693. color: #333;
  694. }
  695. .cars .card-no {
  696. margin-top: 10rpx;
  697. font-size: 22rpx;
  698. color: #999999;
  699. }
  700. .cars .add-related {
  701. background-image: var(--bgimg);
  702. background-repeat: no-repeat;
  703. background-size: 100% 100%;
  704. height: 80rpx;
  705. display: flex;
  706. align-items: center;
  707. justify-content: center;
  708. font-family: NotoSansHans, NotoSansHans;
  709. font-weight: 400;
  710. font-size: 26rpx;
  711. color: #CCB375;
  712. margin-top: 30rpx;
  713. .add-img {
  714. margin-right: 10rpx;
  715. width: 36rpx;
  716. height: 36rpx;
  717. }
  718. }
  719. .color {
  720. padding: 4rpx 8rpx;
  721. border-radius: 10rpx;
  722. color: white;
  723. display: inline-block;
  724. margin-left: 20rpx;
  725. font-size: 24rpx;
  726. }
  727. .loading-more {
  728. text-align: center;
  729. font-size: 28rpx;
  730. margin-bottom: 20rpx;
  731. color: #999;
  732. }
  733. </style>
  734. <style>
  735. page {
  736. background-color: #f6f9fc;
  737. }
  738. </style>