partner-status.vue 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. <template>
  2. <view class="partner-status">
  3. <!-- 待审核状态 -->
  4. <view class="status-content" v-if="detail.status === 0">
  5. <view class="icon-wrapper">
  6. <image src="/pages-mine/static/pending.png" mode="aspectFit" class="status-icon"></image>
  7. </view>
  8. <view class="status-title">请等待管理员审核</view>
  9. <view class="status-desc">您的申请已提交成功,预计1个工作日内审核完毕</view>
  10. <view class="status-tip">审核结果会通过消息通知到小程序内</view>
  11. <view class="btn-wrapper">
  12. <u-button type="primary" color="#38C148" @click="goHome">返回首页</u-button>
  13. </view>
  14. </view>
  15. <!-- 审核驳回状态 -->
  16. <view class="status-content" v-if="detail.status !== 0">
  17. <view class="icon-wrapper">
  18. <image src="/pages-mine/static/rejected.png" mode="aspectFit" class="status-icon"></image>
  19. </view>
  20. <view class="status-title">{{ statusMap[detail.status] }}</view>
  21. <view class="status-desc">您好,由于您所在区域不在平台的服务范围内</view>
  22. <view class="status-tip">暂时无法参与合伙人计划,给您带来的不便深感抱歉!</view>
  23. <view class="btn-wrapper">
  24. <u-button type="primary" color="#38C148" @click="goHome">返回首页</u-button>
  25. </view>
  26. </view>
  27. </view>
  28. </template>
  29. <script>
  30. export default {
  31. data() {
  32. return {
  33. statusMap: ["审核中", "审核通过", "审核驳回", "已拉黑但仍有余额", "已拉黑无余额"],
  34. detail: {},
  35. status: "pending", // 'pending' 或 'rejected'
  36. };
  37. },
  38. onLoad(options) {
  39. // 根据路由参数设置状态
  40. this.getPartnerStatus();
  41. },
  42. methods: {
  43. goHome() {
  44. uni.switchTab({
  45. url: "/pages/home/index",
  46. });
  47. },
  48. // 获取合伙人状态
  49. getPartnerStatus() {
  50. uni.$u.get("/token/getUserPartnerInfo").then((res) => {
  51. if (res.code == 200) {
  52. this.detail = res.data;
  53. }
  54. });
  55. },
  56. },
  57. };
  58. </script>
  59. <style lang="scss" scoped>
  60. .partner-status {
  61. min-height: 100vh;
  62. background-color: #fff;
  63. padding: 120rpx 40rpx;
  64. .status-content {
  65. display: flex;
  66. flex-direction: column;
  67. align-items: center;
  68. text-align: center;
  69. }
  70. .icon-wrapper {
  71. width: 200rpx;
  72. height: 200rpx;
  73. background: rgba(56, 193, 72, 0.1);
  74. border-radius: 50%;
  75. display: flex;
  76. align-items: center;
  77. justify-content: center;
  78. margin-bottom: 40rpx;
  79. .status-icon {
  80. width: 200rpx;
  81. height: 200rpx;
  82. }
  83. }
  84. .status-title {
  85. font-size: 36rpx;
  86. font-weight: 500;
  87. color: #333;
  88. margin-bottom: 24rpx;
  89. }
  90. .status-desc {
  91. font-size: 28rpx;
  92. color: #666;
  93. margin-bottom: 12rpx;
  94. }
  95. .status-tip {
  96. font-size: 28rpx;
  97. color: #999;
  98. margin-bottom: 80rpx;
  99. }
  100. .btn-wrapper {
  101. width: 100%;
  102. padding: 0 30rpx;
  103. .u-button {
  104. height: 88rpx;
  105. display: flex;
  106. align-items: center;
  107. justify-content: center;
  108. font-size: 32rpx;
  109. }
  110. }
  111. .bottom-line {
  112. width: 100rpx;
  113. height: 8rpx;
  114. background: #d8d8d8;
  115. border-radius: 4rpx;
  116. margin-top: 200rpx;
  117. }
  118. }
  119. </style>