-
+
-
@@ -37,13 +36,19 @@
type="number"
/>
-
当前网络:{{ countryData }}
-
总数:{{ getBrotherInfodata.total }}
-
有效数:{{ getBrotherInfodata.valid }}
+
+ 当前网络:{{ countryData }}
+
+
+ 总数:{{ getBrotherInfodata.total }}
+
+
+ 有效数:{{ getBrotherInfodata.valid }}
+
重置打开 TikTok 登录
-
+
查询导出Excel数据
-
+
@@ -151,7 +161,6 @@
>
-
@@ -171,86 +180,108 @@
+
+
+
+ 时间
+
+
+
+
+
+
+
+
+
+
+
+ {{ field.label }}
+
+
+
+
+
+
+
+
+
+
+
-
-
-
- 时间
-
+
+
+ 排序
+
+
+
-
-
-
+
+
+
+
+
+
-
-
-
+
+
+
+
+
-
-
-
- {{ field.label }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 排序
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
@@ -268,46 +299,45 @@ import {
getCountryinfo,
accountName,
} from "@/api/account";
-import { usePythonBridge} from "@/utils/pythonBridge";
+import { usePythonBridge } from "@/utils/pythonBridge";
import { getUser, setSerch, getSerch } from "@/utils/storage";
import { ref, reactive, onMounted } from "vue";
import EChartsComponent from "@/components/EChartsComponent.vue";
import { ElMessage, ElMessageBox } from "element-plus";
import { color } from "echarts";
-import { getCountryName } from '@/utils/countryUtil'
+import { getCountryName } from "@/utils/countryUtil";
//ip国家
-let countryData = ref('');
+let countryData = ref("");
//获取国家
const getIpInfo = async () => {
- try {
- const response = await fetch('https://ipapi.co/json/');
- if (!response.ok) {
- throw new Error('请求失败');
- }
- const data = await response.json();
- console.log('IP信息:', data.country);
-
- countryData.value = getCountryName(data.country);
- } catch (error) {
- console.error('请求出错:', error);
- ElMessageBox.prompt('请输入将要获取国家的中文名', '获取国家失败', {
- confirmButtonText: '确认',
- cancelButtonText: '取消',
- showClose: false,
- closeOnClickModal: false,
- showCancelButton: false,
- })
- .then(({ value }) => {
- countryData.value = value
- })
- // .catch(() => {
- // ElMessage({
- // type: 'info',
- // message: 'Input canceled',
- // })
- // })
+ try {
+ const response = await fetch("https://ipapi.co/json/");
+ if (!response.ok) {
+ throw new Error("请求失败");
}
+ const data = await response.json();
+ console.log("IP信息:", data.country);
+
+ countryData.value = getCountryName(data.country);
+ } catch (error) {
+ console.error("请求出错:", error);
+ ElMessageBox.prompt("请输入将要获取国家的中文名", "获取国家失败", {
+ confirmButtonText: "确认",
+ cancelButtonText: "取消",
+ showClose: false,
+ closeOnClickModal: false,
+ showCancelButton: false,
+ }).then(({ value }) => {
+ countryData.value = value;
+ });
+ // .catch(() => {
+ // ElMessage({
+ // type: 'info',
+ // message: 'Input canceled',
+ // })
+ // })
+ }
};
//打开TikTok登录
function openTikTok() {
@@ -315,7 +345,7 @@ function openTikTok() {
}
//重置
function Resetss() {
- queryFormData.value = {}
+ queryFormData.value = {};
}
//大哥climb
const queryFormData = ref({
@@ -326,41 +356,47 @@ const queryFormData = ref({
isRunning: true,
});
//时间
-const timerId = ref(null)
+const timerId = ref(null);
const getBrotherInfodata = ref({
total: 0,
valid: 0,
-})
+});
function BigBrotherstop() {
queryFormData.value.tenantId = userInfo.value.tenantId;
queryFormData.value.region = countryData.value;
- controlTask(JSON.stringify(queryFormData.value)).then(res => {
+ controlTask(JSON.stringify(queryFormData.value)).then((res) => {
queryFormData.value.isRunning = true;
- clearInterval(timerId.value)
- timerId.value = null
- })
+ clearInterval(timerId.value);
+ timerId.value = null;
+ });
}
function getBigBrother() {
queryFormData.value.tenantId = userInfo.value.tenantId;
queryFormData.value.region = countryData.value;
- controlTask(JSON.stringify(queryFormData.value)).then(res => {
+ controlTask(JSON.stringify(queryFormData.value)).then((res) => {
queryFormData.value.isRunning = false;
timerId.value = setInterval(() => {
- getBrotherInfo().then(res => {
+ getBrotherInfo().then((res) => {
getBrotherInfodata.value = res;
- })
- }, 1000)
- })
+ });
+ }, 1000);
+ });
}
const loading = ref(false);
//py方法
-const { givePyAnchorId, exportToExcel, loginTikTok , controlTask , getBrotherInfo } = usePythonBridge();
+const {
+ givePyAnchorId,
+ exportToExcel,
+ loginTikTok,
+ controlTask,
+ getBrotherInfo,
+} = usePythonBridge();
let num = ref(0);
//账号信息
-const userInfo = ref(getUser());
+const userInfo = ref({});
//主播列表DOM
const multipleTableRef = ref(null);
let labelList = ref([
@@ -430,18 +466,24 @@ let options = ref([]);
let version = ref("0.0.0");
onMounted(() => {
- getCountry(); //获取国家
- // getSerchStorage();//获取搜索条件
- getlist();//获取主播列表
- getIpInfo();
+ setTimeout(() => {
+ getUserdata();
+ }, 500);
});
+async function getUserdata() {
+ const User = await getUser();
+ userInfo.value = User;
+ getCountry(); //获取国家
+ getlist(); //获取主播列表
+ getIpInfo();
+}
+
function serch() {
page.value = 1;
getlist();
}
-
function exportList() {
// if (searchForm.value.dataType == "InvitationType") {
// searchForm.value.dataEnd = searchForm.value.dataStart;
@@ -482,11 +524,11 @@ function handleSelectionChange(data) {
//时间格式化
function formatDate(date) {
const year = date.getFullYear();
- const month = String(date.getMonth() + 1).padStart(2, '0'); // 月份从 0开始,需要+1
- const day = String(date.getDate()).padStart(2, '0');
- const hours = String(date.getHours()).padStart(2, '0');
- const minutes = String(date.getMinutes()).padStart(2, '0');
- const seconds = String(date.getSeconds()).padStart(2, '0');
+ const month = String(date.getMonth() + 1).padStart(2, "0"); // 月份从 0开始,需要+1
+ const day = String(date.getDate()).padStart(2, "0");
+ const hours = String(date.getHours()).padStart(2, "0");
+ const minutes = String(date.getMinutes()).padStart(2, "0");
+ const seconds = String(date.getSeconds()).padStart(2, "0");
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
}
@@ -501,8 +543,8 @@ const getlist = () => {
sortName: sortData.value.sortName, //排序类型
current: page.value,
pageSize: pageSize.value,
- createTimeStart:createTimes.value[0],
- createTimeEnd:createTimes.value[1],
+ createTimeStart: createTimes.value[0],
+ createTimeEnd: createTimes.value[1],
...searchForm.value, //筛选条件
}).then((res) => {
loading.value = false;
@@ -512,15 +554,15 @@ const getlist = () => {
console.log(res.records);
total.value = Number(res.total);
tableData.value = res.records.map((item) => ({
- level: item.level,// 等级
- createTime:formatDate(new Date(item.createTime)),// 创建时间
- followerCount: item.followerCount,// 粉丝数
- followingCount: item.followingCount,// 关注数
- hostDisplayId: item.hostDisplayId,// 所在直播间主播id
- hostcoins: item.hostcoins,// 打赏的金币
- region: item.region,// 地区
- totalGiftCoins: item.totalGiftCoins,// 打赏金币总和
- userIdStr: item.userIdStr,// 用户id
+ level: item.level, // 等级
+ createTime: formatDate(new Date(item.createTime)), // 创建时间
+ followerCount: item.followerCount, // 粉丝数
+ followingCount: item.followingCount, // 关注数
+ hostDisplayId: item.hostDisplayId, // 所在直播间主播id
+ hostcoins: item.hostcoins, // 打赏的金币
+ region: item.region, // 地区
+ totalGiftCoins: item.totalGiftCoins, // 打赏金币总和
+ userIdStr: item.userIdStr, // 用户id
displayId: item.displayId,
}));
}
@@ -530,9 +572,9 @@ function handelClick() {
filterdialogVisible.value = false;
}
function reset() {
- searchForm.value = {}
- sortData.value = { sortName: "createTime", sort: "desc" }
- createTimes.value = []
+ searchForm.value = {};
+ sortData.value = { sortName: "createTime", sort: "desc" };
+ createTimes.value = [];
}
function handleClose(done) {
console.log("关闭");
@@ -577,7 +619,7 @@ function filterTag(value, row) {
function getCountry() {
getCountryinfo({})
.then((res) => {
- console.log('````````国家`````````',res);
+ console.log("````````国家`````````", res);
res.forEach((item) => {
if (item.countryGroupName) {
options.value.push({
@@ -586,7 +628,7 @@ function getCountry() {
});
}
});
- console.log('````````国家2`````````', options.value);
+ console.log("````````国家2`````````", options.value);
})
.catch((err) => {
console.log("getCountry", err);
@@ -650,7 +692,7 @@ function closePopover(hostId, paramCode) {
function openHTML(id) {
console.log(id);
-
+
givePyAnchorId(id);
// upholdinfo({