me.vue 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459
  1. <template>
  2. <view class="me">
  3. <!-- S 头部 -->
  4. <view class="grxxtb">
  5. <view class="vheight"></view>
  6. <!-- 用户 -->
  7. <view class="grxxtb-top">
  8. <view class="me_head flexs" @click="goSet">
  9. <view class="txbj"><image :src="info.avatar" mode="aspectFill"></image></view>
  10. <text>{{ info.nickname }}</text>
  11. </view>
  12. <view class="ts" @click="zxkf()">
  13. <image src="../../static/image/tabbar/ts.png"></image>
  14. <view class="ts-font">投诉</view>
  15. </view>
  16. </view>
  17. <view class="grxxtb-bottom">
  18. <view class="grxxtb-bottom-item" @click="goWallet">
  19. <view class="grxxtb-bottom-item-bg"><image src="../../static/image/tabbar/jinbi.png" mode=""></image></view>
  20. <view class="grxxtb-bottom-item-font">金币</view>
  21. <view class="grxxtb-bottom-item-font">{{ info.coin || 0 }}</view>
  22. </view>
  23. <view class="grxxtb-bottom-item" @click="goYue">
  24. <view class="grxxtb-bottom-item-bg"><image src="../../static/image/tabbar/yuee.png" mode=""></image></view>
  25. <view class="grxxtb-bottom-item-font">余额</view>
  26. <view class="grxxtb-bottom-item-font">{{ info.money || 0 }}</view>
  27. </view>
  28. <view class="grxxtb-bottom-item" @click="toMyBox()">
  29. <view class="grxxtb-bottom-item-bg"><image src="../../static/image/tabbar/baobei.png" mode=""></image></view>
  30. <view class="grxxtb-bottom-item-font">宝贝数</view>
  31. <view class="grxxtb-bottom-item-font">{{ bbs }}</view>
  32. </view>
  33. </view>
  34. </view>
  35. <!-- E 头部-->
  36. <!-- 中间 -->
  37. <view class="me_main">
  38. <view class="me_main_head">
  39. <view class="me_main_box">
  40. <view class="me_main_box_order flex">
  41. <view class="me_main_box_order_txt">我的订单</view>
  42. <view class="me_main_box_order_go flexs" @click="order(0)">
  43. <text>全部订单</text>
  44. <image src="/static/image/publice/jinruer@2x.png" mode=""></image>
  45. </view>
  46. </view>
  47. <view class="me_main_head_ul flex">
  48. <view class="me_main_head_li center" v-for="(item, index) in orderList" :key="index" @click="order(index)">
  49. <image :src="item.image" mode=""></image>
  50. <text>{{ item.name }}</text>
  51. </view>
  52. </view>
  53. </view>
  54. </view>
  55. <!-- <view class="me_main_con">
  56. <view class="me_main_con_head">
  57. 钱包
  58. <view class="txmx" @click="txmx">提现明细>></view>
  59. </view>
  60. <view class="me_main_con_gold flex">
  61. <view class="me_main_con_gold_l flexs" @click="goWallet">
  62. <text>金币:</text>
  63. <text>{{ info.coin || 0 }}</text>
  64. </view>
  65. <view class="me_main_con_gold_l">
  66. <text>余额:</text>
  67. <text>{{ info.money || 0 }}</text>
  68. </view>
  69. <view class="me_main_con_gold_btn center" @click="recharge">充值</view>
  70. </view>
  71. </view> -->
  72. <view class="me_main_footer">
  73. <view class="me_main_footer_li center" v-for="(item, index) in footerList" :key="index" @click="changeFooter(item)">
  74. <view class="me_main_footer_img">
  75. <image :src="item.image" mode=""></image>
  76. <text>{{ item.name }}</text>
  77. </view>
  78. </view>
  79. </view>
  80. </view>
  81. </view>
  82. </template>
  83. <script>
  84. export default {
  85. data() {
  86. return {
  87. topList: [
  88. {
  89. image: '/static/image/me/hegui@2x.png',
  90. name: '我的盒柜',
  91. url: ''
  92. },
  93. {
  94. image: '/static/image/me/jilu.png',
  95. name: '开箱记录',
  96. url: ''
  97. }
  98. ],
  99. orderList: [
  100. {
  101. image: '/static/image/me/daifahuo@2x.png',
  102. name: '待发货'
  103. },
  104. {
  105. image: '/static/image/me/yifahuo@2x.png',
  106. name: '已发货'
  107. },
  108. {
  109. image: '/static/image/me/succed.png',
  110. name: '已完成'
  111. }
  112. ],
  113. footerList: [
  114. {
  115. image: '/static/image/me/hegui@2x.png',
  116. name: '我的盒柜',
  117. url: '/pages/tabbar/box'
  118. },
  119. {
  120. image: '/static/image/me/jilu.png',
  121. name: '开箱记录',
  122. url: '/pages/me/record'
  123. },
  124. {
  125. image: '/static/image/me/yue@2x.png',
  126. name: '我的余额',
  127. url: '/pages/me/balance'
  128. },
  129. // {
  130. // image:'/static/image/me/shoucang@2x.png',
  131. // name:'提现',
  132. // url:'/pages/me/deposit'
  133. // },
  134. {
  135. image: '/static/image/me/shoucang@2x.png',
  136. name: '我的收藏',
  137. url: '/pages/me/coll'
  138. },
  139. {
  140. image: '/static/image/me/fenxiang@2x.png',
  141. name: '分享赚钱',
  142. url: '/pagesA/pages/invite'
  143. },
  144. {
  145. image: '/static/image/me/dizhi@2x.png',
  146. name: '收货地址',
  147. url: '/pages/me/address'
  148. },
  149. {
  150. image: '/static/image/me/kf1.png',
  151. name: '联系客服',
  152. url: '/pagesB/pages/server'
  153. },
  154. {
  155. image: '/static/image/me/shezhi@2x.png',
  156. name: '设置',
  157. url: '/pages/me/set'
  158. }
  159. ],
  160. info: {}, //个人信息
  161. bbs: 0
  162. };
  163. },
  164. methods: {
  165. goSet() {
  166. uni.navigateTo({ url: '/pages/me/set' });
  167. },
  168. //去我的金币
  169. goWallet() {
  170. uni.navigateTo({ url: '/pages/me/wallet' });
  171. },
  172. //去我的余额
  173. goYue() {
  174. uni.navigateTo({ url: '/pages/me/balance' });
  175. },
  176. //去提现明细
  177. txmx() {
  178. uni.navigateTo({ url: '/pagesA/pages/invite' });
  179. },
  180. toMyBox() {
  181. // this.$refs['result-popup'].close();
  182. uni.switchTab({ url: '/pages/tabbar/box' });
  183. },
  184. //去充值
  185. recharge() {
  186. uni.navigateTo({ url: '/pages/me/recharge' });
  187. },
  188. //跳转客服
  189. zxkf: () => uni.navigateTo({ url: '/pagesB/pages/server' }),
  190. //头部
  191. changeTop(index) {
  192. index == 0 ? uni.navigateTo({ url: '/pages/me/myBox' }) : uni.navigateTo({ url: '/pages/me/record' });
  193. },
  194. //去我的订单
  195. order(index) {
  196. uni.navigateTo({ url: '/pages/me/order?type=' + index });
  197. },
  198. changeFooter(item) {
  199. uni.navigateTo({
  200. url: item.url,
  201. fail() {
  202. uni.switchTab({
  203. url: item.url
  204. });
  205. }
  206. });
  207. },
  208. //获取个人信息
  209. getInfo() {
  210. this.$api
  211. .userinfo()
  212. .then(res => {
  213. if (res.code === 1) {
  214. this.info = res.data;
  215. }
  216. })
  217. .catch(res => {
  218. console.log(res);
  219. });
  220. },
  221. getbbs() {
  222. this.$api.myBox({ status: 1, page: 1, msg: '数据加载中' }).then(res => {
  223. console.log(res, '123456');
  224. this.bbs = res.data.total;
  225. });
  226. }
  227. },
  228. onShow() {
  229. this.getInfo();
  230. this.getbbs();
  231. }
  232. };
  233. </script>
  234. <style lang="scss">
  235. .vheigh {
  236. height: var(--status-bar-height);
  237. }
  238. .ts {
  239. padding-right: 27rpx;
  240. position: relative;
  241. z-index: 22;
  242. display: flex;
  243. flex-direction: column;
  244. align-items: center;
  245. image {
  246. width: 42rpx;
  247. height: 48rpx;
  248. }
  249. .ts-font {
  250. margin-top: 16rpx;
  251. font-size: 25rpx;
  252. font-family: PingFang SC;
  253. font-weight: bold;
  254. color: #fafafa;
  255. }
  256. }
  257. .grxxtb {
  258. width: 750rpx;
  259. height: 456rpx;
  260. background: url(https://www.chaomangdao.com/image/xxbj.jpg);
  261. background-size: 100%;
  262. .grxxtb-top {
  263. display: flex;
  264. justify-content: space-between;
  265. align-items: center;
  266. }
  267. .grxxtb-bottom {
  268. padding: 0 27rpx;
  269. display: flex;
  270. justify-content: space-between;
  271. align-items: center;
  272. .grxxtb-bottom-item {
  273. width: 225rpx;
  274. height: 145rpx;
  275. position: relative;
  276. padding: 20rpx 16rpx;
  277. .grxxtb-bottom-item-bg {
  278. position: absolute;
  279. top: 0;
  280. left: 0;
  281. right: 0;
  282. width: 225rpx;
  283. height: 145rpx;
  284. image {
  285. width: 100%;
  286. height: 100%;
  287. }
  288. }
  289. .grxxtb-bottom-item-font {
  290. position: relative;
  291. z-index: 2;
  292. font-size: 24rpx;
  293. font-family: PingFang SC;
  294. font-weight: bold;
  295. color: #fafafa;
  296. }
  297. }
  298. }
  299. }
  300. .me_head {
  301. image {
  302. width: 100rpx;
  303. height: 100rpx;
  304. margin-right: 26rpx;
  305. border-radius: 50%;
  306. position: relative;
  307. left: 40rpx;
  308. top: 40rpx;
  309. }
  310. text {
  311. color: #000000;
  312. font-size: 36rpx;
  313. margin-left: 26rpx;
  314. }
  315. }
  316. .me_head .txbj {
  317. width: 180rpx;
  318. height: 180rpx;
  319. }
  320. .me_main {
  321. margin-top: 30rpx;
  322. padding: 0 30rpx;
  323. padding-bottom: 48rpx;
  324. .me_main_head {
  325. padding: 0 24rpx;
  326. margin-bottom: 20rpx;
  327. background: #ffffff;
  328. box-shadow: 0rpx 0rpx 10rpx 0rpx rgba(51, 51, 51, 0.1);
  329. border-radius: 20rpx;
  330. .me_main_head_nav {
  331. border-bottom: 2rpx solid #f7f7f7;
  332. .me_main_head_nav_li {
  333. width: 50%;
  334. height: 86rpx;
  335. image {
  336. width: 44rpx;
  337. height: 44rpx;
  338. margin-right: 10rpx;
  339. }
  340. text {
  341. color: #000000;
  342. font-size: 28rpx;
  343. font-weight: bold;
  344. }
  345. }
  346. }
  347. .me_main_box {
  348. padding: 0 14rpx 30rpx 14rpx;
  349. .me_main_box_order {
  350. padding: 30rpx 0 35rpx 0;
  351. }
  352. .me_main_box_order_txt {
  353. color: #010101;
  354. font-size: 28rpx;
  355. font-weight: bold;
  356. }
  357. .me_main_box_order_go {
  358. image {
  359. width: 22rpx;
  360. height: 22rpx;
  361. margin-left: 10rpx;
  362. }
  363. text {
  364. color: #999999;
  365. font-size: 22rpx;
  366. }
  367. }
  368. .me_main_head_ul {
  369. .me_main_head_li {
  370. flex-direction: column;
  371. image {
  372. width: 44rpx;
  373. height: 44rpx;
  374. margin-bottom: 10rpx;
  375. }
  376. text {
  377. color: #000000;
  378. font-size: 22rpx;
  379. }
  380. }
  381. }
  382. }
  383. }
  384. .me_main_con {
  385. background: #ffffff;
  386. padding: 0 30rpx;
  387. margin-bottom: 2rpx;
  388. box-shadow: 0rpx 0rpx 6rpx 0rpx rgba(51, 51, 51, 0.1);
  389. border-radius: 20rpx;
  390. .me_main_con_head {
  391. padding: 30rpx 0;
  392. color: #010101;
  393. font-size: 28rpx;
  394. font-weight: bold;
  395. }
  396. .me_main_con_gold {
  397. padding: 22rpx 0 26rpx 0;
  398. border-top: 2rpx solid #f7f7f7;
  399. .me_main_con_gold_l {
  400. text {
  401. color: #010101;
  402. font-size: 28rpx;
  403. &:last-child {
  404. font-weight: bold;
  405. }
  406. }
  407. }
  408. .me_main_con_gold_btn {
  409. width: 100rpx;
  410. height: 44rpx;
  411. color: #ffffff;
  412. background: -webkit-linear-gradient(0deg, #89f7fe 0%, #66a6ff 100%);
  413. border-radius: 22rpx;
  414. }
  415. }
  416. }
  417. .me_main_footer {
  418. width: 692rpx;
  419. background: #ffffff;
  420. box-shadow: 0px 0px 20rpx 0px rgba(50, 50, 52, 0.06);
  421. border-radius: 10rpx;
  422. margin: 20rpx auto 0;
  423. }
  424. .me_main_footer_li {
  425. width: calc(100% / 4);
  426. float: left;
  427. text-align: center;
  428. padding: 30rpx;
  429. margin-bottom: 2rpx;
  430. background: #ffffff;
  431. border-radius: 20rpx;
  432. .me_main_footer_img {
  433. image {
  434. width: 50rpx;
  435. height: 50rpx;
  436. display: block;
  437. margin: 0 auto;
  438. }
  439. text {
  440. color: #000000;
  441. font-size: 28rpx;
  442. margin-top: 20rpx;
  443. display: block;
  444. }
  445. }
  446. .me_main_footer_li_go {
  447. width: 22rpx;
  448. height: 22rpx;
  449. }
  450. }
  451. }
  452. .txmx {
  453. float: right;
  454. font-weight: 400;
  455. }
  456. </style>