print.js 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. import {
  2. json
  3. } from "../../utils/ajax";
  4. import store from '@store';
  5. import Notify from '@commonComp/Notify';
  6. import {
  7. getAllDataList,
  8. getAllDataStringList,
  9. pushAllDataList,
  10. filterDataArr
  11. } from '@utils/tools';
  12. export const saveMessage = (bool) => {
  13. let baseList = store.getState();
  14. let state = baseList.patInfo.message;
  15. let whichSign = baseList.typeConfig.typeConfig;
  16. let jsonStr = getAllDataStringList(baseList);
  17. let jsonData = getAllDataList(baseList);
  18. const lisData = baseList.inspect.pushItem;
  19. const lisArr = transferIndexData(lisData);
  20. const evaluation={
  21. htmlContent:JSON.stringify(getEvaluations(baseList.assessResult)),
  22. //scaleList:[]
  23. };//getEvaluation();
  24. //console.log(baseList)
  25. // console.log(jsonStr.diag,'保存历史病历')
  26. json('/inquiryInfo/saveInquiry', {
  27. "doctorId": state.doctorId,
  28. "hospitalDeptId": state.hospitalDeptId,
  29. "hospitalId": state.hospitalId,
  30. "patientId": state.patientId, //患者id
  31. "dataJson": JSON.stringify(getAllDataList(baseList)),
  32. "indexData":lisArr,
  33. "inquiryEvaluation":evaluation,
  34. "detailList": [{
  35. "content": jsonStr.chief,
  36. "contentValue":filterDataArr(JSON.parse(jsonStr.chief)),
  37. "type": 1
  38. }, {
  39. "content": jsonStr.present,
  40. "contentValue":filterDataArr(JSON.parse(jsonStr.present)),
  41. "type": 2
  42. }, {
  43. "content": jsonStr.other,
  44. "contentValue":filterDataArr(JSON.parse(jsonStr.other)),
  45. "type": 3
  46. }, {
  47. "content": jsonStr.vital,
  48. "contentValue":filterDataArr(JSON.parse(jsonStr.vital)),
  49. "type": 4
  50. }, {
  51. "content": jsonStr.lis,
  52. "contentValue":jsonStr.lis,
  53. "type": 5
  54. }, {
  55. "content": jsonStr.pacs,
  56. "contentValue":jsonStr.pacs,
  57. "type": 6
  58. }, {
  59. "content": jsonStr.diag,
  60. "contentValue":jsonStr.diag,
  61. "type": 7
  62. }, {
  63. "content": jsonStr.advice,
  64. "contentValue":jsonStr.advice,
  65. "type": 8
  66. }],
  67. "sign": whichSign, //类型0结构化 1文本
  68. "diagnose": (jsonData.diag.length > 0 ? jsonData.diag[0].name : ''), //诊断
  69. "inquiryCode": state.recordId, //就诊序列号
  70. "drugList":baseList.pushMessage.advice.drugList || [],//药品列表
  71. // "regVisitedState": 0, //就诊状态
  72. // "type": 0,
  73. }).then((res) => {
  74. let data = res.data
  75. if (data.code == 0) {
  76. if(!bool){
  77. Notify.success('历史病历保存成功');
  78. }
  79. } else {
  80. console.log(res)
  81. }
  82. })
  83. if(bool){
  84. json('/printRecord/savePrintRecords', {
  85. "dataJson": JSON.stringify(getAllDataList(baseList)),
  86. "doctorId": state.doctorId,
  87. "hospitalDeptId": state.hospitalDeptId,
  88. "hospitalId": state.hospitalId,
  89. "inquiryCode": state.recordId, //就诊序列号
  90. "name": (jsonData.diag.length > 0 ? jsonData.diag[0].name : ''), //诊断
  91. "patientId": state.patientId, //患者id
  92. "type": whichSign, //类型0结构化 1文本
  93. "content": {
  94. "advice": jsonStr.advice,
  95. "chief": jsonStr.present,
  96. "diag": jsonStr.diag,
  97. "lis": jsonStr.lis,
  98. "other": jsonStr.other,
  99. "pacs": jsonStr.pacs,
  100. "present": jsonStr.present,
  101. "vital": jsonStr.vital
  102. },
  103. }).then((res) => {
  104. let data = res.data
  105. if (data.code == 0) {
  106. console.log('打印记录保存成功')
  107. } else {
  108. console.log(res)
  109. }
  110. })
  111. }
  112. };
  113. //转换化验指标保存需要的数据
  114. function transferIndexData(data) {
  115. const arr=[];
  116. data.map((it)=>{
  117. if(it.uniqueName&&it.value!=''){
  118. arr.push({
  119. creatTime:it.time,
  120. indexUnique:it.uniqueName,
  121. indexUnit:it.units,
  122. indexValue:it.value,
  123. isAbnormal:(it.maxValue||it.minValue)?(it.value<it.minValue||it.value>it.maxValue?1:0):0
  124. });
  125. }
  126. });
  127. return arr;
  128. }
  129. function getEvaluations(base){
  130. return {
  131. data:base.data,
  132. chooseSelecteds:base.chooseSelecteds,
  133. indexTimeTypes:base.indexTimeTypes,
  134. wholeAssess:base.wholeAssess,
  135. wholeAssessText:base.wholeAssessText,
  136. wholeIndexs:base.wholeIndexs
  137. };
  138. }
  139. export const clearMessages = () => {
  140. let baseList = store.getState();
  141. let whichSign = baseList.typeConfig.typeConfig;
  142. pushAllDataList(whichSign,'clear');
  143. };