青蛙卖大米小程序2024-11-24
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.

437 lines
8.9 KiB

5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
4 months ago
5 months ago
  1. <template>
  2. <view class="page">
  3. <navbar title="个人中心" />
  4. <view class="head">
  5. <view class="headImage">
  6. <image :src="userInfo.headImage" mode="aspectFill"></image>
  7. </view>
  8. <view class="info">
  9. <view class="name">
  10. <view class="one">{{ userInfo.nickName }}</view>
  11. <!-- <view class="two">黄金会员</view> -->
  12. <view class="two">
  13. <image :src="configList[vipImage[userInfo.isPay]]" mode="widthFix"></image>
  14. </view>
  15. </view>
  16. <view class="vip">
  17. ID{{ userInfo.id }}
  18. </view>
  19. <view class="tips">
  20. 注册时间{{ userInfo.createTime }}
  21. </view>
  22. </view>
  23. <!-- <view class="setting">
  24. <uv-icon name="setting" size="40rpx"></uv-icon>
  25. </view> -->
  26. </view>
  27. <view class="earnings">
  28. <view class="member"
  29. v-if="userInfo.isPay"
  30. @click="$utils.navigateTo('/pages/index/member')">
  31. <view>会员等级{{ vipType[userInfo.isPay] }}</view>
  32. <view>查看权益></view>
  33. </view>
  34. <view class="deposit">
  35. <view class="box"
  36. @click="$utils.navigateTo('/pages_order/mine/balance')">
  37. <view>
  38. <view class="num">{{ riceInfo.income || 0 }}</view>
  39. <view class="text">收益明细()</view>
  40. </view>
  41. <view class="boxs">收益明细</view>
  42. </view>
  43. <!-- <view class="box">
  44. <view
  45. @click="$utils.navigateTo('/pages_order/mine/balance')">
  46. <view class="num">{{ riceInfo.balance || 0 }}</view>
  47. <view class="text">余额()</view>
  48. </view>
  49. <view class="boxs"
  50. @click="$utils.navigateTo('/pages_order/mine/recharge')">去充值</view>
  51. </view> -->
  52. <view class="box"
  53. @click="clickNo">
  54. <view>
  55. <view class="num">{{ riceInfo.balance || 0 }}</view>
  56. <view class="text">余额()</view>
  57. </view>
  58. <view class="boxs"
  59. >去充值</view>
  60. </view>
  61. <view class="box">
  62. <view
  63. @click="$utils.navigateTo('/pages_order/mine/commission')">
  64. <view class="num" style="border: none;">{{ riceInfo.canWithdraw || 0 }}</view>
  65. <view class="text">可提现()</view>
  66. </view>
  67. <view class="boxs"
  68. @click="$utils.navigateTo('/pages_order/mine/withdraw')">去提现</view>
  69. </view>
  70. </view>
  71. </view>
  72. <view class="myOrder">
  73. <view>我的订单</view>
  74. <view
  75. @click="$utils.navigateTo('/pages/index/order')">
  76. 查看全部>
  77. </view>
  78. </view>
  79. <view class="order">
  80. <view class="box">
  81. <view class="boxs"
  82. @click="$utils.navigateTo('/pages/index/order?type=1')">
  83. <image src="../../static/image/center/13.png" mode="aspectFill" />
  84. <view>待付款</view>
  85. </view>
  86. <view class="boxs"
  87. @click="$utils.navigateTo('/pages/index/order?type=2')">
  88. <image src="../../static/image/center/14.png" mode="aspectFill" />
  89. <view>已付款</view>
  90. </view>
  91. <view class="boxs"
  92. @click="$utils.navigateTo('/pages/index/order?type=3')">
  93. <image src="../../static/image/center/15.png" mode="aspectFill" />
  94. <view>待发货</view>
  95. </view>
  96. <view class="boxs"
  97. @click="$utils.navigateTo('/pages/index/order?type=4')">
  98. <image src="../../static/image/center/16.png" mode="aspectFill" />
  99. <view>待收货</view>
  100. </view>
  101. <view class="boxs"
  102. @click="$utils.navigateTo('/pages/index/order?type=5')">
  103. <image src="../../static/image/center/17.png" mode="aspectFill" />
  104. <view>已完成</view>
  105. </view>
  106. </view>
  107. </view>
  108. <!-- 酒店 -->
  109. <view class="user">
  110. <view class="line grid">
  111. <view class="title">
  112. 常用功能
  113. </view>
  114. </view>
  115. <view class="cell-bottom">
  116. <uv-cell-group>
  117. <uv-cell icon="grid" title="我的邀请码"
  118. @click="$utils.navigateTo('/pages_order/mine/promotion')"
  119. :isLink="true" arrow-direction="right" />
  120. <uv-cell icon="account" title="我的推荐" :isLink="true" arrow-direction="right"
  121. @click="$utils.navigateTo('/pages_order/mine/recommend')" />
  122. <uv-cell icon="kefu-ermai" title="联系客服"
  123. @click="$refs.customerServicePopup.open()"
  124. :isLink="true" arrow-direction="right" />
  125. <uv-cell
  126. title="我的地址"
  127. icon="list-dot"
  128. :isLink="true"
  129. arrow-direction="right"
  130. @click="$utils.navigateTo('/pages_order/mine/address')">
  131. </uv-cell>
  132. <uv-cell icon="reload" title="退出登录" :isLink="true" arrow-direction="right"
  133. @click="$store.commit('logout')"/>
  134. </uv-cell-group>
  135. </view>
  136. </view>
  137. <customerServicePopup ref="customerServicePopup"/>
  138. <tabber select="center" />
  139. </view>
  140. </template>
  141. <script>
  142. import tabber from '@/components/base/tabbar.vue'
  143. import { mapState } from 'vuex'
  144. import customerServicePopup from '@/components/config/customerServicePopup.vue'
  145. export default {
  146. components: {
  147. tabber,
  148. customerServicePopup,
  149. },
  150. computed: {
  151. ...mapState(['userInfo', 'riceInfo']),
  152. },
  153. data() {
  154. return {
  155. vipType : ['普通会员', '黄金会员', '渠道商'],
  156. vipImage : ['vip_vip', 'vip_user', 'vip_shop']
  157. }
  158. },
  159. onShow() {
  160. this.$store.commit('getUserInfo')
  161. this.$store.commit('getRiceInfo')
  162. },
  163. methods: {
  164. clickNo(){
  165. uni.showModal({
  166. title: '暂未开放',
  167. })
  168. },
  169. }
  170. }
  171. </script>
  172. <style scoped lang="scss">
  173. .page {
  174. .warp {
  175. display: flex;
  176. align-items: center;
  177. justify-content: center;
  178. height: 100%;
  179. }
  180. .rect {
  181. width: 600rpx;
  182. height: 300rpx;
  183. background-color: #fff;
  184. border-radius: 20rpx;
  185. overflow: hidden;
  186. .title {
  187. padding: 10rpx 0 0 15rpx;
  188. background-color: #fd5100;
  189. color: #FFF;
  190. text-align: left;
  191. width: 100%;
  192. height: 18%;
  193. font-size: 36rpx;
  194. }
  195. .center {
  196. height: 40%;
  197. display: flex;
  198. justify-content: center;
  199. align-items: center;
  200. font-size: 36rpx;
  201. }
  202. .bottom {
  203. display: flex;
  204. justify-content: center;
  205. gap: 50rpx;
  206. }
  207. }
  208. }
  209. image {
  210. width: 100%;
  211. height: 100%;
  212. }
  213. .head {
  214. display: flex;
  215. background-color: #fff;
  216. padding: 40rpx 20rpx;
  217. align-items: center;
  218. position: relative;
  219. .headImage {
  220. width: 130rpx;
  221. height: 130rpx;
  222. background-image: url(/static/image/center/3.png);
  223. background-size: 100% 100%;
  224. overflow: hidden;
  225. border-radius: 50%;
  226. margin-right: 40rpx;
  227. }
  228. .info {
  229. font-size: 28rpx;
  230. display: flex;
  231. flex-direction: column;
  232. gap: 10rpx;
  233. .vip {
  234. color: #909294;
  235. font-size: 24rpx;
  236. }
  237. .name {
  238. display: flex;
  239. align-items: center;
  240. .one {
  241. color: #343140;
  242. font-size: 32rpx;
  243. font-weight: 600;
  244. margin-right: 20rpx;
  245. }
  246. .two {
  247. display: flex;
  248. align-items: center;
  249. justify-content: center;
  250. flex-shrink: 0;
  251. // font-size: 24rpx;
  252. // margin-left: 10rpx;
  253. // padding: 3rpx 16rpx;
  254. // border-radius: 18rpx;
  255. // background-color: rgb(252, 213, 157);
  256. image{
  257. width: 120rpx;
  258. }
  259. }
  260. }
  261. .tips {
  262. font-size: 26rpx;
  263. color: #ABABAB;
  264. }
  265. }
  266. }
  267. .setting {
  268. position: absolute;
  269. right: 50rpx;
  270. top: 50rpx;
  271. }
  272. .earnings {
  273. width: 94%;
  274. margin-left: 3%;
  275. .member {
  276. display: flex;
  277. align-items: center;
  278. justify-content: space-between;
  279. width: 90%;
  280. margin-left: 5%;
  281. height: 80rpx;
  282. font-size: 28rpx;
  283. background-color: #000;
  284. color: #F9CF93;
  285. border-top-left-radius: 30rpx;
  286. border-top-right-radius: 30rpx;
  287. view {
  288. margin: 0 20rpx;
  289. }
  290. }
  291. .deposit {
  292. display: flex;
  293. justify-content: space-around;
  294. align-items: center;
  295. height: 300rpx;
  296. // margin-top: -20rpx;
  297. background-color: rgb(163, 201, 80);
  298. border-radius: 40rpx;
  299. .box {
  300. display: flex;
  301. height: 80%;
  302. padding: 0rpx 30rpx;
  303. text-align: center;
  304. flex-direction: column;
  305. justify-content: space-around;
  306. color: #fff;
  307. border-right: 2rpx dashed;
  308. flex: 1;
  309. .num {
  310. font-size: 48rpx;
  311. // border-right: 2rpx dashed;
  312. width: 100%;
  313. padding: 0 30rpx 0 0;
  314. }
  315. .text {
  316. font-size: 20rpx;
  317. }
  318. .boxs {
  319. font-size: 32rpx;
  320. background-color: rgb(252, 213, 157);
  321. padding: 14rpx 20rpx;
  322. border-radius: 30rpx;
  323. color: #aa5500;
  324. font-weight: 600;
  325. }
  326. }
  327. }
  328. }
  329. .myOrder {
  330. display: flex;
  331. width: 94%;
  332. margin-left: 3%;
  333. align-items: center;
  334. justify-content: space-between;
  335. padding: 20rpx 0;
  336. view:nth-child(1) {
  337. font-weight: 600;
  338. font-size: 32rpx;
  339. border-left: 7rpx solid #A3D250;
  340. }
  341. view:nth-child(2) {
  342. font-size: 28rpx;
  343. color: #A3D250;
  344. }
  345. view {
  346. padding: 0 20rpx;
  347. }
  348. }
  349. .order {
  350. display: flex;
  351. align-items: center;
  352. justify-content: center;
  353. width: 94%;
  354. margin-left: 3%;
  355. background-color: #fff;
  356. border-radius: 16rpx;
  357. .box {
  358. display: flex;
  359. width: 100%;
  360. justify-content: space-around;
  361. padding: 70rpx 0 90rpx;
  362. }
  363. }
  364. .user {
  365. .grid {
  366. flex-direction: column;
  367. font-size: 26rpx;
  368. padding: 20rpx;
  369. .title {
  370. font-weight: 600;
  371. padding: 10rpx;
  372. border-left: 6rpx solid #A3D250;
  373. }
  374. }
  375. .cell-bottom {
  376. width: 96%;
  377. margin-top: 20rpx;
  378. margin-left: 2%;
  379. background-color: #fff;
  380. border-radius: 20rpx;
  381. }
  382. }
  383. </style>