Browse Source

静态页面

xcx 4 years ago
parent
commit
7bce925956
1 changed files with 41 additions and 41 deletions
  1. 41
    41
      src/pages/HuoDong/HuoDongDetail/index.jsx

+ 41
- 41
src/pages/HuoDong/HuoDongDetail/index.jsx View File

6
 import Page from '@/layouts'
6
 import Page from '@/layouts'
7
 import toolclass from '@/utils/toolclass.js'
7
 import toolclass from '@/utils/toolclass.js'
8
 import { getShareObject } from '@/utils/share.js'
8
 import { getShareObject } from '@/utils/share.js'
9
+import GetUserPhone from '@/components/GetUserPhone/index'
9
 import '@/assets/css/reset.less'
10
 import '@/assets/css/reset.less'
10
 import '@/assets/css/iconfont.less'
11
 import '@/assets/css/iconfont.less'
11
 import './index.less'
12
 import './index.less'
15
   const { user } = useModel('user')
16
   const { user } = useModel('user')
16
   const [DataLock, setDataLock] = useState(false)
17
   const [DataLock, setDataLock] = useState(false)
17
   const [HasJoin, setHasJoin] = useState(null)
18
   const [HasJoin, setHasJoin] = useState(null)
18
-  const [IsSign, setIsSign] = useState(null)
19
+  const [HasSign, setHasSign] = useState(null)
20
+  const [CanJoin, setCanJoin] = useState(null)
19
   const [JoinBtnText, setJoinBtnText] = useState(null)
21
   const [JoinBtnText, setJoinBtnText] = useState(null)
20
   const [JoinBtnStatus, setJoinBtnStatus] = useState(false)
22
   const [JoinBtnStatus, setJoinBtnStatus] = useState(false)
23
+  const [ShowGetUserPhoneLayer, setShowGetUserPhoneLayer] = useState(false)
21
   const [CurrnetHuoDongId] = useState(Current.router.params.id) // 当前活动id
24
   const [CurrnetHuoDongId] = useState(Current.router.params.id) // 当前活动id
22
   const [ActivityDetail, setActivityDetail] = useState(null) // 活动详情
25
   const [ActivityDetail, setActivityDetail] = useState(null) // 活动详情
23
 
26
 
37
     if (ActivityDetail !== null) {
40
     if (ActivityDetail !== null) {
38
       ToSetJoinBtnText()
41
       ToSetJoinBtnText()
39
     }
42
     }
40
-  }, [IsSign])
43
+  }, [HasJoin, CanJoin, HasSign, ActivityDetail])
41
 
44
 
42
   const GetActivityDetail = () => { // 获取活动详情
45
   const GetActivityDetail = () => { // 获取活动详情
43
     request({ ...apis.getActivityDetail, args: { id: CurrnetHuoDongId } }).then((res) => {
46
     request({ ...apis.getActivityDetail, args: { id: CurrnetHuoDongId } }).then((res) => {
48
 
51
 
49
   const CheckActivityJoin = () => { // 查询活动参加详情
52
   const CheckActivityJoin = () => { // 查询活动参加详情
50
     request({ ...apis.checkActivityJoin, args: { id: CurrnetHuoDongId } }).then((res) => {
53
     request({ ...apis.checkActivityJoin, args: { id: CurrnetHuoDongId } }).then((res) => {
51
-      setHasJoin(!!res.dynamic.isEnlist)
52
-      setIsSign(!!res.dynamic.isSign)
54
+      setHasJoin(!!res.dynamic.isSign)
55
+      setCanJoin(!!res.dynamic.isEnlist)
56
+      setHasSign(!!res.enlist.isCheckin)
53
     })
57
     })
54
   }
58
   }
55
 
59
 
56
   const ToSetJoinBtnText = () => {
60
   const ToSetJoinBtnText = () => {
57
-    let Now = Date.now()
58
-    let JoinStart = new Date(ActivityDetail.enlistStart).getTime()
59
-    let JoinEnd = new Date(ActivityDetail.enlistEnd).getTime()
60
-    let Start = new Date(ActivityDetail.startDate).getTime()
61
-    let End = new Date(ActivityDetail.endDate).getTime()
62
-
63
-    if (Now < JoinStart) {
64
-      setJoinBtnText(`未开始`)
65
-      return false
66
-    } else if (Now < JoinEnd) {
67
-      if (!HasJoin) {
68
-        setJoinBtnText(`立即参加`)
69
-        setJoinBtnStatus(true)
70
-      } else {
71
-        setJoinBtnText(`已报名`)
72
-      }
73
-      return false
74
-    } else if (Now < Start) {
75
-      if (!HasJoin) {
76
-        setJoinBtnText(`报名已截止`)
77
-      } else {
78
-        setJoinBtnText(`已报名`)
79
-      }
61
+    if (ActivityDetail.activityStatus - 0 === 2) {
62
+      setJoinBtnText(`已结束`)
80
       return false
63
       return false
81
-    } else if (Now < End) {
82
-      if (!HasJoin) {
83
-        setJoinBtnText(`活动已开始`)
84
-        return false
85
-      } else if (!IsSign) {
86
-        setJoinBtnText(`去签到`)
87
-        setJoinBtnStatus(true)
88
-        return false
89
-      } else {
64
+    } else {
65
+      if (HasSign) {
90
         setJoinBtnText(`已签到`)
66
         setJoinBtnText(`已签到`)
91
         return false
67
         return false
68
+      } else {
69
+        if (HasJoin) {
70
+          if (ActivityDetail.activityStatus - 0 === 1) {
71
+            setJoinBtnText(`已报名`)
72
+          } else if (ActivityDetail.activityStatus - 0 === 0) {
73
+            setJoinBtnStatus(true)
74
+            setJoinBtnText(`去签到`)
75
+          }
76
+          return false
77
+        } else {
78
+          if (CanJoin) {
79
+            setJoinBtnStatus(true)
80
+            setJoinBtnText(`去报名`)
81
+            return false
82
+          } else {
83
+            setJoinBtnText(null)
84
+            return false
85
+          }
86
+        }
92
       }
87
       }
93
-    } else if (Now >= End) {
94
-      setJoinBtnText(`已结束`)
95
-      return false
96
     }
88
     }
97
-    setJoinBtnText(null)
98
-    return false
99
   }
89
   }
100
 
90
 
101
   const ToJoin = () => { // 去报名
91
   const ToJoin = () => { // 去报名
128
     })
118
     })
129
   }
119
   }
130
 
120
 
121
+  const showError = err => {
122
+    Taro.showModal({
123
+      title: '错误',
124
+      content: err,
125
+      showCancel: false
126
+    })
127
+  }
128
+
131
   return (
129
   return (
132
     <Page>
130
     <Page>
133
       <view className='HuoDongDetail'>
131
       <view className='HuoDongDetail'>
134
 
132
 
133
+        <GetUserPhone visible={ShowGetUserPhoneLayer} onError={err => showError(`授权手机失败: ${err}`)} onCancel={() => { }}></GetUserPhone>
134
+
135
         <view className='BannerLayer'></view>
135
         <view className='BannerLayer'></view>
136
         {
136
         {
137
           ActivityDetail !== null &&
137
           ActivityDetail !== null &&