diff --git a/src/App.vue b/src/App.vue
index 92fc6c01..2686ee24 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -17,7 +17,6 @@ import '@/utils/warterMark'
// 引入自定义icon
import '@/assets/icon/iconfont.less'
import Vue from 'vue'
-import { updatePageHeight } from './components/tools/setting.js'
moment.locale('zh-cn')
@@ -102,8 +101,6 @@ export default {
window.open(href, '_blank')
}
- updatePageHeight()
-
}
}
diff --git a/src/api/businessSupport.js b/src/api/businessSupport.js
index 3e63267f..7890103c 100644
--- a/src/api/businessSupport.js
+++ b/src/api/businessSupport.js
@@ -9,9 +9,15 @@ const setOrCancelTop = (params) => getAction('/laws/library/lawsProblemLibrary/i
// 回答库详情-删除回答
const deleteAnswer = (params) => postAction('/laws/library/lawsProblemLibrary/deleteAnswer', params)
+// 标准化活动-树形图
+const queryTreeList = (params) => getAction('/laws/standardization/lawsStandardization/queryTreeList', params)
+
export {
getQuizById,
answerQuiz,
setOrCancelTop,
- deleteAnswer
+ deleteAnswer,
+
+ // 标准化活动
+ queryTreeList
}
diff --git a/src/components/MindMap.vue b/src/components/MindMap.vue
index abe42bbf..a3d26365 100644
--- a/src/components/MindMap.vue
+++ b/src/components/MindMap.vue
@@ -91,22 +91,24 @@ export default {
return {
data: {},
graph: null,
- loadEnd: false
+ loadEnd: false,
+ selectedNodeId: null,
+ lastQueryId: null
}
},
watch: {
mapData: {
handler () {
+ console.log(this.mapData)
this.data = JSON.parse(JSON.stringify(this.mapData))
- if (this.loadEnd) {
+ if (this.loadEnd && this.data.id) {
this.initMindMap()
}
},
- deep: true,
- immediate: true
+ deep: true
},
loadEnd () {
- if (this.loadEnd) {
+ if (this.loadEnd && this.data.id) {
this.initMindMap()
}
}
@@ -118,8 +120,13 @@ export default {
},
methods: {
initMindMap () {
+ if (this.graph) {
+ this.graph.destroy()
+ this.graph = null
+ }
G6.registerNode('tree-node', {
drawShape: (cfg, group) => {
+ console.log('自定义节点了',cfg)
const nodeColorIndex = cfg.depth % NODE_COLOR.length
const nodeStyle = NODE_COLOR[nodeColorIndex]
// 节点整体的内容
@@ -186,13 +193,13 @@ export default {
nodeContainer.attr({
x: 0,
y: 0,
- width: this.nodeWidth + this.expendCollapseIconR + NODE_ICON_MARGIN,
+ width: this.nodeWidth + this.expendCollapseIconR + NODE_ICON_MARGIN + this.expendCollapseIconR,
height: this.nodeHeight
})
return nodeContainer
},
setState (name, value, item) {
- console.log(item)
+ console.log(name, value)
const group = item.getContainer()
const nodeDom = group.get('children')
const nodeBox = nodeDom[1]
@@ -272,13 +279,27 @@ export default {
},
handleSelectedNode (event) {
const { item } = event
+ if (this.selectedNodeId && this.selectedNodeId !== item._cfg.id) {
+ this.graph.findById(this.selectedNodeId).getModel().selected = false
+ this.graph.setItemState(this.selectedNodeId, 'selected', false)
+ }
item.getModel().selected = !item.getModel().selected
- this.graph.setItemState(item, 'selected', item.getModel().selected)
- this.graph.refreshItem(item)
+ this.graph.setItemState(item._cfg.id, 'selected', item.getModel().selected)
+ this.selectedNodeId = item._cfg.id
+ this.graph.refreshItem(item._cfg.id)
this.graph.layout()
},
+ /**
+ * 查询,定位高亮
+ * @param nodeId
+ */
searchNode (nodeId) {
const item = this.graph.findById(nodeId)
+ this.graph.setItemState(nodeId, 'selected', true)
+ if (this.lastQueryId) {
+ this.graph.setItemState(this.lastQueryId, 'selected', false)
+ }
+ this.lastQueryId = nodeId
const matrix = item.get('group').getMatrix()
const point = {
x: matrix[6],
diff --git a/src/components/layouts/TabLayout.vue b/src/components/layouts/TabLayout.vue
index 024925d5..aea32806 100644
--- a/src/components/layouts/TabLayout.vue
+++ b/src/components/layouts/TabLayout.vue
@@ -21,7 +21,7 @@