建材商城系统20241014
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.

313 lines
6.7 KiB

8 months ago
8 months ago
1 week ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
1 week ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
1 week ago
1 week ago
8 months ago
1 week ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
8 months ago
  1. <template>
  2. <view class="page">
  3. <navbar
  4. title="我的分享"
  5. leftClick
  6. @leftClick="$utils.navigateBack"
  7. bgColor="#DC2828"
  8. color="#fff"
  9. />
  10. <view class="team">
  11. <view class="team-message">
  12. <view class="leftImage">
  13. <image :src="userInfo.headImage" mode="aspectFill"></image>
  14. </view>
  15. <view class="number-team">
  16. <view class="top-number">
  17. <text style="font-weight: 500;">{{ userInfo.nickName }}</text>
  18. <!-- <text style="font-weight: 500;">{{ userInfo.phone }}</text> -->
  19. <view class="salesman">区域分享</view>
  20. <!-- <view class="salesman">{{ levelMap[info.role] }}</view> -->
  21. </view>
  22. <view class="bottom-number">
  23. <view class="performance">
  24. <view class="team-sum">
  25. 客户总订单
  26. </view>
  27. <view class="figure">
  28. <text style="margin-left: 30rpx; color: #DC2828; font-weight: 600;"></text><text
  29. class="money">{{ info.money }}</text>
  30. </view>
  31. </view>
  32. <view class="withdraw" @click="toPurse">
  33. <view class="withdraw-button">
  34. 去提现
  35. </view>
  36. </view>
  37. </view>
  38. </view>
  39. </view>
  40. </view>
  41. <view class="user">
  42. <uv-tabs :list="tabs" :activeStyle="{color : '#FD5100', fontWeight : 600}" lineColor="#FD5100"
  43. lineHeight="8rpx" lineWidth="50rpx" @click="clickTabs"></uv-tabs>
  44. </view>
  45. <view class="user-list">
  46. <view class="head"
  47. :key="index"
  48. v-for="(item, index) in list">
  49. <view class="headImage">
  50. <image :src="item.headImage" mode="aspectFill"></image>
  51. </view>
  52. <view class="info">
  53. <view class="name">
  54. {{ item.nickName }}{{ item.phone ? item.phone.replace(/(\d{3})\d{4}(\d{4})/, '$1****$2') : '' }}
  55. </view>
  56. <view class="headBtn">
  57. 下单量<text>{{item.orderNum}}</text> | 积分 <text style="color: darkorange;">{{item.commission}}</text>
  58. </view>
  59. <view class="tips">
  60. 加入<text>{{ $dayjs().diff($dayjs(item.createTime), 'day') }}</text>
  61. </view>
  62. </view>
  63. </view>
  64. </view>
  65. <quick-order-entry
  66. ref="quickOrderEntry"
  67. />
  68. </view>
  69. </template>
  70. <script>
  71. import mixinsList from '@/mixins/list.js'
  72. export default {
  73. mixins: [mixinsList],
  74. data() {
  75. return {
  76. state: -1,
  77. mixinsListApi: 'getTeamList',
  78. tabs: [
  79. {
  80. name: '友情分享'
  81. },
  82. {
  83. name: '立体分享'
  84. },
  85. ],
  86. levelMap : [
  87. '区域分享',
  88. '',
  89. ],
  90. info : {},
  91. };
  92. },
  93. onLoad() {
  94. this.queryParams.state = 0;
  95. this.$store.commit('getUserInfo');
  96. this.getTeamInfo();
  97. },
  98. methods: {
  99. //点击tab栏
  100. clickTabs({index}) {
  101. this.queryParams.state = index;
  102. this.getData()
  103. },
  104. // 跳转到钱包提现
  105. toPurse() {
  106. uni.navigateTo({
  107. url: '/pages_order/mine/purse'
  108. })
  109. },
  110. // 获取团队信息
  111. getTeamInfo() {
  112. this.$api('getTeamHeader', res => {
  113. if (res.code == 200) {
  114. this.info = res.result;
  115. }
  116. })
  117. },
  118. },
  119. }
  120. </script>
  121. <style scoped lang="scss">
  122. .page {
  123. .team {
  124. height: 250rpx;
  125. background-color: #DC2828;
  126. padding-top: 50rpx;
  127. .team-message {
  128. height: 200rpx;
  129. width: 90%;
  130. background-color: #fff;
  131. margin: 0 30rpx;
  132. position: relative;
  133. border-radius: 10rpx;
  134. .leftImage {
  135. width: 150rpx;
  136. height: 150rpx;
  137. background-image: url(/static/image/center/3.png);
  138. background-size: 100% 100%;
  139. overflow: hidden;
  140. border-radius: 50%;
  141. margin-right: 15rpx;
  142. display: inline-block;
  143. position: absolute;
  144. top: 25rpx;
  145. left: 26rpx;
  146. image{
  147. width: 100%;
  148. height: 100%;
  149. }
  150. }
  151. .number-team {
  152. width: 70%;
  153. display: inline-block;
  154. position: absolute;
  155. top: 0rpx;
  156. left: 202rpx;
  157. .top-number {
  158. height: 70rpx;
  159. position: relative;
  160. border-bottom: #DC2828 dotted 1rpx;
  161. display: flex;
  162. align-items: center;
  163. margin: 0 20rpx;
  164. .salesman {
  165. position: absolute;
  166. height: 40rpx;
  167. width: 160rpx;
  168. text-align: center;
  169. background-color: #FF6700;
  170. border-radius: 50rpx;
  171. display: inline;
  172. margin-left: 240rpx;
  173. color: #fff;
  174. font-size: 24rpx;
  175. }
  176. }
  177. .bottom-number {
  178. height: 120rpx;
  179. position: relative;
  180. .performance {
  181. width: 50%;
  182. height: 100%;
  183. display: inline-block;
  184. position: absolute;
  185. top: 0rpx;
  186. .team-sum {
  187. display: inline-block;
  188. width: 180rpx;
  189. background-color: #F99F9F;
  190. border-radius: 50rpx;
  191. text-align: center;
  192. margin: 0rpx 20rpx;
  193. margin-top: 8rpx;
  194. color: #DC2828;
  195. font-size: 26rpx;
  196. }
  197. .figure {
  198. height: 60rpx;
  199. line-height: 60rpx;
  200. display: flex;
  201. // align-items: center;
  202. padding-top: 10rpx;
  203. .money {
  204. font-size: 40rpx;
  205. color: #DC2828;
  206. display: inline-block;
  207. font-weight: 600;
  208. }
  209. }
  210. }
  211. .withdraw {
  212. width: 30%;
  213. height: 100%;
  214. display: inline-block;
  215. position: absolute;
  216. right: 10rpx;
  217. display: flex;
  218. justify-content: center; //横轴居中
  219. align-items: center; //竖轴居中
  220. font-size: 26rpx;
  221. .withdraw-button {
  222. background-color: #DC2828;
  223. color: #fff;
  224. border-radius: 50rpx;
  225. text-align: center;
  226. height: 62rpx;
  227. width: 200rpx;
  228. line-height: 62rpx;
  229. }
  230. }
  231. }
  232. }
  233. }
  234. }
  235. .user {
  236. height: 120rpx;
  237. background-color: #fff;
  238. display: flex;
  239. align-items: center;
  240. padding-left: 30rpx;
  241. }
  242. .user-list {
  243. margin: 0 20rpx;
  244. .head {
  245. z-index: -1;
  246. display: flex;
  247. background-color: #fff;
  248. padding: 0rpx 20rpx;
  249. align-items: center;
  250. position: relative;
  251. height: 100rpx;
  252. margin-top: 20rpx;
  253. border-radius: 20rpx;
  254. .headImage {
  255. width: 75rpx;
  256. height: 75rpx;
  257. background-image: url(/static/image/center/3.png);
  258. background-size: 100% 100%;
  259. overflow: hidden;
  260. border-radius: 50%;
  261. margin-right: 15rpx;
  262. image{
  263. width: 100%;
  264. height: 100%;
  265. }
  266. }
  267. .info {
  268. font-size: 22rpx;
  269. .name {
  270. font-size: 26rpx;
  271. color: #333;
  272. }
  273. .tips {
  274. font-size: 22rpx;
  275. color: #999999;
  276. margin-top: 10rpx;
  277. }
  278. }
  279. .headBtn {
  280. position: absolute;
  281. right: 60rpx;
  282. top: 38rpx;
  283. color: #333;
  284. font-size: 26rpx;
  285. }
  286. }
  287. }
  288. }
  289. </style>