accountFreezeRecord.vue 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. <template>
  2. <view class="">
  3. <public-module></public-module>
  4. <view class="headers dis a-c j-start">
  5. <u-icon name="arrow-left" color="#333" size="38" @click="back"></u-icon>
  6. <text style="margin: auto;">管理人详情</text>
  7. </view>
  8. <view class="homeBackground"></view>
  9. <view class="intro dis a-c ">
  10. <image src="/static/image/my/wuxingb.png" mode=""></image>
  11. <view class="dis f-c ml-3">
  12. <text class="title">{{referrerInfo.userName}}</text>
  13. <text>{{referrerInfo.mobile}}</text>
  14. <view class="dis a-c">
  15. <text>推荐人:{{referrerInfo.referrerName}}</text>
  16. <view class="level dis a-c j-c ">
  17. {{referrerInfo.referrerGrade}}
  18. </view>
  19. </view>
  20. </view>
  21. </view>
  22. <view class="body p-2" style="padding-top: 400rpx;">
  23. <view class="card mb-2" v-for="(item,index) in userlist" :key="index">
  24. <!-- 权限锁定组件 -->
  25. <uni-permission-view v-if="parentStatus==2 && index==userlist.length-1" direction="row"
  26. :genericText="`完成任务,解锁“”,查看我的全部业绩`" cornerRadius="8rpx" :genericTextStyle="{fontSize:'26rpx'}">
  27. </uni-permission-view>
  28. <!-- 权限锁定组件 -->
  29. <view class="card-title dis a-c j-s mb-2">
  30. <view class="dis a-c ">
  31. <view class="avatar">
  32. <image src="/static/image/my/wuxingb.png" mode=""></image>
  33. </view>
  34. <text class="name ml-1">{{item.userName}}</text>
  35. </view>
  36. <text>{{item.createTime}} &nbsp;加入</text>
  37. </view>
  38. <view class="card-data dis a-c j-s ">
  39. <view class="view dis f-c a-c ">
  40. <text>{{item.number}}</text>
  41. <text>{{item.gradeName}}</text>
  42. </view>
  43. <view class="view dis f-c a-c ">
  44. <text>{{item.premium}}</text>
  45. <text>保费</text>
  46. </view>
  47. <view class="view dis f-c a-c ">
  48. <text>{{item.commission}}</text>
  49. <text>我的佣金</text>
  50. </view>
  51. </view>
  52. </view>
  53. </view>
  54. <u-loadmore v-if="userlist.length!=0" :status="status" />
  55. </view>
  56. </template>
  57. <script>
  58. export default {
  59. data() {
  60. return {
  61. referrerInfo: {}, //个人信息
  62. userlist: [],
  63. pageQuery: {
  64. id: "",
  65. pageNum: 1,
  66. pageSize: 10,
  67. },
  68. status: 'loadmore',
  69. totalPages: 0,
  70. parentStatus: "",
  71. }
  72. },
  73. onReachBottom() {
  74. if (this.pageQuery.pageNum >= this.totalPages) return;
  75. this.status = 'loading';
  76. this.pageQuery.pageNum = ++this.pageQuery.pageNum;
  77. setTimeout(async () => {
  78. let res = await this.$http.post('/newAppPartner/selectByIdList', this.pageQuery);
  79. if (res.code == '200') {
  80. this.userlist = [...this.userlist, ...res.data.list.records];
  81. }
  82. if (this.pageQuery.pageNum >= this.totalPages) this.status = 'nomore';
  83. else this.status = 'loading';
  84. }, 1000)
  85. },
  86. onLoad(options) {
  87. this.pageQuery.id = options.id;
  88. this.querydata();
  89. },
  90. methods: {
  91. back() {
  92. uni.navigateBack({
  93. delta: 1, // 返回的页面数,如果是1表示返回上一页
  94. success: function() {}
  95. });
  96. },
  97. async querydata() {
  98. let res = await this.$http.post('/newAppPartner/selectByIdList', this.pageQuery);
  99. if (res.code == '200') {
  100. this.referrerInfo = res.data.referrer;
  101. this.userlist = res.data.list.records;
  102. this.parentStatus = res.data.parentStatus;
  103. this.totalPages = res.data.list.totalPages;
  104. }
  105. },
  106. }
  107. }
  108. </script>
  109. <style lang="scss" scoped>
  110. .headers {
  111. position: fixed;
  112. top: 0;
  113. left: 0;
  114. height: auto;
  115. width: 100%;
  116. z-index: 999999;
  117. padding: 30rpx;
  118. padding-top: 50px;
  119. text {
  120. font-size: 36rpx;
  121. font-weight: bold;
  122. color: #000;
  123. }
  124. .right {
  125. position: absolute;
  126. right: 30rpx;
  127. image {
  128. width: 28rpx;
  129. height: 28rpx;
  130. margin-right: 4rpx;
  131. }
  132. text {
  133. font-weight: 400;
  134. color: #000;
  135. font-size: 24rpx;
  136. }
  137. }
  138. }
  139. //头部背景
  140. .homeBackground {
  141. position: fixed;
  142. top: 0;
  143. left: 0;
  144. z-index: 999;
  145. width: 100%;
  146. height: 176rpx;
  147. background: linear-gradient(180deg, #D1EFFE 0%, #FFFFFF 100%);
  148. border-bottom: 1rpx solid #f2f2f2;
  149. }
  150. .intro {
  151. position: fixed;
  152. top: 176rpx;
  153. left: 0;
  154. z-index: 999;
  155. width: 100%;
  156. padding: 25rpx 30rpx;
  157. box-sizing: border-box;
  158. background-color: #FFFFFF;
  159. image {
  160. width: 128rpx;
  161. height: 128rpx;
  162. }
  163. text {
  164. font-size: 28rpx;
  165. color: #666;
  166. }
  167. .title {
  168. font-size: 32rpx;
  169. color: #333;
  170. font-weight: bold;
  171. }
  172. .level {
  173. padding: 0 10rpx;
  174. box-sizing: border-box;
  175. font-size: 22rpx;
  176. color: #2D6DFF;
  177. border: 1rpx solid #2D6DFF;
  178. border-radius: 4rpx;
  179. margin-left: 20rpx;
  180. background: rgba(45, 109, 255, 0.1);
  181. }
  182. }
  183. //列表数据
  184. .card {
  185. position: relative;
  186. background: #FFFFFF;
  187. border-radius: 10rpx;
  188. background-image: url("/static/card.png");
  189. background-size: 100% 100%;
  190. border-top: 1px solid;
  191. border-image: linear-gradient(270deg, rgba(45, 109, 255, 0), rgba(45, 109, 255, 1), rgba(45, 109, 255, 0)) 1 1;
  192. padding: 20rpx 30rpx 30rpx;
  193. .card-title {
  194. .avatar {
  195. width: 40rpx;
  196. height: 40rpx;
  197. border-radius: 50%;
  198. image {
  199. width: 100%;
  200. height: 100%;
  201. }
  202. }
  203. >text {
  204. font-size: 24rpx;
  205. color: #666;
  206. }
  207. .name {
  208. font-size: 30rpx;
  209. color: #333;
  210. font-weight: bold;
  211. }
  212. }
  213. .card-data {
  214. .view {
  215. width: 33.33%;
  216. text:first-child {
  217. font-size: 30rpx;
  218. color: #333;
  219. font-weight: bold;
  220. }
  221. text:last-child {
  222. font-size: 24rpx;
  223. color: #999;
  224. }
  225. }
  226. .view:nth-child(2) {
  227. border-left: 1rpx solid #eee;
  228. border-right: 1rpx solid #eee;
  229. }
  230. }
  231. }
  232. </style>