瀏覽代碼

Merge branch 'feature-1.1.7.1-wei' into dev_1.1.7.1

zhangwei 2 年之前
父節點
當前提交
c95fe4b5fc

+ 1 - 3
src/entry/content.js

@@ -39,6 +39,7 @@ import {
     TwitterApiUserByScreenName,
     TwitterApiUserByScreenName,
     showPublishDialog,
     showPublishDialog,
     getTweetUserFollowStatus,
     getTweetUserFollowStatus,
+    sendContentByTwitterID,
     getExtensionStorgeDataForIframe
     getExtensionStorgeDataForIframe
 } from "@/logic/content/twitter.js";
 } from "@/logic/content/twitter.js";
 
 
@@ -227,9 +228,6 @@ chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
         case 'Hide_ToolBox_By_Nft':
         case 'Hide_ToolBox_By_Nft':
             toolBox.hideBuyNft(req)
             toolBox.hideBuyNft(req)
             break;
             break;
-        case 'IFRAME_API_GET_TWEET_USER_FOLLOW_STATUS':
-            getTweetUserFollowStatus(req);
-            break;
     }
     }
     sendResponse && sendResponse('ok');
     sendResponse && sendResponse('ok');
 })
 })

+ 16 - 1
src/http/help.js

@@ -1,6 +1,6 @@
 import { getChromeStorage } from '@/uilts/chromeExtension.js'
 import { getChromeStorage } from '@/uilts/chromeExtension.js'
 import { srcPublishSuccess } from '@/http/publishApi'
 import { srcPublishSuccess } from '@/http/publishApi'
-import { bindRepost } from '@/http/treasure'
+import { bindRepost, bindPostContent } from '@/http/treasure'
 
 
 // 重新绑定推文id
 // 重新绑定推文id
 export const reSetBindTwtterId = ({
 export const reSetBindTwtterId = ({
@@ -39,3 +39,18 @@ export const reSetBindRepost = (params, callback) => {
     })
     })
 }
 }
 
 
+
+
+export const reSetBindPostContent = (params, callback) => {
+    getChromeStorage('userInfo', (_userInfo) => {
+        if (_userInfo && _userInfo.uid) {
+            bindPostContent({
+                params
+            }).then((res) => {
+                if (res.code == 0 || res.code == 3003) {
+                    callback && callback()
+                }
+            })
+        }
+    })
+}

+ 18 - 1
src/http/treasure.js

@@ -27,12 +27,21 @@ export function inviteDetail(params) {
 
 
 export function inviteList(params) {
 export function inviteList(params) {
     return service({
     return service({
-        url: `/post/treasure/invite/list`,
+        url: `/post/treasure/invite/list/v2`,
         method: "post",
         method: "post",
         data: params,
         data: params,
     });
     });
 }
 }
 
 
+export function inviteListRefresh(params) {
+    return service({
+        url: `/post/treasure/invite/list/refresh`,
+        method: "post",
+        data: params,
+    });
+
+}
+
 export function treasureOpen(params) {
 export function treasureOpen(params) {
     return service({
     return service({
         url: `/post/treasure/open`,
         url: `/post/treasure/open`,
@@ -74,4 +83,12 @@ export function bindRepost(params) {
         method: "post",
         method: "post",
         data: params,
         data: params,
     });
     });
+}
+
+export function bindPostContent(params) {
+    return service({
+        url: `/post/bindPostSrcContent`,
+        method: "post",
+        data: params,
+    });
 }
 }

+ 30 - 8
src/logic/content/ParseCard.js

@@ -1,3 +1,5 @@
+import { iframeHost } from '@/http/configAPI'
+import { getChromeStorage, setChromeStorage } from '@/uilts/chromeExtension.js'
 import ToolBox from '@/view/content/tool-box/index.vue'
 import ToolBox from '@/view/content/tool-box/index.vue'
 import { createApp } from 'vue'
 import { createApp } from 'vue'
 import { getStorage, setStorage } from '@/uilts/help'
 import { getStorage, setStorage } from '@/uilts/help'
@@ -61,19 +63,29 @@ class ParseCard {
         // 是否有#DeNet
         // 是否有#DeNet
         return has_denet
         return has_denet
     }
     }
-    parseAllDeNetCard() {
+    parseAllDeNetCard(has_iframe = false) {
         let de_net_card = []
         let de_net_card = []
         try {
         try {
             let arr_article = document.querySelectorAll('article') || []
             let arr_article = document.querySelectorAll('article') || []
             let _txt
             let _txt
             for (let i in arr_article) {
             for (let i in arr_article) {
                 _txt = arr_article[i].innerText || ''
                 _txt = arr_article[i].innerText || ''
-                if ((_txt.includes('#DeNet') || _txt.includes('#DNFT') || this.compatibleMask(arr_article[i])) && !this.isHasIframeByArticle(arr_article[i])) {
-                    de_net_card.push({
-                        time: new Date().getTime(),
-                        dom: arr_article[i]
-                    })
+                if (has_iframe) {
+                    if ((_txt.includes('#DeNet') || _txt.includes('#DNFT') || this.compatibleMask(arr_article[i]))) {
+                        de_net_card.push({
+                            time: new Date().getTime(),
+                            dom: arr_article[i]
+                        })
+                    }
+                } else {
+                    if ((_txt.includes('#DeNet') || _txt.includes('#DNFT') || this.compatibleMask(arr_article[i])) && !this.isHasIframeByArticle(arr_article[i])) {
+                        de_net_card.push({
+                            time: new Date().getTime(),
+                            dom: arr_article[i]
+                        })
+                    }
                 }
                 }
+
             }
             }
         } catch (error) {
         } catch (error) {
         }
         }
@@ -154,9 +166,9 @@ class ParseCard {
             return
             return
         }
         }
     }
     }
-    parseAllDeNetCardParmas() {
+    parseAllDeNetCardParmas(has_iframe = false) {
         let json_data = []
         let json_data = []
-        this.parseAllDeNetCard().forEach((item) => {
+        this.parseAllDeNetCard(has_iframe).forEach((item) => {
             let _obj = this.parseCardParmas(item.dom)
             let _obj = this.parseCardParmas(item.dom)
             if (_obj.tweet_Id && _obj.short_url && _obj.dom_card) {
             if (_obj.tweet_Id && _obj.short_url && _obj.dom_card) {
                 _obj.time = item.time
                 _obj.time = item.time
@@ -618,5 +630,15 @@ class ParseCard {
             dom.appendChild(this.createNftGroupIframe({ project_Id, tweet_Id }))
             dom.appendChild(this.createNftGroupIframe({ project_Id, tweet_Id }))
         }
         }
     }
     }
+    // 根据推特id获取文章推文
+    getContentByTwitterId(tweet_Id) {
+        let txt = ''
+        let card_json_data = this.parseAllDeNetCardParmas(true)
+        let result = card_json_data.filter((item) => { return item.tweet_Id == tweet_Id }) || []
+        if (result.length > 0 && result[0].dom_card) {
+            txt = result[0].dom_card.querySelector('[data-testid="tweetText"]').innerText.replace('…', ' ')
+        }
+        return txt
+    }
 }
 }
 export default new ParseCard()
 export default new ParseCard()

+ 11 - 7
src/logic/content/twitter.js

@@ -24,6 +24,7 @@ let systemInfo = {
     theme: 'light'
     theme: 'light'
 }
 }
 
 
+
 let fixProfileTabAutoTimer = null;
 let fixProfileTabAutoTimer = null;
 
 
 
 
@@ -847,7 +848,16 @@ function setIframeCard(type = 'twitter') {
                     // https://testh5.denetme.net/treasure/invite/{inviteCode}
                     // https://testh5.denetme.net/treasure/invite/{inviteCode}
                     // 邀请链接
                     // 邀请链接
                     if (item.post_Id.includes('invite/')) {
                     if (item.post_Id.includes('invite/')) {
-                        item.invite_code = item.post_Id.split('invite/')[1] || ''
+                        let arr = item.post_Id.split('/')
+                        let index
+                        for (let i in arr) {
+                            index = Number(i) + 1
+                            if (arr[i] == 'invite' && arr.length >= index) {
+                                item.invite_code = arr[index]
+                                break
+                            }
+                        }
+
                         item.page_type = '邀请链接'
                         item.page_type = '邀请链接'
                         if (item.invite_code) {
                         if (item.invite_code) {
                             item.post_Id = ''
                             item.post_Id = ''
@@ -2616,9 +2626,3 @@ export const showPublishDialog = () => {
         smallBtn.click();
         smallBtn.click();
     }
     }
 }
 }
-
-export const getExtensionStorgeDataForIframe = (data) => {
-    getChromeStorage(data.key).then((res) => {
-        messageCenter.send(data.iframeID, `IFRAME_GET_EXTENSION_STORGE_DATA-${data.messageID}`, res)
-    });
-}

+ 1 - 1
src/view/iframe/treasure-hunt/components/btn.vue

@@ -61,7 +61,7 @@ const refresh = () => {
 
 
         state.init(() => {
         state.init(() => {
             state.inviteInit()
             state.inviteInit()
-            state.inviteList()
+            state.inviteListRefresh()
         })
         })
     }
     }
 }
 }

+ 27 - 27
src/view/iframe/treasure-hunt/components/invite-friends.vue

@@ -40,7 +40,7 @@ state.log_invite_btn_show = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 
 
@@ -51,7 +51,7 @@ state.log_invite_btn_click = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 state.log_invite_copy_btn_click = {
 state.log_invite_copy_btn_click = {
@@ -61,13 +61,13 @@ state.log_invite_copy_btn_click = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 
 
 let facebookAppConfig = {
 let facebookAppConfig = {
-  facebookAppId: "",
-  faceShareRedirectUrl
+    facebookAppId: "",
+    faceShareRedirectUrl
 };
 };
 
 
 onMounted(() => {
 onMounted(() => {
@@ -116,48 +116,48 @@ const clickShare = (item) => {
         }, 2000)
         }, 2000)
         e.clearSelection();
         e.clearSelection();
     })
     })
-    if(item.name == 'facebook') {
+    if (item.name == 'facebook') {
         setChromeStorage({
         setChromeStorage({
             shareFacebookData: JSON.stringify({
             shareFacebookData: JSON.stringify({
                 contentStr: item.inviteContent
                 contentStr: item.inviteContent
             })
             })
         })
         })
         let cbParams = {
         let cbParams = {
-          bizType: 'TEASURE_INVITE'
+            bizType: 'TEASURE_INVITE'
         }
         }
         let url = `https://www.facebook.com/dialog/share?app_id=${facebookAppConfig.facebookAppId}&display=popup&href=${item.treasureInviteUrl}&redirect_uri=${facebookAppConfig.faceShareRedirectUrl}?params=${JSON.stringify(cbParams)}`;
         let url = `https://www.facebook.com/dialog/share?app_id=${facebookAppConfig.facebookAppId}&display=popup&href=${item.treasureInviteUrl}&redirect_uri=${facebookAppConfig.faceShareRedirectUrl}?params=${JSON.stringify(cbParams)}`;
 
 
         chrome.windows.create({
         chrome.windows.create({
-          width: 800,
-          type: 'normal',
-          url
+            width: 800,
+            type: 'normal',
+            url
         }, function (window) {
         }, function (window) {
         })
         })
     } else {
     } else {
-      chrome.tabs.create({
-        url: item.redirectPath
-      });
+        chrome.tabs.create({
+            url: item.redirectPath
+        });
     }
     }
     Report.reportLog({
     Report.reportLog({
-      businessType: Report.businessType.buttonClick,
-      pageSource: Report.pageSource.inviteFriendsPage,
-      objectType: Report.objectType.channelButton,
-      shareLinkId: state.invite_code,
-      myShareLinkId: state.detail.inviteCopyUrl,
-      currentInvitedNum: state.detail.inviteCount,
+        businessType: Report.businessType.buttonClick,
+        pageSource: Report.pageSource.inviteFriendsPage,
+        objectType: Report.objectType.channelButton,
+        shareLinkId: state.invite_code,
+        myShareLinkId: state.detail.inviteCopyUrl,
+        currentInvitedNum: state.inviteCount,
     }, {
     }, {
-      'channel-name': item.name
+        'channel-name': item.name
     });
     });
 }
 }
 
 
 const setFrontConfig = () => {
 const setFrontConfig = () => {
-  getFrontConfig({
-    params: {},
-  }).then((res) => {
-    if (res.code == 0) {
-      facebookAppConfig.facebookAppId = res.data.fbClientId;
-    }
-  });
+    getFrontConfig({
+        params: {},
+    }).then((res) => {
+        if (res.code == 0) {
+            facebookAppConfig.facebookAppId = res.data.fbClientId;
+        }
+    });
 };
 };
 
 
 
 

+ 59 - 22
src/view/iframe/treasure-hunt/components/invite-list.vue

@@ -23,7 +23,7 @@
 </template>
 </template>
 <script setup>
 <script setup>
 import VBtn from '@/view/iframe/treasure-hunt/components/btn.vue'
 import VBtn from '@/view/iframe/treasure-hunt/components/btn.vue'
-import { inviteList } from '@/http/treasure'
+import { inviteList, inviteListRefresh } from '@/http/treasure'
 import { inject, onMounted } from 'vue'
 import { inject, onMounted } from 'vue'
 import Report from "@/log-center/log"
 import Report from "@/log-center/log"
 
 
@@ -41,7 +41,7 @@ state.log_invite_btn_click = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 
 
@@ -51,7 +51,7 @@ state.log_invite_list_show = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 
 
@@ -71,38 +71,75 @@ function handleScroll(e) {
     e = e.target
     e = e.target
     if ((e.clientHeight + e.scrollTop) / e.scrollHeight > .8) {
     if ((e.clientHeight + e.scrollTop) / e.scrollHeight > .8) {
         list_end = true
         list_end = true
-        if (state.invited_list.length == page_num * page_size) {
-            page_num++
-        }
-        list()
+        inviteListScroll()
     }
     }
 }
 }
 
 
 const list = () => {
 const list = () => {
-    state.inviteList()
+    inviteListScroll()
+}
+
+// 刷新时调用
+state.inviteListRefresh = () => {
+    let last_timestamp = 0
+    if (state.invited_list.length > 0) {
+        last_timestamp = state.invited_list[0].last_timestamp
+    }
+
+    inviteListRefresh({
+        params: {
+            postId: state.postId,
+            lastTimestamp: last_timestamp,
+        }
+    }).then((res) => {
+        if (res.code == 0) {
+            handleCommon(res.data)
+        }
+    })
 }
 }
 
 
-state.inviteList = () => {
+const handleCommon = (data) => {
+    state.inviteCount = data.inviteCount
+    if (state.inviteCount > 0) {
+        state.tabs[1].txt = `invited(${state.inviteCount})`
+    }
+    if (data.inviteUsers.length > 0) {
+        data.inviteUsers.forEach(item => {
+            if (state.invited_list.filter((item2) => { return item2.userInfo.uid == item.userInfo.uid }).length == 0) {
+                state.invited_list.push(item)
+            }
+        })
+
+        state.invited_list.sort((a, b) => {
+            return a.lastTimestamp - b.lastTimestamp
+        })
+
+        list_end = false
+    } else {
+        list_end = false
+    }
+}
+
+// 滚动和初始化
+let inviteListScroll = () => {
+    // state.invited_list
+    let last_timestamp = 0
+    let len = state.invited_list.length
+    if (len > 0) {
+        last_timestamp = state.invited_list[len - 1].lastTimestamp
+    }
+
     inviteList({
     inviteList({
         params: {
         params: {
             inviteCode: state.invite_code,
             inviteCode: state.invite_code,
             postId: state.postId,
             postId: state.postId,
-            pageNum: page_num,
-            pageSize: page_size,
+            lastTimestamp: last_timestamp,
+            pageSize: page_size
         }
         }
-
     }).then((res) => {
     }).then((res) => {
         if (res.code == 0) {
         if (res.code == 0) {
-            if (res.data.length > 0) {
-                res.data.forEach(item => {
-                    if (state.invited_list.filter((item2) => { return item2.userInfo.uid == item.userInfo.uid }).length == 0) {
-                        state.invited_list.push(item)
-                    }
-                })
-                list_end = false
-            } else {
-                list_end = false
-            }
+
+            handleCommon(res.data)
         }
         }
     })
     })
 }
 }

+ 61 - 61
src/view/iframe/treasure-hunt/cover.vue

@@ -121,64 +121,64 @@ chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
             } else if (req.task_type == 'createTweet' && req.task_done) {
             } else if (req.task_type == 'createTweet' && req.task_done) {
                 toStart(req);
                 toStart(req);
                 getChromeStorage('userInfo', (_userInfo) => {
                 getChromeStorage('userInfo', (_userInfo) => {
-                    if(_userInfo) {
-                      sendChromeTabMessage({
-                        actionType: "IFRAME_API_GET_TWEET_USER_INFO_REQ",
-                        data: {
-                            screen_name: _userInfo.nickName,
-                            tweetId: state.tweetId,
-                            objectType: Report.objectType.repostSuccess
-                        }
-                      })
+                    if (_userInfo) {
+                        sendChromeTabMessage({
+                            actionType: "IFRAME_API_GET_TWEET_USER_INFO_REQ",
+                            data: {
+                                screen_name: _userInfo.nickName,
+                                tweetId: state.tweetId,
+                                objectType: Report.objectType.repostSuccess
+                            }
+                        })
                     }
                     }
                 })
                 })
             }
             }
             break
             break
         case 'CONTENT_API_GET_TWEET_USER_INFO_RES':
         case 'CONTENT_API_GET_TWEET_USER_INFO_RES':
-                let twitterFans = 0;
-                let { user } = req.data || {};
-                if (user && user.result && user.result.legacy) {
-                    let legacy = user.result.legacy;
-                    twitterFans = legacy ? legacy.followers_count : 0;
-                }
-                if (state.tweetId == req.tweetId && req.objectType == Report.objectType.repostSuccess) {
-                  Report.reportLog({
-                      objectType: Report.objectType.repostSuccess,
-                      twitterFans: twitterFans,
-                      redPacketType: Report.redPacketType.treasure,
-                      postId: state.postId,
-                      shareLinkId: state.invite_code,
-                  });
-                };
+            let twitterFans = 0;
+            let { user } = req.data || {};
+            if (user && user.result && user.result.legacy) {
+                let legacy = user.result.legacy;
+                twitterFans = legacy ? legacy.followers_count : 0;
+            }
+            if (state.tweetId == req.tweetId && req.objectType == Report.objectType.repostSuccess) {
+                Report.reportLog({
+                    objectType: Report.objectType.repostSuccess,
+                    twitterFans: twitterFans,
+                    redPacketType: Report.redPacketType.treasure,
+                    postId: state.postId,
+                    shareLinkId: state.invite_code,
+                });
+            };
             break;
             break;
         case 'CONTENT_GET_TWEET_USER_FOLLOW_STATUS_RES':
         case 'CONTENT_GET_TWEET_USER_FOLLOW_STATUS_RES':
-            if(state.tweetId == req.tweetId) {
-              let list = [];
-              let userInfoList = req.data;
-              for(let i = 0; i < userInfoList.length; i++) {
-                let item = userInfoList[i];
-                if(item.user && item.user.result && item.user.result.legacy) {
-                  let legacy = item.user.result.legacy;
-                  list.push({
-                    name: legacy.screen_name,
-                    followed: legacy.following
-                  })
+            if (state.tweetId == req.tweetId) {
+                let list = [];
+                let userInfoList = req.data;
+                for (let i = 0; i < userInfoList.length; i++) {
+                    let item = userInfoList[i];
+                    if (item.user && item.user.result && item.user.result.legacy) {
+                        let legacy = item.user.result.legacy;
+                        list.push({
+                            name: legacy.screen_name,
+                            followed: legacy.following
+                        })
+                    }
                 }
                 }
-              }
-
-              state.usersFollowStatusList = list;
-              // 一键三连
-              chrome.tabs.getCurrent((tab) => {
-                  chrome.tabs.sendMessage(tab.id, {
-                      actionType: "IFRAME_TWITTER_API_DO_TASK",
-                      task_data: {
-                          tweet_Id: state.tweetId,
-                          tweet_text: state.rePostTweetContent
-                      },
-                      task_type: 'tasks',
-                      tasks: state.tasks,
-                  });
-              })
+
+                state.usersFollowStatusList = list;
+                // 一键三连
+                chrome.tabs.getCurrent((tab) => {
+                    chrome.tabs.sendMessage(tab.id, {
+                        actionType: "IFRAME_TWITTER_API_DO_TASK",
+                        task_data: {
+                            tweet_Id: state.tweetId,
+                            tweet_text: state.rePostTweetContent
+                        },
+                        task_type: 'tasks',
+                        tasks: state.tasks,
+                    });
+                })
             }
             }
             break;
             break;
     }
     }
@@ -262,17 +262,17 @@ const startBtn = () => {
 }
 }
 
 
 const getUsersFollowStatus = () => {
 const getUsersFollowStatus = () => {
-  let userList = state.follows;
-
-  if(userList && userList.length) {
-    sendChromeTabMessage({
-      actionType: "IFRAME_API_GET_TWEET_USER_FOLLOW_STATUS",
-      data: {
-          userList: userList,
-          tweetId: state.tweetId,
-      }
-    })
-  }
+    let userList = state.follows;
+
+    if (userList && userList.length) {
+        sendChromeTabMessage({
+            actionType: "IFRAME_API_GET_TWEET_USER_FOLLOW_STATUS",
+            data: {
+                userList: userList,
+                tweetId: state.tweetId,
+            }
+        })
+    }
 }
 }
 
 
 </script>
 </script>

+ 24 - 9
src/view/iframe/treasure-hunt/index.vue

@@ -11,7 +11,7 @@ import VCover from '@/view/iframe/treasure-hunt/cover.vue'
 import VInvite from '@/view/iframe/treasure-hunt/invite.vue'
 import VInvite from '@/view/iframe/treasure-hunt/invite.vue'
 import VResult from '@/view/iframe/treasure-hunt/result.vue'
 import VResult from '@/view/iframe/treasure-hunt/result.vue'
 import { inviteDetail, treasureDetail, treasureOpen } from '@/http/treasure.js'
 import { inviteDetail, treasureDetail, treasureOpen } from '@/http/treasure.js'
-import { reSetBindTwtterId, reSetBindRepost } from '@/http/help.js'
+import { reSetBindTwtterId, reSetBindPostContent, reSetBindRepost } from '@/http/help.js'
 import { getQueryString } from '@/uilts/help'
 import { getQueryString } from '@/uilts/help'
 import { getChromeStorage, sendChromeTabMessage } from '@/uilts/chromeExtension.js'
 import { getChromeStorage, sendChromeTabMessage } from '@/uilts/chromeExtension.js'
 import VToast from '@/view/iframe/treasure-hunt/components/toast.vue'
 import VToast from '@/view/iframe/treasure-hunt/components/toast.vue'
@@ -77,7 +77,6 @@ state.init = (callback) => {
             }
             }
         }).then((res) => {
         }).then((res) => {
             if (res.code == 0) {
             if (res.code == 0) {
-
                 handleCommon(res, callback)
                 handleCommon(res, callback)
                 // 绑定repostSrcContentId
                 // 绑定repostSrcContentId
                 if (!res.data.repostSrcContentId) {
                 if (!res.data.repostSrcContentId) {
@@ -98,6 +97,15 @@ state.init = (callback) => {
         }).then((res) => {
         }).then((res) => {
             if (res.code == 0) {
             if (res.code == 0) {
                 handleCommon(res, callback)
                 handleCommon(res, callback)
+                // 原始链接绑定post content
+                if (!res.data.postSrcContent) {
+                    sendChromeTabMessage({
+                        actionType: "GET_CONTENT_BY_TWITTER_ID",
+                        data: {
+                            tweet_Id: state.tweetId
+                        }
+                    })
+                }
             }
             }
         })
         })
     }
     }
@@ -111,7 +119,7 @@ const reportOpenBoxLog = () => {
             redPacketType: Report.redPacketType.treasure,
             redPacketType: Report.redPacketType.treasure,
             shareLinkId: state.invite_code,
             shareLinkId: state.invite_code,
             myShareLinkId: state.detail.inviteCopyUrl,
             myShareLinkId: state.detail.inviteCopyUrl,
-            currentInvitedNum: state.detail.inviteCount,
+            currentInvitedNum: state.inviteCount,
             postId: state.postId
             postId: state.postId
         });
         });
         state.open_box.showed = false
         state.open_box.showed = false
@@ -124,7 +132,7 @@ const reportOpenBoxLog = () => {
             redPacketType: Report.redPacketType.treasure,
             redPacketType: Report.redPacketType.treasure,
             shareLinkId: state.invite_code,
             shareLinkId: state.invite_code,
             myShareLinkId: state.detail.inviteCopyUrl,
             myShareLinkId: state.detail.inviteCopyUrl,
-            currentInvitedNum: state.detail.inviteCount,
+            currentInvitedNum: state.inviteCount,
             postId: state.postId
             postId: state.postId
         });
         });
         state.open_box.clicked = false
         state.open_box.clicked = false
@@ -191,7 +199,7 @@ state.treasureOpen = () => {
 
 
             state.init(() => {
             state.init(() => {
                 state.inviteInit()
                 state.inviteInit()
-                state.inviteList()
+                state.inviteListRefresh()
             })
             })
         } else {
         } else {
             switch (String(res.code)) {
             switch (String(res.code)) {
@@ -218,7 +226,7 @@ state.treasureOpen = () => {
 
 
             state.init(() => {
             state.init(() => {
                 state.inviteInit()
                 state.inviteInit()
-                state.inviteList()
+                state.inviteListRefresh()
             })
             })
         }
         }
     }).catch(() => {
     }).catch(() => {
@@ -238,12 +246,11 @@ const handleStatus = (callback) => {
     //  显示结束页面
     //  显示结束页面
 
 
     let { status, joinStatus } = state.detail || {}
     let { status, joinStatus } = state.detail || {}
-    state.open_btn.txt = 'Start'
     // 如果 夺宝状态 = 未开始
     // 如果 夺宝状态 = 未开始
     if (status == 0) {
     if (status == 0) {
-        state.page = '封面页'
-
+        // 未做处理
     }
     }
+
     // 如果 夺宝状态 = 进行中
     // 如果 夺宝状态 = 进行中
     else if (status == 1) {
     else if (status == 1) {
         // 如果 夺宝参与状态 = 未参与夺宝
         // 如果 夺宝参与状态 = 未参与夺宝
@@ -274,6 +281,14 @@ const handleStatus = (callback) => {
 function onRuntimeMsg() {
 function onRuntimeMsg() {
     chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
     chrome.runtime.onMessage.addListener((req, sender, sendResponse) => {
         switch (req.actionType) {
         switch (req.actionType) {
+            case 'CONTENT_GET_TWEET_TXT':
+                if (req.data.tweet_Id == state.tweetId) {
+                    reSetBindPostContent({
+                        postId: state.postId || '',
+                        postSrcContent: req.data.txt,
+                    })
+                }
+                break
             case 'CONTENT_API_GET_TWEET_USER_INFO_RES':
             case 'CONTENT_API_GET_TWEET_USER_INFO_RES':
                 let twitterFans = 0;
                 let twitterFans = 0;
                 let { user } = req.data || {};
                 let { user } = req.data || {};

+ 10 - 13
src/view/iframe/treasure-hunt/invite.vue

@@ -61,7 +61,7 @@ state.log_invite_show = {
     redPacketType: Report.redPacketType.treasure,
     redPacketType: Report.redPacketType.treasure,
     shareLinkId: state.invite_code,
     shareLinkId: state.invite_code,
     myShareLinkId: state.detail.inviteCopyUrl,
     myShareLinkId: state.detail.inviteCopyUrl,
-    currentInvitedNum: state.detail.inviteCount,
+    currentInvitedNum: state.inviteCount,
     postId: state.postId
     postId: state.postId
 }
 }
 
 
@@ -88,21 +88,18 @@ state.boxs = []
 let line_full = ref(null)
 let line_full = ref(null)
 onMounted(() => {
 onMounted(() => {
     state.inviteInit()
     state.inviteInit()
-    setInterval(() => {
-        state.init(() => {
-            state.inviteInit()
-            state.inviteList()
-        })
-    }, 30000)
+    // setInterval(() => {
+    // state.init(() => {
+    //     state.inviteInit()
+    //     state.inviteListRefresh()
+    // })
+    // }, 30000)
 })
 })
 
 
 const clickItem = (item) => {
 const clickItem = (item) => {
     window.open(`https://twitter.com/${item.userInfo.nickName}`)
     window.open(`https://twitter.com/${item.userInfo.nickName}`)
 }
 }
 state.inviteInit = () => {
 state.inviteInit = () => {
-    if (state.detail.inviteCount > 0) {
-        state.tabs[1].txt = `invited(${state.detail.inviteCount})`
-    }
     state.boxs = []
     state.boxs = []
     state.detail.treasureRecords.forEach((item, index) => {
     state.detail.treasureRecords.forEach((item, index) => {
         if (item.openStatus == 0) {
         if (item.openStatus == 0) {
@@ -122,7 +119,7 @@ state.inviteInit = () => {
             } else {
             } else {
                 item.icon = silver_open_box
                 item.icon = silver_open_box
             }
             }
-            item.txt = '$' + item.amountValue
+            item.txt = '$' + item.amountUsdValue
         }
         }
 
 
         state.boxs.push(item)
         state.boxs.push(item)
@@ -157,8 +154,8 @@ const setLineFull = (box_num = 0, finishNeedInviteCount = 0, successInviteCount
         line_width = (successInviteCount / finishNeedInviteCount) * 55
         line_width = (successInviteCount / finishNeedInviteCount) * 55
     } else if (box_num == 1) {
     } else if (box_num == 1) {
         if (line_width == 55) {
         if (line_width == 55) {
-            // 第二个宝箱起点是92,终点是155
-            line_width = 92
+            // 第二个宝箱起点88,终点是155
+            line_width = 88
             line_width = (successInviteCount / finishNeedInviteCount) * (155 - line_width) + line_width
             line_width = (successInviteCount / finishNeedInviteCount) * (155 - line_width) + line_width
         }
         }
     } else if (box_num == 2) {
     } else if (box_num == 2) {