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.

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021
  1. <template>
  2. <view class='container'>
  3. <view class="bg-img">
  4. <image :src="`${fileURL}image/newHome/header.png`" mode="scaleToFill" class="icon"></image>
  5. </view>
  6. <view class="content">
  7. <view class="header">
  8. <view class="title">
  9. <view :style="{ height: `${statusBarHeight}px` }"></view>
  10. <!-- 自定义导航栏高度 -->
  11. <view class='title-txt' :style="{
  12. height: `${barHeight}px`,
  13. 'line-height': `${barHeight}px`
  14. }">
  15. <text>首页</text>
  16. </view>
  17. </view>
  18. <view class="search-box">
  19. <image :src="`${fileURL}image/newHome/search.png`" class="icon" mode="aspectFill"></image>
  20. <input class="search" placeholder="办业务·搜一搜" @input="onKeyInput" />
  21. </view>
  22. </view>
  23. <view class="nav">
  24. <view class="item-box" v-for='item in navList' @click="handleNav(item)">
  25. <view class="icon-img">
  26. <image :src="item.imgUrl" mode="aspectFit" class='img'></image>
  27. </view>
  28. <view class="b-txt">
  29. {{item.title}}
  30. </view>
  31. </view>
  32. </view>
  33. <view class="notice">
  34. <view class="l-img">
  35. <image :src="`${fileURL}image/newHome/tongzhi-l.png`" class='img' mode="aspectFit"></image>
  36. </view>
  37. <view class="r-info">
  38. 如何授权登录小程序?
  39. </view>
  40. </view>
  41. <view class="supervision-con">
  42. <view class="txt">
  43. ETC服务监督电话
  44. </view>
  45. <view class="phone">
  46. 0851-883065555
  47. </view>
  48. <view class="btn">
  49. <text>立即拨打 ></text>
  50. </view>
  51. </view>
  52. <view class="title-name">
  53. 快速办理
  54. </view>
  55. <view class="express-lane">
  56. <view class="item keche">
  57. <view class="item-con">
  58. <view class="top-txt">
  59. 客车用户
  60. </view>
  61. <view class="btn">
  62. 进入
  63. </view>
  64. </view>
  65. </view>
  66. <view class="item huoche">
  67. <view class="item-con">
  68. <view class="top-txt">
  69. 货车用户
  70. </view>
  71. <view class="btn">
  72. 进入
  73. </view>
  74. </view>
  75. </view>
  76. </view>
  77. <view class="news-con">
  78. <view class="title-con">
  79. <text>高速快讯</text>
  80. <view class="r-more">
  81. <text class='txt'>更多</text>
  82. <image :src="`${fileURL}image/newHome/r-icon.png`" mode="aspectFit" class='icon'></image>
  83. </view>
  84. </view>
  85. <view class="news-box">
  86. <view class="news-item">
  87. <view class="l-img">
  88. <image :src="`${fileURL}image/newHome/图层 5.png`" mode="aspectFill" class="img"></image>
  89. </view>
  90. <view class="r-txt">
  91. <view class="tit">
  92. 后装ETC与选装ETC的介绍
  93. </view>
  94. <view class="b-time">
  95. 2024-09-22
  96. </view>
  97. </view>
  98. </view>
  99. <view class="news-item">
  100. <view class="l-img">
  101. <image :src="`${fileURL}image/newHome/图层 5.png`" mode="aspectFill" class="img"></image>
  102. </view>
  103. <view class="r-txt">
  104. <view class="tit">
  105. 后装ETC与选装ETC的介绍
  106. </view>
  107. <view class="b-time">
  108. 2024-09-22
  109. </view>
  110. </view>
  111. </view>
  112. <view class="news-item">
  113. <view class="l-img">
  114. <image :src="`${fileURL}image/newHome/图层 5.png`" mode="aspectFill" class="img"></image>
  115. </view>
  116. <view class="r-txt">
  117. <view class="tit">
  118. 后装ETC与选装ETC的介绍
  119. </view>
  120. <view class="b-time">
  121. 2024-09-22
  122. </view>
  123. </view>
  124. </view>
  125. </view>
  126. </view>
  127. <!-- 办理流程 -->
  128. <view class="flow-path">
  129. <view class="top-menu">
  130. <view :class="item == state.tabActive ? 'tab active' : 'tab'" v-for="item in state.flowPathTabList"
  131. :key="item" @click="flowPathTabHandle(item)">
  132. <view class="txt">
  133. {{ item }}
  134. </view>
  135. <view class="border">
  136. </view>
  137. </view>
  138. </view>
  139. <view v-if="state.tabActive === '办理流程'">
  140. <view class="flow-list">
  141. <flow-path-list :options="state.flowList"></flow-path-list>
  142. </view>
  143. </view>
  144. <view v-else-if="state.tabActive === '办理条件'">
  145. <view class="flow-list tiaojian">
  146. <view class="title-top">
  147. <image :src="`${fileURL}image/newHome/tiaojian.png`" mode="scaleToFill" class="icon-img"></image>
  148. <view class="txt">
  149. 基本条件
  150. </view>
  151. <image :src="`${fileURL}image/newHome/tiaojianr.png`" mode="scaleToFill" class="icon-img"></image>
  152. </view>
  153. <view class="list-info"> {{state.processeConditionText}} </view>
  154. </view>
  155. </view>
  156. <view v-else-if="state.tabActive === '常见问题'">
  157. <view class="flow-list wenti">
  158. <view class="item-box" v-for='item in state.commonQuestionArr'>
  159. <view class="l-icon">
  160. <image :src="`${fileURL}image/newHome/wenhao.png`" mode="scaleToFill" class="icon-img"></image>
  161. </view>
  162. <view class="txt">
  163. {{item}}
  164. </view>
  165. </view>
  166. <!-- <view class="list-info"> {{state.commonQuestionText}} </view> -->
  167. </view>
  168. </view>
  169. </view>
  170. </view>
  171. </view>
  172. </template>
  173. <script setup lang="ts">
  174. import {
  175. onMounted,
  176. ref, reactive
  177. } from "vue";
  178. import {
  179. onPageScroll,
  180. onLoad, onReachBottom, onReady
  181. } from "@dcloudio/uni-app";
  182. import flowPathList from "./components/flow-path-list.vue";
  183. import filter from '@/components/filter/filter.vue';
  184. import {
  185. request
  186. } from "@/utils/network/request.js";
  187. import {
  188. stringToJson
  189. } from "@/utils/network/encryption.js";
  190. import {
  191. useUserStore
  192. } from "@/stores/user";
  193. import {
  194. getItem,
  195. setItem,
  196. StorageKeys
  197. } from "@/utils/storage";
  198. import {
  199. queryKey,
  200. querySwiper,
  201. envs,
  202. infoQuery,
  203. queryHighMsg,
  204. orderList
  205. } from "@/utils/network/api.js";
  206. import {
  207. fileURL, fileURLList
  208. } from "@/datas/fileURL.js";
  209. import {
  210. navTo,
  211. msg,
  212. noticeUser
  213. } from "@/utils/utils";
  214. import {
  215. getCodeName
  216. } from "@/datas/queryKey.js";
  217. // import { jump } from "@/datas/9901Jump.js";
  218. import navBar from "@/components/nav-bar/nav-bar2.vue";
  219. onLoad((options) => {
  220. console.log("wechatSignNo", options)
  221. getInfo();
  222. })
  223. onMounted(() => {
  224. statusBarHeight.value = uni.getSystemInfoSync().statusBarHeight;
  225. const {
  226. top,
  227. height
  228. } = uni.getMenuButtonBoundingClientRect();
  229. barHeight.value = height ? height + (top - statusBarHeight.value) * 2 : 38;
  230. console.log(barHeight.value, statusBarHeight.value, '计算的顶部高度');
  231. })
  232. const statusBarHeight = ref(0)
  233. const barHeight = ref(0)
  234. const searchParams = ref('')
  235. //搜索
  236. const onKeyInput = (event) => {
  237. searchParams.value = event.target.value;
  238. console.log('搜索内容', searchParams.value);
  239. }
  240. const navList = [{
  241. imgUrl: `${fileURL}image/newHome/kaqian.png`,
  242. title: "卡签信息查询",
  243. path: '/pages/bluetooth/bluetooth?routeType=4'
  244. }, {
  245. imgUrl: `${fileURL}image/newHome/jihuo.png`,
  246. title: "激活服务",
  247. path: '/subpackage/personal-center/install-activation-order'
  248. }, {
  249. imgUrl: `${fileURL}image/newHome/zhuxiao.png`,
  250. title: "设备注销",
  251. path: "",
  252. handlePath: () => {
  253. cardRecharge(3)
  254. }
  255. }, {
  256. imgUrl: `${fileURL}image/newHome/shenji.png`,
  257. title: "设备升级",
  258. path: `/subpackage/after-sale/equipment-upgrade/select-car`
  259. }, {
  260. imgUrl: `${fileURL}image/newHome/kefu.png`,
  261. title: "在线客服",
  262. path: `/subpackage/after-sale/onlineService`
  263. }, {
  264. imgUrl: `${fileURL}image/newHome/wangdian.png`,
  265. title: "网点查询",
  266. path: ""
  267. }, {
  268. imgUrl: `${fileURL}image/newHome/yewu.png`,
  269. title: "业务指引",
  270. path: ""
  271. }, {
  272. imgUrl: `${fileURL}image/newHome/more.png`,
  273. title: "更多",
  274. path: `/pages/service/service`
  275. }]
  276. const handleNav = (item) => {
  277. if (item.path) {
  278. navTo(item.path, true)
  279. } else if (item.handlePath) {
  280. item.handlePath()
  281. }
  282. }
  283. const cardRecharge = (val) => {
  284. // #ifdef MP-ALIPAY
  285. if (val == 1 || val == 2 || val == 3) {
  286. msg("业务升级中,请前往九州ETC公众号进行办理。或拨打客服电话400-800-8787")
  287. }
  288. // #endif
  289. // #ifdef MP-WEIXIN
  290. if (val == 1) {
  291. navTo('/pages/recharge/recharge-pay', true)
  292. } else if (val == 2) {
  293. navTo('/subpackage/after-sale/rescind-carId/rescind-carId-select', true)
  294. } else if (val == 3) {
  295. navTo('/subpackage/after-sale/activation-once-again/select-car?type=2', true)
  296. }
  297. // #endif
  298. }
  299. const state = reactive({
  300. type: 0, //1客车 2货车
  301. userType: 1, //1个人 2单位
  302. notice: "",
  303. swiperList: [],
  304. noticeList: [], //公告栏列表
  305. flowPathTabList: ["办理流程", "办理条件", "常见问题"],
  306. tabActive: "办理流程",
  307. flowList: [
  308. //办理流程数据
  309. {
  310. title: "01 产品选择",
  311. desc: "选择购买的发行产品",
  312. imgUrl: `${fileURL}image/newHome/1.png`,
  313. },
  314. {
  315. title: "02 信息校验",
  316. desc: "提交车牌号、车牌颜色、收货地址相关信息",
  317. imgUrl: `${fileURL}image/newHome/2.png`,
  318. },
  319. {
  320. title: "03 证件上传",
  321. desc: "上传身份证、行驶证等相关信息",
  322. imgUrl: `${fileURL}image/newHome/3.png`,
  323. },
  324. {
  325. title: "04 订单支付",
  326. desc: "支付完成订单",
  327. imgUrl: `${fileURL}image/newHome/4.png`,
  328. },
  329. {
  330. title: "05 签约代扣",
  331. desc: "选择签约账户并关联",
  332. imgUrl: `${fileURL}image/newHome/5.png`,
  333. },
  334. ],
  335. highMsgData: '',//高速快讯内容
  336. processeConditionText: "", //办理条件文本
  337. commonQuestionText: "", //常见问题文本
  338. commonQuestionArr: [], //常见问题数组
  339. isEnableSetGray: false
  340. });
  341. const isShowMask = ref(false);
  342. const isShowBar = ref(false)
  343. const userStore = useUserStore();
  344. const type = 0;
  345. const title = ref("我是测试");
  346. const scrollTop = ref("");
  347. //监听页面滚动
  348. onPageScroll((e) => {
  349. if (e.scrollTop > statusBarHeight.value) {
  350. isShowBar.value = true;
  351. } else {
  352. isShowBar.value = false;
  353. }
  354. scrollTop.value = e.scrollTop;
  355. });
  356. // 页面初次渲染完成时触发
  357. onReady(()=>{
  358. setTimeout(()=>{
  359. quanKeyAction()
  360. },5000)
  361. })
  362. // 页面初次渲染完成时触发
  363. onReady(()=>{
  364. setTimeout(()=>{
  365. quanKeyAction()
  366. },5000)
  367. })
  368. onMounted(() => {
  369. uni.getSystemInfo({
  370. success: (e : any) => {
  371. statusBarHeight.value = e.statusBarHeight;
  372. }
  373. })
  374. getSwiper()
  375. });
  376. onReachBottom(() => {
  377. highMsg(); //高速快讯
  378. })
  379. // const tip = () => {
  380. // const params = encodeURIComponent(JSON.stringify("https://webzeus.hltgz.com/throughBilManager/index"))
  381. // tools.toUrl(`/subpackage/personal-center/webview?url=` + params);
  382. // }
  383. //获取轮播
  384. const getSwiper = () => {
  385. let options = {
  386. type: 2, //type: 2,JSON格式提交数据(默认表单形式提交)
  387. data: {
  388. }, //请求参数
  389. method: "POST", //提交方式(默认POST)
  390. showLoading: true, //是否显示加载中(默认显示)
  391. };
  392. //调用方式
  393. request(querySwiper, options).then((res) => {
  394. console.log(stringToJson(res.bizContent));
  395. const data = stringToJson(res.bizContent)
  396. console.log("轮播图", data)
  397. state.swiperList = data.swipers ? data.swipers : []
  398. })
  399. .catch((err) => {
  400. console.log(err);
  401. });
  402. };
  403. //办理流程tab选择
  404. const flowPathTabHandle = (tab) => {
  405. state.tabActive = tab;
  406. if (tab == "办理条件") {
  407. processeCondition();//办理条件
  408. } else if (tab == "常见问题") {
  409. commonQuestion();
  410. }
  411. };
  412. // //全量枚举值查询
  413. const quanKeyAction = () => {
  414. var data = {};
  415. const options = {
  416. type: 2,
  417. data: data,
  418. method: "POST",
  419. showLoading: true,
  420. };
  421. request(queryKey, options).then((res) => {
  422. console.log(stringToJson(res.bizContent));
  423. const data = stringToJson(res.bizContent)
  424. console.log("轮播图", data)
  425. setItem('key', data.dictTypeAndItem)
  426. })
  427. .catch((err) => {
  428. console.log(err);
  429. });
  430. }
  431. const toCreatOrder = (val : number) => {
  432. console.log(typeof (val));
  433. state.userType = val;
  434. navTo(`/subpackage/orders/choice-product?type=${state.type}&&userType=${state.userType}`)
  435. closeMask();
  436. };
  437. const showMask = (val : any) => {
  438. state.type = val; //1 客车 2货车
  439. isShowMask.value = true;
  440. };
  441. const closeMask = () => {
  442. isShowMask.value = false;
  443. };
  444. // 获取文本信息----用户协议
  445. const getInfo = () => {
  446. //参数说明
  447. let options = {
  448. type: 2, //type: 2,JSON格式提交数据(默认表单形式提交)
  449. data: {
  450. businessType: 'BROADCAST' //广播栏信息
  451. }, //请求参数
  452. method: "POST", //提交方式(默认POST)
  453. showLoading: true, //是否显示加载中(默认显示)
  454. };
  455. //调用方式
  456. request(infoQuery, options)
  457. .then((res) => {
  458. let data = stringToJson(res.bizContent)
  459. console.log(data);
  460. state.notice = data.text
  461. })
  462. .catch((err) => {
  463. console.log(err);
  464. });
  465. }
  466. // 高速快讯查询接口
  467. const highMsg = () => {
  468. let options = {
  469. type: 2, //type: 2,JSON格式提交数据(默认表单形式提交)
  470. data: {
  471. pageNo: 1,
  472. pageSize: 2
  473. }, //请求参数
  474. method: "POST", //提交方式(默认POST)
  475. showLoading: true, //是否显示加载中(默认显示)
  476. };
  477. //调用方式
  478. request(queryHighMsg, options).then((res) => {
  479. console.log("高速快讯查询接口", stringToJson(res.bizContent));
  480. state.highMsgData = stringToJson(res.bizContent).data
  481. for (var i = 0; i < state.highMsgData.length; i++) {
  482. state.highMsgData[i]["copywriting"] = getCodeName('COPYWRITING', state.highMsgData[i]["copywriting"])
  483. if (state.highMsgData[i]["type"] == 3) {
  484. state.highMsgData[i]["title"] = state.highMsgData[i]["hyperLink"]
  485. }
  486. }
  487. state.highMsgData.sort(function (a, b) {
  488. return a.sequence - b.sequence//正序
  489. })
  490. }).catch((err) => { console.log(err) });
  491. }
  492. const link = (item : any) => {
  493. if (item.type == 1) {
  494. const params = encodeURIComponent(JSON.stringify(item.hyperLink))
  495. tools.toUrl(`/subpackage/personal-center/webview?url=` + params);
  496. } else if (item.type == 2) {
  497. navTo(item.hyperLink)
  498. } else if (item.type == 3) {
  499. const param = encodeURIComponent(JSON.stringify(item))
  500. tools.toUrl(`/subpackage/orders/moreHighMsg/textDetails?item=` + param);
  501. } else if (item.type == 4) {
  502. uni.navigateToMiniProgram({
  503. appId: item.hyperLink,
  504. path: item.speedUrl,
  505. success(res) {
  506. console.log(res);
  507. },
  508. complete(res) {
  509. console.log(res);
  510. },
  511. fail(res) {
  512. console.log(res);
  513. // 未成功跳转到车主小程序
  514. },
  515. });
  516. }
  517. }
  518. const processeCondition = () => {
  519. let options = {
  520. type: 2, //type: 2,JSON格式提交数据(默认表单形式提交)
  521. data: {
  522. businessType: 'PROCESSING_CONDITIONS' //办理条件
  523. }, //请求参数
  524. method: "POST", //提交方式(默认POST)
  525. showLoading: true, //是否显示加载中(默认显示)
  526. };
  527. //调用方式
  528. request(infoQuery, options)
  529. .then((res) => {
  530. let data = stringToJson(res.bizContent)
  531. console.log("办理条件", data)
  532. state.processeConditionText = data.text
  533. })
  534. .catch((err) => {
  535. console.log(err);
  536. });
  537. }
  538. const commonQuestion = () => {
  539. let options = {
  540. type: 2, //type: 2,JSON格式提交数据(默认表单形式提交)
  541. data: {
  542. businessType: 'COMMON_PROBLEM' //常见问题
  543. }, //请求参数
  544. method: "POST", //提交方式(默认POST)
  545. showLoading: true, //是否显示加载中(默认显示)
  546. };
  547. //调用方式
  548. request(infoQuery, options)
  549. .then((res) => {
  550. let data = stringToJson(res.bizContent)
  551. console.log("常见问题", data)
  552. state.commonQuestionText = data.text
  553. state.commonQuestionArr = data.text.split('。').filter(item => item)
  554. })
  555. .catch((err) => {
  556. console.log(err);
  557. });
  558. }
  559. //监听页面滚动
  560. onPageScroll((e) => {
  561. console.log(e.scrollTop,);
  562. });
  563. </script>
  564. <style lang="scss" scoped>
  565. .container {
  566. height: 100%;
  567. background-color: #f2f5f7;
  568. position: relative;
  569. }
  570. .bg-img {
  571. width: 100%;
  572. position: absolute;
  573. z-index: 0;
  574. .icon {
  575. width: 100%;
  576. height: 750rpx;
  577. }
  578. }
  579. .content {
  580. position: relative;
  581. padding-bottom: 30rpx;
  582. }
  583. .header {
  584. height: 590rpx;
  585. .title {
  586. .title-txt {
  587. font-family: PingFangSC, PingFang SC;
  588. font-weight: bold;
  589. font-size: 32rpx;
  590. color: #FFFFFF;
  591. text-align: center;
  592. }
  593. }
  594. .search-box {
  595. margin: 10rpx 30rpx 0;
  596. position: relative;
  597. height: 80rpx;
  598. background: #1a394d;
  599. // border: 1px solid #DCDCDC;
  600. border-radius: 40rpx;
  601. display: flex;
  602. justify-content: center;
  603. align-items: center;
  604. box-sizing: border-box;
  605. flex: 1;
  606. .icon {
  607. width: 27rpx;
  608. height: 27rpx;
  609. margin-left: 26rpx;
  610. }
  611. .search {
  612. flex: 1;
  613. margin-right: 20rpx;
  614. height: 100%;
  615. padding: 0 10rpx;
  616. color: #fff;
  617. font-weight: 500;
  618. font-size: 26rpx;
  619. }
  620. }
  621. }
  622. .nav {
  623. background-color: #fff;
  624. margin: 0 30rpx;
  625. width: 100%;
  626. width: 690rpx;
  627. height: 360rpx;
  628. background: #FFFFFF;
  629. border-radius: 12rpx;
  630. display: grid;
  631. grid-template-columns: repeat(4, 25%);
  632. grid-template-rows: repeat(2, 50%);
  633. // grid-gap: 10px;
  634. .item-box {
  635. display: flex;
  636. align-items: center;
  637. justify-content: center;
  638. flex-direction: column;
  639. .icon-img {
  640. height: 100rpx;
  641. width: 100rpx;
  642. border-radius: 50%;
  643. padding: 25rpx;
  644. background: #ECF1F4;
  645. box-sizing: border-box;
  646. .img {
  647. width: 100%;
  648. height: 100%;
  649. }
  650. }
  651. .b-txt {
  652. margin-top: 16rpx;
  653. font-size: 26rpx;
  654. color: #111111;
  655. }
  656. }
  657. }
  658. .notice {
  659. background: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/tongzhi.png);
  660. background-size: 100% 100%;
  661. background-repeat: no-repeat;
  662. height: 80rpx;
  663. width: 690rpx;
  664. margin: 24rpx 30rpx 0;
  665. display: flex;
  666. align-items: center;
  667. .l-img {
  668. width: 136rpx;
  669. height: 80rpx;
  670. margin-left: 20rpx;
  671. .img {
  672. height: 100%;
  673. width: 100%;
  674. }
  675. }
  676. .r-info {
  677. margin-left: 16rpx;
  678. font-size: 28rpx;
  679. color: #000;
  680. font-weight: 500;
  681. }
  682. }
  683. .supervision-con {
  684. box-sizing: border-box;
  685. height: 180rpx;
  686. width: 690rpx;
  687. margin: 24rpx 30rpx 0;
  688. background-image: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/phone.png);
  689. background-size: 100% 100%;
  690. background-repeat: no-repeat;
  691. padding: 35rpx 0 0 52rpx;
  692. .txt {
  693. font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
  694. font-weight: 400;
  695. font-size: 26rpx;
  696. color: #111111;
  697. }
  698. .phone {
  699. margin: 10rpx 0 10rpx;
  700. font-family: Arial, Arial;
  701. font-weight: normal;
  702. font-size: 38rpx;
  703. color: #B99A46;
  704. }
  705. .btn {
  706. font-family: AlibabaPuHuiTi, AlibabaPuHuiTi;
  707. font-weight: 400;
  708. font-size: 24rpx;
  709. color: #01243A;
  710. }
  711. }
  712. .title-name {
  713. margin: 24rpx 30rpx 0;
  714. }
  715. .express-lane {
  716. margin: 22rpx 30rpx 0;
  717. display: flex;
  718. align-items: center;
  719. justify-content: space-between;
  720. .item {
  721. background-size: 100% 100%;
  722. background-repeat: no-repeat;
  723. width: 334rpx;
  724. height: 168rpx;
  725. text-align: right;
  726. display: flex;
  727. align-items: flex-end;
  728. justify-content: center;
  729. flex-direction: column;
  730. .item-con {
  731. margin-right: 53rpx;
  732. }
  733. .top-txt {
  734. font-family: PingFangSC, PingFang SC;
  735. font-size: 30rpx;
  736. color: #FFFFFF;
  737. }
  738. .btn {
  739. margin-top: 30rpx;
  740. background: #03385D;
  741. border-radius: 20rpx;
  742. font-family: PingFangSC, PingFang SC;
  743. font-size: 24rpx;
  744. color: #FFFFFF;
  745. height: 40rpx;
  746. width: 80rpx;
  747. line-height: 40rpx;
  748. text-align: center;
  749. }
  750. }
  751. .keche {
  752. background-image: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/keche.png);
  753. }
  754. .huoche {
  755. margin-left: 22rpx;
  756. background-image: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/huoche.png);
  757. }
  758. }
  759. .news-con {
  760. margin: 39rpx 30rpx 0;
  761. .title-con {
  762. font-family: PingFangSC, PingFang SC;
  763. font-size: 34rpx;
  764. color: #01243A;
  765. display: flex;
  766. align-items: center;
  767. justify-content: space-between;
  768. .r-more {
  769. width: 100rpx;
  770. height: 44rpx;
  771. border-radius: 22rpx;
  772. border: 1rpx solid #01243A;
  773. display: flex;
  774. align-items: center;
  775. justify-content: center;
  776. .txt {
  777. font-family: PingFangSC, PingFang SC;
  778. font-weight: bold;
  779. font-size: 24rpx;
  780. color: #01243A;
  781. }
  782. .icon {
  783. width: 10rpx;
  784. height: 100%;
  785. margin-left: 5rpx;
  786. }
  787. }
  788. }
  789. .news-box {
  790. border-radius: 12rpx;
  791. background-color: #fff;
  792. margin-top: 22rpx;
  793. padding: 0 20rpx;
  794. .news-item {
  795. padding: 20rpx 0;
  796. display: flex;
  797. &:nth-child(n+2) {
  798. border-top: 1rpx solid #eee;
  799. }
  800. .l-img {
  801. width: 180rpx;
  802. height: 135rpx;
  803. .img {
  804. height: 100%;
  805. width: 100%;
  806. }
  807. }
  808. .r-txt {
  809. margin-left: 20rpx;
  810. display: flex;
  811. flex-direction: column;
  812. justify-content: space-between;
  813. .tit {
  814. font-family: PingFangSC, PingFang SC;
  815. font-weight: bold;
  816. font-size: 30rpx;
  817. color: #111111;
  818. }
  819. .b-time {
  820. font-family: PingFangSC, PingFang SC;
  821. font-size: 24rpx;
  822. color: #999999;
  823. }
  824. }
  825. }
  826. }
  827. }
  828. .flow-path {
  829. margin: 31rpx 30rpx 0;
  830. .top-menu {
  831. display: flex;
  832. .tab {
  833. font-family: MicrosoftYaHeiUI;
  834. font-size: 28rpx;
  835. color: #5A5E61;
  836. margin-right: 39rpx;
  837. position: relative;
  838. &.active {
  839. font-size: 34rpx;
  840. color: #01243A;
  841. .border {
  842. position: relative;
  843. }
  844. .border::after {
  845. content: "";
  846. background-image: url(https://qtzl.etcjz.cn/default-bucket/image/newHome/bottom-select.png);
  847. background-repeat: no-repeat;
  848. background-size: 100% 100%;
  849. position: absolute;
  850. bottom: 0;
  851. left: 0;
  852. width: 100%;
  853. height: 16rpx;
  854. }
  855. }
  856. .txt {
  857. position: relative;
  858. z-index: 2;
  859. }
  860. }
  861. }
  862. .flow-list {
  863. margin-top: 30rpx;
  864. background-color: #fff;
  865. border-radius: 12rpx;
  866. padding: 20rpx;
  867. }
  868. .tiaojian {
  869. .title-top {
  870. display: flex;
  871. justify-content: center;
  872. align-items: center;
  873. padding-bottom: 20rpx;
  874. .txt {
  875. margin: 0 24rpx;
  876. font-family: MicrosoftYaHei;
  877. font-size: 30rpx;
  878. color: #01243A;
  879. }
  880. .icon-img {
  881. width: 16rpx;
  882. height: 20rpx;
  883. }
  884. }
  885. }
  886. .list-info {
  887. font-family: MicrosoftYaHeiUI;
  888. font-size: 26rpx;
  889. color: #222222;
  890. }
  891. .wenti {
  892. .item-box:nth-child(n+2) {
  893. border-top: 1rpx solid #E8E8E8;
  894. }
  895. .item-box {
  896. display: flex;
  897. padding: 15rpx 0;
  898. }
  899. .l-icon {
  900. flex-shrink: 0;
  901. width: 38rpx;
  902. height: 38rpx;
  903. display: flex;
  904. align-items: center;
  905. justify-content: center;
  906. background-color: #c2a75f;
  907. border-radius: 50%;
  908. .icon-img {
  909. width: 14rpx;
  910. height: 24rpx;
  911. }
  912. }
  913. .txt {
  914. margin-left: 10rpx;
  915. font-family: PingFangSC, PingFang SC;
  916. font-size: 28rpx;
  917. color: #222222;
  918. }
  919. }
  920. }
  921. </style>