icssIndex.js 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519
  1. require('./../css/reset.css');
  2. require('./../css/icssIndex.less');
  3. require('./../css/popup.css');
  4. require('./../images/empty.png')
  5. require('./../images/loading.gif')
  6. require('./../images/right.png')
  7. // require('./popupEdit.js');
  8. var Promise = require("bluebird");
  9. let diagFirstImg = require('./../images/yszd.png')
  10. let diagWarningImg = require('./../images/warning.png')
  11. let diagPossibleImg = require('./../images/knzd.png')
  12. let diagIdentifyImg = require('./../images/jianb.png')
  13. let labAndPacsImg = require('./../images/inspect.png')
  14. let physiExamImg = require('./../images/tgjc.png')
  15. let medicalIndicationsImg = require('./../images/tips.png')
  16. const $ = require("jquery");
  17. const { post,config,getUrlArgObject,openNewWin } = require('./promise.js');
  18. const { transConf } = require('./util.js');
  19. const {renderWrapper, renderCaseStandard,renderWarning,renderRecommendInfo,renderMultRecommendInfo,renderRecommendConditTips} = require('./icssIndexDom.js')
  20. let mrId = getUrlArgObject('mrId')
  21. const tipsMode = getUrlArgObject('tipsMode') || 1
  22. let msg;
  23. function getMRInfo() {
  24. return post(config.getMr2,{mrId:mrId})
  25. }
  26. $('.loading').css("display","block")
  27. $('.empty').css("display","none")
  28. getMRInfo().then(res =>{
  29. if(res.data.code == '0'){
  30. msg = res.data.data
  31. window.msg = msg
  32. getConf().then(res =>{
  33. if(res.data.code == '0'){
  34. const configArr = res.data.data.pushSetList || []
  35. getPageInfo(configArr)
  36. }
  37. })
  38. // getAnalyse().then(res =>{
  39. // renderCaseStandard('CaseStandard', '病例书写规范', res.data.data.warning)
  40. // })
  41. // getHosptDeptUsal().then(res =>{
  42. // console.log('ressss', res)
  43. // const diagCommon = res.data.data
  44. // renderRecommendInfo(5,'diagCommon', '常见症状', diagCommon, true,7,2);
  45. // })
  46. }
  47. }).catch(function (err) {
  48. console.log(err);
  49. })
  50. // var msg = {
  51. // age: getUrlArgObject('age'),
  52. // sex: getUrlArgObject('sex') == '男'?1:(getUrlArgObject('sex') == '女'?2:(getUrlArgObject('sex') == '通用'?3:getUrlArgObject('sex'))),
  53. // symptom: getUrlArgObject('symptomJson'),
  54. // vital: getUrlArgObject('vitalJson'),
  55. // lis: getUrlArgObject('lisJson')? JSON.parse(getUrlArgObject('lisJson')) : [],
  56. // pacs: getUrlArgObject('pacsJson'),
  57. // diag: getUrlArgObject('diagJson'),
  58. // diseaseName: getUrlArgObject('diseaseName'),
  59. // other: getUrlArgObject('otherJson') + getUrlArgObject('pastJson'),
  60. // hosCode:getUrlArgObject('hospitalCode') || '',
  61. // plan:getUrlArgObject('plan') || '0',
  62. // }//推送相关信息
  63. // // http://localhost:8082/indexVert.html?age=28&diseaseId=280&lisJson=&diagJson=%E6%80%A5%E6%80%A7%E8%83%B0%E8%85%BA%E7%82%8E&pastJson=%E6%97%A0%E5%BF%83%E8%84%8F%E7%97%85&otherJson=%E6%97%A0%E9%AB%98%E8%A1%80%E5%8E%8B&pacsJson=%E8%85%B9%E9%83%A8B%E8%B6%85:%E6%97%A0%E5%BC%82%E5%B8%B8,%20%E6%8A%A5%E5%91%8A%E6%97%A5%E6%9C%9F:2019-05-07&sex=%E7%94%B7&symptomJson=%E6%81%B6%E5%BF%83%E5%91%95%E5%90%90%E8%85%B0%E7%97%9B&vitalJson=%E8%A1%80%E5%8E%8B%E5%B7%A6%E4%B8%8A%E8%82%A213/12mmHg
  64. // window.msg = msg
  65. // window.pushMessage = {}
  66. function getConf() {
  67. var msg = window.msg
  68. return post(config.getPushSet,{mode:msg.mode})
  69. }
  70. function getPushInfo() {
  71. return post(config.pushInner,Object.assign({featureType: '1,4,5,6,7,22',ruleType:config.ruleTypeMap['22']},msg))
  72. }
  73. function getAnalyse() {
  74. const param = getAnalyseParam()
  75. return post(config.analyse,param)
  76. }
  77. function getHosptDeptUsal(){
  78. var msg = window.msg
  79. const param ={
  80. age: msg.age,
  81. deptName: msg.deptName,
  82. hospitalCode: msg.hosCode,
  83. sexType: msg.sex,
  84. type: 1,
  85. }
  86. return post(config.getHosptDeptUsal,param)
  87. }
  88. function getAnalyseParam() {
  89. var msg = window.msg
  90. let diagStr = "",lisStr = "", lisList = msg.lis,pacStr = "", pasList = msg.pacs
  91. for(let i = 0; i < msg.diag.length; i++) {
  92. if(i == 0) {
  93. diagStr += msg.diag[i].name
  94. } else {
  95. diagStr += ',' + msg.diag[i].name
  96. }
  97. }
  98. for(let i = 0; i < lisList.length; i++){
  99. lisStr += `${lisList[i].name},${lisList[i].detailName},${lisList[i].value}${lisList[i].detailName};`
  100. }
  101. for(let i = 0; i < pasList.length; i++){
  102. pacStr += `${lisList[i].uniqueName}:${lisList[i].result},报告日期:${lisList[i].dateValue};`
  103. }
  104. let str = `姓名: ${msg.patientName || ""}
  105. 性别:${msg.sex == '1' ? '男':'女'}
  106. 年龄:${msg.age || ""}
  107. 主诉:${msg.chief || ""}
  108. 现病史:${msg.symptom || ""}
  109. 其他史:${msg.pasts || ""}
  110. 查体:${msg.vital || ""}
  111. 化验:${lisStr || ""}
  112. 辅检:${pacStr || ""}
  113. 诊断:${diagStr || ""}
  114. `
  115. //let str = "姓  名:姜** /r/n性   别:女/r/n年 龄:34岁/r/n民 族:汉族/r/n职 业:经商/r/n出 生 地:浙江省长兴县/r/n婚 姻:已婚/r/n联系地址:*** /r/n病史陈述者:患者本人/r/n入院日期:2019-12-04 10:12/r/n /r/n记录日期:2019-12-04 14:37/r/n /r/n主 诉: 腹痛1周 /r/n现 病 史: 患者1周前饮食辛辣食物后出现腹痛,主要为脐以上为主,呈持续性钝痛,无明显恶心呕吐,无肩背部疼痛,无咳嗽咳痰,无腹泻腹痛,无胸闷气促,无头晕头痛,无视物旋转,无异常阴道流血流液等情况,自诉近一周感下腹坠胀感,为求进一步诊治拟\"腹痛待查\"收住入院。/r/n患病来,神志清,精神软,胃纳差,睡眠一步,大小便如常,近期体重无明显改变。 /r/n既 往 史: 否认\"高血压,糖尿病,冠心病\"病史,否认\"肝炎,结核\"等传染病史,否认重大外伤史,否认手术史,否认输血史,既往存在头孢过敏,具体不详,否认长期药物使用史,否认药物成瘾,预防接种史不详。 /r/n个 人 史: 出生并生长于浙江省长兴县,经商,初中文化,否认疫区居住史,否认放射物、毒物、粉尘接触史,否认吸烟,否认饮酒,否认特殊嗜好,否认不洁性交史。 /r/n月 经 史: ,经量中等,颜色正常,无痛经,经期规律;白带量一般,性状无殊。 /r/n婚 育 史: 27岁结婚,否认近亲结婚,配偶健康状况良好,夫妻关系和睦,育有1女,均健康。/r/n家 族 史: 父亲体健,母已故(死因不详),有2哥,均体健,家族中无传染病及遗传病史,否认两系三代内遗传性、家族性疾病史,否认家族中有\"肝炎、结核\"等传染病史,否认两系三代内\"胃癌、肺癌\"等肿瘤病史,否认类似疾病史。 /r/n体格检查(一)/r/n /r/n一般状况:/r/n体温36.3℃,脉搏68次/分,呼吸19次/分,血压133/81mmHg。/r/n意识清晰,自主体位,面容无殊,体重56Kg,身高163cm,查体合作。 /r/n皮 肤:/r/n皮肤色泽正常,弹性好,未见明显水肿,未见皮疹,未见皮下出血,未见肝掌及蜘蛛痣。/r/n淋 巴 结:/r/n未触及明显浅表淋巴结肿大 /r/n头 部:/r/n外形大小正常,无畸形。听力粗测正常。眼睑正常,结膜正常,巩膜无黄染,瞳孔等大等圆,直径3mm,对光反射灵敏。鼻部外形正常,通气顺畅,副鼻窦区无压痛,乳突无压痛。口腔粘膜正常,扁桃体无肿大。/r/n颈  部:/r/n颈软,无抵抗感,气管位置居中,颈静脉无怒张。/r/n胸  部:/r/n外形正常,肋间隙正常,双侧乳房正常对称。/r/n肺 部:/r/n呼吸运动正常对称,双肺叩诊呈清音,呼吸音清晰,未闻及干、湿啰音。/r/n心 脏:/r/n心率68次/分,心律齐,心音有力,P2<A2,各瓣膜听诊区未闻及杂音。 /r/n血 管:/r/n周围血管征阴性。 /r/n腹  部:/r/n外形正常,未见肠形及蠕动波,腹壁松软,脐以上及下腹存在轻压痛,无反跳痛,/r/n包块未触及,肝脏肋下未触及,胆囊肋下未触及,脾脏肋下未触及,双肾区无叩痛,肠鸣音正常,3~5次/分,移动性浊音阴性。/r/n外生殖器:/r/n未见明显畸形 /r/n直肠肛门:/r/n未见明显畸形 /r/n四肢脊柱:/r/n脊柱无畸形,无压痛叩击痛,无放射痛,活动自如,四肢正常。/r/n神经系统:/r/n四肢肌张力正常,肌力V级,膝腱反射双侧正常,Babinski征双侧阴性。/r/n其 他:/r/n详见专科检查。/r/n/r/n体格检查(二)/r/n补 充 及 专 科 情 况/r/n体温36.3℃,脉搏68次/分,呼吸19次/分,血压133/81mmHg神志清,呼吸平稳,浅表淋巴结未及肿大,两肺呼吸音清,双下肺未闻及湿罗音,心率68次/分,律齐,未闻及病理性杂音,腹平软,脐以上及下腹存在轻压痛,无反跳痛,肝脾肋下未触及,双下肢无浮肿。/r/n /r/n /r/n心脏相对浊音界/r/n /r/n右界cm/r/n肋间/r/n左界cm/r/n/r/n 2/r/nⅡ/r/n 2/r/n/r/n 2/r/nⅢ/r/n 4/r/n/r/n 3/r/nⅣ/r/n 6/r/n/r/n /r/nⅤ/r/n 8/r/n/r/n左锁骨中线距胸骨中线 8 cm/r/n辅助检查: 2019-12-4 心电图未见明显异常。 /r/n /r/n初步诊断:1、腹痛待查 2.盆腔炎/r/n修正诊断: /r/n 医师签名:李勇 /r/n /r/n2019-12-04 /r/n /r/n补充诊断:"
  116. let label = ["姓名","性别","年龄",
  117. "主诉","现病史","其他史","查体","化验","辅检",
  118. "诊断"]
  119. const param = {
  120. "cid":0,
  121. "medrec":
  122. [
  123. {
  124. "content": {
  125. "content":str
  126. },
  127. "label": label,
  128. "title": "入院记录"
  129. }
  130. ],
  131. "token": ""
  132. }
  133. return param
  134. }
  135. function getPageInfo(configArr) {
  136. let {confArr, showLabsNum, showPacsNum, labsAndPacMode} = transConf(configArr),
  137. diagWaring = [{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7},{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7}]
  138. // diagWaring = [],
  139. diagFirst = [],
  140. diagPossible = [],
  141. diagIdentify = [],
  142. labRecommend = [],
  143. pacsRecommend = [],
  144. physiExamRecommend = [],
  145. symptomRecommend = [],
  146. medicalIndications = [],
  147. diagCommon = [],
  148. CaseStandard = [],
  149. labAndPacsRecommend = [],
  150. disName=""
  151. const hasCaseStandard = confArr.findIndex(item => item.code == 'specification_show') > -1
  152. const hasCommon = confArr.findIndex(item => item.code == 'comsympto_show') > -1
  153. if(hasCommon){
  154. if(hasCaseStandard){
  155. Promise.all([getHosptDeptUsal(),getPushInfo(),getAnalyse()]).then(([res1, res2, res3]) =>{
  156. diagCommon = res1&&res.data&&res.data.data&&res.data.data || []
  157. diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
  158. diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
  159. diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
  160. diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
  161. labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
  162. pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
  163. physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
  164. symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
  165. medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
  166. CaseStandard = res3&&res3.data&&res3.data.data&&res3.data.data.warning || []
  167. labAndPacsRecommend = [
  168. {
  169. title: '化验',
  170. className: 'labRecommend',
  171. data: labRecommend,
  172. showNum: showLabsNum
  173. },
  174. {
  175. title: '辅检',
  176. className: 'pacsRecommend',
  177. data: pacsRecommend,
  178. showNum: showPacsNum
  179. }
  180. ]
  181. window.pushMessage = medicalIndications;//计算的需要的相关数据
  182. renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
  183. }).catch(function (err) {
  184. console.log(err);
  185. })
  186. } else{
  187. Promise.all([getHosptDeptUsal(),getPushInfo()]).then(([res1, res2]) =>{
  188. diagCommon = res1&&res1.data&&res1.data.data&&res1.data.data || []
  189. // diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
  190. diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
  191. diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
  192. diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
  193. labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
  194. pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
  195. physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
  196. symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
  197. medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
  198. labAndPacsRecommend = [
  199. {
  200. title: '化验',
  201. className: 'labRecommend',
  202. data: labRecommend,
  203. showNum: showLabsNum
  204. },
  205. {
  206. title: '辅检',
  207. className: 'pacsRecommend',
  208. data: pacsRecommend,
  209. showNum: showPacsNum
  210. }
  211. ]
  212. window.pushMessage = medicalIndications;//计算的需要的相关数据
  213. renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
  214. }).catch(function (err) {
  215. console.log(err);
  216. })
  217. }
  218. }else{
  219. if(hasCaseStandard){
  220. Promise.all([getAnalyse(),getPushInfo()]).then(([res1, res2]) =>{
  221. getPushData(res2)
  222. diagWaring = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['警惕'] || []
  223. diagFirst = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['拟诊'] || []
  224. diagPossible = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['可能诊断'] || []
  225. diagIdentify = res2&&res2.data&&res2.data.data&&res2.data.data.dis&&res2.data.data.dis['鉴别诊断'] || []
  226. labRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.lab || []
  227. pacsRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.pacs || []
  228. physiExamRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.vital || []
  229. symptomRecommend = res2&&res2.data&&res2.data.data&&res2.data.data.symptom || []
  230. medicalIndications = res2&&res2.data&&res2.data.data&&res2.data.data.medicalIndications || []
  231. CaseStandard = res1&&res1.data&&res1.data.data&&res1.data.data.warning || []
  232. labAndPacsRecommend = [
  233. {
  234. title: '化验',
  235. className: 'labRecommend',
  236. data: labRecommend,
  237. showNum: showLabsNum
  238. },
  239. {
  240. title: '辅检',
  241. className: 'pacsRecommend',
  242. data: pacsRecommend,
  243. showNum: showPacsNum
  244. }
  245. ]
  246. window.pushMessage = medicalIndications;//计算的需要的相关数据
  247. renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
  248. }).catch(function (err) {
  249. console.log(err);
  250. })
  251. } else{
  252. getPushInfo().then(res =>{
  253. diagWaring = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['警惕'] || []
  254. diagFirst = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['拟诊'] || []
  255. diagDetermine = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['确诊'] || []
  256. diagFirst = diagDetermine.concat (diagFirst)
  257. diagPossible = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['可能诊断'] || []
  258. diagIdentify = res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis['鉴别诊断'] || []
  259. labRecommend = res&&res.data&&res.data.data&&res.data.data.lab || []
  260. pacsRecommend = res&&res.data&&res.data.data&&res.data.data.pacs || []
  261. physiExamRecommend = res&&res.data&&res.data.data&&res.data.data.vital || []
  262. symptomRecommend = res&&res.data&&res.data.data&&res.data.data.symptom || []
  263. medicalIndications = res&&res.data&&res.data.data&&res.data.data.medicalIndications || []
  264. labAndPacsRecommend = [
  265. {
  266. title: '化验',
  267. className: 'labRecommend',
  268. data: labRecommend,
  269. showNum: showLabsNum
  270. },
  271. {
  272. title: '辅检',
  273. className: 'pacsRecommend',
  274. data: pacsRecommend,
  275. showNum: showPacsNum
  276. }
  277. ]
  278. window.pushMessage = medicalIndications;//计算的需要的相关数据
  279. renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard);
  280. }).catch(function (err) {
  281. console.log(err);
  282. })
  283. }
  284. }
  285. // Promise.all([getConf(),getPushInfo(),getTreatment(),getTipsInfo()]).then(([res1, res2, res3, res4]) =>{
  286. // const configArr = res1&&res1.data&&res1.data.data.pushSetList || []
  287. // const pushInfo = res2&&res2.data || {}
  288. // const tipsInfo = res4&&res4.data || {}
  289. // const {confArr, showLabsNum, showPacsNum, labsAndPacMode} = transConf(configArr)
  290. // const pushResult = pushInfo.data || {};
  291. // let tipsResult = []
  292. // if(tipsInfo.data) {
  293. // if(tipsMode == '2') {
  294. // tipsResult = tipsInfo.data
  295. // } else {
  296. // tipsResult.push(tipsInfo.data)
  297. // }
  298. // }
  299. // const diagPossible = pushResult.dis&&pushResult.dis['可能诊断'] || []//可能
  300. // const diagFirst = pushResult.dis&&pushResult.dis['拟诊'] || [] // 疑似
  301. // const diagDeter = pushResult.dis&&pushResult.dis['确诊'] || []//确诊
  302. // const diagIdentify = pushResult.dis&&pushResult.dis['鉴别诊断'] || []//确诊
  303. // const diagWaring = pushResult.dis&&pushResult.dis['警惕'] || [{clientNames: null, conceptId: 531694,libType: 18,name: "糖尿病肾病",type: 7}] // 推荐警惕诊断
  304. // const symptomRecommend = pushResult.symptom || [] //推荐问诊症状
  305. // const physiExamRecommend = pushResult.vital || [] //推荐体格检查
  306. // const diagRecommend = diagDeter.concat(diagFirst, diagPossible) //推荐诊断
  307. // const labRecommend = pushResult.lab || []
  308. // const pacsRecommend = pushResult.pacs || []
  309. // const medicalIndications = pushResult.medicalIndications || []
  310. // const labAndPacsRecommend = [
  311. // {
  312. // title: '化验',
  313. // className: 'labRecommend',
  314. // data: labRecommend,
  315. // showNum: showLabsNum
  316. // },
  317. // {
  318. // title: '辅检',
  319. // className: 'pacsRecommend',
  320. // data: pacsRecommend,
  321. // showNum: showPacsNum
  322. // }
  323. // ]
  324. // window.pushMessage = medicalIndications;//计算的需要的相关数据
  325. // renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications);
  326. // }).catch(function (err) {
  327. // console.log(err);
  328. // })
  329. }
  330. function getPushData(res){
  331. if(res&&res.data&&res.data.data&&res.data.data.dis&&res.data.data.dis){
  332. let dis = res.data.data.dis;
  333. //急诊显示规则,主诊断有急诊优先显示,没有则显示推送的,推送也没有就不显示
  334. if(dis&&dis['页面急诊']&&(dis['页面急诊'].length>0)){
  335. let name = dis['页面急诊'][0].name || ''
  336. $(".allDis .disName").html(name)
  337. disName = name
  338. if(name){
  339. $(".singleDis").css("display","block")
  340. }
  341. }else if(dis&&dis['急诊']&&dis['急诊'].length>0){
  342. let name = dis['急诊'][0].name || ''
  343. $(".allDis .disName").html(name)
  344. disName = name
  345. if(name){
  346. $(".singleDis").css("display","block")
  347. }
  348. }
  349. }
  350. }
  351. let disName=""
  352. function handleShow(){
  353. const newinConf = {
  354. width: '600', //窗口的文档显示区的宽度。以像素计。
  355. height: '826', //窗口文档显示区的高度。以像素计。
  356. left: '0', //窗口的 x 坐标。以像素计。
  357. top: '0', //窗口的 y 坐标。以像素计。
  358. openMode: "_blank" //每次都是新窗口打开为_blank,打开同一窗口填写任意字符串
  359. }
  360. const newWindowLocation = `width=${newinConf.width}, height=${newinConf.height}, left=${newinConf.left}, top=${newinConf.top} scrollbars=yes`
  361. window.open('./emergency.html?disName='+disName, newinConf.openMode, newWindowLocation)
  362. }
  363. $(document).on('click',".allDis .allName",function(){
  364. handleShow()
  365. })
  366. $(document).on('click',".singleDis",function(){
  367. $(this).next().css("display","block")
  368. $(this).css("display","none")
  369. })
  370. $(document).on('click',".allDis .right,.allDis .secDis",function(){
  371. $(".allDis").css("display","none")
  372. $(".singleDis").css("display","block")
  373. })
  374. function renderPageData(confArr,diagWaring,diagFirst,diagPossible,diagIdentify,labAndPacsRecommend,physiExamRecommend,symptomRecommend,medicalIndications,diagCommon,CaseStandard){
  375. let renderNum = 0
  376. // renderWarning(5,'warning', '警惕', diagWaring, true,7,2)
  377. // renderRecommendInfo(5,'diagFirst', '初步诊断', diagFirst, true,7,2);
  378. // renderRecommendInfo(5,'diagPossible', '可能诊断', diagPossible, true,7,2);
  379. // renderRecommendInfo(5,'diagIdentify', '鉴别诊断', diagIdentify, true,7,2);
  380. // renderMultRecommendInfo('labAndPacsRecommend', '检验检查', labAndPacsRecommend, false)
  381. // renderRecommendInfo(10,'physiExamRecommend', '体格检查', physiExamRecommend, false);
  382. // renderRecommendInfo(10,'symptomRecommend', '问诊症状', symptomRecommend, false);
  383. // renderRecommendConditTips('conditTips','病情提示', medicalIndications || []);
  384. // renderCaseStandard('CaseStandard', '病例书写规范', CaseStandard)
  385. // renderRecommendInfo(5,'diagCommon', '常见症状', diagCommon, true,7,2);
  386. // $('.physiExamRecommend h4 img').attr('src',physiExamImg)
  387. // $('.diagFirst h4 img').attr('src',diagFirstImg)
  388. // $('.diagPossible h4 img').attr('src',diagPossibleImg)
  389. // $('.diagIdentify h4 img').attr('src',diagIdentifyImg)
  390. for(let i = 0; i < confArr.length; i++) {
  391. switch(confArr[i].code) {
  392. case "symptoms_show": //问诊症状
  393. symptomRecommend.length > 0 && renderRecommendInfo(confArr[i].showNum,'symptomRecommend', '问诊症状', symptomRecommend, false)
  394. $('.symptomRecommend h4 img').attr('src',diagFirstImg)
  395. symptomRecommend.length > 0 && renderNum++
  396. break;
  397. case "physical_show": //体格检查
  398. physiExamRecommend.length > 0 && renderRecommendInfo(5,'physiExamRecommend', '体格检查', physiExamRecommend, false)
  399. $('.physiExamRecommend h4 img').attr('src',physiExamImg)
  400. physiExamRecommend.length > 0 && renderNum++
  401. break;
  402. case "illness_show": //病情提示
  403. medicalIndications.length > 0 && renderRecommendConditTips('conditTips','病情提示', medicalIndications || []);
  404. medicalIndications.length > 0 && renderNum++;
  405. break;
  406. case "vigilant_show": //警惕诊断
  407. diagWaring.length > 0 && renderWarning(confArr[i].showNum,'warning', '警惕诊断', diagWaring, true,7,2);
  408. diagWaring.length > 0 && renderNum++;
  409. break;
  410. case "comsympto_show": //常见症状
  411. diagCommon.length > 0 && renderRecommendInfo(confArr[i].showNum,'commonSymp', '常见症状', diagCommon, true,7,2);
  412. diagCommon.length > 0 && renderNum++;
  413. break;
  414. case "specification_show": //病例书写规范
  415. CaseStandard.length > 0 && renderCaseStandard('CaseStandard', '病历书写规范提示', CaseStandard);
  416. CaseStandard.length > 0 && renderNum++;
  417. break;
  418. case "Inspush_show": //检验检查
  419. (labRecommend.length > 0 || pacsRecommend.length >0) && renderMultRecommendInfo('labAndPacsRecommend', '检验检查', labAndPacsRecommend, false);
  420. (labRecommend.length > 0 || pacsRecommend.length >0) && renderNum++
  421. break;
  422. case "diapush_show": //推荐诊断
  423. diagFirst.length>0 && renderRecommendInfo(5,'diagFirst', '初步诊断', diagFirst, true,7,2);
  424. diagFirst.length>0 && renderNum++
  425. diagPossible.length>0 && renderRecommendInfo(5,'diagPossible', '可能诊断', diagPossible, true,7,2);
  426. diagPossible.length>0 && renderNum++
  427. diagIdentify.length>0 && renderRecommendInfo(5,'diagIdentify', '鉴别诊断', diagIdentify, true,7,2);
  428. diagIdentify.length>0 && renderNum++;
  429. $('.diagFirst h4 img').attr('src',diagFirstImg);
  430. $('.diagPossible h4 img').attr('src',diagPossibleImg);
  431. $('.diagIdentify h4 img').attr('src',diagIdentifyImg);
  432. break;
  433. default:
  434. break;
  435. }
  436. }
  437. $('.loading').css("display","none")
  438. if(renderNum > 0 || diagWaring.length > 0){
  439. $(".empty").css("display","none")
  440. }else{
  441. $(".empty").css("display","block")
  442. }
  443. }
  444. function moreInfo() {
  445. $('.moreInfo').click(function(){
  446. const name = $(this).attr('data-name')
  447. const type = $(this).attr('data-type')
  448. openNewWin(`information.html?type=${encodeURIComponent(type)}&position=0&name=${encodeURIComponent(name)}`)
  449. })
  450. }
  451. function getVersion() {
  452. post(config.getVersion, 'confArr').then((res) => {
  453. const data = res.data.data;
  454. const ver = localStorage.getItem('versionTime');
  455. const time = data.refreshTime;
  456. if(!ver||ver===time+"=new"||time!==ver.replace("=new","")){ //判断版本是否更新
  457. $(".version-tip").addClass('new-icon');
  458. localStorage.setItem('versionTime',time+"=new"); //保存版本更新时间
  459. }else{
  460. $(".version-tip").removeClass('new-icon');
  461. }
  462. })
  463. }
  464. function getDisclaimer() {
  465. post(config.disclaimer, '').then((res) => {
  466. const data = res.data.data.find(item => item.disclaimerCode == '2');
  467. $(".responsibility").html(data.description);
  468. $('.iframeWrap').css({height: $(window).height()-115-$(".responsibility").height()+'px'})
  469. })
  470. }
  471. $(function(){
  472. getDisclaimer(); //获取免责声明
  473. getVersion(); //获取版本信息
  474. $(".disclaimerInfo").on("click", function(){
  475. openNewWin("disclaimer.html")
  476. });
  477. $(".version-tip").on("click", function(){
  478. const ver = localStorage.getItem('versionTime');
  479. $(".version-tip").removeClass('new-icon');
  480. localStorage.setItem('versionTime',ver.replace("=new",""));
  481. openNewWin("version.html");
  482. });
  483. });