index.vue 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. <template>
  2. <view class="content">
  3. <cover-image class="top-bg" src="../../static/images/userbackground.png"></cover-image>
  4. <view class="page-content">
  5. <view class="user-info-box" @click="gologin" v-if="JSON.stringify(item) =='{}' ">
  6. <image class="user-image" src="@/static/images/userDefaultHead.png" mode="widthFix"></image>
  7. <view class="user-info">
  8. <view class="user-logoin-title">点击登录</view>
  9. <view class="user-logoin-lable">登录后享受更多权益~</view>
  10. </view>
  11. </view>
  12. <view class="user-info-box" v-else>
  13. <image class="user-image" :src="infoitem.headimg" mode="widthFix" style="border-radius: 50%;"></image>
  14. <view class="user-info">
  15. <view class="user-logoin-title mb5">{{infoitem.nickname}}</view>
  16. <view class="user-level">
  17. <view class="iconfont iconVIP mr5"></view>
  18. <view>VIP用户</view>
  19. </view>
  20. </view>
  21. <image class="user-info-right" src="" mode=""></image>
  22. </view>
  23. <view class="user-activity">
  24. <view class="mr20">
  25. <view class="font18">50</view>
  26. <view class="font10">共享种植</view>
  27. </view>
  28. <view class="mr20">|</view>
  29. <view class="mr20">
  30. <view class="font18">150</view>
  31. <view class="font10">我的积分</view>
  32. </view>
  33. <view class="mr20">|</view>
  34. <view @click="couponClick()">
  35. <view class="font18">45</view>
  36. <view class="font10">我的优惠券</view>
  37. </view>
  38. </view>
  39. <view class="order-box">
  40. <view class="order-item" @click="orderTap(1)">
  41. <view class="iconfont icondaifukuan order-item-icon"></view>
  42. <view class="order-item-text">待付款</view>
  43. </view>
  44. <view class="order-item" @click="orderTap(2)">
  45. <view class="iconfont icondaifahuo order-item-icon"></view>
  46. <view class="order-item-text">待发货</view>
  47. </view>
  48. <view class="order-item" @click="orderTap(3)">
  49. <view class="iconfont icondaishouhuo order-item-icon"></view>
  50. <view class="order-item-text">待收货</view>
  51. </view>
  52. <view class="order-item" @click="gouserEvaluate">
  53. <view class="iconfont icondaipingjia order-item-icon"></view>
  54. <view class="order-item-text">待评价</view>
  55. </view>
  56. </view>
  57. <view class="item-btn mt20" @click="addressClick">
  58. <view class="iconfont icondizhiguanli item-btn-icon"></view>
  59. <view class="item-btn-text">收货地址</view>
  60. <view class="iconfont iconfangxiang"></view>
  61. </view>
  62. <view class="line-box">
  63. <view class="split-line"></view>
  64. </view>
  65. <view class="item-btn" @click="addressClick">
  66. <view class="iconfont iconguanyu item-btn-icon"></view>
  67. <view class="item-btn-text">关于我们</view>
  68. <view class="iconfont iconfangxiang"></view>
  69. </view>
  70. </view>
  71. </view>
  72. </template>
  73. <script>
  74. // const NET = require('../../../utils/request')
  75. // const API = require('../../../config/api')
  76. export default {
  77. data() {
  78. return {
  79. item:{},
  80. infoitem:{},
  81. }
  82. },
  83. onShow() {
  84. // if(uni.getStorageSync('storage_key')){
  85. // this.item = uni.getStorageSync('storage_key');
  86. // }
  87. // this.getInfo()
  88. },
  89. methods: {
  90. // 获取会员信息
  91. getInfo() {
  92. NET.request(API.Info, {
  93. token: this.item.token,
  94. }, 'GET').then(res => {
  95. this.infoitem = res.data
  96. // console.log('个人信息',res)
  97. }).catch(res => {
  98. })
  99. },
  100. // 个人信息 登录页面
  101. gologin(){
  102. uni.navigateTo({
  103. url:'/pagesUser/userModule/login'
  104. })
  105. },
  106. goinfo(){
  107. uni.navigateTo({
  108. url:'/pagesUser/userModule/personalDetails?infoitem=' + JSON.stringify(this.infoitem)
  109. })
  110. },
  111. // 我的评论
  112. gouserEvaluate(){
  113. if(JSON.stringify(this.item) == '{}'){
  114. uni.navigateTo({
  115. url:'/pagesUser/userModule/login'
  116. })
  117. }else{
  118. uni.navigateTo({
  119. url:'/pagesGoods/goodsModule/userEvaluate'
  120. })
  121. }
  122. },
  123. //我的优惠券
  124. couponClick(){
  125. uni.navigateTo({
  126. url:'/pagesUser/userModule/coupon'
  127. })
  128. },
  129. // 地址管理
  130. addressClick(){
  131. if(JSON.stringify(this.item) == '{}'){
  132. uni.navigateTo({
  133. url:'/pagesUser/userModule/login'
  134. })
  135. }else{
  136. uni.navigateTo({
  137. url:'/pagesUser/userModule/address'
  138. })
  139. }
  140. },
  141. // 我的售后
  142. goafterSale(){
  143. if(JSON.stringify(this.item) == '{}'){
  144. uni.navigateTo({
  145. url:'/pagesUser/userModule/login'
  146. })
  147. }else{
  148. uni.navigateTo({
  149. url:'/pagesOrder/orderModule/afterSale'
  150. })
  151. }
  152. },
  153. //判断是否是分销员
  154. getApplyState(){
  155. NET.request(API.HasApply,{
  156. tenantCode:this.currentId
  157. },'POST').then(res => {
  158. uni.hideLoading()
  159. this.slist = res.data
  160. }).catch(res => {
  161. uni.hideLoading()
  162. })
  163. },
  164. orderTap(type){
  165. // if(JSON.stringify(this.item) == '{}'){
  166. // uni.navigateTo({
  167. // url:'/pagesUser/userModule/login'
  168. // })
  169. // }else{
  170. uni.navigateTo({
  171. url:'/pagesOrder/index?type='+type
  172. })
  173. // }
  174. }
  175. }
  176. }
  177. </script>
  178. <style lang='scss'>
  179. page {
  180. width: 100%;
  181. height: 100%;
  182. }
  183. .content {
  184. width: 100%;
  185. height: 100%;
  186. background-color: #F3F3F3;
  187. /* background-color: #f8f8f8; */
  188. .top-bg{
  189. width: 100%;
  190. height: 195px;
  191. }
  192. .page-content{
  193. width: 100%;
  194. height: 100%;
  195. display: flex;
  196. flex-direction: column;
  197. z-index: 10;
  198. margin-top: -200px;
  199. .user-info-box{
  200. width: 100%;
  201. box-sizing: border-box;
  202. padding: 30upx;
  203. display: flex;
  204. flex-direction: row;
  205. align-items: center;
  206. .user-image{
  207. width: 130upx;
  208. height: 130upx;
  209. }
  210. .user-info{
  211. flex: 1;
  212. display: flex;
  213. flex-direction: column;
  214. padding-left: 20upx;
  215. box-sizing: border-box;
  216. z-index: 10;
  217. .user-logoin-title{
  218. font-size:36upx;
  219. font-weight:500;
  220. color:rgba(255,255,255,1);
  221. }
  222. .user-level {
  223. width: 70px;
  224. height: 20px;
  225. background: #FFFFFF;
  226. color: #FF850C;
  227. display: flex;
  228. align-items: center;
  229. justify-content: center;
  230. font-size: 12px;
  231. }
  232. .user-logoin-lable{
  233. font-size:24upx;
  234. font-weight:400;
  235. color:rgba(255,255,255,1);
  236. margin-top: 20upx;
  237. }
  238. }
  239. .user-info-right{
  240. width: 30upx;
  241. height: 30upx;
  242. }
  243. }
  244. .user-activity {
  245. display: flex;
  246. text-align: center;
  247. align-items: center;
  248. justify-content: center;
  249. padding: 0 15px 15px 15px;
  250. color: #FFFFFF;
  251. }
  252. .order-box{
  253. width:690upx;
  254. height:170upx;
  255. background:rgba(255,255,255,1);
  256. box-shadow:0px 0px 10upx 0px rgba(51,51,51,0.1);
  257. border-radius:10upx;
  258. display: flex;
  259. flex-direction: row;
  260. align-items: center;
  261. margin-left: 30upx;
  262. z-index: 10;
  263. .order-line{
  264. width: 12upx;
  265. height: 106upx;
  266. }
  267. .order-item{
  268. flex: 1;
  269. display: flex;
  270. flex-direction: column;
  271. align-items: center;
  272. justify-content: center;
  273. .order-item-icon{
  274. color:#52A63A;
  275. font-size: 30px;
  276. }
  277. .order-item-text{
  278. font-size:28upx;
  279. margin-top: 10upx;
  280. font-weight:500;
  281. }
  282. }
  283. }
  284. .item-btn{
  285. width: 100%;
  286. height: 100upx;
  287. display: flex;
  288. flex-direction: row;
  289. align-items: center;
  290. box-sizing: border-box;
  291. background-color: #fff;
  292. padding: 0 30upx;
  293. .item-btn-icon{
  294. color:#52A63A;
  295. font-size: 20px;
  296. /* width: 48upx;
  297. height: 48upx; */
  298. }
  299. .item-btn-text{
  300. font-size:28upx;
  301. margin-left: 20upx;
  302. font-weight:500;
  303. flex: 1;
  304. color:rgba(102,102,102,1);
  305. }
  306. }
  307. .line-box{
  308. height: 5px;
  309. display: flex;
  310. justify-content: center;
  311. align-items: center;
  312. background: #FFFFFF;
  313. .split-line {
  314. width: 100%;
  315. height: 1px;
  316. background: #EEEEEE;
  317. }
  318. }
  319. .mt20{
  320. margin-top: 20upx;
  321. }
  322. .mb5{
  323. margin-bottom: 5px;
  324. }
  325. .mr5{
  326. margin-right: 5px;
  327. }
  328. .mr20{
  329. margin-right: 20px;
  330. }
  331. .font18{
  332. font-size: 18px;
  333. }
  334. .font10{
  335. font-size: 10px;
  336. }
  337. }
  338. }
  339. </style>