knowledgeTree.js 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. const $ = require("jquery");
  2. require("babel-polyfill");
  3. const echarts = require("echarts");
  4. require("./../css/knowledgeTree.less");
  5. require("./../css/common.less");
  6. // require("ztree");
  7. require('./../resources/images/icon.png');
  8. require('./../resources/images/iconOpen.png');
  9. require('./../resources/images/iconClose.png');
  10. require('./../resources/images/node.png');
  11. require('./../resources/images/radioUnSelect.png');
  12. require('./../resources/images/radioSelect.png');
  13. require('./../resources/images/iconSlideUp.png');
  14. require('./../resources/images/iconSlideDown.png');
  15. require('./../resources/images/iconSelect.png');
  16. require('./../resources/images/syflogo.png');
  17. require('./../resources/images/logo.png');
  18. require('./../resources/zTree/js/jquery.ztree.core.min.js');
  19. require('./../resources/zTree/js/jquery.ztree.excheck.min.js')
  20. require('./../resources/zTree/css/zTreeStyle/zTreeStyle.css');
  21. const iconUp = require('./../resources/images/iconUp.png');
  22. const iconDown = require('./../resources/images/iconDown.png');
  23. // document.write("aaaa");
  24. const {getSchema,updateTree,getTree,getNode,getTab,renderTab} = require('./schemaMap.js');
  25. window.select_type="疾病";
  26. window.select_type_noSearch="疾病";
  27. window.refreshTree = true
  28. const clientHei = $(window).height()
  29. const contentHei = clientHei - 80
  30. $(".left").css("height",contentHei+'px')
  31. $(".right").css("height",contentHei+'px')
  32. $(".tabBottom").css("height",contentHei-80-43-10+'px')
  33. $(".ztree").css("height",contentHei-80-43-60-20+'px')
  34. $("#main").css("height",contentHei-20-20+'px')
  35. //关系图
  36. getSchema("胆囊炎",select_type);
  37. getTree(1,1,"胆囊炎");
  38. $('#searchInp').val("胆囊炎")
  39. //选择类型
  40. $('.select').click(function(e){
  41. e.stopPropagation();
  42. const selectListShow = $('.selectList').css('display')
  43. if(selectListShow == 'none'){
  44. $('.iconSlide').attr('src','./images/iconSlideUp.png')
  45. } else{
  46. $('.iconSlide').attr('src','./images/iconSlideDown.png')
  47. }
  48. $('.selectList').fadeToggle()
  49. })
  50. $('.selectList .selectItem').click(function(){
  51. select_type_noSearch = $(this).attr('data-id')
  52. const txt = $(this).text()
  53. const oldTxt = $(".selectedName").html()
  54. $(".selectedName").html(txt)
  55. if(txt.length > 3){
  56. $(".selectedName").html(txt.slice(0,2)+"...")
  57. }else{
  58. $(".selectedName").html(txt)
  59. }
  60. $(".selectedName").attr('title',txt)
  61. $("#searchInp").attr("placeholder",`请输入${txt}名称`)
  62. if(txt != oldTxt){
  63. $('#searchInp').val("")
  64. }
  65. })
  66. //搜索节点名
  67. $("#searchInp").bind("input propertychange",function(event){
  68. const val = $("#searchInp").val().trim()
  69. if(val){
  70. getNode(val,select_type_noSearch)
  71. }else{
  72. $(".tabNameList").hide()
  73. }
  74. });
  75. //切换条目
  76. $('.radioItem').click(function(e){
  77. const initDiag = "胆囊炎"
  78. const type = $(this).attr('data-type')
  79. // $(this).children('img').attr('src')
  80. $('.iconRadio').attr('src','/images/radioUnSelect.png')
  81. $(this).children('img').attr('src','/images/radioSelect.png')
  82. $('#searchInp').val(initDiag)
  83. getTree(type,1,initDiag);
  84. getSchema(initDiag,select_type);
  85. // updateTree(initDiag)
  86. })
  87. //搜索
  88. $('#searchBtn').click(function(e){
  89. e.stopPropagation()
  90. const val = $('#searchInp').val().trim()
  91. if(val){
  92. const clientHei = $(window).height()
  93. const contentHei = clientHei - 80
  94. $(".tabNameList").hide()
  95. getSchema(val,select_type_noSearch).then(()=>{
  96. if(!window.refreshTree){
  97. return
  98. }
  99. if(select_type_noSearch != select_type){
  100. select_type = select_type_noSearch
  101. if(select_type == '疾病'){
  102. // $('#searchInp').val("高血压3级")
  103. getTree(1,1,val);
  104. }else if(select_type == '药品通用名'){
  105. getTree(0,2,val);
  106. }else if(select_type == '症状'){
  107. getTree(0,3,val);
  108. }else if(select_type == '手术和操作'){
  109. getTree(0,4,val);
  110. }else if(select_type == '实验室检查'){
  111. getTree(0,5,val);
  112. }else if(select_type == '辅助检查'){
  113. getTree(0,6,val);
  114. }
  115. if(select_type == '疾病'){
  116. $('.iconRadio').attr('src','/images/radioUnSelect.png')
  117. $('.ICD10 img').attr('src','/images/radioSelect.png')
  118. $(".radioList").show()
  119. $(".ztree").css("height",contentHei-80-43-60-20+'px')
  120. }else{
  121. $(".radioList").hide()
  122. $(".ztree").css("height",contentHei-80-43-20-20+'px')
  123. $(".ztree").css({
  124. margin: '20 0 0 0px'
  125. })
  126. }
  127. let renderTabInfo = getTab("疾病")
  128. renderTab(renderTabInfo)
  129. }else{
  130. updateTree(val)
  131. }
  132. })
  133. }else{
  134. $('.tabNameListNoSearch').show()
  135. }
  136. })
  137. let renderTabInfo = getTab("疾病")
  138. renderTab(renderTabInfo)
  139. //切换tab
  140. //点击页面其他地方关闭下拉
  141. $('html').click(function(){
  142. const selectListShow = $('.selectList').css('display')
  143. const tabNameListShow = $('.tabNameList').css('display')
  144. const tabNameListNoSearchShow = $('.tabNameListNoSearch').css('display')
  145. if(selectListShow == 'block'){
  146. $('.selectList').hide()
  147. $('.iconSlide').attr('src','./images/iconSlideDown.png')
  148. }
  149. if(tabNameListShow == 'block'){
  150. $('.tabNameList').hide()
  151. }
  152. if(tabNameListNoSearchShow == 'block'){
  153. $('.tabNameListNoSearch').hide()
  154. }
  155. })