Compare commits
No commits in common. "8043571cec16c529141e800dd442288a2075ea67" and "59fab7c7117ffe9863f95aa212e9fb7f9cebc656" have entirely different histories.
8043571cec
...
59fab7c711
@ -14,7 +14,6 @@ const props = withDefaults(
|
|||||||
placeholder?: string;
|
placeholder?: string;
|
||||||
sysOrigin: string;
|
sysOrigin: string;
|
||||||
value?: any;
|
value?: any;
|
||||||
valueField?: 'id' | 'regionCode';
|
|
||||||
}>(),
|
}>(),
|
||||||
{
|
{
|
||||||
clearable: false,
|
clearable: false,
|
||||||
@ -23,7 +22,6 @@ const props = withDefaults(
|
|||||||
multiple: false,
|
multiple: false,
|
||||||
placeholder: '请选择',
|
placeholder: '请选择',
|
||||||
value: '',
|
value: '',
|
||||||
valueField: 'id',
|
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -38,10 +36,7 @@ const selectValue = ref<any>(props.value);
|
|||||||
const regionOptions = computed(() =>
|
const regionOptions = computed(() =>
|
||||||
list.value.map((item) => ({
|
list.value.map((item) => ({
|
||||||
label: item.regionName || '-',
|
label: item.regionName || '-',
|
||||||
value:
|
value: item.id as any,
|
||||||
props.valueField === 'regionCode'
|
|
||||||
? (item.regionCode || item.code || item.id)
|
|
||||||
: (item.id as any),
|
|
||||||
})),
|
})),
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -72,13 +67,8 @@ watch(
|
|||||||
|
|
||||||
function emitChange(value: any) {
|
function emitChange(value: any) {
|
||||||
emit('update:value', value);
|
emit('update:value', value);
|
||||||
const item = list.value.find((current) => {
|
const item =
|
||||||
const currentValue =
|
list.value.find((current) => String(current.id) === String(value)) || null;
|
||||||
props.valueField === 'regionCode'
|
|
||||||
? current.regionCode || current.code || current.id
|
|
||||||
: current.id;
|
|
||||||
return String(currentValue) === String(value);
|
|
||||||
}) || null;
|
|
||||||
emit('change', value, item);
|
emit('change', value, item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -10,7 +10,6 @@ import {
|
|||||||
startRegionBroadcastWorker,
|
startRegionBroadcastWorker,
|
||||||
stopRegionBroadcastWorker,
|
stopRegionBroadcastWorker,
|
||||||
} from '#/api/legacy/region-broadcast';
|
} from '#/api/legacy/region-broadcast';
|
||||||
import { regionConfigTable } from '#/api/legacy/system';
|
|
||||||
import { getAllowedSysOrigins } from '#/views/system/shared';
|
import { getAllowedSysOrigins } from '#/views/system/shared';
|
||||||
|
|
||||||
import SystemRegionSelect from './components/system-region-select.vue';
|
import SystemRegionSelect from './components/system-region-select.vue';
|
||||||
@ -70,7 +69,6 @@ const form = reactive<Record<string, any>>({
|
|||||||
const sending = ref(false);
|
const sending = ref(false);
|
||||||
const workerLoading = ref(false);
|
const workerLoading = ref(false);
|
||||||
const resultText = ref('');
|
const resultText = ref('');
|
||||||
const regionList = ref<Array<Record<string, any>>>([]);
|
|
||||||
const workerStatus = ref<Record<string, any>>({});
|
const workerStatus = ref<Record<string, any>>({});
|
||||||
const workerForm = reactive<Record<string, any>>({
|
const workerForm = reactive<Record<string, any>>({
|
||||||
betAmounts: '100,200,500,1000',
|
betAmounts: '100,200,500,1000',
|
||||||
@ -105,20 +103,11 @@ watch(
|
|||||||
form.regionCode = '';
|
form.regionCode = '';
|
||||||
workerForm.regionCodes = [];
|
workerForm.regionCodes = [];
|
||||||
if (value) {
|
if (value) {
|
||||||
void loadRegionList();
|
|
||||||
void refreshWorkerStatus();
|
void refreshWorkerStatus();
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
|
|
||||||
async function loadRegionList() {
|
|
||||||
if (!form.sysOrigin) {
|
|
||||||
regionList.value = [];
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
regionList.value = (await regionConfigTable({ sysOrigin: form.sysOrigin })) || [];
|
|
||||||
}
|
|
||||||
|
|
||||||
function handleRegionChange(_value: any, item: Record<string, any> | null) {
|
function handleRegionChange(_value: any, item: Record<string, any> | null) {
|
||||||
form.regionCode = item?.regionCode || item?.code || String(item?.id || '');
|
form.regionCode = item?.regionCode || item?.code || String(item?.id || '');
|
||||||
}
|
}
|
||||||
@ -210,25 +199,11 @@ function buildWorkerPayload() {
|
|||||||
maxDelaySeconds: Number(workerForm.maxDelaySeconds || 0),
|
maxDelaySeconds: Number(workerForm.maxDelaySeconds || 0),
|
||||||
minDelaySeconds: Number(workerForm.minDelaySeconds || 0),
|
minDelaySeconds: Number(workerForm.minDelaySeconds || 0),
|
||||||
multiples: parseFloatList(workerForm.multiples),
|
multiples: parseFloatList(workerForm.multiples),
|
||||||
regionCodes: normalizeWorkerRegionCodes(workerForm.regionCodes || []),
|
regionCodes: workerForm.regionCodes || [],
|
||||||
sysOrigin: form.sysOrigin,
|
sysOrigin: form.sysOrigin,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
function normalizeWorkerRegionCodes(values: any[]) {
|
|
||||||
return values
|
|
||||||
.map((value) => {
|
|
||||||
const raw = String(value || '').trim();
|
|
||||||
const item = regionList.value.find((region) =>
|
|
||||||
[region.id, region.regionCode, region.code, region.regionName]
|
|
||||||
.filter((current) => current !== undefined && current !== null)
|
|
||||||
.some((current) => String(current).trim() === raw),
|
|
||||||
);
|
|
||||||
return String(item?.regionCode || item?.code || item?.regionName || raw).trim();
|
|
||||||
})
|
|
||||||
.filter(Boolean);
|
|
||||||
}
|
|
||||||
|
|
||||||
async function refreshWorkerStatus() {
|
async function refreshWorkerStatus() {
|
||||||
workerLoading.value = true;
|
workerLoading.value = true;
|
||||||
try {
|
try {
|
||||||
@ -239,7 +214,6 @@ async function refreshWorkerStatus() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async function handleStartWorker() {
|
async function handleStartWorker() {
|
||||||
await loadRegionList();
|
|
||||||
const payload = buildWorkerPayload();
|
const payload = buildWorkerPayload();
|
||||||
if (!payload.sysOrigin) {
|
if (!payload.sysOrigin) {
|
||||||
message.warning('请选择系统来源');
|
message.warning('请选择系统来源');
|
||||||
@ -368,7 +342,6 @@ async function handleStopWorker() {
|
|||||||
v-model:value="workerForm.regionCodes"
|
v-model:value="workerForm.regionCodes"
|
||||||
multiple
|
multiple
|
||||||
:sys-origin="form.sysOrigin"
|
:sys-origin="form.sysOrigin"
|
||||||
value-field="regionCode"
|
|
||||||
placeholder="可多选"
|
placeholder="可多选"
|
||||||
/>
|
/>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user