瑶都万能墙
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.

353 lines
6.6 KiB

11 months ago
9 months ago
10 months ago
9 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
9 months ago
10 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
10 months ago
9 months ago
11 months ago
10 months ago
10 months ago
10 months ago
10 months ago
10 months ago
9 months ago
10 months ago
10 months ago
11 months ago
10 months ago
11 months ago
10 months ago
10 months ago
11 months ago
11 months ago
10 months ago
10 months ago
11 months ago
11 months ago
10 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
9 months ago
9 months ago
9 months ago
9 months ago
9 months ago
11 months ago
10 months ago
11 months ago
  1. <template>
  2. <view class="page">
  3. <view class="beijin">
  4. <view class="profile">
  5. <view class="o">
  6. <view class="headImage">
  7. <image
  8. :src="userInfo.headImage"
  9. mode="aspectFill"></image>
  10. <view class="vip_info"
  11. v-if="userInfo.isPay">
  12. <view class="title">
  13. {{ headInfo[vipList[userInfo.isPay - 1]].keyName }}
  14. </view>
  15. <!-- <view class="time">
  16. 2024-6-6到期
  17. </view> -->
  18. </view>
  19. </view>
  20. <!-- <view class="vip_info">
  21. <view class="title">
  22. 普通会员
  23. </view>
  24. <view class="time">
  25. 2024-6-6到期
  26. </view>
  27. </view> -->
  28. <view class="setUp"
  29. @click="$utils.navigateTo('/pages_order/mine/setting')">
  30. 设置
  31. </view>
  32. </view>
  33. <view class="account">
  34. <view class="number">
  35. {{ userInfo.nickName || '墙友1712378974678376' }}
  36. </view>
  37. <view class="gender">
  38. <uv-icon
  39. :name="sex[userInfo.sex].name"
  40. size="34rpx"
  41. :color="sex[userInfo.sex].color"></uv-icon>
  42. </view>
  43. <view class="authentication">
  44. {{ auth[userInfo.idCardOpen] || '未认证' }}
  45. </view>
  46. </view>
  47. <view class="Days">
  48. <!-- 你已经成为狐友133天啦~ -->
  49. </view>
  50. <view class="box">
  51. <view class="fenst"
  52. @click="$utils.navigateTo('/pages_order/mine/promotion')">
  53. <view class="digit">
  54. <uv-icon
  55. size="40rpx"
  56. color="#black"
  57. name="grid"></uv-icon>
  58. </view>
  59. <view class="fans">
  60. 二维码
  61. </view>
  62. </view>
  63. <view class="shut">
  64. |
  65. </view>
  66. <view class="fenst"
  67. @click="$utils.navigateTo('/pages_order/mine/fans')">
  68. <view class="digit">
  69. {{ userInfo.intentionNum }}
  70. </view>
  71. <view class="fans">
  72. 粉丝
  73. </view>
  74. </view>
  75. <view class="shut">
  76. |
  77. </view>
  78. <view class="fenst"
  79. @click="$utils.navigateTo('/pages_order/mine/runningWater?status=0')">
  80. <view class="digit">
  81. {{ userInfo.price }}
  82. </view>
  83. <view class="fans">
  84. 余额
  85. </view>
  86. </view>
  87. <view class="shut">
  88. |
  89. </view>
  90. <view class="fenst"
  91. @click="$utils.navigateTo('/pages_order/mine/runningWater?status=1')">
  92. <view class="digit">
  93. {{ userInfo.integerPrice }}
  94. </view>
  95. <view class="fans">
  96. 积分
  97. </view>
  98. </view>
  99. </view>
  100. </view>
  101. </view>
  102. <view class="Content">
  103. <uv-tabs :list="tabs" @click="click"
  104. :activeStyle="{color : '#000', fontWeight : 900}"
  105. lineColor="#5baaff"
  106. lineHeight="8rpx"
  107. lineWidth="50rpx"></uv-tabs>
  108. </view>
  109. <view v-if="type == 0">
  110. <dynamicItemEdit
  111. :key="index"
  112. @click="$utils.navigateTo('/pages_order/post/addPost?id=' + item.id)"
  113. v-for="(item, index) in list"
  114. :item="item"
  115. del
  116. @del="delDynamic(item.id)"
  117. />
  118. </view>
  119. <view class="no-data">
  120. 暂未开放
  121. </view>
  122. <tabber select="3" />
  123. </view>
  124. </template>
  125. <script>
  126. import tabber from '@/components/base/tabbar.vue'
  127. import dynamicItemEdit from '@/components/list/dynamic/dynamicItemEdit.vue'
  128. import mixinsList from '@/mixins/list.js'
  129. import mixinsSex from '@/mixins/sex.js'
  130. import { mapState } from 'vuex'
  131. export default {
  132. mixins: [mixinsList, mixinsSex],
  133. components: {
  134. tabber,
  135. dynamicItemEdit,
  136. },
  137. computed: {
  138. ...mapState(['userInfo', 'headInfo']),
  139. },
  140. data() {
  141. return {
  142. tabs: [
  143. {
  144. name: '帖子',
  145. },
  146. {
  147. name: '租房',
  148. },
  149. {
  150. name: '招聘',
  151. },
  152. {
  153. name: '店铺',
  154. },
  155. ],
  156. vipList : ['vip', 'vipBig'],
  157. mixinsListApi : 'getMyPostPage',
  158. auth : ['审核中', '个人认证', '店铺认证'],
  159. type : 0,
  160. }
  161. },
  162. onShow() {
  163. this.$store.commit('getUserInfo')
  164. },
  165. methods: {
  166. click({index}) {
  167. this.type = index
  168. },
  169. delDynamic(postId){
  170. let self = this
  171. uni.showModal({
  172. title: '确认要删除吗?',
  173. success(e) {
  174. if(e.confirm){
  175. self.$api('deletePost', {
  176. postId
  177. }, res => {
  178. if(res.code == 200){
  179. self.getData()
  180. }
  181. })
  182. }
  183. }
  184. })
  185. },
  186. }
  187. }
  188. </script>
  189. <style scoped lang="scss">
  190. .page {
  191. .beijin {
  192. // background: linear-gradient(to bottom, rgb(85, 94, 123), rgb(45, 51, 73));
  193. background: linear-gradient($uni-color, #fff);
  194. background-color: black;
  195. color: black;
  196. .profile {
  197. padding: 40rpx;
  198. padding-top: 160rpx;
  199. .box {
  200. padding: 0rpx 10rpx;
  201. display: flex;
  202. align-items: center;
  203. text-align: center;
  204. .followWithnterest {
  205. .digit {
  206. padding: 20rpx;
  207. }
  208. .close {
  209. }
  210. }
  211. .shut{
  212. margin: 0rpx 20rpx;
  213. }
  214. .fenst {
  215. .digit {
  216. padding: 20rpx;
  217. }
  218. .fans {
  219. }
  220. }
  221. }
  222. .account {
  223. display: flex;
  224. align-items: center;
  225. .number {
  226. letter-spacing: 2rpx;
  227. margin-top: 10rpx;
  228. }
  229. .gender {
  230. margin: 20rpx 10rpx;
  231. }
  232. .authentication {
  233. font-size: 20rpx;
  234. }
  235. }
  236. .Days {
  237. margin-top: 15rpx;
  238. font-size: 22rpx;
  239. letter-spacing: 2rpx;
  240. }
  241. .o {
  242. display: flex;
  243. align-items: center;
  244. justify-content: space-between;
  245. margin-bottom: 60rpx;
  246. .headImage {
  247. position: relative;
  248. height: 100px;
  249. width: 100px;
  250. border-radius: 50%;
  251. image {
  252. height: 100%;
  253. width: 100%;
  254. border-radius: 50%;
  255. }
  256. .vip_info{
  257. --lg1Color : #ffb700;
  258. --lg2Color : #ff3300;
  259. display: flex;
  260. justify-content: center;
  261. background: linear-gradient(var(--lg1Color), var(--lg2Color));
  262. color: #fff;
  263. font-size: 20rpx;
  264. padding: 15rpx 0;
  265. border-radius: 20rpx;
  266. margin-top: auto;
  267. margin-right: auto;
  268. position: absolute;
  269. bottom: -30rpx;
  270. left: 50%;
  271. width: 160rpx;
  272. transform: translate(-50%);
  273. }
  274. }
  275. // .vip_info{
  276. // // display: flex;
  277. // // justify-content: center;
  278. // background-color: #2800ee;
  279. // color: #fff;
  280. // font-size: 20rpx;
  281. // padding: 15rpx 30rpx;
  282. // line-height: 50rpx;
  283. // border-radius: 20rpx;
  284. // margin-right: auto;
  285. // margin-left: 20rpx;
  286. // .title{
  287. // font-size: 26rpx;
  288. // }
  289. // .time{
  290. // // margin-left: 20rpx;
  291. // }
  292. // }
  293. .setUp {
  294. }
  295. }
  296. }
  297. }
  298. .Content {}
  299. .no-data{
  300. display: flex;
  301. justify-content: center;
  302. align-content: center;
  303. padding: 100rpx 0;
  304. color: #777;
  305. }
  306. }
  307. </style>