|
@@ -121,9 +121,9 @@
|
|
<el-form-item label="年龄" prop="age">
|
|
<el-form-item label="年龄" prop="age">
|
|
<el-input v-model="form.age" placeholder="请输入年龄" />
|
|
<el-input v-model="form.age" placeholder="请输入年龄" />
|
|
</el-form-item>
|
|
</el-form-item>
|
|
- <el-form-item label="参与项目" prop="projectValue">
|
|
|
|
|
|
+ <el-form-item label="参与项目" prop="projectList">
|
|
<el-transfer
|
|
<el-transfer
|
|
- v-model="form.selectedProjects"
|
|
|
|
|
|
+ v-model="projectListStr"
|
|
:data="gameEventProjectList"
|
|
:data="gameEventProjectList"
|
|
:titles="['可选项目', '已选项目']"
|
|
:titles="['可选项目', '已选项目']"
|
|
:button-texts="['移除', '添加']"
|
|
:button-texts="['移除', '添加']"
|
|
@@ -432,7 +432,9 @@ const handleUpdate = async (row?: GameAthleteVO) => {
|
|
Object.assign(form.value, res.data);
|
|
Object.assign(form.value, res.data);
|
|
|
|
|
|
// 处理项目列表,将逗号分隔的字符串转换为数组
|
|
// 处理项目列表,将逗号分隔的字符串转换为数组
|
|
- if (res.data.projectValue) {
|
|
|
|
|
|
+ if (res.data.projectList) {
|
|
|
|
+ form.value.selectedProjects = res.data.projectList;
|
|
|
|
+ } else if (res.data.projectValue) {
|
|
form.value.selectedProjects = res.data.projectValue.split(',').map(Number);
|
|
form.value.selectedProjects = res.data.projectValue.split(',').map(Number);
|
|
} else {
|
|
} else {
|
|
form.value.selectedProjects = [];
|
|
form.value.selectedProjects = [];
|
|
@@ -448,6 +450,14 @@ const handleUpdate = async (row?: GameAthleteVO) => {
|
|
// });
|
|
// });
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+// 添加一个计算属性用于处理projectList2的类型转换
|
|
|
|
+const projectListStr = computed({
|
|
|
|
+ get: () => form.value.selectedProjects.map(id => String(id)),
|
|
|
|
+ set: (value) => {
|
|
|
|
+ form.value.selectedProjects = value.map(id => Number(id));
|
|
|
|
+ }
|
|
|
|
+});
|
|
|
|
+
|
|
/** 提交按钮 */
|
|
/** 提交按钮 */
|
|
const submitForm = () => {
|
|
const submitForm = () => {
|
|
gameAthleteFormRef.value?.validate(async (valid: boolean) => {
|
|
gameAthleteFormRef.value?.validate(async (valid: boolean) => {
|