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

316 lines
6.7 KiB

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