|
@@ -6,44 +6,83 @@ const iconDown = require('./../resources/images/iconDown.png');
|
|
const clientHei = $(window).height()
|
|
const clientHei = $(window).height()
|
|
const contentHei = clientHei - 80
|
|
const contentHei = clientHei - 80
|
|
let disease = getUrlArgObject("disease")
|
|
let disease = getUrlArgObject("disease")
|
|
-// console.log("disease", disease);
|
|
|
|
|
|
+window.labelList = []
|
|
|
|
|
|
//关系图
|
|
//关系图
|
|
-function getGraph(val, type,id) {
|
|
|
|
|
|
+function getGraph(val, type, id) {
|
|
let url = ""
|
|
let url = ""
|
|
let params = null
|
|
let params = null
|
|
- url = api.getSelfGraph
|
|
|
|
- params = {
|
|
|
|
- "input_str": val ? val : '',
|
|
|
|
- "label_name": type,
|
|
|
|
- "user_id": localStorage.getItem("userId") ? JSON.parse(localStorage.getItem("userId")) : 1,
|
|
|
|
- 'graph_id':id ? id : window.graph_id,
|
|
|
|
|
|
+ url = api.getSelfGraph
|
|
|
|
+ params = {
|
|
|
|
+ "input_str": val ? val : '',
|
|
|
|
+ "label_name": type,
|
|
|
|
+ "user_id": localStorage.getItem("userId") ? JSON.parse(localStorage.getItem("userId")) : 1,
|
|
|
|
+ 'graph_id': id ? id : window.graph_id,
|
|
|
|
+ }
|
|
|
|
+ return get(url, params).then(res => {
|
|
|
|
+ if (res.data.code == 200) {
|
|
|
|
+ // select_type = select_type_noSearch
|
|
|
|
+ $('#searchInp').val(val)
|
|
|
|
+ drawGraph(res.data.records[0].records, null)
|
|
|
|
+ window.graphTxt = val
|
|
|
|
+ window.refreshTree = true
|
|
|
|
+
|
|
|
|
+ if (type != select_type) {
|
|
|
|
+ select_type = type
|
|
|
|
+ let renderTabInfo = getTab(type)
|
|
|
|
+ renderTab(renderTabInfo)
|
|
|
|
+ }
|
|
|
|
+ addRecord(val, type)
|
|
|
|
+ } else {
|
|
|
|
+ let nodeStr
|
|
|
|
+ nodeStr = '<li class="ellipsis">暂无符合数据</li>'
|
|
|
|
+ $(".tabNameList").html(nodeStr)
|
|
|
|
+ $(".tabNameList").show()
|
|
|
|
+ window.refreshTree = false
|
|
}
|
|
}
|
|
- return get(url, params).then(res => {
|
|
|
|
- if (res.data.code == 200) {
|
|
|
|
- // select_type = select_type_noSearch
|
|
|
|
- $('#searchInp').val(val)
|
|
|
|
- drawGraph(res.data.records[0].records, null)
|
|
|
|
- window.graphTxt = val
|
|
|
|
- window.refreshTree = true
|
|
|
|
-
|
|
|
|
- if (type != select_type) {
|
|
|
|
- select_type = type
|
|
|
|
- let renderTabInfo = getTab(type)
|
|
|
|
- renderTab(renderTabInfo)
|
|
|
|
- }
|
|
|
|
- addRecord(val, type)
|
|
|
|
- } else {
|
|
|
|
- let nodeStr
|
|
|
|
- nodeStr = '<li class="ellipsis">暂无符合数据</li>'
|
|
|
|
- $(".tabNameList").html(nodeStr)
|
|
|
|
- $(".tabNameList").show()
|
|
|
|
- window.refreshTree = false
|
|
|
|
|
|
+ })
|
|
|
|
+}
|
|
|
|
+
|
|
|
|
+function getGraphCategories(user_id, graph_id) {
|
|
|
|
+ get(api.graphCategories, { user_id, graph_id }).then(res => {
|
|
|
|
+ const { code, message, records } = res.data
|
|
|
|
+ if (code === 200) {
|
|
|
|
+ data = records[0].records
|
|
|
|
+ window.labelList = data
|
|
|
|
+ let str = ''
|
|
|
|
+ for (let i = 0; i < data.length; i++) {
|
|
|
|
+ str += `<li class="selectItem" title="${data[i]}" data-id="${data[i]}">${data[i]}</li>`
|
|
}
|
|
}
|
|
- })
|
|
|
|
- }
|
|
|
|
|
|
+ $('.select .selectList').html(str)
|
|
|
|
+
|
|
|
|
+ $('.select').on('click', function (e) {
|
|
|
|
+ e.stopPropagation();
|
|
|
|
+ hideSlide('selectList')
|
|
|
|
+ const selectListShow = $('.selectList').css('display')
|
|
|
|
+ if (selectListShow == 'none') {
|
|
|
|
+ $('.iconSlide').attr('src', './images/iconSlideUp.png')
|
|
|
|
+ } else {
|
|
|
|
+ $('.iconSlide').attr('src', './images/iconSlideDown.png')
|
|
|
|
+ }
|
|
|
|
+ $('.selectList').fadeToggle()
|
|
|
|
|
|
|
|
+ })
|
|
|
|
+ $('.selectList .selectItem').on('click', function () {
|
|
|
|
+ select_type_noSearch = $(this).attr('data-id')
|
|
|
|
+ const txt = $(this).text()
|
|
|
|
+ const oldTxt = $(".selectedName").html()
|
|
|
|
+ setSelectName(txt)
|
|
|
|
|
|
|
|
+ $("#searchInp").attr("placeholder", `请输入${txt}名称`)
|
|
|
|
+ if (txt != oldTxt) {
|
|
|
|
+ $('#searchInp').val("")
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+ }
|
|
|
|
+ }).catch(e => {
|
|
|
|
+ console.log(e)
|
|
|
|
+ })
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
function reDrawGraph(name, label) {
|
|
function reDrawGraph(name, label) {
|
|
@@ -58,75 +97,75 @@ function reDrawGraph(name, label) {
|
|
}
|
|
}
|
|
let url = ""
|
|
let url = ""
|
|
let params = null
|
|
let params = null
|
|
- url = api.getSelfGraph
|
|
|
|
- params = {
|
|
|
|
- "input_str": name ? name : '',
|
|
|
|
- "label_name": label,
|
|
|
|
- "user_id": localStorage.getItem("userId") ? JSON.parse(localStorage.getItem("userId")) : 1,
|
|
|
|
- 'graph_id':window.graph_id,
|
|
|
|
- }
|
|
|
|
- get(url, params).then(res => {
|
|
|
|
- if (res.data.code === 200) {
|
|
|
|
- let records = res.data.records[0].records
|
|
|
|
- records.node.forEach(node => {
|
|
|
|
- if (!node.itemStyle.display && node.label && node.symbol == 'circle') {
|
|
|
|
- node.symbol = 'pin'
|
|
|
|
- // node.symbolSize = [node.symbolSize * 1.5, node.symbolSize]
|
|
|
|
- }
|
|
|
|
- });
|
|
|
|
- window.graphMapUpdatedData = records
|
|
|
|
- let expandPropertyNodes = [] //要展开节点的数据
|
|
|
|
- let currentNode = null //当前显示信息的节点
|
|
|
|
- let legendData = null //新的图例数据
|
|
|
|
- for (let i = 0; i < window.graphMapUpdatedData.node.length; i++) {
|
|
|
|
- const node = window.graphMapUpdatedData.node[i]
|
|
|
|
- // console.log(window.knowledgeMapSetting.currentNodeId, node.nodeId)
|
|
|
|
- if (node.nodeId === window.knowledgeMapSetting.currentNodeId) {
|
|
|
|
- currentNode = node
|
|
|
|
- }
|
|
|
|
- for (let j = 0; j < window.knowledgeMapSetting.expandPropertyId.length; j++) {
|
|
|
|
- const expandNodeId = window.knowledgeMapSetting.expandPropertyId[j]
|
|
|
|
- if (expandNodeId === node.nodeId) {
|
|
|
|
- expandPropertyNodes.push(node)
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ url = api.getSelfGraph
|
|
|
|
+ params = {
|
|
|
|
+ "input_str": name ? name : '',
|
|
|
|
+ "label_name": label,
|
|
|
|
+ "user_id": localStorage.getItem("userId") ? JSON.parse(localStorage.getItem("userId")) : 1,
|
|
|
|
+ 'graph_id': window.graph_id,
|
|
|
|
+ }
|
|
|
|
+ get(url, params).then(res => {
|
|
|
|
+ if (res.data.code === 200) {
|
|
|
|
+ let records = res.data.records[0].records
|
|
|
|
+ records.node.forEach(node => {
|
|
|
|
+ if (!node.itemStyle.display && node.label && node.symbol == 'circle') {
|
|
|
|
+ node.symbol = 'pin'
|
|
|
|
+ // node.symbolSize = [node.symbolSize * 1.5, node.symbolSize]
|
|
}
|
|
}
|
|
- window.knowledgeMapSetting.legends = window.graphMapUpdatedData.categories.slice(2)
|
|
|
|
- //重新计算showLegendNum
|
|
|
|
- reShowLegendNum()
|
|
|
|
- if (window.knowledgeMapSetting.showLegendAll) {
|
|
|
|
- legendData = window.knowledgeMapSetting.legends.map(el => el.name)
|
|
|
|
- } else {
|
|
|
|
- legendData = window.knowledgeMapSetting.legends.slice(0, window.knowledgeMapSetting.showLegendNum).map(el => el.name)
|
|
|
|
|
|
+ });
|
|
|
|
+ window.graphMapUpdatedData = records
|
|
|
|
+ let expandPropertyNodes = [] //要展开节点的数据
|
|
|
|
+ let currentNode = null //当前显示信息的节点
|
|
|
|
+ let legendData = null //新的图例数据
|
|
|
|
+ for (let i = 0; i < window.graphMapUpdatedData.node.length; i++) {
|
|
|
|
+ const node = window.graphMapUpdatedData.node[i]
|
|
|
|
+ // console.log(window.knowledgeMapSetting.currentNodeId, node.nodeId)
|
|
|
|
+ if (node.nodeId === window.knowledgeMapSetting.currentNodeId) {
|
|
|
|
+ currentNode = node
|
|
|
|
+ }
|
|
|
|
+ for (let j = 0; j < window.knowledgeMapSetting.expandPropertyId.length; j++) {
|
|
|
|
+ const expandNodeId = window.knowledgeMapSetting.expandPropertyId[j]
|
|
|
|
+ if (expandNodeId === node.nodeId) {
|
|
|
|
+ expandPropertyNodes.push(node)
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
+ }
|
|
|
|
+ window.knowledgeMapSetting.legends = window.graphMapUpdatedData.categories.slice(2)
|
|
|
|
+ //重新计算showLegendNum
|
|
|
|
+ reShowLegendNum()
|
|
|
|
+ if (window.knowledgeMapSetting.showLegendAll) {
|
|
|
|
+ legendData = window.knowledgeMapSetting.legends.map(el => el.name)
|
|
|
|
+ } else {
|
|
|
|
+ legendData = window.knowledgeMapSetting.legends.slice(0, window.knowledgeMapSetting.showLegendNum).map(el => el.name)
|
|
|
|
+ }
|
|
|
|
|
|
- expandPropertyNodePad(expandPropertyNodes) //添加展开属性节点
|
|
|
|
- reNodeCloseAndExpand(legendData) //添加隐藏节点
|
|
|
|
- window.graphMap.setOption({
|
|
|
|
- legend: [{
|
|
|
|
- data: legendData
|
|
|
|
- }],
|
|
|
|
- series: [{
|
|
|
|
- edgeLabel: {
|
|
|
|
- formatter: function (x) {
|
|
|
|
- if (x.data.hideLabel) {
|
|
|
|
- return " ";
|
|
|
|
- }
|
|
|
|
- else {
|
|
|
|
- return x.data.value; //横线关系
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
|
|
+ expandPropertyNodePad(expandPropertyNodes) //添加展开属性节点
|
|
|
|
+ reNodeCloseAndExpand(legendData) //添加隐藏节点
|
|
|
|
+ window.graphMap.setOption({
|
|
|
|
+ legend: [{
|
|
|
|
+ data: legendData
|
|
|
|
+ }],
|
|
|
|
+ series: [{
|
|
|
|
+ edgeLabel: {
|
|
|
|
+ formatter: function (x) {
|
|
|
|
+ if (x.data.hideLabel) {
|
|
|
|
+ return " ";
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ return x.data.value; //横线关系
|
|
|
|
+ }
|
|
},
|
|
},
|
|
- categories: window.graphMapUpdatedData.categories,
|
|
|
|
- type: 'graph',
|
|
|
|
- data: window.graphMapUpdatedData.node, // 更新节点数据
|
|
|
|
- links: window.graphMapUpdatedData.links, // 更新边数据
|
|
|
|
- }]
|
|
|
|
- }, false); // 仅更新指定的部分,不重绘图表
|
|
|
|
- rightMsgRender(currentNode) //重新渲染右侧数据
|
|
|
|
- }
|
|
|
|
- })
|
|
|
|
- }
|
|
|
|
|
|
+ },
|
|
|
|
+ categories: window.graphMapUpdatedData.categories,
|
|
|
|
+ type: 'graph',
|
|
|
|
+ data: window.graphMapUpdatedData.node, // 更新节点数据
|
|
|
|
+ links: window.graphMapUpdatedData.links, // 更新边数据
|
|
|
|
+ }]
|
|
|
|
+ }, false); // 仅更新指定的部分,不重绘图表
|
|
|
|
+ rightMsgRender(currentNode) //重新渲染右侧数据
|
|
|
|
+ }
|
|
|
|
+ })
|
|
|
|
+}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -854,9 +893,6 @@ function dataClick(param) {
|
|
var data = param.data;
|
|
var data = param.data;
|
|
rightMsgRender(data)
|
|
rightMsgRender(data)
|
|
window.knowledgeMapSetting.currentNodeId = param.data.nodeId
|
|
window.knowledgeMapSetting.currentNodeId = param.data.nodeId
|
|
- let labelList = ["疾病", "药品", "症状",
|
|
|
|
- // "手术和操作",
|
|
|
|
- "实验室检查", "辅助检查"]
|
|
|
|
// Object.keys(data.itemStyle) >= 1
|
|
// Object.keys(data.itemStyle) >= 1
|
|
if (data.itemStyle.color || labelList.indexOf(param.data.type) === -1 || !data.itemStyle.display) return;
|
|
if (data.itemStyle.color || labelList.indexOf(param.data.type) === -1 || !data.itemStyle.display) return;
|
|
const clientHei = $(window).height()
|
|
const clientHei = $(window).height()
|
|
@@ -902,28 +938,8 @@ function dataClick(param) {
|
|
select_type = data.type
|
|
select_type = data.type
|
|
setSelectName(select_type)
|
|
setSelectName(select_type)
|
|
$('#searchInp').val(data.label)
|
|
$('#searchInp').val(data.label)
|
|
- if (data.type == "疾病") {
|
|
|
|
- getTree(1, 1, data.label);
|
|
|
|
- getGraph(data.label, select_type);
|
|
|
|
- } else if (data.type == "药品") {
|
|
|
|
- getTree(0, 2, data.label);
|
|
|
|
- getGraph(data.label, select_type);
|
|
|
|
- } else if (data.type == "症状") {
|
|
|
|
-
|
|
|
|
- getTree(0, 3, data.label);
|
|
|
|
- getGraph(data.label, select_type);
|
|
|
|
- }
|
|
|
|
- // else if (data.type == "手术和操作") {
|
|
|
|
- // getTree(0, 4, data.label);
|
|
|
|
- // getGraph(data.label, select_type);
|
|
|
|
- // }
|
|
|
|
- else if (data.type == "实验室检查") {
|
|
|
|
- getTree(0, 5, data.label);
|
|
|
|
- getGraph(data.label, select_type);
|
|
|
|
- } else if (data.type == "辅助检查") {
|
|
|
|
- getTree(0, 6, data.label);
|
|
|
|
- getGraph(data.label, select_type);
|
|
|
|
- }
|
|
|
|
|
|
+ getGraph(data.label, select_type, window.graph_id);
|
|
|
|
+ selectedZTreeNode(data.label)
|
|
}
|
|
}
|
|
// addRecord(data.label, select_type)
|
|
// addRecord(data.label, select_type)
|
|
// renderRecord()
|
|
// renderRecord()
|
|
@@ -955,7 +971,7 @@ function getTree(userId, graphId, showNodeName) {
|
|
if (!window.knowledgeMapSetting.zTree) return; //没有树,跳过
|
|
if (!window.knowledgeMapSetting.zTree) return; //没有树,跳过
|
|
get(api.getSelfTreeByUser,
|
|
get(api.getSelfTreeByUser,
|
|
{
|
|
{
|
|
- "user_id":userId || localStorage.getItem("userId") || 1, //科室subType: 2, 疾病type:1
|
|
|
|
|
|
+ "user_id": userId || localStorage.getItem("userId") || 1, //科室subType: 2, 疾病type:1
|
|
|
|
|
|
"graph_id": graphId
|
|
"graph_id": graphId
|
|
}
|
|
}
|
|
@@ -1028,7 +1044,7 @@ function drawTree(data, showNodeName) {
|
|
select_type_noSearch = select_type
|
|
select_type_noSearch = select_type
|
|
setSelectName(select_type)
|
|
setSelectName(select_type)
|
|
}
|
|
}
|
|
- getGraph(name, select_type)
|
|
|
|
|
|
+ getGraph(name, "疾病", window.graph_id)
|
|
const selectPId = $('.curSelectedNode').attr('id')
|
|
const selectPId = $('.curSelectedNode').attr('id')
|
|
if (selectPId) {
|
|
if (selectPId) {
|
|
const selectId = selectPId.substring(0, selectPId.length - 1) + 'ico'
|
|
const selectId = selectPId.substring(0, selectPId.length - 1) + 'ico'
|
|
@@ -1091,8 +1107,6 @@ function selectedZTreeNode(nodeName) {
|
|
behavior: "smooth"
|
|
behavior: "smooth"
|
|
})
|
|
})
|
|
}, 500)
|
|
}, 500)
|
|
-
|
|
|
|
-
|
|
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
@@ -1100,7 +1114,7 @@ function selectedZTreeNode(nodeName) {
|
|
function getNode(val, type) {
|
|
function getNode(val, type) {
|
|
post(api.getSelfNode,
|
|
post(api.getSelfNode,
|
|
{
|
|
{
|
|
- user_id:localStorage.getItem("userId") || 1,
|
|
|
|
|
|
+ user_id: localStorage.getItem("userId") || 1,
|
|
graph_id: window.graph_id,
|
|
graph_id: window.graph_id,
|
|
label: "疾病",
|
|
label: "疾病",
|
|
name: val,
|
|
name: val,
|
|
@@ -1375,11 +1389,11 @@ function bindTabClick() {
|
|
setSelectName(select_type)
|
|
setSelectName(select_type)
|
|
|
|
|
|
if (id == "疾病") {
|
|
if (id == "疾病") {
|
|
- $('#searchInp').val(disease || "艾滋病")
|
|
|
|
|
|
+ $('#searchInp').val(disease)
|
|
$('.iconRadio').attr('src', '/images/radioUnSelect.png')
|
|
$('.iconRadio').attr('src', '/images/radioUnSelect.png')
|
|
$('.ICD10 img').attr('src', '/images/radioSelect.png')
|
|
$('.ICD10 img').attr('src', '/images/radioSelect.png')
|
|
- getTree(1, 1, disease || "艾滋病");
|
|
|
|
- getGraph(disease || "艾滋病", select_type);
|
|
|
|
|
|
+ getTree(1, 1, disease);
|
|
|
|
+ getGraph(disease, select_type);
|
|
|
|
|
|
} else if (id == "药品") {
|
|
} else if (id == "药品") {
|
|
$('#searchInp').val("过氧化氢溶液")
|
|
$('#searchInp').val("过氧化氢溶液")
|
|
@@ -1631,5 +1645,6 @@ module.exports = {
|
|
hideSlide,
|
|
hideSlide,
|
|
reDrawGraph,
|
|
reDrawGraph,
|
|
selectedZTreeNode,
|
|
selectedZTreeNode,
|
|
- expandProperty
|
|
|
|
|
|
+ expandProperty,
|
|
|
|
+ getGraphCategories
|
|
}
|
|
}
|