|
@@ -24,7 +24,7 @@
|
|
|
<cDialog :dialog="dialog" @toClose="toClose">
|
|
|
<template v-slot:info>
|
|
|
<el-col :span="24" class="dialog_one" v-if="dialog.type == '1'">
|
|
|
- <cForm :span="24" :fields="formFields" :form="form" :rules="{}" @save="toSave" label-width="auto">
|
|
|
+ <cForm :span="24" :fields="formFields" :form="form" :rules="{}" @save="toSave" @dataChange="dataChange" label-width="auto">
|
|
|
<template #winner>
|
|
|
<el-option v-for="i in winnerList" :key="i._id" :label="i.name" :value="i._id"></el-option>
|
|
|
</template>
|
|
@@ -86,12 +86,7 @@ const winnerList: Ref<any> = ref([]);
|
|
|
// 弹框
|
|
|
const dialog: Ref<any> = ref({ title: '赛程状态', show: false, type: '1' });
|
|
|
const form: Ref<any> = ref({ file: [] });
|
|
|
-const formFields: Ref<any> = ref([
|
|
|
- { label: '状态', model: 'status', type: 'select' },
|
|
|
- { label: '红方分数', model: 'red_score' },
|
|
|
- { label: '蓝方分数', model: 'blue_score' },
|
|
|
- { label: '胜者', model: 'winner', type: 'select' }
|
|
|
-]);
|
|
|
+const formFields: Ref<any> = ref([{ label: '状态', model: 'status', type: 'select' }]);
|
|
|
// 请求
|
|
|
onMounted(async () => {
|
|
|
loading.value = true;
|
|
@@ -111,6 +106,22 @@ const toSearch = (query) => {
|
|
|
searchForm.value = query;
|
|
|
search({ skip, limit });
|
|
|
};
|
|
|
+// 选择
|
|
|
+const dataChange = ({ model, value }) => {
|
|
|
+ if (model == 'status') {
|
|
|
+ if (value == '-1') {
|
|
|
+ formFields.value.splice(
|
|
|
+ 3,
|
|
|
+ 0,
|
|
|
+ { label: '红方分数', model: 'red_score' },
|
|
|
+ { label: '蓝方分数', model: 'blue_score' },
|
|
|
+ { label: '胜者', model: 'winner', type: 'select' }
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ formFields.value = [{ label: '状态', model: 'status', type: 'select' }];
|
|
|
+ }
|
|
|
+ }
|
|
|
+};
|
|
|
const getDict = (e, model) => {
|
|
|
if (model == 'status') {
|
|
|
let data: any = statusList.value.find((i: any) => i.value == e);
|
|
@@ -135,6 +146,17 @@ const toStatus = async (data) => {
|
|
|
list.push(red.data);
|
|
|
list.push(blue.data);
|
|
|
winnerList.value = list;
|
|
|
+ if (res.data.status == '-1') {
|
|
|
+ formFields.value.splice(
|
|
|
+ 3,
|
|
|
+ 0,
|
|
|
+ { label: '红方分数', model: 'red_score' },
|
|
|
+ { label: '蓝方分数', model: 'blue_score' },
|
|
|
+ { label: '胜者', model: 'winner', type: 'select' }
|
|
|
+ );
|
|
|
+ } else {
|
|
|
+ formFields.value = [{ label: '状态', model: 'status', type: 'select' }];
|
|
|
+ }
|
|
|
dialog.value = { title: '赛程状态', show: true, type: '1' };
|
|
|
}
|
|
|
};
|
|
@@ -174,6 +196,7 @@ const toSave = async (data) => {
|
|
|
// 关闭弹框
|
|
|
const toClose = () => {
|
|
|
form.value = {};
|
|
|
+ formFields.value = [{ label: '状态', model: 'status', type: 'select' }];
|
|
|
dialog.value = { show: false };
|
|
|
search({ skip, limit });
|
|
|
};
|