123
This commit is contained in:
@@ -79,6 +79,7 @@ const initConfig = reactive({
|
|||||||
toolbar_mode: "wrap",
|
toolbar_mode: "wrap",
|
||||||
plugins: props.plugins,
|
plugins: props.plugins,
|
||||||
toolbar: props.toolbar,
|
toolbar: props.toolbar,
|
||||||
|
skeletonScreen: true,
|
||||||
branding: false,
|
branding: false,
|
||||||
content_css: "/tinymce/skins/content/default/content.css",
|
content_css: "/tinymce/skins/content/default/content.css",
|
||||||
setup: (editor) => {
|
setup: (editor) => {
|
||||||
|
|||||||
@@ -23,6 +23,7 @@
|
|||||||
@select="pointNode"
|
@select="pointNode"
|
||||||
:load-more="loadMore"
|
:load-more="loadMore"
|
||||||
v-model:expanded-keys="expandedKeys"
|
v-model:expanded-keys="expandedKeys"
|
||||||
|
v-model:selected-keys="selectedKeys"
|
||||||
showLine
|
showLine
|
||||||
ref="treeRef"
|
ref="treeRef"
|
||||||
border
|
border
|
||||||
@@ -160,6 +161,9 @@ const projectId = ref(route.query.id)
|
|||||||
onMounted(async () => {
|
onMounted(async () => {
|
||||||
treeDataStore.initTreeData(projectId.value)
|
treeDataStore.initTreeData(projectId.value)
|
||||||
})
|
})
|
||||||
|
// v-model绑定选中节点
|
||||||
|
const selectedKeys = ref([])
|
||||||
|
const previousKey = ref(null)
|
||||||
// 1.定义展开的tree-key 2.定义全部展开的数据 3.定义展开收缩函数 -> 注意在treeStore里面使用递归处理
|
// 1.定义展开的tree-key 2.定义全部展开的数据 3.定义展开收缩函数 -> 注意在treeStore里面使用递归处理
|
||||||
const expandedKeys = ref([])
|
const expandedKeys = ref([])
|
||||||
const allExpandedKeys = ref([])
|
const allExpandedKeys = ref([])
|
||||||
@@ -171,6 +175,9 @@ const toggleExpanded = () => {
|
|||||||
let timerId = null
|
let timerId = null
|
||||||
let count = 0
|
let count = 0
|
||||||
const pointNode = (value, data) => {
|
const pointNode = (value, data) => {
|
||||||
|
// 获取处理单击不选中,双击选中的变量
|
||||||
|
let catch_selected_key = selectedKeys.value
|
||||||
|
selectedKeys.value = previousKey.value
|
||||||
count++
|
count++
|
||||||
if (timerId) {
|
if (timerId) {
|
||||||
return
|
return
|
||||||
@@ -243,6 +250,10 @@ const pointNode = (value, data) => {
|
|||||||
router.push({ name: "problem", query: { ...projectInfo.value, key: data.node.key } })
|
router.push({ name: "problem", query: { ...projectInfo.value, key: data.node.key } })
|
||||||
}
|
}
|
||||||
treeDataStore.setCurrentNode(data.node.key)
|
treeDataStore.setCurrentNode(data.node.key)
|
||||||
|
// 单击设置选择的key
|
||||||
|
selectedKeys.value = catch_selected_key
|
||||||
|
// 单击后设置previous选中的key是什么
|
||||||
|
previousKey.value = catch_selected_key
|
||||||
count = 0
|
count = 0
|
||||||
clearTimeout(timerId)
|
clearTimeout(timerId)
|
||||||
timerId = null
|
timerId = null
|
||||||
|
|||||||
@@ -12,11 +12,20 @@ const useTreeDataStore = defineStore("treeDataStore", {
|
|||||||
actions: {
|
actions: {
|
||||||
// 不能使用箭头函数,无法绑定this
|
// 不能使用箭头函数,无法绑定this
|
||||||
async initTreeData(projectId) {
|
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) {
|
if (this.treeData.length === 0) {
|
||||||
const roundData = await projectApi.getRoundInfo(projectId)
|
const roundData = await projectApi.getRoundInfo(projectId)
|
||||||
this.treeData = roundData.data
|
this.treeData = roundData.data
|
||||||
this.originTreeData = 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) {
|
async resetTreeData(projectId) {
|
||||||
|
|||||||
@@ -32,11 +32,12 @@ const crudOptions = ref({
|
|||||||
edit: { show: true, api: problemApi.update },
|
edit: { show: true, api: problemApi.update },
|
||||||
delete: { show: true, api: problemApi.delete },
|
delete: { show: true, api: problemApi.delete },
|
||||||
beforeOpenAdd: function () {
|
beforeOpenAdd: function () {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
let test_key = route.query.key.split("-")[3]
|
let design_key = key_split[2]
|
||||||
let case_key = route.query.key.split("-")[4]
|
let test_key = key_split[3]
|
||||||
|
let case_key = key_split[4]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
||||||
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
||||||
@@ -46,11 +47,12 @@ const crudOptions = ref({
|
|||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
beforeOpenEdit: function (record) {
|
beforeOpenEdit: function (record) {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
let test_key = route.query.key.split("-")[3]
|
let design_key = key_split[2]
|
||||||
let case_key = route.query.key.split("-")[4]
|
let test_key = key_split[3]
|
||||||
|
let case_key = key_split[4]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
||||||
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
||||||
|
|||||||
@@ -52,17 +52,19 @@ const crudOptions = ref({
|
|||||||
edit: { show: true, api: testDemandApi.update },
|
edit: { show: true, api: testDemandApi.update },
|
||||||
delete: { show: true, api: testDemandApi.delete },
|
delete: { show: true, api: testDemandApi.delete },
|
||||||
beforeOpenAdd: function () {
|
beforeOpenAdd: function () {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
|
let design_key = key_split[2]
|
||||||
let td = treeDataStore.treeData
|
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} > 测试项-`
|
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
|
return true
|
||||||
},
|
},
|
||||||
beforeOpenEdit: function (record) {
|
beforeOpenEdit: function (record) {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
|
let design_key = key_split[2]
|
||||||
let td = treeDataStore.treeData
|
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}]-`
|
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
|
return true
|
||||||
|
|||||||
@@ -50,15 +50,17 @@ const crudOptions = ref({
|
|||||||
delete: { show: true, api: designDemandApi.delete },
|
delete: { show: true, api: designDemandApi.delete },
|
||||||
// 处理添加后函数
|
// 处理添加后函数
|
||||||
beforeOpenAdd: function () {
|
beforeOpenAdd: function () {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
|
let dut_key = key_split[1]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > 设计需求-`
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} > 设计需求-`
|
||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
beforeOpenEdit: function (record) {
|
beforeOpenEdit: function (record) {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
|
let dut_key = key_split[1]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} >设计需求[${record.name}]-`
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} > ${td[round_key].title} > ${td[round_key].children[dut_key].title} >设计需求[${record.name}]-`
|
||||||
return true
|
return true
|
||||||
|
|||||||
@@ -57,11 +57,13 @@ const crudOptions = ref({
|
|||||||
add: { show: true, api: dutApi.save, text: "新增被测件" },
|
add: { show: true, api: dutApi.save, text: "新增被测件" },
|
||||||
// 处理添加后函数
|
// 处理添加后函数
|
||||||
beforeOpenAdd: function () {
|
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
|
return true
|
||||||
},
|
},
|
||||||
beforeOpenEdit: function (record) {
|
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
|
return true
|
||||||
},
|
},
|
||||||
afterAdd: (res) => {
|
afterAdd: (res) => {
|
||||||
|
|||||||
@@ -38,10 +38,11 @@ const crudOptions = ref({
|
|||||||
delete: { show: true, api: caseApi.delete },
|
delete: { show: true, api: caseApi.delete },
|
||||||
// 处理新增删除后树状图显示
|
// 处理新增删除后树状图显示
|
||||||
beforeOpenAdd: function () {
|
beforeOpenAdd: function () {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
let test_key = route.query.key.split("-")[3]
|
let design_key = key_split[2]
|
||||||
|
let test_key = key_split[3]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
||||||
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
||||||
@@ -50,10 +51,11 @@ const crudOptions = ref({
|
|||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
beforeOpenEdit: function (record) {
|
beforeOpenEdit: function (record) {
|
||||||
let round_key = route.query.key.split("-")[0]
|
let key_split = route.query.key.split("-")
|
||||||
let dut_key = route.query.key.split("-")[1]
|
let round_key = key_split[0]
|
||||||
let design_key = route.query.key.split("-")[2]
|
let dut_key = key_split[1]
|
||||||
let test_key = route.query.key.split("-")[3]
|
let design_key = key_split[2]
|
||||||
|
let test_key = key_split[3]
|
||||||
let td = treeDataStore.treeData
|
let td = treeDataStore.treeData
|
||||||
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
crudRef.value.crudFormRef.actionTitle = `${route.query.ident} >
|
||||||
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
${td[round_key].title} > ${td[round_key].children[dut_key].title} >
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<!-- ma-crud组件 -->
|
<!-- ma-crud组件 -->
|
||||||
<ma-crud :options="crudOptions" :columns="crudColumns" ref="crudRef">
|
<ma-crud :options="crudOptions" :columns="crudColumns" ref="crudRef">
|
||||||
<template #operationBeforeExtend="{ record }">
|
<template #operationBeforeExtend="{ record }">
|
||||||
<a-link @click="$router.push({ name: 'project', query: record })">进入工作区</a-link>
|
<a-link @click="enterWorkPlant(record)">进入工作区</a-link>
|
||||||
<a-link @click="previewRef.open(record, crudColumns)"><icon-eye />预览</a-link>
|
<a-link @click="previewRef.open(record, crudColumns)"><icon-eye />预览</a-link>
|
||||||
</template>
|
</template>
|
||||||
</ma-crud>
|
</ma-crud>
|
||||||
@@ -14,10 +14,20 @@
|
|||||||
</template>
|
</template>
|
||||||
<script lang="jsx" setup>
|
<script lang="jsx" setup>
|
||||||
import { ref } from "vue"
|
import { ref } from "vue"
|
||||||
|
import { useRoute, useRouter } from "vue-router"
|
||||||
import projectApi from "@/api/testmanage/project"
|
import projectApi from "@/api/testmanage/project"
|
||||||
import preview from "./cpns/preview.vue"
|
import preview from "./cpns/preview.vue"
|
||||||
|
const router = useRouter()
|
||||||
// 定义预览组件的Ref
|
// 定义预览组件的Ref
|
||||||
const previewRef = ref(null)
|
const previewRef = ref(null)
|
||||||
|
// 点击进入工作区函数 - 每次点击后都清除localStorage中树状目录数据
|
||||||
|
const enterWorkPlant = function (record) {
|
||||||
|
if (localStorage.getItem("tree_local_data")) {
|
||||||
|
localStorage.removeItem("tree_local_data")
|
||||||
|
}
|
||||||
|
router.push({ name: "project", query: record })
|
||||||
|
}
|
||||||
|
|
||||||
// CRUD-OPTIONS
|
// CRUD-OPTIONS
|
||||||
const crudRef = ref()
|
const crudRef = ref()
|
||||||
const crudOptions = ref({
|
const crudOptions = ref({
|
||||||
|
|||||||
Reference in New Issue
Block a user