Переглянути джерело

Merge branch 'dev_1.1.2' into feature_220622_publish

wenliming 2 роки тому
батько
коміт
398ed54f70
1 змінених файлів з 65 додано та 26 видалено
  1. 65 26
      src/view/iframe/red-packet/luck-draw.vue

+ 65 - 26
src/view/iframe/red-packet/luck-draw.vue

@@ -163,6 +163,9 @@
                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl"
                         @click="openTwitterDetail(item)" alt />
                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt />
+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/>
                     <div class="luck-content">
                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName
                         }}</div>
@@ -207,11 +210,11 @@
                 <div class="mark-area">
                     <div class="time">
                         <img :src="require('@/assets/svg/icon-time.svg')" />
-                        <span>24H</span>
+                        <span>{{ moment(state.detail.endTimestamp).format('HH:mm:ss') }}</span>
                     </div>
                     <div class="win">
                         <img :src="require('@/assets/svg/icon-win.svg')" />
-                        <span>3 WINNERS</span>
+                        <span>{{ state.detail.totalCount }}WINNERS</span>
                     </div>
                 </div>
             </div>
@@ -244,6 +247,9 @@
                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl" alt
                         @click="openTwitterDetail(item)" />
                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt />
+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/>
                     <div class="luck-content">
                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName
                         }}</div>
@@ -339,6 +345,9 @@
                     <img v-if="item.simpleUserInfoVO.avatarUrl" :src="item.simpleUserInfoVO.avatarUrl" alt
                         @click="openTwitterDetail(item)" />
                     <img v-else :src="require('@/assets/svg/icon-twitter.svg')" alt />
+                    <img class="win" :src="require('@/assets/svg/icon-win-1.svg')" v-if="i==0" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-2.svg')" v-if="i==1" alt/>
+                    <img class="win" :src="require('@/assets/svg/icon-win-3.svg')" v-if="i==2" alt/>
                     <div class="luck-content">
                         <div class="luck-title" v-if="item.simpleUserInfoVO.nickName">{{ item.simpleUserInfoVO.nickName
                         }}</div>
@@ -891,9 +900,8 @@ const reSetBindTwtterId = (_params) => {
 
 const showCloseEndTimePage = () => {
     state.status = 'close'
-    state.close_status = '红包过期了'
+    state.close_status = '已经过期了'
     state.close_text = [`This Giveaways`, `expired on ${moment(state.detail.endTimestamp).format('MM-DD')}`]
-    state.open_timer_status = true
 }
 
 const showCloseEndTimePageReport = () => {
@@ -974,12 +982,13 @@ const handleStatusPage = () => {
     //    如果 任务完成状态 = 未完成
     //         显示任务未完成页面
     //    如果 任务完成状态 = 已经完成
-    //        如果 开奖时间 > 本地时间 & 红包状态 = 进行中
-    //            显示等待结果页面
-    //        否则如果 领取到红包金额 = 0 & 红包状态 = 已结束
+    //        如果 领取到红包金额 = 0 & 红包状态 = 已结束
     //            显示兔子页面
-    //        否则 
+    //        否则如果 红包状态 = 已结束
     //            显示成功页面
+    //        如果 红包状态 = 进行中
+    //            显示等待结果页面
+
     //    如果 任务完成状态 = 已经过期
     //        如果 红包状态 = 进行中
     //            显示未打开页面
@@ -1015,20 +1024,20 @@ const handleStatusPage = () => {
             }
             //如果 任务完成状态 = 已经完成
         } else if (state.detail.myReceived.taskFinishStatus == 1) {
-            // 如果 开奖时间 >= 本地时间 & 红包状态 = 进行中
-            if (state.detail.endTimestamp >= new Date().getTime() && state.detail.status == 1) {
-                // 显示等待结果页面
-                showLoadResult()
-                open_timer()
-            }
             // 领取到空红包 & 红包状态 = 已结束
-            else if (state.receiveAmount == 0 && state.status == 2) {
+            if (state.receiveAmount == 0 && state.status == 2) {
                 showRabbitPage()
                 showRabbitPageReport()
-            } else {
+            } else if (state.detail.status == 2) {
                 // 显示成功页面
                 showSuccessPage()
             }
+            // 如果  红包状态 = 进行中
+            else if (state.detail.status == 1) {
+                // 显示等待结果页面
+                showLoadResult()
+                open_timer()
+            }
             // 如果 任务完成状态 = 已经过期
         } else {
             // 如果 红包状态 = 进行中
@@ -1237,8 +1246,13 @@ const doTaskReport = (req, sender) => {
     }
 }
 
+let open_timer_flag = false
 // 倒计时开奖
 const open_timer = () => {
+    if (open_timer_flag) {
+        return
+    }
+    open_timer_flag = true
     let new_time
     let open_time
     let timer = setInterval(() => {
@@ -1384,15 +1398,9 @@ function handleFinishRedPacket() {
             postId: state.postId
         }
     }).then((res) => {
-        state.loading_show = false
         if (res.code == 0) {
             if (res.data.finished) {
                 state.receiveAmount = res.data.receiveAmount
-                if (state.receiveAmount == 0) {
-                    showRabbitPage()
-                } else {
-                    state.status = 'success'
-                }
                 init()
                 // 埋点
                 Report.reportLog({
@@ -1406,6 +1414,7 @@ function handleFinishRedPacket() {
                     get_giveaway_result: Report.extParams.success
                 });
             } else {
+                state.loading_show = false
                 let _data = res.data.conditionResult
                 for (let i in _data) {
                     switch (_data[i].type.toString()) {
@@ -1489,6 +1498,7 @@ function handleFinishRedPacket() {
                 }
             }
         } else {
+            state.loading_show = false
             // 埋点
             Report.reportLog({
                 pageSource: Report.pageSource.task_page,
@@ -1557,14 +1567,14 @@ function handleErrorCode(res) {
         // 红包金额已经被领取完了
         case '2007':
             state.status = 'close'
-            state.close_status = '红包过期了'
+            state.close_status = '已经过期了'
             state.close_text = [`This Giveaways`, `expired on ${moment(state.detail.endTimestamp).format('MM-DD')}`]
             init()
             break
         // 红包个数已经被领取完了
         case '2008':
             state.status = 'close'
-            state.close_status = '红包过期了'
+            state.close_status = '已经过期了'
             state.close_text = [`This Giveaways`, `expired on ${moment(state.detail.endTimestamp).format('MM-DD')}`]
             init()
             break
@@ -1899,6 +1909,29 @@ body {
     background-color: unset !important;
 }
 
+:deep() .ant-switch {
+    background-color: #E9ECEE;
+    height: 14px;
+    line-height: 16px;
+    min-width: 36px;
+}
+
+:deep() .ant-switch-checked {
+    background-color: #AED8F5 !important;
+}
+
+:deep() .ant-switch::after {
+    width: 20px;
+    height: 20px;
+    top: -4px;
+    left: -1px;
+}
+
+:deep() .ant-switch-checked::after {
+    background-color: #1D9BF0 !important;
+    margin-left: 3px;
+    left: 100% !important;
+}
 .content {
     position: relative;
     width: 375px;
@@ -2196,7 +2229,13 @@ body {
                 border-bottom: 1px solid #F2F2F2;
                 justify-content: space-between;
                 position: relative;
-
+                .win{
+                    position: absolute;
+                    left:28px;
+                    bottom: 7px;
+                    width: 20px;
+                    height: 20px;
+                }
                 img:first-child {
                     border-radius: 50%;
                 }
@@ -2399,7 +2438,7 @@ body {
                 }
             }
 
-        
+
 
             .notification_switch {
                 border-top: 1px solid #EFEFEF;