Step UX-1:通用选择器

This commit is contained in:
Cheng Zhou
2025-12-17 14:37:57 +08:00
parent 580d64602f
commit dd51f56707
13 changed files with 334 additions and 52 deletions
+7
View File
@@ -4,6 +4,9 @@
<el-form-item label="标题" prop="title">
<el-input v-model="form.title" />
</el-form-item>
<el-form-item label="受试者">
<SubjectSelect v-model="form.subject_id" :study-id="study.currentStudy?.id || null" placeholder="可选" />
</el-form-item>
<el-form-item label="类别" prop="category">
<el-select v-model="form.category" placeholder="请选择">
<el-option v-for="c in categories" :key="c" :label="c" :value="c" />
@@ -34,6 +37,7 @@ import type { FormInstance, FormRules } from "element-plus";
import { ElMessage } from "element-plus";
import { createIssue, updateIssue } from "../api/issues";
import { useStudyStore } from "../store/study";
import SubjectSelect from "./selectors/SubjectSelect.vue";
interface Props {
modelValue: boolean;
@@ -57,6 +61,7 @@ const levels = ["LOW", "MEDIUM", "HIGH", "CRITICAL"];
const form = reactive({
title: "",
subject_id: "",
category: "ISSUE",
level: "MEDIUM",
due_date: "",
@@ -77,6 +82,7 @@ watch(
if (val) {
Object.assign(form, {
title: val.title || "",
subject_id: val.subject_id || "",
category: val.category || "ISSUE",
level: val.level || "MEDIUM",
due_date: val.due_date || "",
@@ -85,6 +91,7 @@ watch(
} else {
Object.assign(form, {
title: "",
subject_id: "",
category: "ISSUE",
level: "MEDIUM",
due_date: "",