my.vue 19 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815
  1. <template>
  2. <view>
  3. <!-- 公共组件-每个页面必须引入 -->
  4. <public-module></public-module>
  5. <!-- 头部信息Start -->
  6. <view class="headers " :style="headerStyle">
  7. <view class="dis a-c j-c">
  8. <text>我的</text>
  9. <image @tap="tool" src="/static/image/my/Frame.png" mode=""></image>
  10. </view>
  11. </view>
  12. <view class="Personnel">
  13. <view class="dis a-c" @tap="openDetail">
  14. <image :src="avatar" class="avatar" mode=""></image>
  15. <view class="info">
  16. <view class="dis a-c">
  17. <text>{{userInfo.sysUser.name}}</text>
  18. <u-tag :text="userInfo.sysUser.status=='1'?'已认证':'未认证'" mode="dark"
  19. style="background: linear-gradient( 268deg, #FF8B2F 0%, #FF5A00 100%);" />
  20. </view>
  21. <text>你身边最贴心,最权威的保险咨询专家。</text>
  22. </view>
  23. </view>
  24. <view class="my-wallet">
  25. <view class="wallet-body dis f-c">
  26. <view class="dis a-c j-s route">
  27. <view class="flex-1 dis f-c a-c" @tap="accountTool('/pages/wallet/wallet')">
  28. <image src="/static/image/my/qianbao.png" mode=""></image>
  29. <text>钱包</text>
  30. </view>
  31. <view class="flex-1 dis f-c a-c" @tap="accountTool('/pages/wallet/bankCard')">
  32. <image src="/static/image/my/ka.png" mode=""></image>
  33. <text>银行卡</text>
  34. </view>
  35. <view class="flex-1 dis f-c a-c" @tap="accountTool()">
  36. <image src="/static/image/my/chongzhi.png" mode="">
  37. </image>
  38. <text>充值</text>
  39. </view>
  40. </view>
  41. <view class="dis a-c j-s money">
  42. <view class="flex-1" @tap="toBillDetails(1)">
  43. <text class="d-flex a-center j-center">手续金额</text>
  44. <text style="color: #0052FF;font-family: DIN, DIN;"
  45. class="d-flex a-center j-center">¥{{handlingFee.toFixed(2)}}</text>
  46. </view>
  47. <view class="flex-1" @tap="toBillDetails(2)">
  48. <text class="d-flex a-center j-center">跟单金额</text>
  49. <text style="color: #0052FF; font-family: DIN, DIN;"
  50. class="d-flex a-center j-center">¥{{documentary.toFixed(2)}}</text>
  51. </view>
  52. <view class="flex-1" @tap="toBillDetails(3)">
  53. <text class="d-flex a-center j-center">推广金额</text>
  54. <text style="color: #0052FF; font-family: DIN, DIN;"
  55. class="d-flex a-center j-center">¥{{promotion.toFixed(2)}}</text>
  56. </view>
  57. </view>
  58. </view>
  59. </view>
  60. </view>
  61. <!-- 头部信息End -->
  62. <!-- 我的订单Start -->
  63. <!-- <scroll-view scroll-x class="my-orders ">
  64. <view>
  65. <u-grid :col="4" :border="false" align="center">
  66. <u-grid-item class="u-grid-iconfont" v-for="(item ,index) in orderTypeList" :index="index"
  67. :key="index" @click="openOrder">
  68. <view class="icon iconfont " :class="item.icon" :style="'color:'+item.iconColor"></view>
  69. <view class="grid-text">{{item.text}}</view>
  70. </u-grid-item>
  71. </u-grid>
  72. </view>
  73. </scroll-view> -->
  74. <!-- 我的订单End -->
  75. <!-- 我的工具Start -->
  76. <view class="my-tools">
  77. <view class="header ">
  78. <text>我的工具</text>
  79. </view>
  80. <view class="order-body d-flex a-center">
  81. <!-- 因为swiper特性的关系,请指定swiper的高度 ,swiper的高度并不会被内容撑开-->
  82. <uni-swiper-dot :info="info" :current="current" field="content" :mode="mode" :dots-styles="dotsStyles">
  83. <swiper style="height:calc(324upx)" class="swiper" @change="change">
  84. <swiper-item class="swiper" v-for="(count,cindex) of toolsListLength" :key="count">
  85. <uni-grid :column="4" :show-border="false" :square="false" :highlight="false"
  86. @change="toTools($event,'toolsList')">
  87. <uni-grid-item class="" v-show="(index>=(cindex)*8) && (index<(cindex+1)*8)"
  88. v-for="(item ,index) in toolsList" :index="index" :key="item.text">
  89. <view class="grid-item-box dis a-c j-c f-c">
  90. <view class="icon iconfont" :class="item.icon">
  91. </view>
  92. <text class="text">{{item.text}}</text>
  93. </view>
  94. </uni-grid-item>
  95. </uni-grid>
  96. </swiper-item>
  97. </swiper>
  98. </uni-swiper-dot>
  99. </view>
  100. </view>
  101. <!-- 我的工具End -->
  102. <!-- 售后管理Start -->
  103. <view class="my-tools">
  104. <view class="header d-flex a-center j-sb">
  105. <view>售后管理</view>
  106. </view>
  107. <view class="order-body d-flex a-center">
  108. <!-- 因为swiper特性的关系,请指定swiper的高度 ,swiper的高度并不会被内容撑开-->
  109. <swiper style="height:calc(162upx)" class="swiper" :indicator-dots="(serviceListLength!=1)?true:false">
  110. <swiper-item class="swiper dis a-c" v-for="(count,cindex) of serviceListLength" :key="count">
  111. <uni-grid :column="4" :show-border="false" :square="false" :highlight="false"
  112. @change="toTools($event,'serviceList')">
  113. <uni-grid-item v-show="(index>=(cindex)*8) && (index<(cindex+1)*8)"
  114. v-for="(item ,index) in serviceList" :index="index" :key="item.text">
  115. <view class="grid-item-box dis a-c f-c">
  116. <image :src="item.image" mode=""></image>
  117. <text class="text">{{item.text}}</text>
  118. </view>
  119. </uni-grid-item>
  120. </uni-grid>
  121. </swiper-item>
  122. </swiper>
  123. </view>
  124. </view>
  125. <!-- 售后管理End -->
  126. <!-- 我的关于Start -->
  127. <view class="my-tools">
  128. <view class="header d-flex a-center j-sb">
  129. <view>关于掌柜</view>
  130. </view>
  131. <view class="order-body d-flex a-center">
  132. <!-- 因为swiper特性的关系,请指定swiper的高度 ,swiper的高度并不会被内容撑开-->
  133. <swiper style="height:calc(162upx)" class="swiper" :indicator-dots="(aboutListLength!=1)?true:false">
  134. <swiper-item class="swiper dis a-c" v-for="(count,cindex) of aboutListLength" :key="count">
  135. <uni-grid :column="4" :show-border="false" :square="false" :highlight="false"
  136. @change="toTools($event,'aboutList')">
  137. <uni-grid-item class="d-flex a-center j-center"
  138. v-show="(index>=(cindex)*8) && (index<(cindex+1)*8)" v-for="(item ,index) in aboutList"
  139. :index="index" :key="item.text">
  140. <view class="grid-item-box d-flex a-center j-center flex-column">
  141. <image :src="item.image" mode=""></image>
  142. <text class="text">{{item.text}}</text>
  143. </view>
  144. </uni-grid-item>
  145. </uni-grid>
  146. </swiper-item>
  147. </swiper>
  148. </view>
  149. </view>
  150. <!-- 我的关于End -->
  151. <!-- 菜单Start -->
  152. <!-- <block v-for="(item,index) in menusList" :key="index">
  153. <my-list-item :item="item" :index="index"></my-list-item>
  154. </block> -->
  155. <!-- 菜单End -->
  156. </view>
  157. </template>
  158. <script>
  159. import store from '@/store';
  160. import {
  161. mapState,
  162. mapMutations
  163. } from "vuex"
  164. import zPopup from '@/components/common/z-popup.vue'
  165. import {
  166. pathToBase64,
  167. base64ToPath
  168. } from '@/common/image-tools-base64.js';
  169. import myListItem from "@/components/modules/my/my-list-item.vue";
  170. export default {
  171. components: {
  172. zPopup,
  173. myListItem
  174. },
  175. data() {
  176. return {
  177. info: ["", ""],
  178. dotsStyles: {
  179. backgroundColor: '#E5E5E5',
  180. selectedBackgroundColor: '#0052FF',
  181. },
  182. current: 0,
  183. mode: 'default',
  184. headerStyle: {
  185. backgroundColor: '',
  186. backgroundImage: '',
  187. backgroundSize: '',
  188. backgroundPosition: '',
  189. boxShadow: ''
  190. // 其他样式属性...
  191. },
  192. showBackground: false,
  193. prevScrollTop: 0,
  194. popupShow: false, //头像是否展示
  195. mystatusText: "已认证",
  196. prodetIntroShow: true, //显示滚动公告
  197. handlingFee: 0, // 手续费金额
  198. documentary: 0, //车险金额
  199. promotion: 0, //推广费
  200. avatar: "",
  201. orderTypeList: [{
  202. icon: 'icon-jixurenwu',
  203. orderstatus: 0,
  204. text: '报价中',
  205. badge: '0',
  206. type: "primary",
  207. orderStage: 0,
  208. iconColor: '#0696FF'
  209. },
  210. {
  211. icon: 'icon-hebaozhong',
  212. orderstatus: 1,
  213. text: '待核保',
  214. badge: '0',
  215. type: "success",
  216. orderStage: 1,
  217. iconColor: '#FFA22A'
  218. },
  219. {
  220. icon: 'icon-querenzhifu',
  221. orderstatus: 2,
  222. text: '待缴费',
  223. badge: '0',
  224. type: "error",
  225. orderStage: 2,
  226. },
  227. {
  228. icon: 'icon-peisong',
  229. orderstatus: 3,
  230. text: '已承保',
  231. badge: '0',
  232. type: "error",
  233. orderStage: 3,
  234. },
  235. ],
  236. toolsList: [{
  237. icon: 'icon-Frame-1',
  238. text: '闪电增员',
  239. url: '/pages/tools/addStaff/addStaff',
  240. },
  241. {
  242. icon: 'icon-Frame',
  243. text: '团队管理',
  244. url: '/pages/tools/team/team',
  245. },
  246. {
  247. icon: 'icon-Frame-2',
  248. text: '客户管理',
  249. url: '/pages/tools/customer/customer',
  250. },
  251. {
  252. icon: 'icon-Frame-3',
  253. text: '业绩管理',
  254. url: '/pages/tools/achievement/achievement',
  255. },
  256. {
  257. icon: 'icon-Frame-5',
  258. text: '报案服务',
  259. url: '/pages/tools/insuranceClaims/insuranceClaims',
  260. },
  261. {
  262. icon: 'icon-Frame-4',
  263. text: '掌柜秘书',
  264. url: '/pages/tools/messageReminder/messageReminder',
  265. },
  266. {
  267. icon: 'icon-Frame-6',
  268. text: '保单',
  269. url: '/pages/tools/policy',
  270. },
  271. {
  272. icon: 'icon-Frame-7',
  273. text: '计算器',
  274. url: '/pages/tools/calculator/calculator',
  275. },
  276. {
  277. icon: 'icon-a-02',
  278. text: '海报管理',
  279. url: '/pages/tools/poster/poster',
  280. },
  281. {
  282. icon: 'icon-a-01',
  283. text: '优惠劵',
  284. url: '/pages/tools/coupon/coupon',
  285. },
  286. {
  287. icon: 'icon-a-03',
  288. text: '掌柜商城',
  289. },
  290. {
  291. icon: 'icon-a-04',
  292. text: '车险之家',
  293. url: "/pages/carInsure2/entry",
  294. }
  295. ],
  296. aboutList: [{
  297. image: '/static/image/my/Frame5.png',
  298. text: '常见问题',
  299. url: '/pages/set/question',
  300. },
  301. // { icon: 'icon-baodan',text: '意见反馈',url:'/pages/set/suggest',iconColor:'#DD525E'},
  302. {
  303. image: '/static/image/my/Frame6.png',
  304. text: '意见反馈',
  305. url: '',
  306. },
  307. {
  308. image: '/static/image/my/Frame7.png',
  309. text: '联系客服',
  310. tel: '4006333016',
  311. },
  312. {
  313. image: '/static/image/my/Frame8.png',
  314. text: '关于我们',
  315. url: '/pages/set/about',
  316. }
  317. ],
  318. serviceList: [{
  319. image: '/static/image/my/Frame1.png',
  320. text: '发票申请',
  321. popup: '请加微信15513511113,联系客服操作',
  322. },
  323. {
  324. image: '/static/image/my/Frame2.png',
  325. text: '保单批改',
  326. popup: '请加微信15513511113,联系客服操作',
  327. },
  328. {
  329. image: '/static/image/my/Frame3.png',
  330. text: '申请退保',
  331. popup: '请加微信15513511113,联系客服操作',
  332. },
  333. {
  334. image: '/static/image/my/Frame4.png',
  335. text: '自助理赔',
  336. popup: '请加微信15513511113,联系客服操作',
  337. }
  338. ],
  339. menusList: [{
  340. icon: "shangcheng",
  341. name: "掌柜商场",
  342. clicktype: "nothing",
  343. url: "",
  344. auth: true
  345. },
  346. {
  347. icon: "chexiandingdan",
  348. name: "车险之家",
  349. clicktype: "navigateTo",
  350. url: "/pages/carInsure/entry",
  351. auth: true
  352. }
  353. ]
  354. }
  355. },
  356. computed: {
  357. ...mapState(['userInfo', "userCheckInfo", ]),
  358. toolsListLength() {
  359. // let length = Math.ceil(this.toolsList.length / 8);
  360. let list = ["1", "2"]
  361. return list;
  362. },
  363. aboutListLength() {
  364. return Math.ceil(this.aboutList.length / 4);
  365. },
  366. serviceListLength() {
  367. return Math.ceil(this.serviceList.length / 4);
  368. }
  369. },
  370. async onShow() {
  371. await this.getAdvanceMoney(); //手续费金额
  372. if (this.userInfo.sysUser.headSculpture) {
  373. this.avatar = this.$base.baseUrl + this.userInfo.sysUser.headSculpture;
  374. } else {
  375. this.avatar = "/static/image/my/avatar1.png"
  376. }
  377. if (this.userInfo.sysUser.status == '1') {
  378. this.mystatusText = "已认证";
  379. } else if (this.userStatus == '2') {
  380. this.mystatusText = "未认证";
  381. }
  382. },
  383. async onload() {
  384. await this.getAdvanceMoney(); //手续费金额
  385. },
  386. onPageScroll(e) {
  387. this.handleScroll(e);
  388. },
  389. mounted() {
  390. uni.pageScrollTo({
  391. scrollTop: 0,
  392. duration: 0
  393. });
  394. uni.$on('scroll', this.handleScroll);
  395. },
  396. destroyed() {
  397. uni.$off('scroll', this.handleScroll);
  398. },
  399. methods: {
  400. ...mapMutations(['setUserModules', 'setOrderType', 'setOrderStage']),
  401. //头部颜色变化js
  402. change(e) {
  403. this.current = e.detail.current;
  404. },
  405. handleScroll(e) {
  406. const scrollTop = e.scrollTop;
  407. if (scrollTop > this.prevScrollTop) {
  408. // 向下滚动
  409. this.showBackground = true; // 显示背景图
  410. } else if (scrollTop < 50) {
  411. // 在顶部附近,隐藏背景图
  412. this.showBackground = false;
  413. } else {
  414. // 向上滚动
  415. this.showBackground = true; // 显示背景图
  416. }
  417. this.headerStyle.backgroundColor = this.showBackground ? '#fff' : 'transparent';
  418. this.headerStyle.backgroundImage = this.showBackground ? 'url("/static/image/my/banner.png")' : '';
  419. this.headerStyle.backgroundSize = this.showBackground ? 'cover' : '';
  420. this.headerStyle.backgroundPosition = this.showBackground ? 'center' : '';
  421. this.prevScrollTop = scrollTop;
  422. },
  423. tool() {
  424. uni.navigateTo({
  425. url: "/pages/set/set"
  426. })
  427. },
  428. //获得订单数量
  429. // 预收账户金额查询
  430. async getAdvanceMoney() {
  431. let res = await this.$http.get('/sysUserAccount/getSysAllAmount?userid=' + this.userInfo.sysUser.id);
  432. // 请求失败处理
  433. if (res.code == 200 && res.data) {
  434. this.handlingFee = res.data.handlingFee; //手续费
  435. this.documentary = res.data.documentary; //非跟单
  436. this.promotion = res.data.promotion; //佣金
  437. } else {
  438. this.handlingFee = 0; //手续费
  439. this.documentary = 0; //非跟单
  440. this.promotion = 0; //佣金
  441. }
  442. },
  443. //去工具页面
  444. toTools(e, listName) {
  445. if (this.userInfo.sysUser.status == '2') {
  446. return uni.showToast({
  447. icon: "none",
  448. title: '请先通过实名认证',
  449. duration: 1500
  450. })
  451. }
  452. if (!!this[listName][e.detail.index].url && (this[listName][e.detail.index].url ==
  453. '/pages/wallet/wallet')) {
  454. if ((!!this.userInfo.esmUserInternal) && (!!this.userInfo.esmUserInternal.accountno)) {
  455. this.navigate({
  456. url: this[listName][e.detail.index].url
  457. }, "navigateTo", true)
  458. } else {
  459. this.navigate({
  460. url: '/pages/wallet/bindBank',
  461. complete: () => {
  462. setTimeout(() => {
  463. uni.showToast({
  464. title: '请先绑定银行卡',
  465. duration: 3000,
  466. icon: "none"
  467. });
  468. }, 500);
  469. }
  470. }, "navigateTo", true)
  471. }
  472. } else if (this[listName][e.detail.index].url) {
  473. this.navigate({
  474. url: this[listName][e.detail.index].url
  475. }, "navigateTo", true)
  476. } else if (this[listName][e.detail.index].tel) {
  477. uni.makePhoneCall({
  478. phoneNumber: this[listName][e.detail.index].tel,
  479. })
  480. } else if (this[listName][e.detail.index].popup) {
  481. uni.showModal({
  482. showCancel: false,
  483. content: this[listName][e.detail.index].popup,
  484. });
  485. } else {
  486. uni.showToast({
  487. title: this[listName][e.detail.index].text + '更新中...',
  488. icon: 'none'
  489. })
  490. }
  491. },
  492. accountTool(path) {
  493. if (path) {
  494. this.navigate({
  495. url: path,
  496. }, "navigateTo", true)
  497. } else {
  498. uni.showToast({
  499. title: '功能待开发...',
  500. icon: "none"
  501. });
  502. }
  503. },
  504. // 去账单明细
  505. toBillDetails(type) {
  506. this.navigate({
  507. url: `/pages/wallet/billDetails${type}`,
  508. }, "navigateTo", true)
  509. },
  510. // 去账单明细
  511. toWallet(type) {
  512. this.navigate({
  513. url: "/pages/wallet/wallet"
  514. }, "navigateTo", true)
  515. },
  516. //跳转个人信息页面
  517. openDetail() {
  518. this.navigate({
  519. url: "/pages/user/userInfo"
  520. }, "navigateTo", false)
  521. },
  522. //跳转订单页面
  523. openOrder(e) {
  524. this.setOrderStage(this.orderTypeList[e].orderStage);
  525. this.navigate({
  526. url: "/pages/orders1/orders"
  527. }, "switchTab", true)
  528. }
  529. }
  530. }
  531. </script>
  532. <style lang="scss" scoped>
  533. @import '@/style/mixin.scss';
  534. page {
  535. background-color: #F8FAFE;
  536. }
  537. .headers {
  538. position: fixed;
  539. top: 0;
  540. left: 0;
  541. height: auto;
  542. width: 100%;
  543. z-index: 999999;
  544. padding: 16px;
  545. padding-top: 50px;
  546. >view {
  547. width: 100%;
  548. height: 100%;
  549. position: relative;
  550. }
  551. image {
  552. position: absolute;
  553. right: 0;
  554. width: 20px;
  555. height: 20px;
  556. }
  557. text {
  558. font-size: 18px;
  559. font-weight: bold;
  560. color: #000;
  561. }
  562. }
  563. .Personnel {
  564. height: auto;
  565. width: 100%;
  566. background: #fff;
  567. background-image: url("/static/image/my/banner.png");
  568. background-size: 100% 100%;
  569. padding: 110px 16px 10px 16px;
  570. .avatar {
  571. width: 60px;
  572. height: 60px;
  573. border-radius: 50%;
  574. }
  575. .info {
  576. margin-left: 10px;
  577. text {
  578. margin-right: 10px;
  579. color: #333333;
  580. font-size: 13px;
  581. }
  582. text:last-child {
  583. color: rgba(51, 51, 51, 0.8);
  584. font-size: 12px;
  585. }
  586. }
  587. }
  588. .my-tools {
  589. padding: 0 16px;
  590. .header {
  591. padding: 10px 0;
  592. font-size: 14px;
  593. color: #232832;
  594. font-weight: bold;
  595. }
  596. .order-body {
  597. background: #fff;
  598. box-shadow: 0px 4px 10px 0px #DAE3F4;
  599. border-radius: 6px;
  600. }
  601. }
  602. /* 产品介绍Start */
  603. .prodet-intro {
  604. width: 100%;
  605. height: 70upx;
  606. background-color: #333;
  607. color: #3ae;
  608. white-space: nowrap;
  609. border-top: 1upx solid #666;
  610. border-bottom: 1upx solid #666;
  611. box-sizing: border-box;
  612. }
  613. .prodet-intro>view:nth-of-type(1) {
  614. width: 60upx;
  615. height: 100%;
  616. flex-shrink: 1;
  617. padding-left: 20upx;
  618. font-size: 36upx;
  619. }
  620. .prodet-intro>view:nth-of-type(2) {
  621. overflow: hidden;
  622. line-height: 70upx;
  623. font-size: 24upx;
  624. }
  625. .prodet-intro>view:nth-of-type(3) {
  626. width: 60upx;
  627. padding-right: 20upx;
  628. flex-shrink: 1;
  629. height: 100%;
  630. font-size: 36upx;
  631. }
  632. .animate {
  633. padding-left: 40rpx;
  634. display: inline-block;
  635. white-space: nowrap;
  636. animation: 20s wordsLoop linear infinite normal;
  637. }
  638. @keyframes wordsLoop {
  639. 0% {
  640. transform: translateX(750rpx);
  641. -webkit-transform: translateX(750rpx);
  642. }
  643. 100% {
  644. transform: translateX(-100%);
  645. -webkit-transform: translateX(-100%);
  646. }
  647. }
  648. /* 产品介绍End */
  649. /* 个人信息Start */
  650. /* 个人信息End */
  651. /* 我的订单Start */
  652. .my-orders {
  653. display: flex;
  654. justify-content: center;
  655. align-items: center;
  656. }
  657. .my-orders,
  658. .wallet-body {
  659. position: relative;
  660. width: 95%;
  661. height: 180upx;
  662. background: #FFFFFF;
  663. border-radius: 20upx;
  664. box-shadow: 0upx 0upx 10upx #efeff4;
  665. overflow: hidden;
  666. }
  667. /* 我的订单End */
  668. /* 我的钱包Start */
  669. .my-wallet {
  670. .wallet-body {
  671. width: 100%;
  672. height: auto;
  673. padding: 8px 16px;
  674. background: #FFFFFF;
  675. box-shadow: 0px 4px 10px 0px #DAE3F4;
  676. border-radius: 6px;
  677. margin-top: 10px;
  678. .route {
  679. text {
  680. font-size: 12px;
  681. color: #333;
  682. font-weight: 400;
  683. }
  684. image {
  685. width: 45px;
  686. height: 40px;
  687. }
  688. }
  689. .money {
  690. padding: 8px 0;
  691. background-color: #F9F8FD;
  692. border-radius: 4px;
  693. margin-top: 8px;
  694. text {
  695. font-size: 12px;
  696. color: #333;
  697. font-weight: 400;
  698. }
  699. }
  700. }
  701. }
  702. /* 我的钱包End */
  703. /* 小的分项标题Start */
  704. /* 小的分项标题End */
  705. .grid-item-box {
  706. .icon {
  707. font-size: 26px;
  708. }
  709. .text {
  710. font-size: 12px;
  711. }
  712. image {
  713. width: 32px;
  714. height: 32px;
  715. }
  716. }
  717. .swiper {
  718. width: 100%;
  719. }
  720. .swiper-view .keep-out {
  721. width: 100%;
  722. height: 30upx;
  723. border-radius: 100% 100% 0 0;
  724. margin-top: -15upx;
  725. position: absolute;
  726. }
  727. .swiper-view .swiper {
  728. overflow: hidden;
  729. padding: 30upx 20upx 0;
  730. box-sizing: border-box;
  731. width: 100%;
  732. height: 200upx;
  733. }
  734. .swiper-view .swiper image {
  735. width: 100%;
  736. height: 200upx;
  737. }
  738. </style>