|
@@ -19,6 +19,7 @@ const loopTimer = ref(null);
|
|
|
const updateTimer = ref(null);
|
|
const updateTimer = ref(null);
|
|
|
const minProfitRate = ref(2);
|
|
const minProfitRate = ref(2);
|
|
|
const marketType = ref(-1);
|
|
const marketType = ref(-1);
|
|
|
|
|
+const dataType = ref(0);
|
|
|
const updateLoaderHide = ref(null);
|
|
const updateLoaderHide = ref(null);
|
|
|
|
|
|
|
|
const totalProfitVisible = ref(false);
|
|
const totalProfitVisible = ref(false);
|
|
@@ -50,8 +51,9 @@ const getSolutions = async () => {
|
|
|
try {
|
|
try {
|
|
|
const win_min = minProfitRate.value * 100;
|
|
const win_min = minProfitRate.value * 100;
|
|
|
const mk = marketType.value;
|
|
const mk = marketType.value;
|
|
|
|
|
+ const tp = dataType.value;
|
|
|
const with_events = true;
|
|
const with_events = true;
|
|
|
- const data = await requestClient.get('/pstery/get_games_solutions', { params: { win_min, mk, with_events } });
|
|
|
|
|
|
|
+ const data = await requestClient.get('/pstery/get_games_solutions', { params: { win_min, mk, tp, with_events } });
|
|
|
return data;
|
|
return data;
|
|
|
}
|
|
}
|
|
|
catch (error) {
|
|
catch (error) {
|
|
@@ -158,16 +160,31 @@ watch(marketType, (newVal) => {
|
|
|
}, 1000);
|
|
}, 1000);
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
+watch(dataType, (newVal) => {
|
|
|
|
|
+ if (!updateLoaderHide.value) {
|
|
|
|
|
+ updateLoaderHide.value = message.loading('数据更新中...', 0);
|
|
|
|
|
+ }
|
|
|
|
|
+ clearTimeout(updateTimer.value);
|
|
|
|
|
+ updateTimer.value = setTimeout(() => {
|
|
|
|
|
+ setLocalStorage('dataType', newVal);
|
|
|
|
|
+ updateSolutions();
|
|
|
|
|
+ }, 1000);
|
|
|
|
|
+});
|
|
|
|
|
+
|
|
|
onMounted(() => {
|
|
onMounted(() => {
|
|
|
loopActive.value = true;
|
|
loopActive.value = true;
|
|
|
const min_win_rate = getLocalStorage('minProfitRate');
|
|
const min_win_rate = getLocalStorage('minProfitRate');
|
|
|
const mk = getLocalStorage('marketType');
|
|
const mk = getLocalStorage('marketType');
|
|
|
|
|
+ const tp = getLocalStorage('dataType');
|
|
|
if (min_win_rate !== null) {
|
|
if (min_win_rate !== null) {
|
|
|
minProfitRate.value = min_win_rate;
|
|
minProfitRate.value = min_win_rate;
|
|
|
}
|
|
}
|
|
|
if (mk !== null) {
|
|
if (mk !== null) {
|
|
|
marketType.value = mk;
|
|
marketType.value = mk;
|
|
|
}
|
|
}
|
|
|
|
|
+ if (tp !== null) {
|
|
|
|
|
+ dataType.value = tp;
|
|
|
|
|
+ }
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
updateSolutions(true);
|
|
updateSolutions(true);
|
|
|
}, 100);
|
|
}, 100);
|
|
@@ -186,7 +203,7 @@ onUnmounted(() => {
|
|
|
<div class="contents-header transition-all duration-200" :style="headerStyle">
|
|
<div class="contents-header transition-all duration-200" :style="headerStyle">
|
|
|
<div class="solution-options">
|
|
<div class="solution-options">
|
|
|
<Form layout="inline" class="sol-opt-container">
|
|
<Form layout="inline" class="sol-opt-container">
|
|
|
- <Form.Item label="盘口类型" class="sol-opt-item">
|
|
|
|
|
|
|
+ <Form.Item label="比赛类型" class="sol-opt-item">
|
|
|
<RadioGroup v-model:value="marketType">
|
|
<RadioGroup v-model:value="marketType">
|
|
|
<Radio :value="-1">全部({{ markCount.all ?? 0 }})</Radio>
|
|
<Radio :value="-1">全部({{ markCount.all ?? 0 }})</Radio>
|
|
|
<Radio :value="2">滚球({{ markCount.rollball ?? 0 }})</Radio>
|
|
<Radio :value="2">滚球({{ markCount.rollball ?? 0 }})</Radio>
|
|
@@ -194,6 +211,13 @@ onUnmounted(() => {
|
|
|
<Radio :value="0">早盘({{ markCount.early ?? 0 }})</Radio>
|
|
<Radio :value="0">早盘({{ markCount.early ?? 0 }})</Radio>
|
|
|
</RadioGroup>
|
|
</RadioGroup>
|
|
|
</Form.Item>
|
|
</Form.Item>
|
|
|
|
|
+ <Form.Item label="盘口类型" class="sol-opt-item">
|
|
|
|
|
+ <RadioGroup v-model:value="dataType">
|
|
|
|
|
+ <Radio :value="0">全部</Radio>
|
|
|
|
|
+ <Radio :value="1">让球</Radio>
|
|
|
|
|
+ <Radio :value="2">大小</Radio>
|
|
|
|
|
+ </RadioGroup>
|
|
|
|
|
+ </Form.Item>
|
|
|
<Form.Item label="最小利润率(%)" class="sol-opt-item">
|
|
<Form.Item label="最小利润率(%)" class="sol-opt-item">
|
|
|
<InputNumber style="width: 60px" size="small" max="100" min="-100" step="0.1" placeholder="最小利润率(%)" v-model:value="minProfitRate"/>
|
|
<InputNumber style="width: 60px" size="small" max="100" min="-100" step="0.1" placeholder="最小利润率(%)" v-model:value="minProfitRate"/>
|
|
|
</Form.Item>
|
|
</Form.Item>
|
|
@@ -245,11 +269,18 @@ onUnmounted(() => {
|
|
|
|
|
|
|
|
.sol-opt-container {
|
|
.sol-opt-container {
|
|
|
flex-grow: 1;
|
|
flex-grow: 1;
|
|
|
- justify-content: space-between;
|
|
|
|
|
|
|
+ // justify-content: flex-end;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-.sol-opt-item:last-child {
|
|
|
|
|
|
|
+.sol-opt-item {
|
|
|
margin-inline-end: 0 !important;
|
|
margin-inline-end: 0 !important;
|
|
|
|
|
+ &:nth-child(2) {
|
|
|
|
|
+ margin-inline-start: auto;
|
|
|
|
|
+ }
|
|
|
|
|
+ &:nth-child(n+3) {
|
|
|
|
|
+ padding-inline-start: 15px;
|
|
|
|
|
+ border-left: 1px solid hsl(var(--border));
|
|
|
|
|
+}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
.solution-header {
|
|
.solution-header {
|