|
|
|
@ -3,12 +3,12 @@
|
|
|
|
|
<div class="card filter">
|
|
|
|
|
<div style="display: flex; justify-content: space-between; margin-bottom: 10px">
|
|
|
|
|
<div style="display: flex; align-items: center; font-size: 14px; color: #009688; font-weight: bolder">
|
|
|
|
|
小学-语文-华东师大版
|
|
|
|
|
{{ sssTxt }}
|
|
|
|
|
</div>
|
|
|
|
|
<div>
|
|
|
|
|
<el-popover placement="right" :width="200" trigger="click">
|
|
|
|
|
<el-popover placement="right" :width="200" trigger="click" :visible="visible">
|
|
|
|
|
<template #reference>
|
|
|
|
|
<el-icon style="cursor: pointer"><Expand /></el-icon>
|
|
|
|
|
<el-icon style="cursor: pointer" @click="visible = true"><Expand /></el-icon>
|
|
|
|
|
</template>
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="stageSelect"
|
|
|
|
@ -30,9 +30,18 @@
|
|
|
|
|
<el-option v-for="(item, index) in subjectList" :key="index" :label="item.subject_name" :value="item.subject_id" />
|
|
|
|
|
</el-select>
|
|
|
|
|
|
|
|
|
|
<el-select v-model="schemeSelect" placeholder="请选择版本" @change="schemeChange">
|
|
|
|
|
<el-select
|
|
|
|
|
v-model="schemeSelect"
|
|
|
|
|
placeholder="请选择版本"
|
|
|
|
|
style="margin-bottom: 10px"
|
|
|
|
|
:teleported="false"
|
|
|
|
|
@change="schemeChange"
|
|
|
|
|
>
|
|
|
|
|
<el-option v-for="(item, index) in schemeList" :key="index" :label="item.scheme_name" :value="item.scheme_id" />
|
|
|
|
|
</el-select>
|
|
|
|
|
<div style="text-align: right">
|
|
|
|
|
<el-button type="primary" size="small" :icon="Select" round @click="well">确定</el-button>
|
|
|
|
|
</div>
|
|
|
|
|
</el-popover>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
@ -45,6 +54,7 @@
|
|
|
|
|
|
|
|
|
|
<script setup lang="ts">
|
|
|
|
|
import { ref, reactive, onMounted } from "vue";
|
|
|
|
|
import { Select } from "@element-plus/icons-vue";
|
|
|
|
|
import { ProTableInstance, ColumnProps } from "@/components/ProTable/interface";
|
|
|
|
|
import { Stage } from "@/api/interface";
|
|
|
|
|
import ProTable from "@/components/ProTable/index.vue";
|
|
|
|
@ -54,12 +64,19 @@ import { getStructureList, getStageList, getSubjectList, getSchemeList } from "@
|
|
|
|
|
|
|
|
|
|
const stageList = ref<any>([]);
|
|
|
|
|
const stageSelect = ref("");
|
|
|
|
|
const stageSelectTxt = ref("");
|
|
|
|
|
|
|
|
|
|
const subjectList = ref<any>([]);
|
|
|
|
|
const subjectSelect = ref("");
|
|
|
|
|
const subjectSelectTxt = ref("");
|
|
|
|
|
|
|
|
|
|
const schemeList = ref<any>([]);
|
|
|
|
|
const schemeSelect = ref("");
|
|
|
|
|
const schemeSelectTxt = ref("");
|
|
|
|
|
|
|
|
|
|
const sssTxt = ref("");
|
|
|
|
|
|
|
|
|
|
const visible = ref(false);
|
|
|
|
|
|
|
|
|
|
const getSchemeTree = (scheme_id: number = 500124397) => {
|
|
|
|
|
return getStructureList({ scheme_id });
|
|
|
|
@ -82,7 +99,12 @@ const getStageSelectList = async () => {
|
|
|
|
|
const stageChange = async value => {
|
|
|
|
|
const res = await getSubjectList({ stage_id: value, pageNum: 1, pageSize: 100 });
|
|
|
|
|
subjectList.value = res.data.list;
|
|
|
|
|
|
|
|
|
|
stageSelectTxt.value = stageList.value.find(item => item.stage_id === value)?.stage_name;
|
|
|
|
|
|
|
|
|
|
subjectSelect.value = "";
|
|
|
|
|
schemeList.value = [];
|
|
|
|
|
schemeSelect.value = "";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const subjectChange = async value => {
|
|
|
|
@ -93,10 +115,21 @@ const subjectChange = async value => {
|
|
|
|
|
pageSize: 100
|
|
|
|
|
});
|
|
|
|
|
schemeList.value = res.data.list;
|
|
|
|
|
|
|
|
|
|
subjectSelectTxt.value = subjectList.value.find(item => item.subject_id === value)?.subject_name;
|
|
|
|
|
|
|
|
|
|
schemeSelect.value = "";
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const schemeChange = value => {
|
|
|
|
|
treeRef.value?.refresh(value);
|
|
|
|
|
schemeSelectTxt.value = schemeList.value.find(item => item.scheme_id === value)?.scheme_name;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
const well = () => {
|
|
|
|
|
sssTxt.value = stageSelectTxt.value + "-" + subjectSelectTxt.value + "-" + schemeSelectTxt.value;
|
|
|
|
|
|
|
|
|
|
treeRef.value?.refresh(schemeSelect.value);
|
|
|
|
|
visible.value = false;
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
onMounted(() => {
|
|
|
|
|