diag_push.js 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. (function ($) {
  2. var urls = {
  3. //His推送接口
  4. 'get_push':'http://192.168.2.236/api/icss/emr/pushEMR',
  5. 'get_info':'http://192.168.2.236/api/icss/emr/getIntroduceByEMR'
  6. };
  7. $.support.cors = true;
  8. var config = {
  9. width:'560px', //推送内容显示的宽度
  10. num:'11', //每行显示的最大个数
  11. mode:'horizontal', //布局模式水平horizontal,垂直vertical,
  12. models:[5,6,7] //需要显示的推送模块,主诉-诊断1-7
  13. };
  14. var urlSearch = parseUrl();
  15. handleConfig();
  16. //getPushData();
  17. function parseUrl() {
  18. var r = window.location.search.substr(1).split("&"),
  19. obj = {};
  20. $.each(r, function (i, v) {
  21. if (v) {
  22. var arr = v.split("=");
  23. obj[arr[0]] = arr[1]?decodeURI(arr[1]):'';
  24. }
  25. });
  26. return obj;
  27. };
  28. function handleConfig(){
  29. $(".container").css({'width':'560px'});
  30. getPushData();
  31. $('.'+config.mode).show();
  32. }
  33. function getPushData(){
  34. var url = urls.get_push;
  35. var myParam = {
  36. symptom: urlSearch.symptomJson||"",
  37. past: urlSearch.pastJson||"",
  38. other: urlSearch.otherJson||"",
  39. vital: urlSearch.vitalsJson||"",
  40. lis: JSON.parse(urlSearch.labsJson||null),
  41. pacs: urlSearch.pacsJson||"",
  42. diag: urlSearch.disJson||"",
  43. featureType: config.models.join(","),
  44. hosCode:'A001',
  45. age:urlSearch.age,
  46. sex:urlSearch.sexType
  47. };
  48. $.ajax({
  49. url: url,
  50. type:'post',
  51. dataType: "json",
  52. cache:false,
  53. contentType:"application/json",
  54. data:JSON.stringify(myParam),
  55. success:function(response){
  56. var data = response.data;
  57. if(response.code=='0'){
  58. fillPushData(data);
  59. }
  60. },
  61. error:function(error){
  62. console.log("error:"+error);
  63. },
  64. complete:function(){
  65. console.log("complete")
  66. }
  67. });
  68. }
  69. function getTreatInfo(type,name,detailName){
  70. var url = urls.get_info;
  71. var myParam = {
  72. icdCode:urlSearch.icd,
  73. type:type,
  74. name:name,
  75. detailName:detailName,
  76. hosCode:'A001',
  77. age:urlSearch.age,
  78. sex:urlSearch.sexType
  79. };
  80. $.ajax({
  81. url: url,
  82. type:'post',
  83. dataType: "json",
  84. cache:false,
  85. contentType:"application/json",
  86. data:JSON.stringify(myParam),
  87. success:function(response){
  88. var data = response.data;
  89. if(response.code=='0'){
  90. fillInfomation(data);
  91. }
  92. },
  93. error:function(error){
  94. console.log("error:"+error);
  95. },
  96. complete:function(){
  97. console.log("complete")
  98. }
  99. });
  100. }
  101. //填入提示信息
  102. function fillInfomation(data){
  103. var dom='';
  104. for(var i=0;i<data.length;i++){
  105. dom+='<div class="info-item clearfix"><span class="title">'+data[i].title+':</span><p class="content">'+data[i].text+'</p></div>';
  106. }
  107. $(".box0 .item-content").html(dom);
  108. }
  109. //填入推送信息
  110. function fillPushData(data){
  111. if(!data||JSON.stringify(data)=='{}'){
  112. console.warn("获取推送数据为空!");
  113. return ;
  114. }
  115. var key='',modeClass='.'+config.mode;
  116. mapItem(modeClass+" .box5", data['lisList'],5); //化验
  117. mapItem(modeClass+" .box6", data['pacsList'],6); //辅捡
  118. data['dis']['可能诊断'].length>0&&mapItem(modeClass+" .box7", data['dis']['可能诊断'],7); //初步诊断
  119. data['dis']['确诊'].length>0&&mapItem(modeClass+" .box8", data['dis']['确诊'],7); //疑似诊断
  120. data['dis']['警惕'].length>0&&mapItem(modeClass+" .box9", data['dis']['警惕'],7); //警惕
  121. $("a.info").click(function(e){
  122. getTreatInfo($(e.target).attr('type'),$(e.target).attr('name'),$(e.target).attr('detailName'))
  123. });
  124. //$(modeClass+" .box .item-content").html(str); //治疗建议
  125. }
  126. //遍历数据
  127. function mapItem(dom,item,type){
  128. var itemDom = '';
  129. for(var i=0;i<item.length;i++){
  130. if(i>config.num-1){
  131. itemDom += '<p class="inner-item"><a href="##" class="hide">'+(item[i].name||item[i].uniqueName)+'</a><a class="info hide" target="_blank name="'+item[i].name+'" type='+type+' detail="'+item[i].detailName+'>i</a></p>';
  132. }else{
  133. itemDom += '<p class="inner-item"><a href="##">'+(item[i].name||item[i].uniqueName)+'</a><a class="info" target="_blank" name='+item[i].name+' type="'+type+'" detail="'+item[i].detailName+'">i</a></p>';
  134. }
  135. }
  136. $(dom+" .item-content").html(itemDom||"无");
  137. $(dom).show();
  138. var hide = $(dom).find(".hide")[0];
  139. if(hide){
  140. $("<a class='more'>...</a>").insertBefore(hide);
  141. $(".more").click(function(e){
  142. $(e.target).siblings(".hide").removeClass("hide");
  143. $(e.target).hide();
  144. });
  145. }
  146. }
  147. })(jQuery);