user.vue 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. <template>
  2. <view class="pageBg">
  3. <view class="page-header">
  4. <view class="contain">
  5. <view class="page-header-content">
  6. <view class="page-header-content-left">
  7. <view class="" @click="onInfo">
  8. <u-avatar :src="getFilePath(userdata ? userdata.avatarUrl : null)" size="100"></u-avatar>
  9. </view>
  10. </view>
  11. <view class="page-header-content-center">
  12. <view>
  13. <view class="fz16px mt5px">{{userdata && userdata.phone ? userdata.phone : '22222'}}</view>
  14. </view>
  15. </view>
  16. </view>
  17. </view>
  18. <!-- 订单 -->
  19. <view class="mt20px">
  20. <view class="contain">
  21. <view class="box">
  22. <u-row justify="center">
  23. <u-col span="8">
  24. <view class="">我的订单</view>
  25. </u-col>
  26. <u-col span="4">
  27. <view class="text-right" @click="openPage('/pages/order/myOrder/myOrder?type=0');">
  28. <text class="fz14px" style="color: #96989e;">全部订单</text>
  29. <view style="display: inline-block;">
  30. <u-icon name="arrow-right" color="#96989e" size="24"></u-icon>
  31. </view>
  32. </view>
  33. </u-col>
  34. </u-row>
  35. <view class="flex-box mt20px">
  36. <view class="flex-box-item" @click="openPage('/pages/order/myOrder/myOrder?type=1')">
  37. <u-icon name="rmb-circle" labelColor="#96989e" labelPos="bottom" labelSize="14px"
  38. label="待付款" size="40"></u-icon>
  39. </view>
  40. <view class="flex-box-item" @click="openPage('/pages/order/myOrder/myOrder?type=2')">
  41. <u-icon name="clock" labelColor="#96989e" label="待核销" labelSize="14px" labelPos="bottom"
  42. size="40"></u-icon>
  43. </view>
  44. <view class="flex-box-item" @click="openPage('/pages/order/myOrder/myOrder?type=3')">
  45. <u-icon name="close-circle" label="已取消" labelColor="#96989e" labelSize="14px" labelPos="bottom"
  46. size="40"></u-icon>
  47. </view>
  48. <view class="flex-box-item" @click="openPage('/pages/order/myOrder/myOrder?type=4')">
  49. <u-icon name="bag" label="已完成" labelColor="#96989e" labelSize="14px" labelPos="bottom"
  50. size="40"></u-icon>
  51. </view>
  52. </view>
  53. </view>
  54. </view>
  55. </view>
  56. </view>
  57. <view class="mt20px">
  58. <view class="contain mt20px">
  59. <view class="box mt20px">
  60. <view class="mb10px">我的应用</view>
  61. <view class="flex-box mt20px">
  62. <view class="flex-box-item" @click="openPage('/pages/user/myInfo')">
  63. <u-icon name="account" labelColor="#96989e" labelPos="bottom" labelSize="14px"
  64. label="个人信息" size="40"></u-icon>
  65. </view>
  66. <view class="flex-box-item" @click="openPage('/pages/classify/classify')">
  67. <u-icon name="car" labelColor="#96989e" label="餐车信息" labelSize="14px" labelPos="bottom"
  68. size="40"></u-icon>
  69. </view>
  70. <view class="flex-box-item">
  71. <u-icon name="kefu-ermai" label="客服电话" labelColor="#96989e" labelSize="14px" labelPos="bottom"
  72. size="40"></u-icon>
  73. </view>
  74. </view>
  75. </view>
  76. <!-- <u-button type="error" @click="exitMP()">退出登录</u-button> -->
  77. </view>
  78. </view>
  79. </view>
  80. </template>
  81. <script>
  82. export default {
  83. data() {
  84. return {
  85. userdata:{
  86. avatarUrl:'',
  87. phone:''
  88. }
  89. }
  90. },
  91. methods: {
  92. openPage(path) {
  93. this.$u.route({
  94. url: path
  95. })
  96. },
  97. onInfo() {
  98. uni.navigateTo({
  99. url: `/pages/user/myInfo`
  100. });
  101. }
  102. }
  103. }
  104. </script>
  105. <style lang="scss">
  106. .page-header {
  107. width: 100%;
  108. display: inline-block;
  109. padding-top: 60rpx;
  110. background-size: cover;
  111. background-position: left;
  112. background-repeat: no-repeat;
  113. background-image: linear-gradient(to bottom, #FBBD69, #F97023);
  114. height: 35vh;
  115. &-content {
  116. display: flex;
  117. flex-direction: column; // 设置 Flex 方向为垂直
  118. align-items: center; // 水平居中子元素
  119. justify-content: center; // 垂直居中子元素
  120. &-left {
  121. margin-right: 20rpx;
  122. .avator {
  123. display: inline-block;
  124. border: 2px solid #fff;
  125. border-radius: 50%;
  126. }
  127. }
  128. &-center {
  129. flex: 1;
  130. color: #fff;
  131. }
  132. &-right {
  133. width: 60rpx;
  134. }
  135. }
  136. }
  137. .box {
  138. padding: 30rpx;
  139. border-radius: 20rpx;
  140. background-color: #fff;
  141. }
  142. .flex-box {
  143. display: flex;
  144. text-align: center;
  145. background-color: #F1F3F8;
  146. border-radius: 10rpx;
  147. &-item {
  148. flex: 1;
  149. margin: 10px;
  150. position: relative;
  151. .line {
  152. height: 70%;
  153. width: 1px;
  154. background-color: #ebebeb;
  155. position: absolute;
  156. right: 0;
  157. top: 50%;
  158. transform: translateY(-50%);
  159. }
  160. }
  161. }
  162. .pageBg {
  163. background-color: #EFF2F7
  164. }
  165. </style>