chengjunhui месяцев назад: 6
Родитель
Сommit
0b025a1d9c
49 измененных файлов с 3510 добавлено и 1933 удалено
  1. 2 3
      app.js
  2. 31 10
      app.json
  3. BIN
      assets/images/tournament-bg.png
  4. BIN
      assets/images/user-icon/icon_1.png
  5. BIN
      assets/images/user-icon/icon_2.png
  6. BIN
      assets/images/user-icon/icon_3.png
  7. BIN
      assets/images/user-icon/icon_4.png
  8. BIN
      assets/images/user-icon/icon_5.png
  9. BIN
      assets/images/user-icon/inviteCode.png
  10. BIN
      assets/images/user-icon/user-activity-icon.png
  11. BIN
      assets/images/user-icon/user-bg.png
  12. BIN
      assets/images/user-icon/user-bg1.png
  13. BIN
      assets/images/user-icon/user-brick.png
  14. BIN
      assets/images/user-icon/user-job-icon.png
  15. BIN
      assets/images/user-icon/vip-icon.png
  16. BIN
      assets/images/user-icon/vip-icon2.png
  17. BIN
      assets/images/user-icon/vip-upgrade-bg.png
  18. 51 51
      components/popup2/popup.wxss
  19. 42 1
      dist/collapse-item/index.wxss
  20. 0 2
      expert/storedetail/storedetail.wxml
  21. 70 67
      expert/storedetail/storedetail.wxss
  22. 1 1
      pages/experience/index/index.js
  23. 1 2
      pages/experience/index/index.json
  24. 32 61
      pages/experience/index/index.wxml
  25. 389 380
      pages/experience/index/index.wxss
  26. 33 30
      pages/home/index/activityDetail/activityDetail.wxml
  27. 35 22
      pages/home/index/activityDetail/activityDetail.wxss
  28. 1 1
      pages/home/index/index.wxml
  29. 174 0
      pages/match/details/index.js
  30. 6 0
      pages/match/details/index.json
  31. 16 0
      pages/match/details/index.wxml
  32. 44 0
      pages/match/details/index.wxss
  33. 149 0
      pages/match/index.js
  34. 8 0
      pages/match/index.json
  35. 26 0
      pages/match/index.wxml
  36. 111 0
      pages/match/index.wxss
  37. 194 343
      pages/my/index/index.js
  38. 4 1
      pages/my/index/index.json
  39. 109 202
      pages/my/index/index.wxml
  40. 255 581
      pages/my/index/index.wxss
  41. 66 0
      pages/my/index/index1.js
  42. 2 0
      pages/my/index/index1.wxml
  43. 516 0
      pages/my/index1/index.js
  44. 4 0
      pages/my/index1/index.json
  45. 221 0
      pages/my/index1/index.wxml
  46. 733 0
      pages/my/index1/index.wxss
  47. 165 163
      pages/my/myStudy/myStudy.wxss
  48. 4 2
      pages/my/set/set.wxml
  49. 15 10
      pages/my/set/set.wxss

+ 2 - 3
app.js

@@ -8,9 +8,8 @@ App({
    * 全局变量
    */
   // apiRoot: "https://wj.songlanyun.com/wjxy/api/", // 正式环境api地址
-  apiRoot: 'http://192.168.0.78:8687/qyh/api/',  
-  // apiRoot: 'https://wjxy.songlanyun.com/wjxy/api/',
-  // apiRoot: 'http://47.104.208.8:8802/wjxy/api/',
+  // apiRoot: 'http://192.168.0.78:8687/qyh/api/',  
+  apiRoot: 'http://192.168.0.181:8687/qyh/api/',  
   // apiRoot: 'http://192.168.0.232:8687/wjxy/api/', //黄理志
   // apiRoot: 'http://192.168.0.186:8687/wjxy/api/',
   siteInfo: require("siteinfo.js"),

+ 31 - 10
app.json

@@ -40,16 +40,23 @@
     "pages/home/index/gz/gz",
     "pages/search/index",
     "pages/quality/index/index",
-    "pages/quality/detail/index"
+    "pages/quality/detail/index",
+    "pages/match/index",
+    "pages/match/details/index",
+    "pages/my/index1/index"
   ],
   "subPackages": [
     {
       "root": "partTimeJobEvaluate",
-      "pages": ["index"]
+      "pages": [
+        "index"
+      ]
     },
     {
       "root": "invitationCode",
-      "pages": ["index"]
+      "pages": [
+        "index"
+      ]
     },
     {
       "root": "expert",
@@ -84,7 +91,11 @@
     },
     {
       "root": "job",
-      "pages": ["postJob/postJob", "postJob/detail", "postJob/index"]
+      "pages": [
+        "postJob/postJob",
+        "postJob/detail",
+        "postJob/index"
+      ]
     },
     {
       "root": "workbench",
@@ -108,15 +119,22 @@
     },
     {
       "root": "membershipAgreement",
-      "pages": ["index"]
+      "pages": [
+        "index"
+      ]
     },
     {
       "root": "orderRecord",
-      "pages": ["index"]
+      "pages": [
+        "index"
+      ]
     },
     {
       "root": "msg",
-      "pages": ["pages/index/index", "pages/detail/index"]
+      "pages": [
+        "pages/index/index",
+        "pages/detail/index"
+      ]
     }
   ],
   "permission": {
@@ -127,7 +145,10 @@
   "functionalPages": {
     "independent": true
   },
-  "requiredPrivateInfos": ["getLocation", "chooseLocation"],
+  "requiredPrivateInfos": [
+    "getLocation",
+    "chooseLocation"
+  ],
   "__usePrivacyCheck__": true,
   "window": {
     "backgroundTextStyle": "light",
@@ -156,7 +177,7 @@
         "selectedIconPath": "assets/images/tabbar/tab22.png"
       },
       {
-        "pagePath": "pages/experience/index/index",
+        "pagePath": "pages/match/index",
         "text": "青创赛",
         "iconPath": "assets/images/tabbar/tab3.png",
         "selectedIconPath": "assets/images/tabbar/tab33.png"
@@ -176,4 +197,4 @@
     ]
   },
   "sitemapLocation": "sitemap.json"
-}
+}

BIN
assets/images/tournament-bg.png


BIN
assets/images/user-icon/icon_1.png


BIN
assets/images/user-icon/icon_2.png


BIN
assets/images/user-icon/icon_3.png


BIN
assets/images/user-icon/icon_4.png


BIN
assets/images/user-icon/icon_5.png


BIN
assets/images/user-icon/inviteCode.png


BIN
assets/images/user-icon/user-activity-icon.png


BIN
assets/images/user-icon/user-bg.png


BIN
assets/images/user-icon/user-bg1.png


BIN
assets/images/user-icon/user-brick.png


BIN
assets/images/user-icon/user-job-icon.png


BIN
assets/images/user-icon/vip-icon.png


BIN
assets/images/user-icon/vip-icon2.png


BIN
assets/images/user-icon/vip-upgrade-bg.png


+ 51 - 51
components/popup2/popup.wxss

@@ -7,25 +7,25 @@
   width: 100%;
   height: 100vh;
   background: rgba(0, 0, 0, 0.5);
-	z-index: 100000;
-	display: flex;
-	align-items: center;
-	justify-content: center;
-	/* margin-top: 50%;
+  z-index: 100000;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  /* margin-top: 50%;
 	transform: translateY(-30%); */
 }
 .popup-wap {
-	width: 163%;
-	max-width: 600rpx;
-	/* margin-top: 50%;
+  width: 163%;
+  max-width: 600rpx;
+  /* margin-top: 50%;
 	margin-left: 50%;
 	transform: translateX(-50%); */
-	display: flex;
-	flex-direction: column;
-	align-items: flex-end;
+  display: flex;
+  flex-direction: column;
+  align-items: flex-end;
 }
 .popup-container {
- /* position: absolute;
+  /* position: absolute;
   left: 50%;
   top: 50%; */
   width: 163%;
@@ -40,8 +40,8 @@
 }
 
 .wx-popup-title {
-	background: #e6e6e6;
-	border-radius: 20rpx 20rpx 0px 0px;
+  background: #eaf4ff;
+  border-radius: 20rpx 20rpx 0px 0px;
   height: 91rpx;
   font-size: 34rpx;
   font-weight: 700;
@@ -51,17 +51,17 @@
 }
 
 .wx-popup-con {
-text-align: center;
-font-size: 27rpx;
-width: 80%;
-margin: auto auto 40rpx auto;
+  text-align: center;
+  font-size: 27rpx;
+  width: 80%;
+  margin: auto auto 40rpx auto;
 }
 
 .wx-popup-conone {
-	display: flex;
-	flex-flow: column-reverse;
-	justify-content: center;
-	align-items: center;
+  display: flex;
+  flex-flow: column-reverse;
+  justify-content: center;
+  align-items: center;
   font-size: 32rpx;
   font-weight: 400;
   text-align: center;
@@ -71,51 +71,52 @@ margin: auto auto 40rpx auto;
 .wx-popup-btn {
   display: flex;
   justify-content: space-around;
-	align-items: center;
-	height: 155rpx;
-	border-top: 1px solid #e6e6e6;
+  align-items: center;
+  height: 155rpx;
+  /* border-top: 1px solid #e6e6e6; */
 }
 .wx-popup-center-btn {
   display: flex;
   justify-content: center;
-	align-items: center;
-	height: 155rpx;
-	border-top: 1px solid #e6e6e6;
+  align-items: center;
+  height: 155rpx;
+  border-top: 1px solid #e6e6e6;
 }
 .wx-popup-center-btn text {
-	width: 240rpx;
-	height: 72rpx;
-	background-color: #ffdc2f;
-	line-height: 72rpx;
-	border-radius: 35rpx;
-	text-align: center;
-	font-size: 32rpx;
-	font-weight: 400;
-	color: #333333;
+  width: 240rpx;
+  height: 72rpx;
+  background-color: #ffdc2f;
+  line-height: 72rpx;
+  border-radius: 35rpx;
+  text-align: center;
+  font-size: 32rpx;
+  font-weight: 400;
+  color: #333333;
 }
 .wx-popup-btn text:first-child {
-	width: 185rpx;
+  width: 185rpx;
   height: 72rpx;
-	line-height: 72rpx;
-  background-color: #ffdc2f;
+  line-height: 72rpx;
+  background-color: #c5dbff;
   border-radius: 35rpx;
-	text-align: center;
-	font-size: 32rpx;
-	font-weight: 400;
-	color: #333333;
+  text-align: center;
+  font-size: 32rpx;
+  font-weight: 400;
+  color: #2b58a5;
+  border: 1rpx solid #2b58a5;
 }
 
 .wx-popup-btn text:last-child {
   width: 240rpx;
   height: 72rpx;
-	line-height: 72rpx;
-  border: 1px solid #ffa836;
+  line-height: 72rpx;
+  border: 1px solid #2b58a5;
   border-radius: 37rpx;
   text-align: center;
   font-size: 32rpx;
   font-weight: 400;
-  background: #fffae1;
-color: #ffa836;
+  background: #2b58a5;
+  color: #ffffff;
 }
 
 .img {
@@ -123,7 +124,6 @@ color: #ffa836;
   height: 120rpx;
 }
 .popup-close {
-	width: 54rpx;
-	height: 54rpx;
-	
+  width: 54rpx;
+  height: 54rpx;
 }

Разница между файлами не показана из-за своего большого размера
+ 42 - 1
dist/collapse-item/index.wxss


+ 0 - 2
expert/storedetail/storedetail.wxml

@@ -27,7 +27,6 @@
   <view class="store-box">
     <view class="name-box">
       门店介绍
-      <view class="color-line"></view>
     </view>
     <view class="content">
       <template is="wxParse" data="{{wxParseData:content.nodes}}" />
@@ -36,7 +35,6 @@
   <view class="store-box">
     <view class="name-box">
       位置地图
-      <view class="color-line"></view>
     </view>
     <view class="content">
       <map latitude="{{latitude}}" markers="{{covers}}" longitude="{{longitude}}" scale="{{18}}" enable-poi="{{true}}" show-location="{{true}}" style="height: 333rpx;width:100%"></map>

+ 70 - 67
expert/storedetail/storedetail.wxss

@@ -1,94 +1,97 @@
 .shop-item {
-	margin-top: 20rpx;
-	padding: 0 30rpx;
-	box-sizing: border-box;
+  margin-top: 20rpx;
+  padding: 0 30rpx;
+  box-sizing: border-box;
 }
 .shop-img {
-	width: 750rpx;
-	height: 347rpx;
+  width: 750rpx;
+  height: 347rpx;
 }
 .shop-name {
-	font-size: 28rpx;
-	font-family: FZZhunYuan-M02S;
-	font-weight: 700;
-	color: #1a1a1a;
-	margin-top: 22rpx;
+  font-size: 28rpx;
+  font-family: FZZhunYuan-M02S;
+  font-weight: 700;
+  color: #1a1a1a;
+  margin-top: 22rpx;
 }
 .shop-address {
-	margin-top: 17rpx;
-	display: flex;
-	align-items: center;
-	border-bottom: 1px solid #E6E6E6;
-	padding-bottom: 27rpx;
-}
-.shop-address .address-word{
-	margin-left: 13rpx;
-	font-size: 24rpx;
-	font-family: FZZhunYuan-M02S;
-	font-weight: 400;
-	color: #333333;
+  margin-top: 17rpx;
+  display: flex;
+  align-items: center;
+  border-bottom: 1px solid #e6e6e6;
+  padding-bottom: 27rpx;
+}
+.shop-address .address-word {
+  margin-left: 13rpx;
+  font-size: 24rpx;
+  font-family: FZZhunYuan-M02S;
+  font-weight: 400;
+  color: #333333;
 }
 .juli {
-	font-size: 24rpx;
-	font-family: PingFang SC, PingFang SC-Regular;
-	font-weight: 400;
-	color: #999999;
-	margin-left: 8rpx;
+  font-size: 24rpx;
+  font-family: PingFang SC, PingFang SC-Regular;
+  font-weight: 400;
+  color: #999999;
+  margin-left: 8rpx;
 }
 .ju-box {
-	display: flex;
-	justify-content: space-between;
-	align-items: center;
-	margin-top: 25rpx;
-	margin-bottom: 30rpx;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+  margin-top: 25rpx;
+  margin-bottom: 30rpx;
 }
 .ju-word {
-	font-size: 24rpx;
-	font-family: FZZhunYuan-M02S;
-	font-weight: 400;
-	color: #666666;
-	padding-right: 30rpx;
-	box-sizing: border-box;
+  font-size: 24rpx;
+  font-family: FZZhunYuan-M02S;
+  font-weight: 400;
+  color: #666666;
+  padding-right: 30rpx;
+  box-sizing: border-box;
 }
 .icons {
-	display: flex;
-	align-items: center;
+  display: flex;
+  align-items: center;
 }
 .dingwei-img {
-	width: 33rpx;
-	height: 33rpx;
-	color: #639ffd;
+  width: 33rpx;
+  height: 33rpx;
+  color: #639ffd;
 }
 .icon-phone {
-	font-size: 33rpx;
-	color: #fd75a7;
+  font-size: 33rpx;
+  color: #88bb26;
 }
 .line {
-	height: 10rpx;
-	background: #f5f5f5;
+  height: 10rpx;
+  background: #f5f5f5;
 }
 .store-box {
-	padding: 32rpx 30rpx 0 30rpx;
-	box-sizing: border-box;
+  padding: 32rpx 30rpx 0 30rpx;
+  box-sizing: border-box;
 }
 .name-box {
-	font-size: 30rpx;
-	font-family: PingFang SC, PingFang SC-Bold;
-	font-weight: 700;
-	color: #1a1a1a;
-	position: relative;
-	height: 41rpx;
-}
-.color-line {
-	position: absolute;
-	width: 6rpx;
-	height: 41rpx;
-	background: #ffdd36;
-	border-radius: 3rpx;
-	top: 0;
-	left: 0;
-	opacity: 0.5;
+  display: inline-block;
+  font-size: 30rpx;
+  font-family: PingFang SC, PingFang SC-Bold;
+  font-weight: 700;
+  color: #1a1a1a;
+  position: relative;
+  height: 41rpx;
+}
+.name-box::after {
+  display: block;
+  content: "";
+  position: absolute;
+  top: -8rpx;
+  right: -10rpx;
+  width: 30rpx;
+  height: 30rpx;
+  background-color: #005eff42;
+  border-radius: 50%;
+  z-index: 1;
 }
 .content {
-	margin-top: 21rpx;
-}
+  margin-top: 21rpx;
+}

+ 1 - 1
pages/experience/index/index.js

@@ -179,7 +179,7 @@ Page({
             (ButtonBounding.top - res.statusBarHeight) * 2 +
             "px",
           titleHeight: res.statusBarHeight + "px",
-          conTop: 50 + 48 + "px",
+          conTop: 50 + "px",
           shaiHeight: navHeight + 48 + "px",
           staHeight: res.statusBarHeight,
         });

+ 1 - 2
pages/experience/index/index.json

@@ -1,6 +1,5 @@
 {
-  "navigationBarTitleText": "活动",
-  "navigationStyle": "custom",
+  "navigationBarTitleText": "体验活动",
   "enablePullDownRefresh": true,
   "usingComponents": {
     "i-tab": "/dist/tab/index",

+ 32 - 61
pages/experience/index/index.wxml

@@ -1,30 +1,5 @@
-<!-- <scroll-view scroll-x class="scroll-header scroll">
-	<view class='boxs'>
-		<image mode="widthFix" class='box-image-l' src='{{appAssetsUrl2}}wjxy/activebg.png' class='h100'></image>
-	</view>
-</scroll-view> -->
 <view class="pageContent pageContentfix">
-  <view style="height:{{statusBarHeight}}">
-
-  </view>
-  <view class="top-act" style="height:{{statusBarHeight}};top:{{staHeight}};padding-right:{{jwidth}};">
-
-    <view class="act-title">最会玩</view>
-    <view class="section">
-      <picker mode="multiSelector" bindchange="cityPickerChange" value="{{cityListIndex}}" range="{{cityListPickerData}}" range-key='name'>
-        <view class="picker" style="align-items: flex-end;">
-          <text wx:if="{{cityListPickerData.length==0}}">全部</text>
-          <view class="di-box" style="align-items: center;" wx:if="{{cityListPickerData.length>0}}">
-            <i style="margin-top:10rpx;margin-right:6rpx;" class="iconfont icon-dizhi icon-home-dizhi"></i>
-            {{cityListPickerData[0][cityListIndex[0]].name}}
-            <i class="iconfont icon-xiasanjiaoxing gray"></i>
-          </view>
-          <!-- <i class="iconfont icon-xiasanjiaoxing gray"></i> -->
-        </view>
-      </picker>
-    </view>
-  </view>
-  <view class="sticky-box" style="position:fixed;z-index:100;top:{{statusBarHeight}};">
+  <view class="sticky-box" style="position:fixed;z-index:100;">
     <view class="namewrap">
       <scroll-view scroll-x scroll-with-animation scroll-left="{{navScrollWidth}}" class="item-box">
         <view class="nameitem {{nameIndex == index ? 'nameactive' : ''}}" wx:for="{{nameList}}" bindtap="nameHandler" data-index="{{index}}">
@@ -34,38 +9,25 @@
       </scroll-view>
     </view>
   </view>
-  <view class='downMenu' style="top:{{shaiHeight}};">
-
-    <view class="section">
-      <picker bindchange="timePickerChange" value="{{timeListIndex}}" range="{{timeList}}" range-key='name'>
-        <view class="picker">
-          <text class="picker-text">{{timeList[timeListIndex].name}}</text>
-          <i class="iconfont icon-xiasanjiaoxing gray"></i>
-        </view>
-      </picker>
-    </view>
-    <view class="section" style="margin-left:98rpx;">
-      <picker bindchange="statusPickerChange" value="{{statusListIndex}}" range="{{statusList}}" range-key='itemname'>
-        <view class="picker">
-          <text class="picker-text">{{statusList[statusListIndex].itemname}}</text>
-          <i class="iconfont icon-xiasanjiaoxing gray"></i>
-        </view>
-      </picker>
-    </view>
-    <!-- <view class="section">
-			<picker mode="multiSelector" bindchange="cityPickerChange" value="{{cityListIndex}}" range="{{cityListPickerData}}" range-key='name'>
-				<view class="picker">
-					<text wx:if="{{cityListPickerData.length==0}}">全部</text>
-					<view class="di-box" wx:if="{{cityListPickerData.length>0}}">
-					<i style="margin-top:10rpx;margin-right:6rpx;" class="iconfont icon-dizhi icon-home-dizhi"></i>
-					{{cityListPickerData[0][cityListIndex[0]].name}} 
-					</view>
-					<i class="iconfont icon-xiasanjiaoxing gray"></i>
-				</view>
-			</picker>
-		</view> -->
-  </view>
   <view style="margin-top:{{conTop}}" class="pagebodys">
+    <view class='downMenu'>
+      <view class="section">
+        <picker bindchange="timePickerChange" value="{{timeListIndex}}" range="{{timeList}}" range-key='name'>
+          <view class="picker">
+            <text class="picker-text">{{timeList[timeListIndex].name}}</text>
+            <i class="iconfont icon-xiasanjiaoxing gray"></i>
+          </view>
+        </picker>
+      </view>
+      <view class="section" style="margin-left:98rpx;">
+        <picker bindchange="statusPickerChange" value="{{statusListIndex}}" range="{{statusList}}" range-key='itemname'>
+          <view class="picker">
+            <text class="picker-text">{{statusList[statusListIndex].itemname}}</text>
+            <i class="iconfont icon-xiasanjiaoxing gray"></i>
+          </view>
+        </picker>
+      </view>
+    </view>
     <view class='marginTop'>
       <view wx:if="{{listData.length>0}}">
         <scroll-view scroll-y>
@@ -81,30 +43,39 @@
                 <view class="title">{{item.title}}</view>
                 <view class="item">
                   <view class="time-box">
-                    <view class="icon-box"><i class="iconfont1 icon-rili icon-time"></i></view>
+                    <view class="icon-box">
+                      <i class="iconfont1 icon-rili icon-time"></i>
+                    </view>
                     <span>时间: {{item.startTime}}—{{item.endTime}}</span>
                   </view>
                 </view>
                 <view class="address-type">
                   <view class="active-item-address">
-                    <view class="icon-box"><i class="iconfont icon-dizhi icon-list-dizhi"></i></view>
+                    <view class="icon-box">
+                      <i class="iconfont icon-dizhi icon-list-dizhi"></i>
+                    </view>
                     <view class="address-word">地址: {{item.address}}</view>
                   </view>
                   <!-- <view class="active-type" wx:if="{{item.isNeedVip == 1}}">潮兼职免费</view> -->
                 </view>
                 <view class="num-price">
                   <view class="num" style="color:#999999;">
-                    <view class="icon-box"><i class="iconfont1 icon-quanxiaozongrenshu icon-pel"></i></view>
+                    <view class="icon-box">
+                      <i class="iconfont1 icon-quanxiaozongrenshu icon-pel"></i>
+                    </view>
                     <span>名额: {{item.willnum}}</span>
                   </view>
                 </view>
               </view>
               <view style="margin-top:10rpx;" class="price-h">
+                <view class="price-h-l" wx:if="{{item.isNeedVip == 1}}">
+                  <text class="isvip">会员免费</text>
+                </view>
+                <view wx:else></view>
                 <text>
                   <text class="p1">¥</text>
                   <text class="p2">{{item.money}}</text>
                 </text>
-                <text class="isvip" wx:if="{{item.isNeedVip == 1}}">VIP会员免费</text>
               </view>
             </view>
           </view>

Разница между файлами не показана из-за своего большого размера
+ 389 - 380
pages/experience/index/index.wxss


+ 33 - 30
pages/home/index/activityDetail/activityDetail.wxml

@@ -31,12 +31,13 @@
             {{detail.statusName}}
           </view>
         </view>
-        <view class="list" style="margin-top:10rpx;">活动日期:{{detail.startDate}} — {{detail.endDate}}</view>
+        <view class="list" style="margin-top:10rpx;">
+          活动日期:{{detail.startDate}} — {{detail.endDate}}
+        </view>
         <view class="list">活动时间:{{detail.startTime}} — {{detail.endTime}}</view>
         <view class="list" bindtap="goLocal">
           <i style="font-size:35rpx;" class="iconfont icon-dizhi icon-act-dizhi"></i>
-          <view class="address-word">
-            地址:{{detail.address}}</view>
+          <view class="address-word">地址:{{detail.address}}</view>
           <i class="iconfont1 icon-jinrujiantouxiao righticon"></i>
         </view>
       </view>
@@ -44,12 +45,13 @@
     <!-- 项目信息 -->
     <view class="big-box {{options && !options.stuId || detail.isNeedVip && member.memberState == 0 ? 'vipBg' : ''}}">
       <view class="dim {{options && !options.stuId || detail.isNeedVip && member.memberState == 0 ? '' : 'showDim'}}">
-        <image src="{{appAssetsUrl2}}new/dim.png"></image>
+        <!--<image src="{{appAssetsUrl2}}new/dim.png"></image>-->
+        <image src="/assets/images/user-icon/user-brick.png"></image>
         <view class="tip">加入会员,即可报名活动</view>
       </view>
       <view class="product-box">
         <view class="hot-title">
-          <view class="line"></view>
+          
           <view class="title">项目信息</view>
         </view>
         <view class="list" style="margin-top:20rpx;">报名截止:{{detail.registrationEnd}}</view>
@@ -62,9 +64,7 @@
         <view class="user-right">
           <view>
             <view class="name-sex">
-              <view wx:if="{{schoolInfo.name}}">
-                {{schoolInfo.name}}
-              </view>
+              <view wx:if="{{schoolInfo.name}}">{{schoolInfo.name}}</view>
               <image mode="aspectFill" wx:if="{{schoolInfo.sex}}" src="{{ schoolInfo.sex == '010' ? appAssetsUrl2+'wjxy/man.png' : schoolInfo.sex == '男' ? appAssetsUrl2+'wjxy/man.png' : appAssetsUrl2+'wjxy/wumen.png'}}" class="user-sex" />
             </view>
             <view class="zhiwei">{{roleList[schoolInfo.memberRoleStatus - 1]}}</view>
@@ -78,14 +78,16 @@
       <!-- 参与人员 -->
       <view class="per-box" wx:if="{{peopleList.length > 0}}">
         <view class="hot-title">
-          <view class="line"></view>
+          
           <view class="title">参与人员</view>
         </view>
         <view class="people">
           <view class="people-content">
             <view class="imgs" wx:if="{{isMore}}">
               <image style="left: {{(index*35)}}px;z-index:{{10 -index}} " class="img" wx:for="{{people6}}" src="{{item.memberPhoto}}"></image>
-              <view class="dot" style="left: {{(6*35)}}px;z-index:1" wx:if="{{peopleList.length >= 6}}">...</view>
+              <view class="dot" style="left: {{(6*35)}}px;z-index:1" wx:if="{{peopleList.length >= 6}}">
+                ...
+              </view>
             </view>
             <view class="total-img" wx:else>
               <image class="imgk" wx:for="{{peopleList}}" src="{{item.memberPhoto}}"></image>
@@ -101,7 +103,6 @@
           </view>
         </view>
       </view>
-
       <view class='partime-bg'>
         <view class='partime-detail'>
           <!-- <view class='partime-detail-container'>
@@ -109,7 +110,7 @@
 					<view class='circle'></view>
 				</view> -->
           <view class="hot-title">
-            <view class="line"></view>
+            
             <view class="title">活动详情</view>
           </view>
         </view>
@@ -120,7 +121,6 @@
           <template wx:else is="wxParse" data="{{wxParseData:content.nodes}}" />
         </view>
       </view>
-
       <view class='partime-bg member partime-listcolor'>
         <view class='partime-detail'>
           <!-- <view class='partime-detail-container'>
@@ -128,16 +128,14 @@
 					<view class='circle'></view>
 				</view> -->
           <view class="hot-title">
-            <view class="line"></view>
+            
             <view class="title">会员须知</view>
           </view>
         </view>
         <view class='partime-member-info '>
           <template is="wxParse" data="{{wxParseData:vipActivityMessage.nodes}}" class="partime-detail-info" />
         </view>
-
-        <view class="mask {{maskShow?'':'hidden'}}" catchtouchmove="preventTouchMove" bindtap='maskClose'>
-        </view>
+        <view class="mask {{maskShow?'':'hidden'}}" catchtouchmove="preventTouchMove" bindtap='maskClose'></view>
       </view>
     </view>
     <view class='botm zindex' style="bottom: {{bottomLeft}}px;">
@@ -145,7 +143,7 @@
         <view class='left-t'>
           <button open-type='share' class='left-t-l'>
             <image src='{{appAssetsUrl2}}wjxy/share.png' />
-            <text class="sharebtn">分享 </text>
+            <text class="sharebtn">分享</text>
           </button>
           <!-- <view class='left-t-r' bindtap="collect">
 						<i class="iconfont-c3 icon-shoucang {{detail.collect?'isyn':''}}"></i>
@@ -164,7 +162,9 @@
       </view>
       <popup2 id='popup3' title='查看二维码' content="{{['']}}" btn2="{{false}}" btn_no='' btn_ok='知道了' bind:error="_error" bind:success="_success" data-name="popup3">
         <view slot="content" style="width: 85%;padding: 44rpx 0 38rpx 0;">
-          <view class="code-tip" wx:if="{{detail.contactInstructions}}">{{detail.contactInstructions}}</view>
+          <view class="code-tip" wx:if="{{detail.contactInstructions}}">
+            {{detail.contactInstructions}}
+          </view>
           <image class="code-img" src='{{detail.qrCodePicture}}' bindtap="seeBigCode" />
         </view>
       </popup2>
@@ -177,33 +177,36 @@
       <popup2 id='popup5' title='确认报名' content="{{['']}}" self="{{true}}" btn2="{{false}}" btn_no='' btn_ok='' bind:error="_error" bind:success="_success" data-name="popup5">
         <view slot="content" style="width: 100%;padding: 44rpx 27rpx 38rpx 27rpx;box-sizing: border-box;">
           <view class="popup5-item">
-            <text>活动价格:</text> <text class="a-price">{{detail.money}}</text> <text style="color:#cccccc;">元</text>
+            <text>活动价格:</text>
+            <text class="a-price">{{detail.money}}</text>
+            <text style="color:#cccccc;">元</text>
           </view>
           <view class="popup5-item">
-            <text>剩余积分:</text> <text>{{point}}</text>
+            <text>剩余积分:</text>
+            <text>{{point}}</text>
           </view>
           <view class="jifen-box" wx:if="{{point > 0}}">
             <view class="left">
-              <view class="use">使用 {{usePoints}} 积分 </view>
+              <view class="use">使用 {{usePoints}} 积分</view>
               <view class="di">抵扣 {{dmoney}} 元</view>
             </view>
             <view class="switch {{ open ? '' : 'close-bg' }}" bindtap="changeSwitch">
               <view class="switch-dot {{ open ? '' : 'close-switch' }}"></view>
             </view>
           </view>
-          <view class="pay-btn" wx:if="{{(open&&actualPrice==0) || !open&&detail.money==0 }}" bindtap="confirmPay">立即报名</view>
-          <view class="pay-btn" wx:else bindtap="confirmPay">确认支付{{ open ? actualPrice : detail.money }}元</view>
+          <view class="pay-btn" wx:if="{{(open&&actualPrice==0) || !open&&detail.money==0 }}" bindtap="confirmPay">
+            立即报名
+          </view>
+          <view class="pay-btn" wx:else bindtap="confirmPay">
+            确认支付{{ open ? actualPrice : detail.money }}元
+          </view>
         </view>
       </popup2>
       <popup2 id='popup' title='提示' content="{{['']}}" btn_no='取消' btn_ok='确认' bind:error="_error" bind:success="_success" data-name="popup">
-        <view slot="content" style="width: 85%;padding: 44rpx 0 38rpx 0;">
-          该活动需要开通VIP才能报名
-        </view>
+        <view slot="content" style="width: 85%;padding: 44rpx 0 38rpx 0;">该活动需要开通VIP才能报名</view>
       </popup2>
       <popup2 id='popup2' title='提示' content="{{['']}}" btn_no='取消' btn_ok='立即完善' bind:error="_error" bind:success="_success" data-name="popup2">
-        <view slot="content" style="width: 85%;padding: 44rpx 0 38rpx 0;">
-          请完善资料后进行报名操作
-        </view>
+        <view slot="content" style="width: 85%;padding: 44rpx 0 38rpx 0;">请完善资料后进行报名操作</view>
       </popup2>
     </view>
   </view>

+ 35 - 22
pages/home/index/activityDetail/activityDetail.wxss

@@ -197,21 +197,21 @@ page {
 }
 
 .big-box .dim image {
-  width: 148rpx;
-  height: 148rpx;
+  width: 168rpx;
+  height: 168rpx;
 }
 
 .big-box .dim .tip {
   text-align: center;
-  font-size: 30rpx;
+  font-size: 34rpx;
   font-family: FZZhunYuan-M02S, FZZhunYuan-M02S-Regular;
   font-weight: 400;
   text-align: left;
-  color: #f0ce2c;
+  color: #ffffff;
 }
 
 .vipBg {
-  opacity: 0.55;
+  /* opacity: 0.7; */
 }
 
 .vipBg::before {
@@ -222,7 +222,7 @@ page {
   height: 100%;
   /* opacity: 0.95; */
   /* background: #2c2c38; */
-  background: #333333;
+  background: rgba(24, 35, 57, 0.99);
   z-index: 999;
 }
 
@@ -680,16 +680,17 @@ page {
   align-items: center;
 }
 .type-state .type {
-  width: 145rpx;
+  min-width: 145rpx;
   height: 40rpx;
-  background: #fffae1;
-  border-radius: 20rpx 20rpx 20rpx 0px;
+  background: #f1d7b2;
+  border-radius: 20rpx;
   text-align: center;
   line-height: 40rpx;
-  font-size: 20rpx;
+  font-size: 22rpx;
   font-family: PingFang SC, PingFang SC-Regular;
   font-weight: 400;
-  color: #ffa836;
+  color: #543022;
+  padding: 0 20rpx;
 }
 .type-state .sub-btn {
   /* background: #e6e6e6; */
@@ -773,6 +774,7 @@ page {
 .icon-act-dizhi {
   position: absolute;
   top: -2rpx;
+  color: #999999 !important;
 }
 .address-word {
   text-indent: 40rpx;
@@ -789,16 +791,23 @@ page {
   position: relative;
   margin-bottom: 15rpx;
 }
-.hot-title .line {
+.hot-title .title{
+  position: relative;
+}
+.hot-title .title::after {
+  display: block;
+  content: "";
   position: absolute;
-  width: 6rpx;
-  height: 41rpx;
-  background: #ffdd36;
-  border-radius: 3rpx;
-  top: 0;
-  left: 0;
-  opacity: 0.5;
+  top: -8rpx;
+  right: -6rpx;
+  width: 30rpx;
+  height: 30rpx;
+  background-color: #005eff42;
+  border-radius: 50%;
+  z-index: 1;
+  display: inline-block;
 }
+
 .product-box {
   padding: 30rpx;
   box-sizing: border-box;
@@ -912,17 +921,21 @@ page {
   justify-content: space-between;
   flex: 1;
 }
+.mainbg{
+  background: #2b58a5 !important;
+  color: #ffffff !important;
+}
 .see-code {
   width: 197rpx;
   height: 85rpx;
-  background: #fffae1;
-  border: 1px solid #ffa836;
+  background: #88bb26;
+  border: 1px solid #88bb26;
   border-radius: 44rpx;
   font-size: 30rpx;
   font-family: FZZhunYuan-M02S;
   font-weight: 400;
   text-align: center;
-  color: #ffa836;
+  color: #ffffff;
   line-height: 85rpx;
 }
 .btn {

+ 1 - 1
pages/home/index/index.wxml

@@ -80,7 +80,7 @@
         <view class="title">
           <view class="label">热门活动</view>
         </view>
-        <view class="mword" data-url="/pages/experience/index/index" data-type="tab" bindtap="more">
+        <view class="mword" data-url="/pages/experience/index/index" bindtap="more">
           <span style="margin-right:20rpx;">查看更多</span>
           <i class="iconfont icon-jiantou righticon hoticon"></i>
         </view>

+ 174 - 0
pages/match/details/index.js

@@ -0,0 +1,174 @@
+// pages/match/details/index.js
+const app = getApp();
+
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    appAssetsUrl2: app.appAssetsUrl2,
+    matchDetail: {
+      id: '',
+      title: '2025年夏季创业大赛',
+      author: '程洁',
+      publishTime: '2025年08月13日 06:30',
+      bannerImage: '',
+      targetAudience: '本次创业大赛面向年满18周岁的中国公民或合法注册的企业团队,无论在校大学生群体,还是已步入社会的创业者,只要期待合要求的创业项目,均可报名参与。',
+      description: '青年创业大赛是为怀揣梦想的年轻人打造的实践舞台,聚焦科技创新、社会服务、文化创意等领域。本届大赛将通过项目路演、专家评审、线上线下相结合的形式,为参赛者提供全方位的创业指导和资源对接。',
+      registrationMethod: '参赛者可通过微信小程序、官方网站或线下指定地点进行报名。报名时需提交个人信息、项目计划书等相关材料,报名截止时间为2025年9月30日。',
+      awards: '本次大赛设置一等奖、3名,奖金10万元;二等奖、5名,奖金5万元;三等奖、10名,奖金2万元。另设最佳创意奖、最佳商业价值奖等单项奖。'
+    }
+  },
+
+  /**
+   * 立即报名按钮点击事件
+   */
+  onRegisterTap() {
+    const { matchDetail } = this.data;
+    console.log('点击报名:', matchDetail.id);
+    
+    // TODO: 跳转到报名页面或调用报名接口
+    wx.showToast({
+      title: '正在跳转到报名页面...',
+      icon: 'none',
+      duration: 1500
+    });
+    
+    // 示例:跳转到报名页面
+    // wx.navigateTo({
+    //   url: `/pages/match/register?id=${matchDetail.id}`
+    // });
+  },
+
+  /**
+   * 分享赛事按钮点击事件
+   */
+  onShareTap() {
+    const { matchDetail } = this.data;
+    
+    wx.showShareMenu({
+      withShareTicket: true,
+      menus: ['shareAppMessage', 'shareTimeline']
+    });
+    
+    wx.showToast({
+      title: '请点击右上角分享',
+      icon: 'none',
+      duration: 1500
+    });
+  },
+
+  /**
+   * 加载赛事详情数据
+   */
+  loadMatchDetail(matchId) {
+    wx.showLoading({
+      title: '加载中...'
+    });
+    
+    // TODO: 调用API获取赛事详情
+    // app._get(`match/detail/${matchId}`, {}, (res) => {
+    //   if (res.code === 0) {
+    //     this.setData({
+    //       matchDetail: res.data
+    //     });
+    //   }
+    //   wx.hideLoading();
+    // });
+    
+    // 模拟API调用
+    setTimeout(() => {
+      wx.hideLoading();
+      console.log('赛事详情加载完成:', matchId);
+    }, 1000);
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+    const { id } = options;
+    if (id) {
+      this.setData({
+        'matchDetail.id': id
+      });
+      this.loadMatchDetail(id);
+    }
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+    // 设置分享菜单
+    wx.showShareMenu({
+      withShareTicket: true,
+      menus: ['shareAppMessage', 'shareTimeline']
+    });
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+    // 页面显示时的操作
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+    // 页面隐藏时的操作
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+    // 页面卸载时的清理工作
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+    // 下拉刷新重新加载数据
+    const { matchDetail } = this.data;
+    if (matchDetail.id) {
+      this.loadMatchDetail(matchDetail.id);
+    }
+    wx.stopPullDownRefresh();
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+    // 详情页面不需要上拉加载
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+    const { matchDetail } = this.data;
+    return {
+      title: matchDetail.title || '青云慧 - 创业赛事详情',
+      path: `/pages/match/details/index?id=${matchDetail.id}`,
+      imageUrl: matchDetail.bannerImage || '/assets/images/share/match-detail-share.jpg'
+    };
+  },
+
+  /**
+   * 用户点击右上角分享到朋友圈
+   */
+  onShareTimeline() {
+    const { matchDetail } = this.data;
+    return {
+      title: matchDetail.title || '青云慧 - 创业赛事详情',
+      query: `id=${matchDetail.id}`,
+      imageUrl: matchDetail.bannerImage || '/assets/images/share/match-detail-share.jpg'
+    };
+  }
+});

+ 6 - 0
pages/match/details/index.json

@@ -0,0 +1,6 @@
+{
+  "navigationBarTitleText": "赛事详情",
+  "navigationBarBackgroundColor": "#ffffff",
+  "enablePullDownRefresh": true,
+  "usingComponents": {}
+}

+ 16 - 0
pages/match/details/index.wxml

@@ -0,0 +1,16 @@
+<!-- pages/match/details/index.wxml -->
+<view class="match-details-container">
+    <!-- 页面头部信息 -->
+    <view class="header-info">
+        <view class="title">{{matchDetail.title || '2025年夏季创业大赛'}}</view>
+        <view class="publish-info">
+            <text class="author">{{matchDetail.author || '程洁'}}</text>
+            <i class="iconfont1 icon-31shijian time-icon"></i>
+            <text class="publish-time">{{matchDetail.publishTime || '2025年08月13日 06:30'}}</text>
+        </view>
+    </view>
+    <!-- 详情内容 -->
+    <view class="content-section">
+       13233
+    </view>
+</view>

+ 44 - 0
pages/match/details/index.wxss

@@ -0,0 +1,44 @@
+/* pages/match/details/index.wxss */
+.match-details-container {
+  min-height: calc(100vh - 4rpx);
+  background: #ffffff;
+  /* padding-bottom: 140rpx; */
+  box-sizing: border-box;
+}
+
+/* 页面头部信息 */
+.header-info {
+  background: #ffffff;
+  padding: 40rpx 30rpx 30rpx;
+  border-bottom: 1rpx solid #f0f0f0;
+}
+
+.title {
+  font-size: 34rpx;
+  font-weight: bold;
+  color: #1a1a1a;
+  margin-bottom: 20rpx;
+  text-align: center;
+}
+
+.publish-info {
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  /* gap: 20rpx; */
+  font-size: 24rpx;
+  color: #666666;
+}
+
+.author {
+  margin-right: 15rpx;
+}
+
+.publish-info .iconfont1{
+    font-size: 30rpx;
+    margin-right: 5rpx;
+}
+
+.content-section {
+  padding: 30rpx 40rpx;
+}

+ 149 - 0
pages/match/index.js

@@ -0,0 +1,149 @@
+// pages/match/index.js
+const app = getApp();
+
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    appAssetsUrl2: app.appAssetsUrl2,
+    matchList: [
+      {
+        id: 1,
+        title: '2025年夏季创业大赛季创业大赛...',
+        description: '青年创业大赛是为怀揣梦想的年轻人打造的实践舞台,聚焦科技创新、社会服务、文化创意等领域,通过项目路演等形式...',
+        image: app.appAssetsUrl2 + 'match/match1.jpg'
+      },
+      {
+        id: 2,
+        title: '2025年夏季创业大赛季创业大赛...',
+        description: '青年创业大赛是为怀揣梦想的年轻人打造的实践舞台,聚焦科技创新、社会服务、文化创意等领域,通过项目路演等形式...',
+        image: app.appAssetsUrl2 + 'match/match2.jpg'
+      },
+      {
+        id: 3,
+        title: '2025年夏季创业大赛季创业大赛...',
+        description: '青年创业大赛是为怀揣梦想的年轻人打造的实践舞台,聚焦科技创新、社会服务、文化创意等领域,通过项目路演等形式...',
+        image: app.appAssetsUrl2 + 'match/match3.jpg'
+      }
+    ],
+    statusBarHeightTop: 0,
+    statusBarHeight: 0,
+
+  },
+
+  /**
+   * 赛事项目点击事件
+   */
+  onMatchItemTap(e) {
+    const index = e.currentTarget.dataset.index;
+    const matchItem = this.data.matchList[index];
+    console.log('点击赛事项目:', matchItem);
+
+    // 跳转到详情页面
+    wx.navigateTo({
+      url: `/pages/match/details/index?id=${matchItem.id}`
+    });
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+    this.height();
+    // 可以在这里加载赛事数据
+    this.loadMatchData();
+  },
+
+  /**
+   * 加载赛事数据
+   */
+  loadMatchData() {
+    // TODO: 调用API获取赛事数据
+    wx.showLoading({
+      title: '加载中...'
+    });
+
+    // 模拟API调用
+    setTimeout(() => {
+      wx.hideLoading();
+      // 这里可以设置从API获取的数据
+      // this.setData({
+      //   matchList: apiData
+      // });
+    }, 1000);
+  },
+  height() {
+    const {
+      platform,
+      statusBarHeight
+    } = wx.getSystemInfoSync();
+    let statusBarHeightTop = statusBarHeight;
+    let height = statusBarHeight + 4; //ios 24px
+    let mH = statusBarHeight + 4;
+    if (platform.toLowerCase() == "android") {
+      height += 4; //android 28px
+      mH += 4;
+    }
+    height = height + 100;
+    // height = height + 38 + 118;
+    // 胶囊高度 32px 下边框6px height 状态栏高度
+    this.setData({
+      statusBarHeightTop: statusBarHeightTop + "px",
+      statusBarHeight: height + "px",
+      statusBarMH: mH + "px",
+    });
+  },
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+    // 页面渲染完成
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+    // 页面显示时刷新数据
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+    // 页面隐藏
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+    // 页面卸载
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+    // 下拉刷新
+    this.loadMatchData();
+    wx.stopPullDownRefresh();
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+    // 上拉加载更多
+    console.log('加载更多赛事数据');
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+    
+  }
+});

+ 8 - 0
pages/match/index.json

@@ -0,0 +1,8 @@
+{
+  "navigationBarTitleText": "创业赛事",
+  "navigationBarBackgroundColor": "#4A90E2",
+  "navigationBarTextStyle": "white",
+  "enablePullDownRefresh": true,
+  "navigationStyle": "custom",
+  "usingComponents": {}
+}

+ 26 - 0
pages/match/index.wxml

@@ -0,0 +1,26 @@
+<!-- pages/match/index.wxml -->
+<view class="match-container">
+    <!-- 头部横幅区域 -->
+    <view class="header-banner">
+        <view class="title" style="padding-top:{{statusBarHeightTop}}">创业赛事</view>
+        <view class="banner-bg">
+            <image class="character-image" src="/assets/images/tournament-bg.png" mode="widthFix"></image>
+        </view>
+    </view>
+    <!-- 赛事列表区域 -->
+    <view class="match-list">
+        <!-- <view class="section-title">2025年夏季创业大赛季创业大赛</view> -->
+        <view class="match-items">
+            <view class="match-item" wx:for="{{matchList}}" wx:key="index" bindtap="onMatchItemTap" data-index="{{index}}">
+                <view class="item-image">
+                    <!-- <image src="{{item.image}}" mode="aspectFill"></image> -->
+                    <image src="/assets/images/tournament-bg.png" mode="widthFix"></image>
+                </view>
+                <view class="item-content">
+                    <view class="item-title">{{item.title}}</view>
+                    <view class="item-desc">{{item.description}}</view>
+                </view>
+            </view>
+        </view>
+    </view>
+</view>

+ 111 - 0
pages/match/index.wxss

@@ -0,0 +1,111 @@
+/* pages/match/index.wxss */
+.match-container {
+  min-height: calc(100vh - 4rpx);
+  display: flex;
+  flex-direction: column;
+}
+
+/* 头部横幅区域 */
+.header-banner {
+  position: relative;
+  height: 486rpx;
+  overflow: hidden;
+  flex-shrink: 0;
+}
+.header-banner .title{
+    position: fixed;
+    top: 0;
+    left: 0;
+    z-index: 100;
+    width: 750rpx;
+    text-align: center;
+    height: 80rpx;
+    line-height: 80rpx;
+    font-size: 36rpx;
+    color: #ffffff;
+}
+
+.banner-bg {
+  position: relative;
+  width: 100%;
+  height: 100%;
+}
+
+.character-image {
+  width: 100%;
+  height: 486rpx;
+}
+
+/* 赛事列表区域 */
+.match-list {
+  flex: 1;
+  padding: 40rpx 30rpx;
+  margin-top: -40rpx;
+  background: #ffffff;
+  border-radius: 50rpx 50rpx 0 0;
+  position: relative;
+  z-index: 1;
+}
+
+.section-title {
+  font-size: 34rpx;
+  font-weight: bold;
+  color: #1a1a1a;
+  text-align: left;
+}
+
+.match-item {
+  display: flex;
+  background: #ffffff;
+  border-radius: 20rpx;
+  padding: 30rpx 0;
+  border-bottom: 1rpx solid #f2f2f2;
+}
+
+.match-item:last-of-type {
+  border-bottom: none;
+}
+
+.item-image {
+  width: 248rpx;
+  height: 160rpx;
+  flex-shrink: 0;
+  border-radius: 16rpx;
+  overflow: hidden;
+  margin-right: 20rpx;
+}
+
+.item-image image {
+  width: 100%;
+  height: 100%;
+  border-radius: 16rpx;
+}
+
+.item-content {
+  flex: 1;
+  display: flex;
+  flex-direction: column;
+  justify-content: center;
+}
+
+.item-title {
+  font-size: 30rpx;
+  font-weight: 600;
+  color: #333333;
+  margin-bottom: 16rpx;
+  line-height: 1.3;
+  display: -webkit-box;
+  -webkit-line-clamp: 1;
+  -webkit-box-orient: vertical;
+  overflow: hidden;
+}
+
+.item-desc {
+  font-size: 26rpx;
+  color: #666666;
+  line-height: 1.5;
+  display: -webkit-box;
+  -webkit-line-clamp: 3;
+  -webkit-box-orient: vertical;
+  overflow: hidden;
+}

+ 194 - 343
pages/my/index/index.js

@@ -1,432 +1,273 @@
 // pages/my/index/index.js
+const app = getApp();
 const util = require("../../../utils/util");
-const App = getApp();
 
 Page({
+
   /**
    * 页面的初始数据
    */
   data: {
-    appAssetsUrl: App.appAssetsUrl,
-    appAssetsUrl2: App.appAssetsUrl2,
-    isVip: false,
-    isLogin: false,
-    parm: {
-      sid: "",
-      wid: "",
-      statusBarHeight: 0,
-      statusBarMH: 0,
-    },
-    params: {
-      id: "",
-      vipname: "",
-      memberphoto: "",
+    appAssetsUrl2: app.appAssetsUrl2,
+    statusBarHeightTop: 0,
+    statusBarHeight: 0,
+    userInfo: {
+      id: '02032',
+      name: '刘筱亭',
+      avatar: '',
+      gender: 'female', // 'male' 或 'female'
+      isVip: true,
+      points: '9989425'
     },
+    isLogin: false,
     isDev: false,
   },
-  // 自定义高度
-  // 自定义高度处理
+
+  toLogin() {
+    wx.navigateTo({
+      url: "/pages/login",
+    });
+  },
+
+  /**
+   * 获取系统信息设置高度
+   */
   height() {
     const {
       platform,
       statusBarHeight
     } = wx.getSystemInfoSync();
+    let statusBarHeightTop = statusBarHeight;
     let height = statusBarHeight + 4; //ios 24px
     let mH = statusBarHeight + 4;
     if (platform.toLowerCase() == "android") {
       height += 4; //android 28px
       mH += 4;
     }
-    height = height + 38;
+    height = height + 100;
+    // height = height + 38 + 118;
     // 胶囊高度 32px 下边框6px height 状态栏高度
     this.setData({
-      statusBarHeight: height + "px",
-      statusBarMH: mH + "px",
+      statusBarHeightTop: statusBarHeightTop + "px",
+      statusBarHeight: height + "px"
     });
   },
 
-  scanCode() {
-    // 只允许从相机扫码
-    let _this = this;
-    if (util.UserLoginStatus()) {
-      wx.scanCode({
-        onlyFromCamera: true,
-        scanType: "qrCode",
-        success(res) {
-          if (
-            res.errMsg === "scanCode:ok" &&
-            res.result !== "" &&
-            res.result !== null
-          ) {
-            _this.data.parm.wid = res.result;
-            _this.data.parm.sid = util.getUserId();
-            App._post_form(
-              "work/signup",
-              "application/json",
-              JSON.stringify(_this.data.parm),
-              function (res) {
-                if (res.code === 0) {
-                  wx.showModal({
-                    title: "温馨提示",
-                    content: "您已签到成功!",
-                    showCancel: false,
-                  });
-                } else {
-                  wx.showModal({
-                    title: "温馨提示",
-                    content: res.msg,
-                    showCancel: false,
-                  });
-                }
-              }
-            );
-          } else {
-            wx.showModal({
-              title: "温馨提示",
-              content: "签到失败了!",
-              showCancel: false,
-            });
-          }
-        },
-      });
+  /**
+   * 客服点击事件
+   */
+  onCustomerServiceTap() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
     }
-  },
-
-  // 我的积分
-  integralHandle() {
     wx.navigateTo({
-      url: "/pages/my/integral/integral?id=" + this.data.User.id,
+      url: "/pages/my/myCustomer/myCustomer",
     });
   },
 
-  // 跳转  个人资料
-  seeMydata: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myData/myData",
-    });
-  },
-  toLogin() {
-    wx.navigateTo({
-      url: "/pages/login",
-    });
-  },
-  // 判断是否开发huanjing
-  env() {
-    let that = this;
-    App._post_form(
-      "wgfillinfo/apiSelectwgfillinfo",
-      "application/json",
-      null,
-      function (res) {
-        if (res.code === 0) {
-          that.setData({
-            isDev: res.wgFillInfo.isDev,
-          });
-        }
+  /**
+   * 更多菜单点击事件
+   */
+  onMoreMenuTap() {
+    wx.showActionSheet({
+      itemList: ['分享给好友', '意见反馈', '关于我们'],
+      success: (res) => {
+        console.log('点击了第' + (res.tapIndex + 1) + '个菜单');
       }
-    );
-  },
-  // 跳转  立即升级vip
-  seeMember: function () {
-    if (util.UserLoginStatus()) {
-      wx.navigateTo({
-        url: "/pages/myMember/myMember",
-      });
-    }
+    });
   },
-  // 跳转  01. 我的兼职
-  seeTimejob() {
+
+  /**
+   * 头像点击事件
+   */
+  onAvatarTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx: wx.navigateTo({
-      url: "/pages/my/myTimejob/myTimejob",
+    wx.navigateTo({
+      url: "/pages/my/myData/myData",
     });
   },
-  // 跳转  02. 我的活动
-  seePlay() {
+
+  /**
+   * 二维码点击事件
+   */
+  onQRCodeTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx: wx.navigateTo({
-      url: "/pages/my/myPlay/myPlay",
-    });
-  },
-
-  seeMeet() {
     wx.navigateTo({
-      url: "/meet/meet/meet",
+      url: "/invitationCode/index",
     });
   },
 
-  // 跳转  03. 我的旅游
-  seeTravel: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myTravel/myTravel",
-    });
+  /**
+   * VIP升级点击事件
+   */
+  onVipUpgradeTap() {
+    // wx.navigateTo({
+    //   url: '/pages/my/index1/index'
+    // });
+    if (util.UserLoginStatus()) {
+      wx.navigateTo({
+        url: "/pages/myMember/myMember",
+      });
+    }
   },
 
-  // 跳转  04 . 我的课程
-  seeCourse: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myCourse/myCourse",
-    });
-  },
-  // 跳转  1. 我的收藏
-  seeCollection: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myCollection/myCollection",
-    });
-  },
-  // 跳转  2. 我的钱包
-  seeMoney: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myMoney/myMoney",
+  /**
+   * 积分点击事件
+   */
+  onPointsTap() {
+    wx.navigateTo({
+      url: "/pages/my/integral/integral?id=" + this.data.userInfo.id,
     });
   },
-  // 跳转  3. 个人资料
-  seeData: function () {
-    wx: wx.navigateTo({
-      url: "/pages/my/myData/myData",
-    });
+  /**
+   * 积分任务点击事件
+   */
+  onPointsTask() {
+
   },
-  // 跳转  4. 常见问题
-  seeProblem() {
+  /**
+   * 兼职报名点击事件
+   */
+  onJobRegistrationTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx: wx.navigateTo({
-      url: "/pages/my/myProblem/myProblem",
+    wx.navigateTo({
+      url: "/pages/my/myTimejob/myTimejob",
     });
   },
-  // 跳转  5. 联系客户
-  seeCustomer() {
+
+  /**
+   * 活动报名点击事件
+   */
+  onActivityRegistrationTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx: wx.navigateTo({
-      url: "/pages/my/myCustomer/myCustomer",
+    wx.navigateTo({
+      url: "/pages/my/myPlay/myPlay",
     });
   },
-  //跳转我的邀请码
-  toInvitationCode() {
+
+  /**
+   * 学籍认证点击事件
+   */
+  onStudentVerificationTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
+    // if (!util.UserLoginStatus()) {
+    //   return false
+    // }
     wx.navigateTo({
-      url: "/invitationCode/index",
-    });
-  },
-  //跳转 积分兑换
-  toPointExchange() {
-    wx.navigateTo({
-      url: "/pointExchange/index",
+      url: "/pages/my/myStudy/myStudy",
     });
   },
-  //跳转 支付记录
-  toOrderRecord() {
+
+  /**
+   * 每日签到点击事件
+   */
+  onDailySignTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx.navigateTo({
-      url: "/orderRecord/index",
+    wx.showToast({
+      title: '签到成功!',
+      icon: 'success'
     });
+    // TODO: 调用签到API
   },
+
   /**
-   * 跳转老师端
+   * 我的收藏点击事件
    */
-  tchCli() {
-    // wx.navigateToMiniProgram({
-    //   appId: 'wx2823536eae4c7513',
-    //   path: '/pages/homePage/homePage',
-    //   extraData: {
-    //     foo: 'bar'
-    //   },
-    //   envVersion: 'release',
-    //   success(res) {},
-    //   fail(e) {}
-    // })
-  },
-
-  // 学籍验证
-  studyVerify() {
+  onMyCollectionTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    // if (!util.UserLoginStatus()) {
-    //   return false
-    // }
     wx.navigateTo({
-      url: "/pages/my/myStudy/myStudy",
+      url: "/pages/my/myCollection/myCollection",
     });
   },
 
-  // 行家工作台
-  handleWork() {
+  /**
+   * 常见问题点击事件
+   */
+  onFAQTap() {
+    // if (!this.data.isLogin) {
+    //   wx.navigateTo({
+    //     url: '/pages/login',
+    //   })
+    //   return false
+    // }
     wx.navigateTo({
-      url: "/workbench/work/work?id=" + this.data.User.id,
+      url: "/pages/my/myProblem/myProblem",
     });
   },
 
-  // 我的邀请
-  handleInvite() {
+  /**
+   * 我的设置点击事件
+   */
+  onMySettingsTap() {
     if (!this.data.isLogin) {
       wx.navigateTo({
         url: '/pages/login',
       })
       return false
     }
-    wx.navigateTo({
-      url: "/pages/my/myInvite/myInvite",
-    });
-  },
-
-  // 发布兼职
-  handleParttime() {
-    wx.navigateTo({
-      url: "/job/postJob/index",
-    });
-  },
-
-  // 发布活动
-  handleActivity() {
-    wx.navigateTo({
-      url: "/activity/activity/release?memberId=" + this.data.User.id,
-    });
-  },
-
-  /**
-   * 退出
-   */
-  signOut() {
     wx.navigateTo({
       url: "/pages/my/set/set",
     });
   },
-  /**
-   * 生命周期函数--监听页面加载
-   */
-  onLoad: function (options) {
-    // this.loadUser();
-    this.height();
-  },
-  loadUser() {
-    let _this = this;
-    let User = util.getUser();
-    /**
-     * 查询用户级别
-     */
-    var userLv = null;
-    const USER = wx.getStorageSync("USER");
-    _this.setData({
-      "params.id": USER.id,
-      "params.vipname": USER.vipname,
-      "params.memberphoto": USER.memberphoto,
-    });
-    if (USER !== "0" && USER) {
-      let lvcode = USER.cardtype;
-      App._post_form(
-        "bizcatelog/apiSelectBizcatelog/cardtype",
-        "",
-        null,
-        function (res) {
-          if (res.code === 0) {
-            let dict = res.dictList;
-            for (let i = 0; i < dict.length; i++) {
-              if (dict[i].itemcode === lvcode) {
-                userLv = dict[i];
-              }
-            }
-            if (userLv.attribute1 === "0") {
-              _this.setData({
-                isVip: true,
-              });
-            } else {
-              _this.setData({
-                isVip: false,
-              });
-            }
 
-            if (userLv) {
-              _this.setData({
-                userLv,
-              });
-            }
-          }
+  // 判断是否开发huanjing
+  env() {
+    let that = this;
+    app._post_form(
+      "wgfillinfo/apiSelectwgfillinfo",
+      "application/json",
+      null,
+      function (res) {
+        if (res.code === 0) {
+          that.setData({
+            isDev: res.wgFillInfo.isDev,
+          });
         }
-      );
-    } else {
-      wx.showToast({
-        title: "没有用户信息",
-        icon: "none",
-      });
-      wx.navigateTo({
-        url: "/pages/login",
-      });
-      //   wx.switchtab({
-      //     url:'/pages/my/index/index'
-      //  })
-      return false;
-    }
-    if (User) {
-      _this.setData({
-        User,
-      });
-    }
-  },
-  /**
-   * 生命周期函数--监听页面初次渲染完成
-   */
-  onReady: function () {},
-
-  /**
-   * 生命周期函数--监听页面显示
-   */
-  onShow: function () {
-    let _this = this;
-    _this.env();
-    if (util.getUserId()) {
-      _this.PushVipInfo();
-      this.setData({
-        isLogin: true
-      })
-    } else {
-      this.setData({
-        isLogin: false
-      })
-    }
-    // util.UserLoginStatus();
-  },
-  updateUserInfo(e) {
-    wx.switchTab({
-      url: "/pages/my/index/index",
-    });
+      }
+    );
   },
 
   /**
-   * 查询用户数据根据id
-   */
+    * 查询用户数据根据id
+    */
   PushVipInfo() {
     let _this = this;
     let id = util.getUserId();
@@ -435,15 +276,16 @@ Page({
       let parm = {
         id,
       };
-      App._post_form(
+      app._post_form(
         "member/apiSelectMeberInfo",
         "application/json",
         JSON.stringify(parm),
         function (res) {
+          console.log(res);
           if (res.code === 0) {
             wx.setStorageSync("USER", res.member);
             _this.setData({
-              User: res.member,
+              userInfo: res.member,
             });
             // _this.loadUser()
           } else {
@@ -455,62 +297,71 @@ Page({
         }
       );
     }
-    // if (openid) {
-    //   let parm = {
-    //     openid
-    //   }
-    //   App._post_form('member/apiSelectMeberInfo', 'application/json', JSON.stringify(parm), function (res) {
-    //     if (res.code === 0) {
-    //       wx.setStorageSync("USER", res.member)
-    //       _this.setData({
-    //         User: res.member
-    //       })
-    //       // _this.loadUser()
-    //     } else {
-    //       wx.removeStorageSync("USER");
-    //       wx.navigateTo({
-    //         url: '/pages/login',
-    //       })
-    //     }
-    //   })
-    // }
+  },
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+    this.height();
   },
 
-  // 消息通知
-  handleMsg() {
-    if (!this.data.isLogin) {
-      wx.navigateTo({
-        url: '/pages/login',
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+    // 页面渲染完成
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+    let _this = this;
+    _this.env();
+    if (util.getUserId()) {
+      _this.PushVipInfo();
+      this.setData({
+        isLogin: true
+      })
+    } else {
+      this.setData({
+        isLogin: false
       })
-      return false
     }
-    wx.navigateTo({
-      url: "/msg/pages/index/index",
-    });
   },
 
   /**
    * 生命周期函数--监听页面隐藏
    */
-  onHide: function () {},
+  onHide() {
+    // 页面隐藏
+  },
 
   /**
    * 生命周期函数--监听页面卸载
    */
-  onUnload: function () {},
+  onUnload() {
+    // 页面卸载
+  },
 
   /**
    * 页面相关事件处理函数--监听用户下拉动作
    */
-  onPullDownRefresh: function () {},
+  onPullDownRefresh() {
+    wx.stopPullDownRefresh();
+  },
 
   /**
    * 页面上拉触底事件的处理函数
    */
-  onReachBottom: function () {},
+  onReachBottom() {
+    // 个人中心页面不需要上拉加载
+  },
 
   /**
    * 用户点击右上角分享
    */
-  onShareAppMessage: function () {},
+  onShareAppMessage() {
+
+  }
 });

+ 4 - 1
pages/my/index/index.json

@@ -1,4 +1,7 @@
 {
   "navigationBarTitleText": "我的",
-  "navigationStyle": "custom"
+  "navigationStyle": "custom",
+  "enablePullDownRefresh": true,
+  "backgroundTextStyle": "dark",
+  "usingComponents": {}
 }

+ 109 - 202
pages/my/index/index.wxml

@@ -1,221 +1,128 @@
 <!-- pages/my/index/index.wxml -->
-<!-- 我的 主页 -->
-<view class="mycontent">
-  <!-- 自定义头部 -->
-  <view class="mybg" style="height: calc(350rpx + {{statusBarHeight}})"></view>
-  <view class="diy-top" style="height:{{statusBarHeight}}">
-    <view class="diy-menu" style="margin-top:{{statusBarMH}}">个人中心</view>
-  </view>
-  <view style="display:inline-table;width:100%;height:{{statusBarHeight}}"></view>
-  <!-- <view class="top-g"></view> -->
-  <view class="myc">
-    <!-- start 头部  -->
-    <view class='wd-top'>
-      <view class="flex-bet user-info flex-a-center user-wd-top">
-        <view class='wd-top-l flex-right flex-a-center flex-end uwrap'>
-          <image mode="aspectFill" src='{{User.memberphoto?User.memberphoto:(appAssetsUrl+"/images/bz1_nor.png")}}' class="avatar" bindtap="seeMydata"></image>
-          <view class="userinfot">
-            <view class="big">
-              {{User.vipname===null?'--':User.vipname}}
-              <image wx:if="{{ User.sex }}" mode="aspectFill" src="{{ User.sex == '010' ? appAssetsUrl2+'wjxy/man.png' : appAssetsUrl2+'wjxy/wumen.png'}}" class="sex" />
+<view class="mycontent" style="background-image: url('/assets/images/user-icon/user-bg.png');">
+    <!-- 自定义导航栏 -->
+    <view class="custom-navbar" style="background-image: url('/assets/images/user-icon/user-bg1.png');padding-top:{{statusBarHeightTop}}">
+        <view class="navbar-content" style="padding-top:{{statusBarHeightTop}}">
+            <view class="navbar-left">
+                <view class="customer-service" bindtap="onCustomerServiceTap">
+                    <image src="/assets/images/user-icon/icon_5.png" class="service-icon"></image>
+                    <text>客服</text>
+                </view>
             </view>
-            <view wx:if="{{!isLogin}}" bindtap="toLogin">点击登录</view>
-            <block wx:else="">
-              <view class="integral" bindtap="integralHandle">我的积分:{{User.totalPoints || 0}}</view>
-              <view class="auth">
-                <i class="iconfont1 icon-guanliyuanrenzheng_o icon-auth"></i>
-                <text class="auth-word">{{User.isStudentStatus == 0 ? '未认证' : '已认证' }}</text>
-              </view>
-            </block>
-          </view>
-        </view>
-        <view class='wd-top-r flex-a-center flex-left useredit' bindtap='seeData'>
-          <!-- <i class="iconfont icon-bianji icon-edit"></i> -->
-          <image mode="aspectFill" src='/assets/images/menu.png' class="menu"></image>
-          <text class="user-text">个人主页 ></text>
-        </view>
-      </view>
-
-      <!-- 2022/8/19 start-->
-      <view bindtap='seeMember' wx:if="{{!isDev && isLogin}}" class='mine-member wd-top-c  updatevip' style="background-image: url({{appAssetsUrl2}}wjxy/mine/member.png);">
-        <view class='card'>
-          <image class='micon' src='{{appAssetsUrl}}/images/my/vip.png'></image>
-          <text class='ml10 no'>{{User.memberState == 0 ? '普通用户' : '青雲慧会员'}}</text>
-          <text class="cardNum">卡号:{{User.cardno}}</text>
-        </view>
-        <view class="tip-box">
-          <view class="tip">
-            <text wx:if="{{User.memberState == 0}}">升级享受更多权益</text>
-            <text wx:if="{{User.memberState == 1}}">有效期:{{User.expireTime}}</text>
-            <text wx:if="{{User.memberState == 2}}">有效期:终生有效</text>
-            <text wx:if="{{User.memberState == 3}}">有效期:{{User.expireTime}}</text>
-            <!-- <text>{{User.memberState == 0 ?'升级会员立享更多权益': User.expireTime ? ('有效期:' + User.expireTime) : ''}}</text> -->
-            <!-- <text>有效期:2022年4月14日</text> -->
-          </view>
-          <view class='open'>
-            <text wx:if="{{User.memberState == 0}}">查看权益</text>
-            <text wx:if="{{User.memberState == 1}}">查看权益</text>
-            <!-- <text>{{User.memberState == 0?'立即开通':'立刻升级'}}</text> -->
-            <i class="iconfont icon-jiantou righticon" wx:if="{{User.memberState != 2}}"></i>
-          </view>
-        </view>
-      </view>
-      <!-- 2022/8/19 end -->
-
-      <!-- 我的报名 -->
-      <view class='mt20 user-menu-body'>
-        <view class='title'>
-          <text>我的报名</text>
-        </view>
-        <view class="split"></view>
-        <view class="box">
-          <view class="tool" bindtap="seeTimejob">
-
-            <image src="{{appAssetsUrl2}}wjxy/mine/parttime.png" alt="" />
-            <text>我的兼职</text>
-          </view>
-          <view class="tool" bindtap="seePlay">
-
-            <image src="{{appAssetsUrl2}}wjxy/mine/activity.png" alt="" />
-            <text>我的活动</text>
-          </view>
-          <!-- <view class="tool" bindtap="seeMeet">
-
-            <image src="{{appAssetsUrl2}}wjxy/mine/meet.png" alt="" />
-            <text>我的约见</text>
-          </view> -->
-        </view>
-      </view>
-    </view>
-    <!-- /* 背景 小条框 */ -->
-    <!-- <view class='bj-center w100 mt10'></view> -->
-    <!-- 扫码签到 -->
-    <view class="list-box-list">
-      <view class="box-bot-header">
-        其他工具
-      </view>
-      <view class="split"></view>
-      <view class="box-bt-box">
-        <!-- <view class='box-bt' bindtap='scanCode'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set1.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              扫码签到
+            <view class="navbar-center">
+                <text class="navbar-title">我的</text>
             </view>
-          </view>
-        </view> -->
-        <view class='box-bt' bindtap='studyVerify' wx:if="{{ !isDev }}">
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:53rpx;height:48rpx;" class='<strong>micons</strong>' src='{{appAssetsUrl2}}wjxy/mine/study.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              学籍验证
-            </view>
-          </view>
         </view>
-        <view class='box-bt' bindtap='toInvitationCode'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image class='micons' style="width:50rpx;height:51rpx;" src='{{appAssetsUrl2}}wjxy/mine/inviteCode.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              邀请码
+        <!-- 用户信息区域 -->
+        <view class="head">
+            <view class="user-info-container">
+                <view class="user-basic-info">
+                    <view class="avatar-section">
+                        <image src='{{userInfo.memberphoto?userInfo.memberphoto:(appAssetsUrl+"images/bz1_nor.png")}}' class="user-avatar" bindtap="onAvatarTap"></image>
+                    </view>
+                    <view class="user-details" wx:if="{{isLogin}}" bindtap="onAvatarTap">
+                        <view class="user-name-row">
+                            <text class="user-name">{{userInfo.vipname || '--'}}</text>
+                            <!-- <image src="{{appAssetsUrl2}}my/vip-crown.png" class="vip-icon" wx:if="{{userInfo.isVip}}"></image> -->
+                            <image src="/assets/images/login.png" class="vip-icon" wx:if="{{userInfo.isVip}}"></image>
+                            <!-- <view class="gender-icon {{userInfo.gender === 'female' ? 'female' : 'male'}}">
+                                    <text>{{userInfo.gender === 'female' ? '♀' : '♂'}}</text>
+                                </view> -->
+                            <image wx:if="{{userInfo.sex}}" mode="aspectFill" src="{{ userInfo.sex == '010' ? appAssetsUrl2+'wjxy/man.png' : appAssetsUrl2+'wjxy/wumen.png'}}" class="sex" />
+                        </view>
+                        <view class="user-id-row">
+                            <text class="user-id">ID: {{userInfo.id || ''}}</text>
+                            <view class="check-in" wx:if="{{userInfo.isVip}}">
+                                <text>签到</text>
+                            </view>
+                        </view>
+                    </view>
+                    <view wx:if="{{!isLogin}}" bindtap="toLogin">点击登录</view>
+                    <view class="qr-code-section" bindtap="onQRCodeTap" wx:if="{{isLogin}}">
+                        <!-- <image src="{{appAssetsUrl2}}my/qrcode-icon.png" class="qr-icon"></image> -->
+                        <image src='/assets/images/user-icon/inviteCode.png' class="qr-icon"></image>
+                        <view class="qr-text">会员码</view>
+                    </view>
+                </view>
+                <!-- 会员升级提示 -->
+                <view class="vip-upgrade-banner" bindtap="onVipUpgradeTap" style="background-image: url('/assets/images/user-icon/vip-upgrade-bg.png');">
+                    <view class="vip-banner-left" wx:if="{{userInfo.memberState != 0}}">
+                        <image src="/assets/images/user-icon/vip-icon.png" class="upgrade-icon"></image>
+                        <text class="upgrade-text">青雲慧 {{userInfo.cardno}}</text>
+                    </view>
+                    <view class="vip-banner-left" wx:else>
+                        <image src="/assets/images/user-icon/vip-icon.png" class="upgrade-icon"></image>
+                        <text class="upgrade-text">升级会员立享更多权益</text>
+                    </view>
+                    <view class="vip-banner-right">
+                        <text class="upgrade-btn">{{  userInfo.memberState == 0 ? '开通会员' : '升级会员' }}</text>
+                        <text class="iconfont icon-jiantou righticon"></text>
+                    </view>
+                </view>
             </view>
-          </view>
         </view>
-        <!-- <view class='box-bt' bindtap='toPointExchange'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set3.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              积分兑换
-            </view>
-          </view>
-        </view> -->
-        <!-- <view class='box-bt' bindtap='seeCollection'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set4.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              我的收藏
-            </view>
-          </view>
-        </view> -->
-        <view class='box-bt' bindtap='toOrderRecord'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:51rpx;height:55rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/pay.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              订单管理
-            </view>
-          </view>
-        </view>
-        <view class='box-bt' bindtap='seeCustomer'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:58rpx;height:50rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/customer.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              联系客服
+    </view>
+    <!-- 主要内容区域 -->
+    <view class="main-content">
+        <!-- 我的积分 -->
+        <view class="points-card">
+            <view class="points-left">
+                <image src="/assets/images/user-icon/user-brick.png" class="points-icon"></image>
+                <view class="points-info" bindtap="onPointsTap">
+                    <text class="points-label">我的积分</text>
+                    <text class="points-value">{{userInfo.totalPoints || 0}}</text>
+                </view>
             </view>
-          </view>
-        </view>
-        <view class='box-bt' bindtap='seeProblem'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:53rpx;height:53rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/question.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              常见问题
+            <view class="points-right" bindtap="onPointsTask">
+                <text class="points-action">做任务</text>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
         </view>
-        <view class='box-bt' bindtap='signOut'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:53rpx;height:52rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/set.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              设置
+        <!-- 我的报名 -->
+        <view class="my-registration">
+            <view class="section-title">我的报名</view>
+            <view class="registration-cards">
+                <image src="/assets/images/user-icon/user-job-icon.png" class="card-icon" bindtap="onJobRegistrationTap"></image>
+                <image src="/assets/images/user-icon/user-activity-icon.png" class="card-icon" bindtap="onActivityRegistrationTap"></image>
             </view>
-          </view>
         </view>
-        <!-- <view class='box-bt' bindtap='handleWork' wx:if="{{User.memberRoleStatus == 3 || User.memberRoleStatus == 4 || User.memberRoleStatus == 5}}">
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:52rpx;height:49rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/work.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              行家工作台
+        <!-- 功能菜单列表 -->
+        <view class="menu-list">
+            <view class="menu-item" bindtap="onStudentVerificationTap">
+                <view class="menu-left">
+                    <image src="/assets/images/user-icon/icon_1.png" class="menu-icon"></image>
+                    <text class="menu-text">学籍认证</text>
+                </view>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
-        </view> -->
-        <!--  -->
-        <view class='box-bt' bindtap='handleInvite' wx:if="{{User.memberRoleStatus == 2 || User.memberRoleStatus == 5}}">
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:51rpx;height:58rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/invite.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              我的邀请
+            <view class="menu-item" bindtap="onDailySignTap">
+                <view class="menu-left">
+                    <image src="/assets/images/user-icon/icon_2.png" class="menu-icon"></image>
+                    <text class="menu-text">每日签到</text>
+                </view>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
-        </view>
-        <!--   -->
-        <!--  -->
-        <view class='box-bt' bindtap='handleParttime' wx:if="{{User.memberRoleStatus == 1 || User.memberRoleStatus == 4}}">
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:52rpx;height:49rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/releaseParttime.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              发布兼职
+            <view class="menu-item" bindtap="onMyCollectionTap">
+                <view class="menu-left">
+                    <image src="/assets/images/user-icon/icon_3.png" class="menu-icon"></image>
+                    <text class="menu-text">我的收藏</text>
+                </view>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
-        </view>
-        <!--  -->
-        <view class='box-bt' bindtap='handleActivity' wx:if="{{User.memberRoleStatus != 3 && User.memberRoleStatus != null}}">
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:58rpx;height:58rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/releaseActivity.png'></image>
-            <view class='w90 flex-bet   my-txt'>
-              发布活动
+            <view class="menu-item" bindtap="onFAQTap">
+                <view class="menu-left">
+                    <image src="/assets/images/user-icon/icon_4.png" class="menu-icon"></image>
+                    <text class="menu-text">常见问题</text>
+                </view>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
-        </view>
-        <view class='box-bt' bindtap='handleMsg'>
-          <view class='box-1-bt pl10 pt10 flex-a-center'>
-            <image style="width:58rpx;height:58rpx;" class='micons' src="{{appAssetsUrl2+'new/msg.png'}}"></image>
-            <view class='w90 flex-bet   my-txt'>
-              消息通知
+            <view class="menu-item" bindtap="onMySettingsTap">
+                <view class="menu-left">
+                    <image src="/assets/images/user-icon/icon_5.png" class="menu-icon"></image>
+                    <text class="menu-text">我的设置</text>
+                </view>
+                <text class="iconfont icon-jiantou righticon"></text>
             </view>
-          </view>
         </view>
-      </view>
     </view>
-  </view>
-  <!-- <button class="custCare" open-type="contact" session-from="sessionFrom">
-    <image mode="aspectFill" src="{{appAssetsUrl}}/images/custCare.png"></image>
-  </button> -->
 </view>

Разница между файлами не показана из-за своего большого размера
+ 255 - 581
pages/my/index/index.wxss


+ 66 - 0
pages/my/index/index1.js

@@ -0,0 +1,66 @@
+// pages/my/index/index1.js
+Page({
+
+  /**
+   * 页面的初始数据
+   */
+  data: {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad(options) {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide() {
+
+  },
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload() {
+
+  },
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh() {
+
+  },
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom() {
+
+  },
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage() {
+
+  }
+})

+ 2 - 0
pages/my/index/index1.wxml

@@ -0,0 +1,2 @@
+<!--pages/my/index/index1.wxml-->
+<text>pages/my/index/index1.wxml</text>

+ 516 - 0
pages/my/index1/index.js

@@ -0,0 +1,516 @@
+// pages/my/index/index.js
+const util = require("../../../utils/util");
+const App = getApp();
+
+Page({
+  /**
+   * 页面的初始数据
+   */
+  data: {
+    appAssetsUrl: App.appAssetsUrl,
+    appAssetsUrl2: App.appAssetsUrl2,
+    isVip: false,
+    isLogin: false,
+    parm: {
+      sid: "",
+      wid: "",
+      statusBarHeight: 0,
+      statusBarMH: 0,
+    },
+    params: {
+      id: "",
+      vipname: "",
+      memberphoto: "",
+    },
+    isDev: false,
+  },
+  // 自定义高度
+  // 自定义高度处理
+  height() {
+    const {
+      platform,
+      statusBarHeight
+    } = wx.getSystemInfoSync();
+    let height = statusBarHeight + 4; //ios 24px
+    let mH = statusBarHeight + 4;
+    if (platform.toLowerCase() == "android") {
+      height += 4; //android 28px
+      mH += 4;
+    }
+    height = height + 38;
+    // 胶囊高度 32px 下边框6px height 状态栏高度
+    this.setData({
+      statusBarHeight: height + "px",
+      statusBarMH: mH + "px",
+    });
+  },
+
+  scanCode() {
+    // 只允许从相机扫码
+    let _this = this;
+    if (util.UserLoginStatus()) {
+      wx.scanCode({
+        onlyFromCamera: true,
+        scanType: "qrCode",
+        success(res) {
+          if (
+            res.errMsg === "scanCode:ok" &&
+            res.result !== "" &&
+            res.result !== null
+          ) {
+            _this.data.parm.wid = res.result;
+            _this.data.parm.sid = util.getUserId();
+            App._post_form(
+              "work/signup",
+              "application/json",
+              JSON.stringify(_this.data.parm),
+              function (res) {
+                if (res.code === 0) {
+                  wx.showModal({
+                    title: "温馨提示",
+                    content: "您已签到成功!",
+                    showCancel: false,
+                  });
+                } else {
+                  wx.showModal({
+                    title: "温馨提示",
+                    content: res.msg,
+                    showCancel: false,
+                  });
+                }
+              }
+            );
+          } else {
+            wx.showModal({
+              title: "温馨提示",
+              content: "签到失败了!",
+              showCancel: false,
+            });
+          }
+        },
+      });
+    }
+  },
+
+  // 我的积分
+  integralHandle() {
+    wx.navigateTo({
+      url: "/pages/my/integral/integral?id=" + this.data.User.id,
+    });
+  },
+
+  // 跳转  个人资料
+  seeMydata: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myData/myData",
+    });
+  },
+  toLogin() {
+    wx.navigateTo({
+      url: "/pages/login",
+    });
+  },
+  // 判断是否开发huanjing
+  env() {
+    let that = this;
+    App._post_form(
+      "wgfillinfo/apiSelectwgfillinfo",
+      "application/json",
+      null,
+      function (res) {
+        if (res.code === 0) {
+          that.setData({
+            isDev: res.wgFillInfo.isDev,
+          });
+        }
+      }
+    );
+  },
+  // 跳转  立即升级vip
+  seeMember: function () {
+    if (util.UserLoginStatus()) {
+      wx.navigateTo({
+        url: "/pages/myMember/myMember",
+      });
+    }
+  },
+  // 跳转  01. 我的兼职
+  seeTimejob() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx: wx.navigateTo({
+      url: "/pages/my/myTimejob/myTimejob",
+    });
+  },
+  // 跳转  02. 我的活动
+  seePlay() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx: wx.navigateTo({
+      url: "/pages/my/myPlay/myPlay",
+    });
+  },
+
+  seeMeet() {
+    wx.navigateTo({
+      url: "/meet/meet/meet",
+    });
+  },
+
+  // 跳转  03. 我的旅游
+  seeTravel: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myTravel/myTravel",
+    });
+  },
+
+  // 跳转  04 . 我的课程
+  seeCourse: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myCourse/myCourse",
+    });
+  },
+  // 跳转  1. 我的收藏
+  seeCollection: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myCollection/myCollection",
+    });
+  },
+  // 跳转  2. 我的钱包
+  seeMoney: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myMoney/myMoney",
+    });
+  },
+  // 跳转  3. 个人资料
+  seeData: function () {
+    wx: wx.navigateTo({
+      url: "/pages/my/myData/myData",
+    });
+  },
+  // 跳转  4. 常见问题
+  seeProblem() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx: wx.navigateTo({
+      url: "/pages/my/myProblem/myProblem",
+    });
+  },
+  // 跳转  5. 联系客户
+  seeCustomer() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx: wx.navigateTo({
+      url: "/pages/my/myCustomer/myCustomer",
+    });
+  },
+  //跳转我的邀请码
+  toInvitationCode() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx.navigateTo({
+      url: "/invitationCode/index",
+    });
+  },
+  //跳转 积分兑换
+  toPointExchange() {
+    wx.navigateTo({
+      url: "/pointExchange/index",
+    });
+  },
+  //跳转 支付记录
+  toOrderRecord() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx.navigateTo({
+      url: "/orderRecord/index",
+    });
+  },
+  /**
+   * 跳转老师端
+   */
+  tchCli() {
+    // wx.navigateToMiniProgram({
+    //   appId: 'wx2823536eae4c7513',
+    //   path: '/pages/homePage/homePage',
+    //   extraData: {
+    //     foo: 'bar'
+    //   },
+    //   envVersion: 'release',
+    //   success(res) {},
+    //   fail(e) {}
+    // })
+  },
+
+  // 学籍验证
+  studyVerify() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    // if (!util.UserLoginStatus()) {
+    //   return false
+    // }
+    wx.navigateTo({
+      url: "/pages/my/myStudy/myStudy",
+    });
+  },
+
+  // 行家工作台
+  handleWork() {
+    wx.navigateTo({
+      url: "/workbench/work/work?id=" + this.data.User.id,
+    });
+  },
+
+  // 我的邀请
+  handleInvite() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx.navigateTo({
+      url: "/pages/my/myInvite/myInvite",
+    });
+  },
+
+  // 发布兼职
+  handleParttime() {
+    wx.navigateTo({
+      url: "/job/postJob/index",
+    });
+  },
+
+  // 发布活动
+  handleActivity() {
+    wx.navigateTo({
+      url: "/activity/activity/release?memberId=" + this.data.User.id,
+    });
+  },
+
+  /**
+   * 退出
+   */
+  signOut() {
+    wx.navigateTo({
+      url: "/pages/my/set/set",
+    });
+  },
+  /**
+   * 生命周期函数--监听页面加载
+   */
+  onLoad: function (options) {
+    // this.loadUser();
+    this.height();
+  },
+  loadUser() {
+    let _this = this;
+    let User = util.getUser();
+    /**
+     * 查询用户级别
+     */
+    var userLv = null;
+    const USER = wx.getStorageSync("USER");
+    _this.setData({
+      "params.id": USER.id,
+      "params.vipname": USER.vipname,
+      "params.memberphoto": USER.memberphoto,
+    });
+    if (USER !== "0" && USER) {
+      let lvcode = USER.cardtype;
+      App._post_form(
+        "bizcatelog/apiSelectBizcatelog/cardtype",
+        "",
+        null,
+        function (res) {
+          if (res.code === 0) {
+            let dict = res.dictList;
+            for (let i = 0; i < dict.length; i++) {
+              if (dict[i].itemcode === lvcode) {
+                userLv = dict[i];
+              }
+            }
+            if (userLv.attribute1 === "0") {
+              _this.setData({
+                isVip: true,
+              });
+            } else {
+              _this.setData({
+                isVip: false,
+              });
+            }
+
+            if (userLv) {
+              _this.setData({
+                userLv,
+              });
+            }
+          }
+        }
+      );
+    } else {
+      wx.showToast({
+        title: "没有用户信息",
+        icon: "none",
+      });
+      wx.navigateTo({
+        url: "/pages/login",
+      });
+      //   wx.switchtab({
+      //     url:'/pages/my/index/index'
+      //  })
+      return false;
+    }
+    if (User) {
+      _this.setData({
+        User,
+      });
+    }
+  },
+  /**
+   * 生命周期函数--监听页面初次渲染完成
+   */
+  onReady: function () {},
+
+  /**
+   * 生命周期函数--监听页面显示
+   */
+  onShow: function () {
+    let _this = this;
+    _this.env();
+    if (util.getUserId()) {
+      _this.PushVipInfo();
+      this.setData({
+        isLogin: true
+      })
+    } else {
+      this.setData({
+        isLogin: false
+      })
+    }
+    // util.UserLoginStatus();
+  },
+  updateUserInfo(e) {
+    wx.switchTab({
+      url: "/pages/my/index/index",
+    });
+  },
+
+  /**
+   * 查询用户数据根据id
+   */
+  PushVipInfo() {
+    let _this = this;
+    let id = util.getUserId();
+    let openid = wx.getStorageSync("openid");
+    if (id) {
+      let parm = {
+        id,
+      };
+      App._post_form(
+        "member/apiSelectMeberInfo",
+        "application/json",
+        JSON.stringify(parm),
+        function (res) {
+          if (res.code === 0) {
+            wx.setStorageSync("USER", res.member);
+            _this.setData({
+              User: res.member,
+            });
+            // _this.loadUser()
+          } else {
+            wx.removeStorageSync("USER");
+            wx.navigateTo({
+              url: "/pages/login",
+            });
+          }
+        }
+      );
+    }
+    // if (openid) {
+    //   let parm = {
+    //     openid
+    //   }
+    //   App._post_form('member/apiSelectMeberInfo', 'application/json', JSON.stringify(parm), function (res) {
+    //     if (res.code === 0) {
+    //       wx.setStorageSync("USER", res.member)
+    //       _this.setData({
+    //         User: res.member
+    //       })
+    //       // _this.loadUser()
+    //     } else {
+    //       wx.removeStorageSync("USER");
+    //       wx.navigateTo({
+    //         url: '/pages/login',
+    //       })
+    //     }
+    //   })
+    // }
+  },
+
+  // 消息通知
+  handleMsg() {
+    if (!this.data.isLogin) {
+      wx.navigateTo({
+        url: '/pages/login',
+      })
+      return false
+    }
+    wx.navigateTo({
+      url: "/msg/pages/index/index",
+    });
+  },
+
+  /**
+   * 生命周期函数--监听页面隐藏
+   */
+  onHide: function () {},
+
+  /**
+   * 生命周期函数--监听页面卸载
+   */
+  onUnload: function () {},
+
+  /**
+   * 页面相关事件处理函数--监听用户下拉动作
+   */
+  onPullDownRefresh: function () {},
+
+  /**
+   * 页面上拉触底事件的处理函数
+   */
+  onReachBottom: function () {},
+
+  /**
+   * 用户点击右上角分享
+   */
+  onShareAppMessage: function () {},
+});

+ 4 - 0
pages/my/index1/index.json

@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "我的",
+  "navigationStyle": "custom"
+}

+ 221 - 0
pages/my/index1/index.wxml

@@ -0,0 +1,221 @@
+<!-- pages/my/index/index.wxml -->
+<!-- 我的 主页 -->
+<view class="mycontent">
+  <!-- 自定义头部 -->
+  <view class="mybg" style="height: calc(350rpx + {{statusBarHeight}})"></view>
+  <view class="diy-top" style="height:{{statusBarHeight}}">
+    <view class="diy-menu" style="margin-top:{{statusBarMH}}">个人中心</view>
+  </view>
+  <view style="display:inline-table;width:100%;height:{{statusBarHeight}}"></view>
+  <!-- <view class="top-g"></view> -->
+  <view class="myc">
+    <!-- start 头部  -->
+    <view class='wd-top'>
+      <view class="flex-bet user-info flex-a-center user-wd-top">
+        <view class='wd-top-l flex-right flex-a-center flex-end uwrap'>
+          <image mode="aspectFill" src='{{User.memberphoto?User.memberphoto:(appAssetsUrl+"/images/bz1_nor.png")}}' class="avatar" bindtap="seeMydata"></image>
+          <view class="userinfot">
+            <view class="big">
+              {{User.vipname===null?'--':User.vipname}}
+              <image wx:if="{{ User.sex }}" mode="aspectFill" src="{{ User.sex == '010' ? appAssetsUrl2+'wjxy/man.png' : appAssetsUrl2+'wjxy/wumen.png'}}" class="sex" />
+            </view>
+            <view wx:if="{{!isLogin}}" bindtap="toLogin">点击登录</view>
+            <block wx:else="">
+              <view class="integral" bindtap="integralHandle">我的积分:{{User.totalPoints || 0}}</view>
+              <view class="auth">
+                <i class="iconfont1 icon-guanliyuanrenzheng_o icon-auth"></i>
+                <text class="auth-word">{{User.isStudentStatus == 0 ? '未认证' : '已认证' }}</text>
+              </view>
+            </block>
+          </view>
+        </view>
+        <view class='wd-top-r flex-a-center flex-left useredit' bindtap='seeData'>
+          <!-- <i class="iconfont icon-bianji icon-edit"></i> -->
+          <image mode="aspectFill" src='/assets/images/menu.png' class="menu"></image>
+          <text class="user-text">个人主页 ></text>
+        </view>
+      </view>
+
+      <!-- 2022/8/19 start-->
+      <view bindtap='seeMember' wx:if="{{!isDev && isLogin}}" class='mine-member wd-top-c  updatevip' style="background-image: url({{appAssetsUrl2}}wjxy/mine/member.png);">
+        <view class='card'>
+          <image class='micon' src='{{appAssetsUrl}}/images/my/vip.png'></image>
+          <text class='ml10 no'>{{User.memberState == 0 ? '普通用户' : '青雲慧会员'}}</text>
+          <text class="cardNum">卡号:{{User.cardno}}</text>
+        </view>
+        <view class="tip-box">
+          <view class="tip">
+            <text wx:if="{{User.memberState == 0}}">升级享受更多权益</text>
+            <text wx:if="{{User.memberState == 1}}">有效期:{{User.expireTime}}</text>
+            <text wx:if="{{User.memberState == 2}}">有效期:终生有效</text>
+            <text wx:if="{{User.memberState == 3}}">有效期:{{User.expireTime}}</text>
+            <!-- <text>{{User.memberState == 0 ?'升级会员立享更多权益': User.expireTime ? ('有效期:' + User.expireTime) : ''}}</text> -->
+            <!-- <text>有效期:2022年4月14日</text> -->
+          </view>
+          <view class='open'>
+            <text wx:if="{{User.memberState == 0}}">查看权益</text>
+            <text wx:if="{{User.memberState == 1}}">查看权益</text>
+            <!-- <text>{{User.memberState == 0?'立即开通':'立刻升级'}}</text> -->
+            <i class="iconfont icon-jiantou righticon" wx:if="{{User.memberState != 2}}"></i>
+          </view>
+        </view>
+      </view>
+      <!-- 2022/8/19 end -->
+
+      <!-- 我的报名 -->
+      <view class='mt20 user-menu-body'>
+        <view class='title'>
+          <text>我的报名</text>
+        </view>
+        <view class="split"></view>
+        <view class="box">
+          <view class="tool" bindtap="seeTimejob">
+
+            <image src="{{appAssetsUrl2}}wjxy/mine/parttime.png" alt="" />
+            <text>我的兼职</text>
+          </view>
+          <view class="tool" bindtap="seePlay">
+
+            <image src="{{appAssetsUrl2}}wjxy/mine/activity.png" alt="" />
+            <text>我的活动</text>
+          </view>
+          <!-- <view class="tool" bindtap="seeMeet">
+
+            <image src="{{appAssetsUrl2}}wjxy/mine/meet.png" alt="" />
+            <text>我的约见</text>
+          </view> -->
+        </view>
+      </view>
+    </view>
+    <!-- /* 背景 小条框 */ -->
+    <!-- <view class='bj-center w100 mt10'></view> -->
+    <!-- 扫码签到 -->
+    <view class="list-box-list">
+      <view class="box-bot-header">
+        其他工具
+      </view>
+      <view class="split"></view>
+      <view class="box-bt-box">
+        <!-- <view class='box-bt' bindtap='scanCode'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set1.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              扫码签到
+            </view>
+          </view>
+        </view> -->
+        <view class='box-bt' bindtap='studyVerify' wx:if="{{ !isDev }}">
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:53rpx;height:48rpx;" class='<strong>micons</strong>' src='{{appAssetsUrl2}}wjxy/mine/study.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              学籍验证
+            </view>
+          </view>
+        </view>
+        <view class='box-bt' bindtap='toInvitationCode'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image class='micons' style="width:50rpx;height:51rpx;" src='{{appAssetsUrl2}}wjxy/mine/inviteCode.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              邀请码
+            </view>
+          </view>
+        </view>
+        <!-- <view class='box-bt' bindtap='toPointExchange'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set3.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              积分兑换
+            </view>
+          </view>
+        </view> -->
+        <!-- <view class='box-bt' bindtap='seeCollection'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image class='micon ml30' src='{{appAssetsUrl}}/images/my/set4.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              我的收藏
+            </view>
+          </view>
+        </view> -->
+        <view class='box-bt' bindtap='toOrderRecord'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:51rpx;height:55rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/pay.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              订单管理
+            </view>
+          </view>
+        </view>
+        <view class='box-bt' bindtap='seeCustomer'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:58rpx;height:50rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/customer.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              联系客服
+            </view>
+          </view>
+        </view>
+        <view class='box-bt' bindtap='seeProblem'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:53rpx;height:53rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/question.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              常见问题
+            </view>
+          </view>
+        </view>
+        <view class='box-bt' bindtap='signOut'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:53rpx;height:52rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/set.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              设置
+            </view>
+          </view>
+        </view>
+        <!-- <view class='box-bt' bindtap='handleWork' wx:if="{{User.memberRoleStatus == 3 || User.memberRoleStatus == 4 || User.memberRoleStatus == 5}}">
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:52rpx;height:49rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/work.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              行家工作台
+            </view>
+          </view>
+        </view> -->
+        <!--  -->
+        <view class='box-bt' bindtap='handleInvite' wx:if="{{User.memberRoleStatus == 2 || User.memberRoleStatus == 5}}">
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:51rpx;height:58rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/invite.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              我的邀请
+            </view>
+          </view>
+        </view>
+        <!--   -->
+        <!--  -->
+        <view class='box-bt' bindtap='handleParttime' wx:if="{{User.memberRoleStatus == 1 || User.memberRoleStatus == 4}}">
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:52rpx;height:49rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/releaseParttime.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              发布兼职
+            </view>
+          </view>
+        </view>
+        <!--  -->
+        <view class='box-bt' bindtap='handleActivity' wx:if="{{User.memberRoleStatus != 3 && User.memberRoleStatus != null}}">
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:58rpx;height:58rpx;" class='micons' src='{{appAssetsUrl2}}wjxy/mine/releaseActivity.png'></image>
+            <view class='w90 flex-bet   my-txt'>
+              发布活动
+            </view>
+          </view>
+        </view>
+        <view class='box-bt' bindtap='handleMsg'>
+          <view class='box-1-bt pl10 pt10 flex-a-center'>
+            <image style="width:58rpx;height:58rpx;" class='micons' src="{{appAssetsUrl2+'new/msg.png'}}"></image>
+            <view class='w90 flex-bet   my-txt'>
+              消息通知
+            </view>
+          </view>
+        </view>
+      </view>
+    </view>
+  </view>
+  <!-- <button class="custCare" open-type="contact" session-from="sessionFrom">
+    <image mode="aspectFill" src="{{appAssetsUrl}}/images/custCare.png"></image>
+  </button> -->
+</view>

Разница между файлами не показана из-за своего большого размера
+ 733 - 0
pages/my/index1/index.wxss


Разница между файлами не показана из-за своего большого размера
+ 165 - 163
pages/my/myStudy/myStudy.wxss


+ 4 - 2
pages/my/set/set.wxml

@@ -1,5 +1,7 @@
-<!--pages/my/set/set.wxml-->
-<view class="item" bindtap="logout">退出登录</view>
+<!-- pages/my/set/set.wxml -->
+<view class="set-main">
+	<view class="item" bindtap="logout">退出登录</view>
+</view>
 <!-- <button class="custCare" open-type="contact" session-from="sessionFrom">
 	<image mode="aspectFill" src="{{appAssetsUrl}}/images/custCare.png"></image>
 </button> -->

+ 15 - 10
pages/my/set/set.wxss

@@ -1,11 +1,16 @@
 /* pages/my/set/set.wxss */
-
-.item{
-	width: 100%;
-	height: 102rpx;
-	line-height: 102rpx;
-	text-align: center;
-	background: #ffffff;
-	font-size: 32rpx;
-	color: #ff0000;
-}
+.set-main {
+  min-height: calc(100vh - 4rpx);
+  background: #f5f6fa;
+  padding: 20rpx 0;
+  box-sizing: border-box;
+}
+.item {
+  width: 100%;
+  height: 102rpx;
+  line-height: 102rpx;
+  text-align: center;
+  background: #ffffff;
+  font-size: 28rpx;
+  color: #ff0000;
+}