diff --git a/cdTMP/src/components/ma-editor/index.vue b/cdTMP/src/components/ma-editor/index.vue index 5095ef7..c41a663 100644 --- a/cdTMP/src/components/ma-editor/index.vue +++ b/cdTMP/src/components/ma-editor/index.vue @@ -79,6 +79,7 @@ const initConfig = reactive({ toolbar_mode: "wrap", plugins: props.plugins, toolbar: props.toolbar, + skeletonScreen: true, branding: false, content_css: "/tinymce/skins/content/default/content.css", setup: (editor) => { diff --git a/cdTMP/src/layout/project-layout.vue b/cdTMP/src/layout/project-layout.vue index 8f14ecf..48b3cb0 100644 --- a/cdTMP/src/layout/project-layout.vue +++ b/cdTMP/src/layout/project-layout.vue @@ -23,6 +23,7 @@ @select="pointNode" :load-more="loadMore" v-model:expanded-keys="expandedKeys" + v-model:selected-keys="selectedKeys" showLine ref="treeRef" border @@ -160,6 +161,9 @@ const projectId = ref(route.query.id) onMounted(async () => { treeDataStore.initTreeData(projectId.value) }) +// v-model绑定选中节点 +const selectedKeys = ref([]) +const previousKey = ref(null) // 1.定义展开的tree-key 2.定义全部展开的数据 3.定义展开收缩函数 -> 注意在treeStore里面使用递归处理 const expandedKeys = ref([]) const allExpandedKeys = ref([]) @@ -171,6 +175,9 @@ const toggleExpanded = () => { let timerId = null let count = 0 const pointNode = (value, data) => { + // 获取处理单击不选中,双击选中的变量 + let catch_selected_key = selectedKeys.value + selectedKeys.value = previousKey.value count++ if (timerId) { return @@ -243,6 +250,10 @@ const pointNode = (value, data) => { router.push({ name: "problem", query: { ...projectInfo.value, key: data.node.key } }) } treeDataStore.setCurrentNode(data.node.key) + // 单击设置选择的key + selectedKeys.value = catch_selected_key + // 单击后设置previous选中的key是什么 + previousKey.value = catch_selected_key count = 0 clearTimeout(timerId) timerId = null diff --git a/cdTMP/src/store/project/treeData.js b/cdTMP/src/store/project/treeData.js index cc36d37..907881e 100644 --- a/cdTMP/src/store/project/treeData.js +++ b/cdTMP/src/store/project/treeData.js @@ -12,11 +12,20 @@ const useTreeDataStore = defineStore("treeDataStore", { actions: { // 不能使用箭头函数,无法绑定this async initTreeData(projectId) { + // 获取localStorage的treeData数据 + if(localStorage.getItem("tree_local_data")){ + this.treeData = JSON.parse(localStorage.getItem("tree_local_data")) + } if (this.treeData.length === 0) { const roundData = await projectApi.getRoundInfo(projectId) this.treeData = roundData.data this.originTreeData = roundData.data } + // 将用户关闭页面数据储存于localStorage中 -> 注意用户打开其他项目 -> 务必清除localStorage的tree_local_data数据 + // 暂定在点击进入工作台时清除!!! + window.addEventListener("beforeunload",()=>{ + localStorage.setItem("tree_local_data",JSON.stringify(this.treeData)) + }) }, // 用于新增轮次后显示 async resetTreeData(projectId) { diff --git a/cdTMP/src/views/project/case/index.vue b/cdTMP/src/views/project/case/index.vue index f1ab661..658c5ba 100644 --- a/cdTMP/src/views/project/case/index.vue +++ b/cdTMP/src/views/project/case/index.vue @@ -32,11 +32,12 @@ const crudOptions = ref({ edit: { show: true, api: problemApi.update }, delete: { show: true, api: problemApi.delete }, beforeOpenAdd: function () { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] - let test_key = route.query.key.split("-")[3] - let case_key = route.query.key.split("-")[4] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] + let test_key = key_split[3] + let case_key = key_split[4] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > @@ -46,11 +47,12 @@ const crudOptions = ref({ return true }, beforeOpenEdit: function (record) { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] - let test_key = route.query.key.split("-")[3] - let case_key = route.query.key.split("-")[4] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] + let test_key = key_split[3] + let case_key = key_split[4] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > diff --git a/cdTMP/src/views/project/design-demand/index.vue b/cdTMP/src/views/project/design-demand/index.vue index 78005a6..be746c7 100644 --- a/cdTMP/src/views/project/design-demand/index.vue +++ b/cdTMP/src/views/project/design-demand/index.vue @@ -52,17 +52,19 @@ const crudOptions = ref({ edit: { show: true, api: testDemandApi.update }, delete: { show: true, api: testDemandApi.delete }, beforeOpenAdd: function () { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > ${td[round_key].children[dut_key].children[design_key].title} > 测试项-` return true }, beforeOpenEdit: function (record) { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > ${td[round_key].children[dut_key].children[design_key].title} >测试项[${record.name}]-` return true diff --git a/cdTMP/src/views/project/dut/index.vue b/cdTMP/src/views/project/dut/index.vue index 1b73121..6673281 100644 --- a/cdTMP/src/views/project/dut/index.vue +++ b/cdTMP/src/views/project/dut/index.vue @@ -50,15 +50,17 @@ const crudOptions = ref({ delete: { show: true, api: designDemandApi.delete }, // 处理添加后函数 beforeOpenAdd: function () { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > 设计需求-` return true }, beforeOpenEdit: function (record) { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} >设计需求[${record.name}]-` return true diff --git a/cdTMP/src/views/project/round/index.vue b/cdTMP/src/views/project/round/index.vue index 36e5695..6d7f7ba 100644 --- a/cdTMP/src/views/project/round/index.vue +++ b/cdTMP/src/views/project/round/index.vue @@ -57,11 +57,13 @@ const crudOptions = ref({ add: { show: true, api: dutApi.save, text: "新增被测件" }, // 处理添加后函数 beforeOpenAdd: function () { - crudRef.value.crudFormRef.actionTitle = `${route.query.ident}>第${parseInt(route.query.key) + 1}轮>被测件-` + let round_str = parseInt(route.query.key) + 1 + crudRef.value.crudFormRef.actionTitle = `${route.query.ident}>第${round_str}轮>被测件-` return true }, beforeOpenEdit: function (record) { - crudRef.value.crudFormRef.actionTitle = `${route.query.ident}>第${parseInt(route.query.key) + 1}轮>被测件[${record.name}]-` + let round_str = parseInt(route.query.key) + 1 + crudRef.value.crudFormRef.actionTitle = `${route.query.ident}>第${round_str}轮>被测件[${record.name}]-` return true }, afterAdd: (res) => { diff --git a/cdTMP/src/views/project/testDemand/index.vue b/cdTMP/src/views/project/testDemand/index.vue index 18b29d9..fbafc9f 100644 --- a/cdTMP/src/views/project/testDemand/index.vue +++ b/cdTMP/src/views/project/testDemand/index.vue @@ -38,10 +38,11 @@ const crudOptions = ref({ delete: { show: true, api: caseApi.delete }, // 处理新增删除后树状图显示 beforeOpenAdd: function () { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] - let test_key = route.query.key.split("-")[3] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] + let test_key = key_split[3] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > @@ -50,10 +51,11 @@ const crudOptions = ref({ return true }, beforeOpenEdit: function (record) { - let round_key = route.query.key.split("-")[0] - let dut_key = route.query.key.split("-")[1] - let design_key = route.query.key.split("-")[2] - let test_key = route.query.key.split("-")[3] + let key_split = route.query.key.split("-") + let round_key = key_split[0] + let dut_key = key_split[1] + let design_key = key_split[2] + let test_key = key_split[3] let td = treeDataStore.treeData crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > diff --git a/cdTMP/src/views/testmanage/projmanage/index.vue b/cdTMP/src/views/testmanage/projmanage/index.vue index 4915e3b..2cf6fee 100644 --- a/cdTMP/src/views/testmanage/projmanage/index.vue +++ b/cdTMP/src/views/testmanage/projmanage/index.vue @@ -4,7 +4,7 @@ @@ -14,10 +14,20 @@