Elizabeth's proactive approach involves introducing urinal toilet attachment , an ingenious concept that optimizes space and functionality.

DialysisPrintOrderThirtySix.vue 83KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869
  1. <template>
  2. <div id="dialysis-print-box-1">
  3. <div id="dialysis-print-box-1-1" class="dialysis-print-order" style="page-break-after: always;">
  4. <div class="order-yy-name" style="font-size:24px;">{{ orgname }}</div>
  5. <div class="order-title" style="font-size:18px;">血液净化治疗记录单</div>
  6. <table class="table-box" style="margin-top: 10px;">
  7. <tbody>
  8. <tr>
  9. <td width="50">姓 名:</td>
  10. <td width="90">
  11. <div class="under-line">&nbsp;{{ patientInfo.name }}</div>
  12. </td>
  13. <td width="20"></td>
  14. <td width="50">性 别:</td>
  15. <td width="100">
  16. <div>
  17. <label-box :isChecked="patientInfo_gender_1" showValue="男"></label-box>
  18. <label-box :isChecked="patientInfo_gender_2" showValue="女"></label-box>
  19. </div>
  20. </td>
  21. <td width="50">年 龄:</td>
  22. <td width="40">
  23. <div class="under-line">{{ getAge(patientInfo) }}</div>
  24. </td>
  25. <td>岁</td>
  26. <td width="10"></td>
  27. <td width="70">透析机号:</td>
  28. <td width="100">
  29. <div class="under-line">{{ getNumber() }}</div>
  30. </td>
  31. <td width="30"></td>
  32. <td>
  33. 日期:<div class="under_line" style="width:50px;display: inline-block;text-align:center;">{{ queryParams.xtdate.slice(0,4) }}</div>年
  34. <div class="under_line" style="width:50px;display: inline-block;text-align:center;">{{ queryParams.xtdate.slice(5,7) }}</div>月
  35. <div class="under_line" style="width:50px;display: inline-block;text-align:center;">{{ queryParams.xtdate.slice(8,11) }}</div>日
  36. </td>
  37. <td width='10'></td>
  38. </tr>
  39. </tbody>
  40. </table>
  41. <table class="print-table" border="1">
  42. <tbody>
  43. <tr>
  44. <td width="30px" class="title-box">透析前评估</td>
  45. <td>
  46. <table class="table-box">
  47. <tbody>
  48. <tr>
  49. <td width="80"><span style="font-weight:bold;">入科方式</span></td>
  50. <td width="230">
  51. <div style="display:flex;justify-content: space-between;">
  52. <label-box style="margin-right:10px;" v-for="(item, index) in way_arr" :key="index" :isChecked="receiverTreatmentAccess.way == item.id ? true : false" :showValue="item.name"></label-box>
  53. <!--&nbsp-->
  54. <!--<label-box :isChecked='receiverTreatmentAccess.way==2?true:false' showValue='扶行'></label-box>-->
  55. <!--&nbsp;-->
  56. <!--<label-box :isChecked='receiverTreatmentAccess.way==3?true:false' showValue='轮椅'></label-box>-->
  57. <!--&nbsp;-->
  58. <!--<label-box :isChecked='receiverTreatmentAccess.way==4?true:false' showValue='平车'></label-box>-->
  59. </div>
  60. </td>
  61. <td width='10'></td>
  62. <td width="40"><span style="font-weight:bold;">意识:</span></td>
  63. <td width="230">
  64. <div style="display:flex;justify-content: space-between;">
  65. <label-box style="margin-right:10px;" v-for="(item, index) in consciousness_arr" :key="index" :isChecked="receiverTreatmentAccess.consciousness == item.id ? true : false" :showValue="item.name"></label-box>
  66. <!--<label-box :isChecked='receiverTreatmentAccess.consciousness==1?true:false'-->
  67. <!--showValue='清醒'></label-box>-->
  68. <!--&nbsp;-->
  69. <!--<label-box :isChecked='receiverTreatmentAccess.consciousness==2?true:false'-->
  70. <!--showValue='嗜睡'></label-box>-->
  71. <!--&nbsp;-->
  72. <!--<label-box :isChecked='receiverTreatmentAccess.consciousness==3?true:false'-->
  73. <!--showValue='昏迷'></label-box>-->
  74. <!--<label-box :isChecked='receiverTreatmentAccess.consciousness==4?true:false'-->
  75. <!--showValue='模糊'></label-box>-->
  76. </div>
  77. </td>
  78. <td width="10"></td>
  79. <td width="50"><span style="font-weight:bold;">感染:</span></td>
  80. <td width="80">
  81. <label-box :isChecked="predialysis.is_infect == 1 ? true : false" showValue="无"></label-box>&nbsp;
  82. <label-box :isChecked="predialysis.is_infect == 2 ? true : false" showValue="有"></label-box>
  83. </td>
  84. <td width='120'>
  85. <div class="under-line">
  86. &nbsp;<span v-if="predialysis.is_infect == 2">{{ predialysis.infect_other ? predialysis.infect_other : ""}}</span>
  87. </div>
  88. </td>
  89. <td></td>
  90. </tr>
  91. </tbody>
  92. </table>
  93. <table class="table-box">
  94. <tbody>
  95. <tr>
  96. <td width="80"><span style="font-weight:bold;">出&ensp;&ensp;&ensp;&ensp;血</span></td>
  97. <td width="35">
  98. <div>
  99. <label-box :isChecked="predialysis.is_hemorrhage == 2 ? true : false" showValue="无"></label-box>
  100. </div>
  101. </td>
  102. <td width="480">
  103. <div>
  104. <label-box :isChecked="predialysis.is_hemorrhage == 1 && predialysis.hemorrhage.indexOf('穿刺点渗血') > -1 ? true : false" showValue="穿刺点渗血"></label-box>
  105. &nbsp;
  106. <label-box :isChecked="predialysis.is_hemorrhage == 1 && predialysis.hemorrhage.indexOf('置管处渗血') > -1 ? true : false" showValue="置管处渗血"></label-box>
  107. &nbsp;
  108. <label-box :isChecked="predialysis.is_hemorrhage == 1 && predialysis.hemorrhage.indexOf('牙龈出血') > -1 ? true : false" showValue="牙龈出血"></label-box>
  109. &nbsp;
  110. <label-box :isChecked="predialysis.is_hemorrhage == 1 && predialysis.hemorrhage.indexOf('消化道出血') > -1 ? true : false" showValue="消化道出血"></label-box>
  111. &nbsp;
  112. <label-box :isChecked="predialysis.is_hemorrhage == 1 && predialysis.hemorrhage.indexOf('女性经期') > -1 ? true : false" showValue="女性经期"></label-box>
  113. </div>
  114. </td>
  115. <td width="35">其它</td>
  116. <td width="200">
  117. <div class="under-line">
  118. &nbsp;
  119. <span v-if="predialysis.is_hemorrhage == 1">{{ predialysis.hemorrhage_other }}</span>
  120. </div>
  121. </td>
  122. <td></td>
  123. </tr>
  124. </tbody>
  125. </table>
  126. <table class="table-box">
  127. <tbody>
  128. <tr>
  129. <td width="80"><span style="font-weight:bold;">通路类型</span></td>
  130. <td width="120">
  131. <div>
  132. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('AVF') > -1 ? true : false" showValue="AVF"></label-box>
  133. &nbsp;
  134. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('AVG') > -1 ? true : false" showValue="AVG"></label-box>
  135. &nbsp;
  136. </div>
  137. </td>
  138. <td width="40">(位置:</td>
  139. <td width='200'>
  140. <div>
  141. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('AVG') > -1 || predialysis.blood_access_part_opera_name.indexOf('AVF') > -1) && predialysis.blood_access_part_id.indexOf('左') > -1 ? true : false" showValue="左"></label-box>&nbsp;
  142. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('AVG') > -1 || predialysis.blood_access_part_opera_name.indexOf('AVF') > -1) && predialysis.blood_access_part_id.indexOf('右') > -1 ? true : false" showValue="右"></label-box>&nbsp;
  143. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('AVG') > -1 || predialysis.blood_access_part_opera_name.indexOf('AVF') > -1) && predialysis.blood_access_part_id.indexOf('前臂') > -1 ? true : false" showValue="前臂"></label-box>&nbsp;
  144. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('AVG') > -1 || predialysis.blood_access_part_opera_name.indexOf('AVF') > -1) && predialysis.blood_access_part_id.indexOf('上臂') > -1 ? true : false" showValue="上臂"></label-box>&nbsp;
  145. </div>
  146. </td>
  147. <td width='60'>穿刺点:</td>
  148. <td width="100">
  149. <div class="under-line">
  150. &nbsp;
  151. <!-- <span v-if="predialysis.puncture_method">{{ predialysis.puncture_method }}</span> -->
  152. <span v-if="predialysis.pinholing">{{ predialysis.pinholing }}</span>
  153. </div>
  154. </td>
  155. <td width='100'>动脉穿刺方向:</td>
  156. <td width="120">
  157. <div>
  158. <label-box :isChecked="predialysis.puncture_way.indexOf('顺穿') > -1 ? true : false" showValue="顺穿"></label-box>
  159. &nbsp;
  160. <label-box :isChecked="predialysis.puncture_way.indexOf('反穿') > -1 ? true : false" showValue="反穿"></label-box>
  161. &nbsp;
  162. </div>
  163. </td>
  164. <td></td>
  165. </tr>
  166. </tbody>
  167. </table>
  168. <table class="table-box">
  169. <tbody>
  170. <tr>
  171. <td width="190"></td>
  172. <td width='100'>穿刺针:</td>
  173. <td>
  174. <span>{{ predialysis.puncture_needle ? predialysis.puncture_needle : '/' }}</span>
  175. <!-- <div>
  176. <label-box :isChecked="predialysis.puncture_needle && predialysis.puncture_needle.indexOf('16G') > -1 ? true : predialysis.puncture_needle && predialysis.puncture_needle.indexOf('16G-静脉') > -1 ? true : false" showValue="16G"></label-box>
  177. &nbsp;
  178. <label-box :isChecked="predialysis.puncture_needle && predialysis.puncture_needle.indexOf('17G') > -1 ? true : predialysis.puncture_needle && predialysis.puncture_needle.indexOf('17G-静脉') > -1 ? true : false" showValue="17G"></label-box>
  179. &nbsp;
  180. </div> -->
  181. </td>
  182. <!-- <td width='80'>钝针穿刺:</td>
  183. <td width="140">
  184. <div>
  185. <label-box :isChecked="predialysis.puncture_needle && predialysis.puncture_needle.indexOf('16G-动脉') > -1 ? true : predialysis.puncture_needle && predialysis.puncture_needle.indexOf('17G-动脉') > -1 ? true : false" showValue="动脉"></label-box>
  186. &nbsp;
  187. <label-box :isChecked="predialysis.puncture_needle && predialysis.puncture_needle.indexOf('16G-静脉') > -1 ? true : predialysis.puncture_needle && predialysis.puncture_needle.indexOf('17G-静脉') > -1 ? true : false" showValue="静脉"></label-box>
  188. &nbsp;)
  189. </div>
  190. </td> -->
  191. <td></td>
  192. </tr>
  193. </tbody>
  194. </table>
  195. <table class="table-box">
  196. <tbody>
  197. <tr>
  198. <td width="80"></td>
  199. <td width="85">
  200. <div>
  201. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 ? true : predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1 ? true : false" showValue="静脉置管"></label-box>
  202. &nbsp;
  203. </div>
  204. </td>
  205. <td width='10'>(</td>
  206. <td width="120">
  207. <div>
  208. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 ? true : false" showValue="临时"></label-box>
  209. &nbsp;
  210. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1 ? true : false" showValue="长期"></label-box>
  211. &nbsp;
  212. </div>
  213. </td>
  214. <td width='50'>位置:</td>
  215. <td width='280'>
  216. <div>
  217. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 || predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1) && predialysis.blood_access_part_id.indexOf('左') > -1 ? true : false" showValue="左"></label-box>
  218. &nbsp;
  219. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 || predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1) && predialysis.blood_access_part_id.indexOf('右') > -1 ? true : false" showValue="右"></label-box>
  220. &nbsp;
  221. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 || predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1) && predialysis.blood_access_part_id.indexOf('颈内') > -1 ? true : false" showValue="颈内"></label-box>
  222. &nbsp;
  223. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 || predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1) && predialysis.blood_access_part_id.indexOf('股V') > -1 ? true : false" showValue="股V"></label-box>
  224. &nbsp;
  225. <label-box :isChecked="(predialysis.blood_access_part_opera_name.indexOf('静脉置管-临时') > -1 || predialysis.blood_access_part_opera_name.indexOf('静脉置管-长期') > -1) && predialysis.blood_access_part_id.indexOf('锁骨下') > -1 ? true : false" showValue="锁骨下"></label-box>
  226. </div>
  227. </td>
  228. <td width='30'></td>
  229. <td width='50'>
  230. <label-box :isChecked="predialysis.blood_access_part_opera_name.indexOf('锁骨下') > -1 ? true : false" showValue="直穿"></label-box>
  231. </td>
  232. <td width="60">
  233. <div class="under-line">
  234. &nbsp;
  235. </div>
  236. </td>
  237. <td width='40'>动脉</td>
  238. <td></td>
  239. </tr>
  240. </tbody>
  241. </table>
  242. <table class="table-box">
  243. <tbody>
  244. <tr>
  245. <td width="80"></td>
  246. <td width="70">内瘘震颤:</td>
  247. <td width="160">
  248. <div>
  249. <label-box :isChecked="predialysis.internal_fistula.indexOf('震颤-存在') > -1 ? true : false" showValue="存在"></label-box>
  250. &nbsp;
  251. <label-box :isChecked="predialysis.internal_fistula.indexOf('震颤-减弱') > -1 ? true : false" showValue="减弱"></label-box>
  252. &nbsp;
  253. <label-box :isChecked="predialysis.internal_fistula.indexOf('震颤-无') > -1 ? true : false" showValue="无"></label-box>
  254. </div>
  255. </td>
  256. <td width='30'></td>
  257. <td width='50'>导管:</td>
  258. <td width='60'>管腔外露</td>
  259. <td width="60">
  260. <div class="under-line">
  261. &nbsp;
  262. {{ predialysis.exposed ? predialysis.exposed : '' }}
  263. </div>
  264. </td>
  265. <td width='10'>cm</td>
  266. <td width='30'></td>
  267. <td width='50'>打折:</td>
  268. <td width="80">
  269. <div>
  270. <label-box :isChecked="predialysis.catheter_bend == 2" showValue="无"></label-box>&nbsp;
  271. <label-box :isChecked="predialysis.catheter_bend == 1" showValue="有"></label-box>
  272. </div>
  273. </td>
  274. <td width='30'></td>
  275. <td width='50'>吸壁:</td>
  276. <td width="80">
  277. <div>
  278. <label-box :isChecked="predialysis.catheter.indexOf('吸壁-无') > -1" showValue="无"></label-box>&nbsp;
  279. <label-box :isChecked="predialysis.catheter.indexOf('吸壁-有') > -1" showValue="有"></label-box>
  280. </div>
  281. </td>
  282. <td></td>
  283. </tr>
  284. </tbody>
  285. </table>
  286. <table class="table-box">
  287. <tbody>
  288. <tr>
  289. <td width="80"><span style="font-weight:bold;">治疗方式</span></td>
  290. <td width="50">
  291. <label-box :isChecked="prescription.mode_id == 1 ? true : false" showValue="HD"></label-box>
  292. </td>
  293. <td width="50">
  294. <label-box :isChecked="prescription.mode_id == 2 ? true : false" showValue="HDF"></label-box>
  295. </td>
  296. <td width="50">
  297. <label-box :isChecked="prescription.mode_id == 5 ? true : false" showValue="HF"></label-box>
  298. </td>
  299. <td width='80'>(置换液总量</td>
  300. <td width='50'>
  301. <div class="under-line">
  302. &nbsp;<span>{{ prescription.displace_liqui_value ? prescription.displace_liqui_value : "" }}</span>
  303. </div>
  304. </td>
  305. <td width='10'>L)</td>
  306. <td width='50'>其他:</td>
  307. <td width='100'>
  308. <div class="under-line">
  309. &nbsp;
  310. <span v-if="prescription.mode_id == 3">HD+HP</span>
  311. <span v-if="prescription.mode_id == 4">HP</span>
  312. <span v-if="prescription.mode_id == 6">SCUF</span>
  313. <span v-if="prescription.mode_id == 7">IUF</span>
  314. <span v-if="prescription.mode_id == 8">HFHD</span>
  315. <span v-if="prescription.mode_id == 9">HFHD+HP</span>
  316. <span v-if="prescription.mode_id == 10">PHF</span>
  317. <span v-if="prescription.mode_id == 11">HFR</span>
  318. <span v-if="prescription.mode_id == 12">HDF+HP</span>
  319. <span v-if="prescription.mode_id == 13">CRRT</span>
  320. <span v-if="prescription.mode_id == 14">腹水回输</span>
  321. <span v-if="prescription.mode_id == 15">HD前置换</span>
  322. <span v-if="prescription.mode_id == 16">HD后置换</span>
  323. <span v-if="prescription.mode_id == 17">HDF前置换</span>
  324. <span v-if="prescription.mode_id == 18">HDF后置换</span>
  325. <span v-if="prescription.mode_id == 19">IUF+HD</span>
  326. </div>
  327. </td>
  328. <td width='10'></td>
  329. <!-- <td width="90">皮肤消毒液:</td>
  330. <td width="120">
  331. <label-box :isChecked="false" showValue="碘伏"></label-box>&nbsp;
  332. <label-box :isChecked="false" showValue="复合碘"></label-box>
  333. </td> -->
  334. <td></td>
  335. </tr>
  336. </tbody>
  337. </table>
  338. <table class="table-box">
  339. <tbody>
  340. <tr>
  341. <td width="80"><span style="font-weight:bold;">抗凝方式</span></td>
  342. <td width="80">
  343. <label-box :isChecked="prescription.anticoagulant == 2 ? true : false" showValue="普通肝素"></label-box>
  344. </td>
  345. <td width='60'>(首剂量</td>
  346. <td width='50'>
  347. <div class="under-line">
  348. &nbsp;<span v-if="prescription.anticoagulant == 2">{{ prescription.anticoagulant_shouji }}</span>
  349. </div>
  350. </td>
  351. <td width='10'>mg</td>
  352. <td width='10'></td>
  353. <td width='50'>追加量</td>
  354. <td width='50'>
  355. <div class="under-line">
  356. &nbsp;<span v-if="prescription.anticoagulant == 2">{{ prescription.anticoagulant_weichi }}</span>
  357. </div>
  358. </td>
  359. <td width='20'>mg/h)</td>
  360. <td width='20'></td>
  361. <td width="90">
  362. <label-box :isChecked="prescription.anticoagulant == 3 ? true : prescription.anticoagulant == 6 ? true : prescription.anticoagulant == 7 ? true : false" showValue="低分子肝素"></label-box>
  363. </td>
  364. <td width='60'>
  365. <div class="under-line">
  366. &nbsp;<span v-if="prescription.anticoagulant == 3">{{ prescription.anticoagulant_zongliang }}</span>
  367. <span v-if="prescription.anticoagulant == 6">{{ prescription.anticoagulant_zongliang }}</span>
  368. <span v-if="prescription.anticoagulant == 7">{{ prescription.anticoagulant_zongliang }}</span>
  369. </div>
  370. </td>
  371. <td width='10'>IU</td>
  372. <td width="80">
  373. <label-box :isChecked="prescription.anticoagulant == 1 ? true : false" showValue="无肝素"></label-box>
  374. </td>
  375. <td width='90'>预设冲管NS</td>
  376. <td width='50'>
  377. <div class="under-line">
  378. &nbsp;{{ prescription.pre_impulse ? prescription.pre_impulse : '' }}
  379. </div>
  380. </td>
  381. <td width='10'>ml</td>
  382. <td></td>
  383. </tr>
  384. </tbody>
  385. </table>
  386. <table class="table-box">
  387. <tbody>
  388. <tr>
  389. <td width="80"><span style="font-weight:bold;">体&ensp;&ensp;&ensp;&ensp;重</span></td>
  390. <td width="50">干体重:</td>
  391. <td width="70">
  392. <div class="under-line">
  393. &nbsp;{{ predialysis.dry_weight ? predialysis.dry_weight : "" }}
  394. </div>
  395. </td>
  396. <td width="35">kg</td>
  397. <td width="10"></td>
  398. <td width="80">透前体重:</td>
  399. <td width="70">
  400. <div class="under-line">
  401. &nbsp;{{ predialysis.weight_before ? predialysis.weight_before : "" }}
  402. </div>
  403. </td>
  404. <td width="35">kg</td>
  405. <td width="10"></td>
  406. <td width="80">透后体重:</td>
  407. <td width="70">
  408. <div class="under-line">
  409. &nbsp;{{ afterdialysis.weight_after ? afterdialysis.weight_after : "" }}
  410. </div>
  411. </td>
  412. <td width="35">kg</td>
  413. <td width="50">水肿:</td>
  414. <td width='160'>
  415. <div>
  416. <label-box :isChecked="predialysis.edema.indexOf('无') > -1" showValue="无"></label-box>
  417. <label-box :isChecked="predialysis.edema.indexOf('+') > -1" showValue="+"></label-box>
  418. <label-box :isChecked="predialysis.edema.indexOf('++') > -1" showValue="++"></label-box>
  419. <label-box :isChecked="predialysis.edema.indexOf('+++') > -1" showValue="+++"></label-box>
  420. </div>
  421. </td>
  422. <td></td>
  423. </tr>
  424. </tbody>
  425. </table>
  426. <table class="table-box">
  427. <tbody>
  428. <tr>
  429. <td width="80"></td>
  430. <td width="60">治疗时间</td>
  431. <td width="40">
  432. <div class="under-line">
  433. &nbsp;{{ prescription.dialysis_duration_hour ? prescription.dialysis_duration_hour : 0 }}
  434. </div>
  435. </td>
  436. <td width="10">h</td>
  437. <td width="40">
  438. <div class="under-line">
  439. &nbsp;{{ prescription.dialysis_duration_minute ? prescription.dialysis_duration_minute : 0 }}
  440. </div>
  441. </td>
  442. <td width="35">min</td>
  443. <td width="90">预设超滤量:</td>
  444. <td width="50">
  445. <div class="under-line">
  446. &nbsp;{{ prescription.target_ultrafiltration ? prescription.target_ultrafiltration : ' ' }}
  447. </div>
  448. </td>
  449. <td width="10">ml</td>
  450. <!-- <td width="50">吸氧:</td>
  451. <td width='80'>
  452. <div>
  453. <label-box :isChecked="false" showValue="无"></label-box>
  454. <label-box :isChecked="false" showValue="有"></label-box>
  455. </div>
  456. </td>
  457. <td width="60">氧流量:</td>
  458. <td width="50">
  459. <div class="under-line">
  460. &nbsp;
  461. </div>
  462. </td>
  463. <td width="10">L/min</td> -->
  464. <td></td>
  465. </tr>
  466. </tbody>
  467. </table>
  468. <table class="table-box">
  469. <tbody>
  470. <tr>
  471. <td width="80"><span style="font-weight:bold;">透析液配方</span></td>
  472. <td width='10'>钙</td>
  473. <td width='10'>(</td>
  474. <td width='200'>
  475. <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钙1.5/钾2.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.5/钾3.0(mmol/L)') > -1 ? true : false" showValue="1.5"></label-box>
  476. <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钙1.25/钾3.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.25/钾2.0(mmol/L)') > -1 ? true : false" showValue="1.25"></label-box>
  477. <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钙1.75/钾2.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.75/钾3.0(mmol/L)') > -1 ? true : false" showValue="1.75mmol/L"></label-box>
  478. </td>
  479. <td width='10'>)</td>
  480. <td width='10'></td>
  481. <td width='10'>钾</td>
  482. <td width='10'>(</td>
  483. <td width='140'>
  484. <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钙1.5/钾2.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.25/钾2.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.75/钾2.0(mmol/L)') > -1 ? true : false" showValue="2.0"></label-box>
  485. <label-box :isChecked="prescription.dialysate_formulation_name.indexOf('钙1.25/钾3.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.5/钾3.0(mmol/L)') > -1 ? true : prescription.dialysate_formulation_name.indexOf('钙1.75/钾3.0(mmol/L)') > -1 ? true : false" showValue="3.0mmol/L"></label-box>
  486. </td>
  487. <td width='10'>)</td>
  488. <td width='10'></td>
  489. <td width='80'>透析液流量</td>
  490. <td width='100'>
  491. <label-box :isChecked="prescription.dialysate_flow == 500" showValue="500ml/min"></label-box>
  492. </td>
  493. <td width='30'>其他</td>
  494. <td width='150'>
  495. <div class="under-line">
  496. &nbsp;<span v-if="prescription.dialysate_flow != 500 && prescription.dialysate_flow != ''">{{ prescription.dialysate_flow ? prescription.dialysate_flow : "" }} ml/min</span>
  497. </div>
  498. </td>
  499. <td></td>
  500. </tr>
  501. </tbody>
  502. </table>
  503. <table class="table-box">
  504. <tbody>
  505. <tr>
  506. <td width="80"></td>
  507. <td width='60'>透析器:</td>
  508. <td width='150'>
  509. <div class="under-line">
  510. &nbsp;<span>{{prescription.dialysis_dialyszers}}</span>
  511. <span v-if="prescription.dialysis_irrigation!=''">/{{prescription.dialysis_irrigation}}</span>
  512. </div>
  513. </td>
  514. <td width='60'>饮食量:</td>
  515. <td width='50'>
  516. <div class="under-line">
  517. &nbsp;{{ afterdialysis.dialysis_during ? afterdialysis.dialysis_during : '' }}
  518. </div>
  519. </td>
  520. <td width='10'>g</td>
  521. <!-- <td width='60'>输液量:</td>
  522. <td width='50'>
  523. <div class="under-line">
  524. &nbsp;
  525. </div>
  526. </td>
  527. <td width='10'>ml</td> -->
  528. <td width='10'></td>
  529. <td width='80'>24小时尿量:</td>
  530. <td width='50'>
  531. <div class="under-line">
  532. &nbsp;{{ predialysis.urine_volume ? predialysis.urine_volume : '' }}
  533. </div>
  534. </td>
  535. <td width='10'>ml</td>
  536. <td></td>
  537. </tr>
  538. </tbody>
  539. </table>
  540. </td>
  541. </tr>
  542. </tbody>
  543. </table>
  544. <table class="print-table" style="border-left:1px solid #000;border-right:1px solid #000;">
  545. <tbody>
  546. <tr>
  547. <td width="120" style="height:40px;">主管医生:</td>
  548. <td width="100">
  549. <div>
  550. <span v-if="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) == ''"> {{ getAdminUser(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) }} </span>
  551. <img class="es-img" style="height:38px;" :src="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:''))" alt="" srcset="" v-else />
  552. </div>
  553. </td>
  554. <td width="70">预冲护士:</td>
  555. <td width="100">
  556. <div>
  557. <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.washpipe_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.washpipe_nurse)}}</span>
  558. <img class="es-img" style="height:38px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.washpipe_nurse)" alt="" srcset="" v-else>
  559. </div>
  560. </td>
  561. <td width="100">穿刺护士:</td>
  562. <td width="100">
  563. <div>
  564. <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.puncture_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.puncture_nurse)}}</span>
  565. <img class="es-img" style="height:38px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.puncture_nurse)" alt="" srcset="" v-else>
  566. </div>
  567. </td>
  568. <td width="70">核对护士:</td>
  569. <td width="100">
  570. <div>
  571. <span v-if="setAdminUserES(check == null ? 0 : check.modifier) == ''">
  572. {{ getAdminUser(check == null ? 0 : check.modifier) }}
  573. </span>
  574. <img style="height:38px;" :src="setAdminUserES(check == null ? 0 : check.modifier)" alt srcset v-else />
  575. <!-- <span v-if="setAdminUserES(check == null ? 0 : check.modifier) == ''">
  576. {{ getAdminUser(check == null ? 0 : check.modifier) }}
  577. </span>
  578. <img style="height:20px;" :src="setAdminUserES(check == null ? 0 : check.modifier)" alt srcset v-else /> -->
  579. </div>
  580. </td>
  581. </tr>
  582. </tbody>
  583. </table>
  584. <table class="print-table" border="1">
  585. <tbody>
  586. <tr>
  587. <td :rowspan="jilurow" width="30px" class="title-box">
  588. 透析中记录
  589. </td>
  590. <td width="60">时间</td>
  591. <td width="80">血压<br />mmHg</td>
  592. <td width="40">脉搏<br />次/分</td>
  593. <td width="40">体温<br />℃</td>
  594. <td width="40">呼吸<br />次/分</td>
  595. <td width="60">血流量<br />ml/min</td>
  596. <td width="60">动脉压<br />mmHg</td>
  597. <td width="60">静脉压<br />mmHg</td>
  598. <td width="60">跨膜压<br />mmHg</td>
  599. <td width="60">超滤量<br />ml</td>
  600. <td width="60">钠浓度<br/>mmol/L</td>
  601. <td width="60">电导度<br/>ms/cm</td>
  602. <td width="40">液温<br/>℃</td>
  603. <td width="40">ktv</td>
  604. <td width="40">血糖<br/>mmol/L</td>
  605. <td width="">特殊处理</td>
  606. <td width='60'>执行护士</td>
  607. </tr>
  608. <tr v-for="monitor in monitors" :key="monitor.id">
  609. <td style="height:40px;">
  610. &nbsp;
  611. {{ getTime(monitor.operate_time, "{h}:{i}") }}
  612. </td>
  613. <td>
  614. &nbsp;{{ monitor.systolic_blood_pressure ? monitor.systolic_blood_pressure : "" }}/
  615. {{ monitor.diastolic_blood_pressure ? monitor.diastolic_blood_pressure : "" }}
  616. </td>
  617. <td>
  618. &nbsp;{{ monitor.pulse_frequency ? monitor.pulse_frequency : "" }}
  619. </td>
  620. <td>
  621. &nbsp;{{ monitor.temperature ? monitor.temperature : "" }}
  622. </td>
  623. <td>
  624. &nbsp;{{ monitor.breathing_rate ? monitor.breathing_rate : "" }}
  625. </td>
  626. <td>
  627. &nbsp;{{ monitor.blood_flow_volume ? monitor.blood_flow_volume : "" }}
  628. </td>
  629. <td>
  630. &nbsp;{{ monitor.arterial_pressure ? monitor.arterial_pressure : "" }}
  631. </td>
  632. <td>
  633. &nbsp;{{ monitor.venous_pressure ? monitor.venous_pressure : "" }}
  634. </td>
  635. <td>
  636. &nbsp;{{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : "" }}
  637. </td>
  638. <td>
  639. &nbsp;{{ monitor.ultrafiltration_volume ? monitor.ultrafiltration_volume : "" }}
  640. </td>
  641. <td>
  642. &nbsp;{{ monitor.sodium_concentration ? monitor.sodium_concentration : "" }}
  643. </td>
  644. <td>
  645. &nbsp;{{ monitor.conductivity ? monitor.conductivity : "" }}
  646. </td>
  647. <td>
  648. &nbsp;{{ monitor.dialysate_temperature ? monitor.dialysate_temperature : "" }}
  649. </td>
  650. <td>
  651. &nbsp;{{ monitor.ktv ? monitor.ktv : "" }}
  652. </td>
  653. <td>
  654. &nbsp;{{ monitor.blood_sugar ? monitor.blood_sugar : "" }}
  655. </td>
  656. <td>
  657. &nbsp;{{ monitor.symptom }} &nbsp;{{ monitor.dispose }} &nbsp;{{ monitor.result }}
  658. </td>
  659. <td>
  660. <span>
  661. <span v-if="setAdminUserES(monitor.monitoring_nurse) == ''">{{ getAdminUser(monitor.monitoring_nurse) }}</span>
  662. <img class="es-img" style="height:38px" :src="setAdminUserES(monitor.monitoring_nurse)" alt srcset v-else />
  663. </span>
  664. </td>
  665. </tr>
  666. </tbody>
  667. </table>
  668. <table class="print-table" border="1">
  669. <tbody>
  670. <tr>
  671. <td class="title-box" width="30px">透析后评估</td>
  672. <td>
  673. <table class="table-box">
  674. <tbody>
  675. <tr>
  676. <td width="90">实际治疗时间</td>
  677. <td width="40">
  678. <div class="under-line">
  679. &nbsp;{{ afterdialysis.actual_treatment_hour ? afterdialysis.actual_treatment_hour : "0" }}
  680. </div>
  681. </td>
  682. <td width="10">h</td>
  683. <td width="40">
  684. <div class="under-line">
  685. &nbsp;{{ afterdialysis.actual_treatment_minute ? afterdialysis.actual_treatment_minute : "0" }}
  686. </div>
  687. </td>
  688. <td width="35">min</td>
  689. <td width='10'></td>
  690. <td width="75">实际超滤量</td>
  691. <td width="70">
  692. <div class="under-line">
  693. &nbsp;{{ afterdialysis.actual_ultrafiltration ? afterdialysis.actual_ultrafiltration : "" }}
  694. </div>
  695. </td>
  696. <td width="20">ml</td>
  697. <td width="20"></td>
  698. <td width="50">血流量</td>
  699. <td width='140'>
  700. <div>
  701. <label-box :isChecked="getBloodFlow(afterdialysis.blood_flow) == '好'" showValue="好"></label-box>
  702. <label-box :isChecked="getBloodFlow(afterdialysis.blood_flow) == '一般'" showValue="一般"></label-box>
  703. <label-box :isChecked="getBloodFlow(afterdialysis.blood_flow) == '差'" showValue="差"></label-box>
  704. </div>
  705. </td>
  706. <!-- <td width="50">水肿</td>
  707. <td width='120'>
  708. <div>
  709. <label-box :isChecked="afterdialysis.puncture_point_oozing_blood == 1 ? true : false" showValue="+"></label-box>
  710. <label-box :isChecked="afterdialysis.puncture_point_oozing_blood == 2 ? true : false" showValue="++"></label-box>
  711. <label-box :isChecked="afterdialysis.puncture_point_oozing_blood == 2 ? true : false" showValue="+++"></label-box>
  712. </div>
  713. </td> -->
  714. <td></td>
  715. </tr>
  716. </tbody>
  717. </table>
  718. <table class="table-box">
  719. <tbody>
  720. <tr>
  721. <td width="40">渗血:</td>
  722. <td width="80">
  723. <label-box :isChecked="afterdialysis.puncture_point_oozing_blood == 2 ? true : false" showValue="无"></label-box>
  724. <label-box :isChecked="afterdialysis.puncture_point_oozing_blood == 1 ? true : false" showValue="有"></label-box>
  725. </td>
  726. <!-- <td width='50'>
  727. <div class="under-line">
  728. &nbsp;
  729. </div>
  730. </td>
  731. <td width="10">ml</td>
  732. <td width="10"></td>
  733. <td width="30">部位</td>
  734. <td width='100'>
  735. <div class="under-line">
  736. &nbsp;
  737. </div>
  738. </td> -->
  739. <td width="40">血肿:</td>
  740. <td width="80">
  741. <label-box :isChecked="afterdialysis.puncture_point_haematoma == 2 ? true : false" showValue="无"></label-box>
  742. <label-box :isChecked="afterdialysis.puncture_point_haematoma == 1 ? true : false" showValue="有"></label-box>
  743. </td>
  744. <td width="10"></td>
  745. <td width="50">补液量</td>
  746. <td width='50'>
  747. <div class="under-line">
  748. &nbsp;{{ afterdialysis.rehydration_volume ? afterdialysis.rehydration_volume : '' }}
  749. </div>
  750. </td>
  751. <td width="20">ml</td>
  752. <td></td>
  753. </tr>
  754. </tbody>
  755. </table>
  756. <table class="table-box">
  757. <tbody>
  758. <tr>
  759. <td width="70">内瘘震颤:</td>
  760. <td width="170">
  761. <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('存在') > -1 ? true : false" showValue="存在"></label-box>
  762. &nbsp;
  763. <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('减弱') > -1 ? true : false" showValue="减弱"></label-box>
  764. &nbsp;
  765. <label-box :isChecked="afterdialysis.internal_fistula&&afterdialysis.internal_fistula.indexOf('消失') > -1 ? true : false" showValue="消失"></label-box>
  766. </td>
  767. <td width='10'></td>
  768. <td width="40">导管:</td>
  769. <td width="220">
  770. <label-box :isChecked="afterdialysis.catheter&&afterdialysis.catheter.indexOf('通畅') > -1 ? true : false" showValue="通畅"></label-box>
  771. &nbsp;
  772. <label-box :isChecked="afterdialysis.catheter&&afterdialysis.catheter.indexOf('动静脉对调') > -1 ? true : false" showValue="动静脉对调"></label-box>
  773. &nbsp;
  774. <label-box :isChecked="afterdialysis.catheter&&afterdialysis.catheter.indexOf('堵塞') > -1 ? true : false" showValue="堵塞"></label-box>
  775. </td>
  776. <td width='10'></td>
  777. <td width="40">置管:</td>
  778. <td width="160">
  779. <label-box :isChecked="afterdialysis.catheter&&afterdialysis.catheter.indexOf('置管-干结') > -1 ? true : false" showValue="干结"></label-box>
  780. &nbsp;
  781. <label-box :isChecked="afterdialysis.catheter&&afterdialysis.catheter.indexOf('置管-更换敷贴') > -1 ? true : false" showValue="更换敷贴"></label-box>
  782. </td>
  783. <td></td>
  784. </tr>
  785. </tbody>
  786. </table>
  787. <table class="table-box">
  788. <tbody>
  789. <tr>
  790. <td width="70">封管液量:</td>
  791. <td width="20">A</td>
  792. <td width="50">
  793. <div class="under-line">&nbsp;{{ afterdialysis.cvc_a ? afterdialysis.cvc_a : '' }}</div>
  794. </td>
  795. <td width="20">ml</td>
  796. <td width="20">V</td>
  797. <td width="50">
  798. <div class="under-line">&nbsp;{{ afterdialysis.cvc_v ? afterdialysis.cvc_v : '' }}</div>
  799. </td>
  800. <td width="20">ml</td>
  801. <td width="50">封管液:</td>
  802. <td width="140">
  803. <label-box :isChecked="afterdialysis.sealing_fluid_dispose.indexOf('常规(肝素/NS)')>-1?true:false" showValue="常规(肝素/NS)"></label-box>&nbsp;
  804. </td>
  805. <td width="50">
  806. <label-box :isChecked="afterdialysis.sealing_fluid_dispose.indexOf('1:1')>-1?true:false" showValue="1:1"></label-box>&nbsp;
  807. </td>
  808. <td width="50">
  809. <label-box :isChecked="afterdialysis.sealing_fluid_dispose.indexOf('1:3')>-1?true:false" showValue="1:3"></label-box>&nbsp;
  810. </td>
  811. <td width="190">
  812. <label-box :isChecked="afterdialysis.sealing_fluid_dispose.indexOf('特殊(尿激酶/肝素/NS)')>-1?true:false" showValue="特殊(尿激酶/肝素/NS)"></label-box>&nbsp;
  813. </td>
  814. <td>
  815. <div class="under-line">&nbsp;{{ afterdialysis.sealing_fluid_special ? afterdialysis.sealing_fluid_special : '' }}</div>
  816. </td>
  817. </tr>
  818. </tbody>
  819. </table>
  820. <table class="table-box">
  821. <tbody>
  822. <tr>
  823. <td width="55">并发症:</td>
  824. <td width="450">
  825. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('无') > -1 ? true : false" showValue="无"></label-box>
  826. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('头晕') > -1 ? true : false" showValue="头晕"></label-box>
  827. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('头痛') > -1 ? true : false" showValue="头痛"></label-box>
  828. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('呕吐') > -1 ? true : false" showValue="呕吐"></label-box>
  829. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('抽搐') > -1 ? true : false" showValue="抽搐"></label-box>
  830. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('低血压') > -1 ? true : false" showValue="低血压"></label-box>
  831. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('心律失常') > -1 ? true : false" showValue="心律失常"></label-box>
  832. <label-box :isChecked="afterdialysis.complication&&afterdialysis.complication.indexOf('出血') > -1 ? true : false" showValue="出血"></label-box>
  833. </td>
  834. <td width="40">其他:</td>
  835. <td width="">
  836. <div class="under-line">
  837. &nbsp;{{ afterdialysis.complication ? getComplication(afterdialysis.complication) : '' }}
  838. </div>
  839. </td>
  840. <td></td>
  841. </tr>
  842. </tbody>
  843. </table>
  844. <table class="table-box">
  845. <tbody>
  846. <tr>
  847. <td width="80">透析器堵塞:</td>
  848. <td width="200">
  849. <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-0度') > -1 ? true : false : false" showValue="无"></label-box>&nbsp;
  850. <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅰ度') > -1 ? true : false : false" showValue="+"></label-box>&nbsp;
  851. <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅱ度') > -1 ? true : false : false" showValue="+ +"></label-box>&nbsp;
  852. <label-box :isChecked="afterdialysis.cruor ? afterdialysis.cruor.indexOf('透析器-Ⅲ度') > -1 ? true : false : false" showValue="+ + +"></label-box>&nbsp;
  853. </td>
  854. <td width="70">静脉管道:</td>
  855. <td width="200">
  856. <label-box :isChecked="afterdialysis.intravenous_tube == 1 ? true : false" showValue="无"></label-box>&nbsp;
  857. <label-box :isChecked="afterdialysis.intravenous_tube == 2 ? true : false" showValue="+"></label-box>&nbsp;
  858. <label-box :isChecked="afterdialysis.intravenous_tube == 3 ? true : false" showValue="+ +"></label-box>&nbsp;
  859. <label-box :isChecked="afterdialysis.intravenous_tube == 4 ? true : false" showValue="+ + +"></label-box>&nbsp;
  860. </td>
  861. <td width="70">动脉管道:</td>
  862. <td width="200">
  863. <label-box :isChecked="afterdialysis.arterial_tube == 1 ? true : false" showValue="无"></label-box>&nbsp;
  864. <label-box :isChecked="afterdialysis.arterial_tube == 2 ? true : false" showValue="+"></label-box>&nbsp;
  865. <label-box :isChecked="afterdialysis.arterial_tube == 3 ? true : false" showValue="+ +"></label-box>&nbsp;
  866. <label-box :isChecked="afterdialysis.arterial_tube == 4 ? true : false" showValue="+ + +"></label-box>&nbsp;
  867. </td>
  868. <td></td>
  869. </tr>
  870. </tbody>
  871. </table>
  872. <table class="table-box">
  873. <tbody>
  874. <tr>
  875. <!-- <td width="70">其他记录:</td> -->
  876. <td width="70">透析小结:</td>
  877. <td width='120'>
  878. <label-box :isChecked="summary.dialysis_summary.indexOf('透析过程顺利') > -1" showValue="透析过程顺利"></label-box>
  879. </td>
  880. <td width='60'>
  881. <label-box :isChecked="summary.dialysis_summary != '' && summary.dialysis_summary.indexOf('透析过程顺利') == -1" showValue="其他"></label-box>
  882. </td>
  883. <td width="">
  884. <div style="width: 95%;line-height: 25px;text-align: left;margin-left: 2px;text-underline-position: under; text-decoration: underline;">
  885. &nbsp;<span v-if="summary.dialysis_summary.indexOf('透析过程顺利') == -1">{{ summary.dialysis_summary }}</span>
  886. </div>
  887. </td>
  888. </tr>
  889. </tbody>
  890. </table>
  891. <table class="table-box" style="border-top:1px solid #000;margin-top:80px;">
  892. <tbody>
  893. <tr>
  894. <td width="90" style="height:40px;">当班责任护士:</td>
  895. <td width="100">
  896. <div>
  897. <span v-if="setAdminUserES(dialysisOrder==null?0:dialysisOrder.start_nurse) == ''">{{getAdminUser(dialysisOrder==null?0:dialysisOrder.start_nurse)}}</span>
  898. <img class="es-img" style="height:38px" :src="setAdminUserES(dialysisOrder==null?0:dialysisOrder.start_nurse)" alt="" srcset="" v-else>
  899. </div>
  900. </td>
  901. <td width="150"></td>
  902. <td width="70">下机护士:</td>
  903. <td width="100">
  904. <div>
  905. <span v-if="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.finish_nurse) == ''">
  906. {{ getAdminUser(dialysisOrder == null ? 0 : dialysisOrder.finish_nurse) }}</span>
  907. <img class="es-img" style="height:38px" :src="setAdminUserES(dialysisOrder == null ? 0 : dialysisOrder.finish_nurse)" alt="" srcset="" v-else />
  908. </div>
  909. </td>
  910. <td></td>
  911. </tr>
  912. </tbody>
  913. </table>
  914. </td>
  915. </tr>
  916. </tbody>
  917. </table>
  918. </div>
  919. <div id="dialysis-print-box-1-2" class="dialysis-print-order">
  920. <table class="print-table" border="1">
  921. <tr>
  922. <td width='80' style="height:40px;line-height:40px">时间</td>
  923. <td>透析用药医嘱<br /> <span style="font-size:12px;">每行医嘱限医生签名后方有效</span></td>
  924. <td width='80'>医师签名</td>
  925. <td width='80'>执行时间</td>
  926. <td width='80'>护士签名</td>
  927. </tr>
  928. <tr v-for="(advice, advice_index) in tableAdvice" :key="advice_index" >
  929. <td style="height:40px;line-height:40px">{{ getTime(advice.start_time, "{h}:{i}") }}</td>
  930. <td class="parent" style="text-align:left;padding-left:10px;">
  931. <span v-if="advice.parent_id > 0">---></span>
  932. <span>{{ advice.advice_name }}</span>
  933. <span v-if="advice && advice.advice_desc">({{ advice.advice_desc }}{{ advice.drug_spec_unit }})</span>
  934. <span v-if="advice.prescribing_number"> &nbsp;&nbsp; {{ advice.prescribing_number }}{{ advice.prescribing_number_unit }}</span>
  935. <span v-if="advice.single_dose != 0">{{ advice.single_dose }}{{ advice.single_dose_unit }}</span>
  936. <span v-if="advice.parent_id == 0">{{ advice.delivery_way }}</span>
  937. <span v-if="advice.parent_id == 0">{{ advice.execution_frequency }}</span>
  938. <span v-if="advice.parent_id == 0 && advice.remark.length > 0">({{ advice.remark }})</span>
  939. </td>
  940. <td>
  941. <span v-if="setAdminUserES(advice.advice_doctor) == ''">
  942. {{ getAdminUser(advice.advice_doctor) }}
  943. </span>
  944. <span v-else style="display:flex;align-items:center;justify-content:space-around;height:36px;">
  945. <img style="height:38px;" :src="setAdminUserES(advice.advice_doctor)" alt srcset />
  946. </span>
  947. </td>
  948. <td>{{ getTime(advice.execution_time, "{y}-{m}-{d} {h}:{i}") }}</td>
  949. <td>
  950. <span v-if="setAdminUserES(advice.execution_staff) == ''">
  951. {{ getAdminUser(advice.execution_staff) }}
  952. </span>
  953. <span v-else style="display:flex;align-items:center;justify-content:space-around;height:36px;">
  954. <img style="height:38px;" :src="setAdminUserES(advice.execution_staff)" alt srcset />
  955. </span>
  956. </td>
  957. </tr>
  958. <tr v-for="(advice, advice_index) in projects" :key="advice_index + 'no'">
  959. <td style="height:40px;line-height:40px">{{ getTime(advice.start_time, "{h}:{i}") }}</td>
  960. <td class="parent" style="text-align:left;padding-left:10px;">
  961. <span v-if="advice.type == 2">{{ advice.project.project_name }} &nbsp;&nbsp;{{advice.count}}{{advice.unit}}</span>
  962. <span v-if="advice.type == 3">{{ advice.good_info.good_name }} &nbsp;&nbsp;{{advice.count}}{{advice.good_info.packing_unit}}</span>
  963. </td>
  964. <td>
  965. <span v-if="setAdminUserES(advice.doctor) == ''">
  966. {{ getAdminUser(advice.doctor) }}
  967. </span>
  968. <span v-else style="display:flex;align-items:center;justify-content:space-around;height:36px;">
  969. <img style="height:38px;" :src="setAdminUserES(advice.doctor)" alt srcset />
  970. </span>
  971. </td>
  972. <td>{{ getTime(advice.execution_time, "{y}-{m}-{d} {h}:{i}") }}</td>
  973. <td>
  974. <span v-if="setAdminUserES(advice.execution_staff) == ''">
  975. {{ getAdminUser(advice.execution_staff) }}
  976. </span>
  977. <span v-else style="display:flex;align-items:center;justify-content:space-around;height:36px;">
  978. <img style="height:38px;" :src="setAdminUserES(advice.execution_staff)" alt srcset />
  979. </span>
  980. </td>
  981. </tr>
  982. </table>
  983. </div>
  984. </div>
  985. </template>
  986. <script>
  987. import { getDialysisRecord } from '@/api/dialysis'
  988. import { getDataConfig } from '@/utils/data'
  989. import { jsGetAge, uParseTime } from '@/utils/tools'
  990. import LabelBox from '../printItem/LabelBox'
  991. import BreadCrumb from '@/xt_pages/components/bread-crumb'
  992. // import DialysisPrintOrderOne from './template/dialysisPrintOrderOne'
  993. // import DialysisPrintOrderTwo from './template/dialysisPrintOrderTwo'
  994. import print from 'print-js'
  995. export default {
  996. name: 'dialysisPrintOrderOne',
  997. components: {
  998. // DialysisPrintOrderOne,
  999. // DialysisPrintOrderTwo,
  1000. LabelBox,
  1001. BreadCrumb
  1002. },
  1003. data() {
  1004. return {
  1005. way_arr: [],
  1006. consciousness_arr: [],
  1007. appetite_arr: [],
  1008. posture_arr: [],
  1009. sick_condition_arr: [],
  1010. precaution_arr: [],
  1011. intake_arr: [],
  1012. nutrition_arr: [],
  1013. crumbs: [
  1014. { path: false, name: '透析管理' },
  1015. { path: false, name: '打印单' }
  1016. ],
  1017. operators: [],
  1018. adminUser: [],
  1019. check: {},
  1020. dialysisOrder: {
  1021. DeviceNumber: []
  1022. },
  1023. operatorMaps: {},
  1024. complications: [
  1025. '低血压',
  1026. '高血压',
  1027. '心律失常',
  1028. '头晕',
  1029. '头痛',
  1030. '呕吐',
  1031. '抽搐',
  1032. '出血',
  1033. '心衰',
  1034. '腹痛',
  1035. '无'
  1036. ],
  1037. jilurow: 0,
  1038. advice_jilurow: 0,
  1039. loading: false,
  1040. orgname: '',
  1041. patientInfo_gender_1: false,
  1042. patientInfo_gender_2: false,
  1043. patientInfo_source_2: false,
  1044. patientInfo_source_1: false,
  1045. modeOptions: {},
  1046. replacementWays: [],
  1047. perfusionApparatus: [],
  1048. anticoagulantsConfit: {},
  1049. bloodAccessParOpera: {},
  1050. dialysateFormulationOptions: {},
  1051. queryParams: {
  1052. xtdate: '',
  1053. xtno: ''
  1054. },
  1055. patientInfo: {
  1056. birth: '',
  1057. age: '',
  1058. DialysisSchedule: {
  1059. device_number: { number: '' },
  1060. device_zone: { name: '' }
  1061. },
  1062. gender: 0
  1063. },
  1064. predialysis: {
  1065. score: '',
  1066. internal_fistula: '',
  1067. internal_fistula_skin: '',
  1068. catheter: '',
  1069. blood_access_part_opera_name: ''
  1070. },
  1071. afterdialysis: {
  1072. complications_index: ''
  1073. },
  1074. prescription: {
  1075. dialysate_formulation_name: '',
  1076. device: {}
  1077. },
  1078. advices: [],
  1079. users: [],
  1080. monitors: [],
  1081. summary: {},
  1082. receiverTreatmentAccess: {},
  1083. org_template_info: {},
  1084. isShowZero: false,
  1085. doctor_advices: [],
  1086. advice_groups: [],
  1087. AlPanel: {
  1088. id: 0,
  1089. name: '',
  1090. type: 1,
  1091. shouji: 2,
  1092. weichi: 2,
  1093. zongliang: 2,
  1094. gaimingcheng: -1,
  1095. gaijiliang: -1,
  1096. shouji_unit: 'mg',
  1097. weichi_unit: 'mg/h',
  1098. zongliang_unit: 'mg',
  1099. gaimingcheng_unit: '',
  1100. gaijiliang_unit: ''
  1101. },
  1102. org_id:0,
  1103. tableAdvice:[],
  1104. projects:[]
  1105. }
  1106. },
  1107. methods: {
  1108. getBloodFlow(id){
  1109. let BloodFlowOptions = getDataConfig('hemodialysis', 'blood_flow')
  1110. if (id in BloodFlowOptions) {
  1111. return BloodFlowOptions[id].name
  1112. }
  1113. },
  1114. getComplication(complication){
  1115. if(complication.indexOf(',') == -1){
  1116. let str = complication
  1117. if(['无','头晕','头痛','呕吐','抽搐','低血压','心律失常','出血'].indexOf(str) == -1){
  1118. return str
  1119. }
  1120. }else if(complication.indexOf(',') > -1){
  1121. let str = complication
  1122. if(['无','头晕','头痛','呕吐','抽搐','低血压','心律失常','出血'].indexOf(str) == -1){
  1123. let newStr = ''
  1124. str.split(',').map(item => {
  1125. if(['无','头晕','头痛','呕吐','抽搐','低血压','心律失常','出血'].indexOf(item) == -1){
  1126. newStr += item + ','
  1127. }
  1128. })
  1129. return newStr.substring(0, newStr.length - 1)
  1130. }
  1131. }
  1132. },
  1133. getAdminUser(id) {
  1134. if (id == 0) {
  1135. return ''
  1136. }
  1137. if (id == undefined) {
  1138. return ''
  1139. }
  1140. for (let i = 0; i < this.adminUser.length; i++) {
  1141. if (this.adminUser[i].id == id) {
  1142. return this.adminUser[i].name
  1143. }
  1144. }
  1145. },
  1146. getTime(value, temp) {
  1147. if (value == 0) {
  1148. return ''
  1149. }
  1150. if (value != undefined) {
  1151. return uParseTime(value, temp)
  1152. }
  1153. return ''
  1154. },
  1155. printThisPage() {
  1156. var ptime = Math.round(new Date().getTime() / 1000)
  1157. this.print_time = uParseTime(ptime, '{y}-{m}-{d} {h}:{i}')
  1158. const style =
  1159. '@media print {.dialysis-print-order{width:960px;margin:0 auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:14px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;} .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;} .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}'
  1160. if (this.org_template_info.template_id == 1) {
  1161. printJS({
  1162. printable: 'dialysis-print-box',
  1163. type: 'html',
  1164. style: style,
  1165. scanStyles: false
  1166. })
  1167. } else if (
  1168. this.org_template_info.template_id == 2 ||
  1169. this.org_template_info.template_id == 0
  1170. ) {
  1171. printJS({
  1172. printable: 'dialysis-print-box-1',
  1173. type: 'html',
  1174. style: style,
  1175. scanStyles: false
  1176. })
  1177. }
  1178. },
  1179. getNumber() {
  1180. if (this.dialysisOrder != null) {
  1181. return (
  1182. this.patientInfo.DialysisSchedule.device_zone.name +
  1183. this.dialysisOrder.DeviceNumber.number
  1184. )
  1185. } else {
  1186. return (
  1187. this.patientInfo.DialysisSchedule.device_zone.name +
  1188. this.patientInfo.DialysisSchedule.device_number.number
  1189. )
  1190. }
  1191. },
  1192. getXuserName(id) {
  1193. if (id <= 0) {
  1194. return ''
  1195. }
  1196. var name = ''
  1197. if (this.users == null || typeof this.users.length === 'undefined') {
  1198. return name
  1199. }
  1200. var leng = this.users.length
  1201. if (leng == 0) {
  1202. return name
  1203. }
  1204. for (let index = 0; index < leng; index++) {
  1205. if (this.users[index].id == id) {
  1206. name = this.users[index].name
  1207. break
  1208. }
  1209. }
  1210. return name
  1211. },
  1212. setAdminUserES(id) {
  1213. if (id == 0) {
  1214. return ''
  1215. }
  1216. if (id in this.operatorMaps) {
  1217. return this.operatorMaps[id].url
  1218. } else {
  1219. return ''
  1220. }
  1221. },
  1222. modeName(mode_id) {
  1223. return typeof this.modeOptions[mode_id] !== 'undefined' &&
  1224. typeof this.modeOptions[mode_id].name !== 'undefined'
  1225. ? this.modeOptions[mode_id].name
  1226. : ''
  1227. },
  1228. getDialysisRecord() {
  1229. this.loading = true
  1230. getDialysisRecord(this.queryParams).then(response => {
  1231. if (response.data.state == 1) {
  1232. this.adminUser = response.data.data.users
  1233. this.users = response.data.data.users
  1234. this.patientInfo = response.data.data.patientInfo
  1235. this.patientInfo.birth = uParseTime(
  1236. this.patientInfo.birthday,
  1237. '{y}-{m}-{d}'
  1238. )
  1239. // this.patientInfo.age = jsGetAge(this.patientInfo.birth, '-')
  1240. if (response.data.data.patientInfo.first_dialysis_date != 0) {
  1241. this.patientInfo.first_dialysis_date = uParseTime(
  1242. response.data.data.patientInfo.first_dialysis_date,
  1243. '{y}-{m}-{d}'
  1244. )
  1245. } else {
  1246. this.patientInfo.first_dialysis_date = ''
  1247. }
  1248. this.check = response.data.data.check
  1249. this.predialysis = response.data.data.PredialysisEvaluation
  1250. console.log('透前评估', this.predialysis)
  1251. this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(
  1252. this.predialysis.blood_access_part_opera_id
  1253. )
  1254. this.afterdialysis = response.data.data.AssessmentAfterDislysis
  1255. console.log('透后评估数据', this.afterdialysis)
  1256. this.operators = response.data.data.operators
  1257. this.dialysisOrder =
  1258. response.data.data.dialysisOrder === null
  1259. ? null
  1260. : response.data.data.dialysisOrder
  1261. if (this.operators.length > 0) {
  1262. var operatorsLen = this.operators.length
  1263. for (var index = 0; index < operatorsLen; index++) {
  1264. this.$set(
  1265. this.operatorMaps,
  1266. this.operators[index].creator,
  1267. this.operators[index]
  1268. )
  1269. }
  1270. }
  1271. this.afterdialysis.txqnx = -1
  1272. if (this.afterdialysis.cruor.indexOf('0度') > -1) {
  1273. this.afterdialysis.txqnx = 0
  1274. }
  1275. if (this.afterdialysis.cruor.indexOf('Ⅰ度') > -1) {
  1276. this.afterdialysis.txqnx = 1
  1277. }
  1278. if (this.afterdialysis.cruor.indexOf('Ⅱ度') > -1) {
  1279. this.afterdialysis.txqnx = 2
  1280. }
  1281. if (this.afterdialysis.cruor.indexOf('Ⅲ度') > -1) {
  1282. this.afterdialysis.txqnx = 3
  1283. }
  1284. this.afterdialysis.complications = this.afterdialysis.complication.split(
  1285. ','
  1286. )
  1287. this.afterdialysis.complications_other = []
  1288. this.afterdialysis.complications_index = []
  1289. var acllen = this.afterdialysis.complications.length
  1290. for (let index = 0; index < acllen; index++) {
  1291. if (
  1292. this.complications.indexOf(
  1293. this.afterdialysis.complications[index]
  1294. ) >= 0
  1295. ) {
  1296. this.afterdialysis.complications_index.push(
  1297. this.afterdialysis.complications[index]
  1298. )
  1299. } else if (
  1300. this.complications.indexOf(
  1301. this.afterdialysis.complications[index]
  1302. ) < 0 &&
  1303. this.afterdialysis.complications_other.indexOf(
  1304. this.afterdialysis.complications[index]
  1305. ) < 0
  1306. ) {
  1307. this.afterdialysis.complications_other.push(
  1308. this.afterdialysis.complications[index]
  1309. )
  1310. }
  1311. }
  1312. this.afterdialysis.complications_other = this.afterdialysis.complications_other.join(
  1313. ','
  1314. )
  1315. this.prescription = response.data.data.dialysisPrescription
  1316. console.log('透析处方', this.prescription)
  1317. this.receiverTreatmentAccess =
  1318. response.data.data.receiverTreatmentAccess
  1319. this.prescription.mode = this.modeName(this.prescription.mode_id)
  1320. var rwLen = this.replacementWays.length
  1321. this.prescription.replacement = ''
  1322. for (let index = 0; index < rwLen; index++) {
  1323. if (
  1324. this.replacementWays[index].id ==
  1325. this.prescription.replacement_way
  1326. ) {
  1327. this.prescription.replacement = this.replacementWays[index].name
  1328. break
  1329. }
  1330. }
  1331. this.prescription.dialysate_formulation_name = this.dialysateFormulationName(
  1332. this.prescription.dialysate_formulation
  1333. )
  1334. var paLen = this.perfusionApparatus.length
  1335. this.prescription.perfusion_apparatus_name = ''
  1336. for (let index = 0; index < paLen; index++) {
  1337. if (
  1338. this.perfusionApparatus[index].id ==
  1339. this.prescription.perfusion_apparatus
  1340. ) {
  1341. this.prescription.perfusion_apparatus_name = this.perfusionApparatus[
  1342. index
  1343. ].name
  1344. break
  1345. }
  1346. }
  1347. var acLen = this.anticoagulantsConfit.length
  1348. var thisALID = this.prescription.anticoagulant
  1349. this.prescription.anticoagulant_name = ''
  1350. if (
  1351. typeof this.anticoagulantsConfit[thisALID] !== 'undefined' &&
  1352. this.anticoagulantsConfit[thisALID] != null
  1353. ) {
  1354. this.prescription.anticoagulant_name = this.anticoagulantsConfit[
  1355. thisALID
  1356. ].name
  1357. this.AlPanel = this.anticoagulantsConfit[thisALID]
  1358. }
  1359. // this.advices = response.data.data.advices
  1360. this.advices = response.data.data.advices.concat(response.data.data.doctorAdvice)
  1361. this.monitors = response.data.data.monitors
  1362. this.summary = response.data.data.summary
  1363. this.org_template_info = response.data.data.org_template_info
  1364. // 配置超滤量和置换量是否要显示0还是空
  1365. if (this.org_template_info.org_id == 9535) {
  1366. this.isShowZero = true
  1367. }
  1368. if (this.monitors.length < 10) {
  1369. var nl = 10 - this.monitors.length
  1370. for (let index = 0; index < nl; index++) {
  1371. this.monitors.push([])
  1372. }
  1373. }
  1374. this.jilurow = this.monitors.length + 1
  1375. this.projects = response.data.data.projects
  1376. var doctorAdevieInfo = response.data.data.advices
  1377. var tableAdvice = doctorAdevieInfo
  1378. if (tableAdvice.length + this.projects.length < 30) {
  1379. var nl = 30 - (tableAdvice.length + this.projects.length)
  1380. for (let index = 0; index < nl; index++) {
  1381. this.projects.push([])
  1382. }
  1383. }
  1384. this.tableAdvice = tableAdvice
  1385. this.advice_jilurow = this.advices.length + 1
  1386. var childMap = {}
  1387. for (const index in this.advices) {
  1388. if (this.advices[index].parent_id == 0) {
  1389. continue
  1390. }
  1391. if (!(this.advices[index].parent_id in childMap)) {
  1392. childMap[this.advices[index].parent_id] = []
  1393. }
  1394. childMap[this.advices[index].parent_id].push(this.advices[index])
  1395. }
  1396. var advices = []
  1397. for (const index in this.advices) {
  1398. if (this.advices[index].parent_id > 0) {
  1399. continue
  1400. }
  1401. var item = this.advices[index]
  1402. if (item.id in childMap) {
  1403. item.children = childMap[item.id]
  1404. } else {
  1405. item.children = []
  1406. }
  1407. advices.push(item)
  1408. }
  1409. var leftAdvice = []
  1410. var rightAdvice = []
  1411. var adlen = advices.length
  1412. var halfLen = adlen % 2 == 0 ? adlen / 2 : (adlen + 1) / 2
  1413. for (var i = 0; i < halfLen; i++) {
  1414. leftAdvice.push(advices[i])
  1415. rightAdvice.push(advices[i + halfLen])
  1416. }
  1417. if (halfLen < 5) {
  1418. var nl = 5 - leftAdvice.length
  1419. for (let index = 0; index < nl; index++) {
  1420. leftAdvice.push([])
  1421. }
  1422. var nl = 5 - rightAdvice.length
  1423. for (let index = 0; index < nl; index++) {
  1424. rightAdvice.push([])
  1425. }
  1426. }
  1427. this.advices = []
  1428. for (var i = 0; i < halfLen; i++) {
  1429. var item = []
  1430. item.push(leftAdvice[i])
  1431. item.push(rightAdvice[i])
  1432. this.advices.push(item)
  1433. }
  1434. this.loading = false
  1435. this.doctor_advices =
  1436. response.data.data.advices == null
  1437. ? []
  1438. : response.data.data.advices
  1439. for (let index = 0; index < this.doctor_advices.length; index++) {
  1440. this.doctor_advices[index]['isShow'] = 2
  1441. }
  1442. if (this.doctor_advices.length > 0) {
  1443. var group = this.newAdviceGroupObject()
  1444. var initGroupBlock = function(group, advice) {
  1445. group.group_no = advice.groupno
  1446. }
  1447. for (
  1448. let index = this.doctor_advices.length - 1;
  1449. index >= 0;
  1450. index--
  1451. ) {
  1452. var new_advice_index = 0
  1453. if (
  1454. 'children' in this.doctor_advices[index] &&
  1455. this.doctor_advices[index].children.length > 0
  1456. ) {
  1457. new_advice_index =
  1458. index + this.doctor_advices[index].children.length + 1
  1459. var doctor_advice = {
  1460. delivery_way: this.doctor_advices[index].delivery_way,
  1461. execution_frequency: this.doctor_advices[index]
  1462. .execution_frequency,
  1463. groupno: this.doctor_advices[index].groupno,
  1464. id: this.doctor_advices[index].id,
  1465. parent_id: this.doctor_advices[index].parent_id,
  1466. children: this.doctor_advices[index].children,
  1467. remark: this.doctor_advices[index].remark
  1468. }
  1469. doctor_advice['isShow'] = 1
  1470. this.doctor_advices.splice(new_advice_index, 0, doctor_advice)
  1471. // this.doctor_advices.push(doctor_advice)
  1472. }
  1473. }
  1474. for (let index = 0; index < this.doctor_advices.length; index++) {
  1475. const advice = this.doctor_advices[index]
  1476. if (advice.groupno == 0) {
  1477. // 老版本的医嘱没有分组的概念,所以这一个 if 是解决这个问题的,将每个无分组的医嘱各自归为一组
  1478. if (advice.parent_id > 0) {
  1479. if (this.advice_groups.length > 0) {
  1480. var parent_group = this.advice_groups[
  1481. this.advice_groups.length - 1
  1482. ]
  1483. if (parent_group.advices.length > 0) {
  1484. if (parent_group.advices[0].id == advice.parent_id) {
  1485. parent_group.advices.push(advice)
  1486. }
  1487. }
  1488. }
  1489. continue
  1490. } else {
  1491. if (group.group_no > 0) {
  1492. this.advice_groups.push(group)
  1493. group = this.newAdviceGroupObject()
  1494. }
  1495. initGroupBlock(group, advice)
  1496. group.advices.push(advice)
  1497. this.advice_groups.push(group)
  1498. group = this.newAdviceGroupObject()
  1499. continue
  1500. }
  1501. }
  1502. if (group.group_no > 0 && group.group_no != advice.groupno) {
  1503. this.advice_groups.push(group)
  1504. group = this.newAdviceGroupObject()
  1505. }
  1506. if (group.group_no == 0) {
  1507. initGroupBlock(group, advice)
  1508. }
  1509. if (group.group_no == advice.groupno) {
  1510. group.advices.push(advice)
  1511. }
  1512. }
  1513. if (group.group_no > 0) {
  1514. // 上述的算法会导致最后一组没有加到advice_groups,这里要手动加上
  1515. this.advice_groups.push(group)
  1516. }
  1517. }
  1518. console.log(this.advice_groups)
  1519. } else {
  1520. this.loading = false
  1521. this.$message.error('请求数据失败')
  1522. return false
  1523. }
  1524. })
  1525. },
  1526. bloodAccessParOperaName(id) {
  1527. if (id in this.bloodAccessParOpera) {
  1528. return this.bloodAccessParOpera[id].name
  1529. }
  1530. return ''
  1531. },
  1532. dialysateFormulationName(id) {
  1533. if (id in this.dialysateFormulationOptions) {
  1534. return this.dialysateFormulationOptions[id].name
  1535. }
  1536. return ''
  1537. },
  1538. getAge: function(val) {
  1539. if (val.birthday != 0) {
  1540. return jsGetAge(val.birth, '-')
  1541. }
  1542. return ''
  1543. },
  1544. newAdviceGroupObject: function() {
  1545. return Object.assign(
  1546. {},
  1547. {
  1548. group_no: 0,
  1549. // advice_doctor: 0,
  1550. // start_time: 0,
  1551. advices: []
  1552. // exec_staff: 0,
  1553. // exec_time: 0,
  1554. // checker: 0,
  1555. }
  1556. )
  1557. }
  1558. },
  1559. watch: {
  1560. 'patientInfo.gender': function() {
  1561. if (this.patientInfo.gender == 1) {
  1562. this.patientInfo_gender_1 = true
  1563. this.patientInfo_gender_2 = false
  1564. } else if (this.patientInfo.gender == 2) {
  1565. this.patientInfo_gender_2 = true
  1566. this.patientInfo_gender_1 = false
  1567. } else {
  1568. this.patientInfo_gender_2 = false
  1569. this.patientInfo_gender_1 = false
  1570. }
  1571. },
  1572. 'patientInfo.source': function() {
  1573. if (this.patientInfo.source == 1) {
  1574. this.patientInfo_source_1 = true
  1575. this.patientInfo_source_2 = false
  1576. } else if (this.patientInfo.source == 2) {
  1577. this.patientInfo_source_2 = true
  1578. this.patientInfo_source_1 = false
  1579. } else {
  1580. this.patientInfo_source_2 = false
  1581. this.patientInfo_source_1 = false
  1582. }
  1583. }
  1584. },
  1585. created() {
  1586. var xtuser = this.$store.getters.xt_user
  1587. this.org_id = xtuser.org.id
  1588. this.orgname = xtuser.org.org_name
  1589. // this.orgname = "遂溪方济医院";
  1590. this.modeOptions = this.$store.getters.treatment_mode
  1591. this.replacementWays = this.$store.getters.replacement_ways
  1592. this.perfusionApparatus = this.$store.getters.perfusion_apparatus
  1593. this.anticoagulantsConfit = this.$store.getters.anticoagulants_confit
  1594. this.way_arr = getDataConfig('hemodialysis', 'way')
  1595. this.consciousness_arr = getDataConfig('hemodialysis', 'consciousness')
  1596. this.appetite_arr = getDataConfig('hemodialysis', 'appetite')
  1597. this.posture_arr = getDataConfig('hemodialysis', 'posture')
  1598. this.sick_condition_arr = getDataConfig('hemodialysis', 'sick_condition')
  1599. this.precaution_arr = getDataConfig('hemodialysis', 'precaution')
  1600. this.intake_arr = getDataConfig('hemodialysis', 'intake')
  1601. this.nutrition_arr = getDataConfig('hemodialysis', 'nutrition')
  1602. // this.bloodAccessParOpera = getDataConfig('hemodialysis', 'vascular_access_desc')
  1603. var bloodAccessParOpera = getDataConfig(
  1604. 'hemodialysis',
  1605. 'vascular_access_desc'
  1606. )
  1607. for (var key in bloodAccessParOpera) {
  1608. this.bloodAccessParOpera[bloodAccessParOpera[key].id] =
  1609. bloodAccessParOpera[key]
  1610. }
  1611. var dialysateFormulationOptions = getDataConfig(
  1612. 'hemodialysis',
  1613. 'dialysate_formulation'
  1614. )
  1615. for (var key in dialysateFormulationOptions) {
  1616. this.dialysateFormulationOptions[dialysateFormulationOptions[key].id] =
  1617. dialysateFormulationOptions[key]
  1618. }
  1619. const xtdate = this.$route.query && this.$route.query.xtdate
  1620. const xtno = this.$route.query && this.$route.query.xtno
  1621. if (
  1622. typeof xtdate === 'string' &&
  1623. xtdate.length > 0 &&
  1624. typeof xtno === 'string' &&
  1625. xtno.length > 0
  1626. ) {
  1627. this.queryParams.xtdate = xtdate
  1628. this.queryParams.xtno = xtno
  1629. this.getDialysisRecord()
  1630. } else {
  1631. this.$message.error('参数不齐')
  1632. return false
  1633. }
  1634. }
  1635. }
  1636. </script>
  1637. <style>
  1638. .dialysis-print-order {
  1639. width: 960px;
  1640. margin: 0 auto;
  1641. }
  1642. .dialysis-print-order .order-yy-name {
  1643. margin: auto;
  1644. text-align: center;
  1645. font-size: 20px;
  1646. letter-spacing: 5px;
  1647. }
  1648. .dialysis-print-order .order-title {
  1649. margin: auto;
  1650. font-weight: 600;
  1651. text-align: center;
  1652. font-size: 22px;
  1653. padding: 10px 20px 20px 20px;
  1654. }
  1655. .dialysis-print-order .table-box {
  1656. width: 100%;
  1657. line-height: 23px;
  1658. font-size: 14px;
  1659. }
  1660. .dialysis-print-order .print-table {
  1661. width: 100%;
  1662. text-align: center;
  1663. border-collapse: collapse;
  1664. line-height: 40px;
  1665. font-size: 14px;
  1666. }
  1667. .dialysis-print-order .print-table-no {
  1668. width: 100%;
  1669. text-align: center;
  1670. border-collapse: collapse;
  1671. font-size: 14px;
  1672. }
  1673. .dialysis-print-order .under-line {
  1674. border-bottom: 1px solid #999;
  1675. width: 95%;
  1676. text-align: center;
  1677. margin-left: 2px;
  1678. }
  1679. .dialysis-print-order .title-box {
  1680. text-align: center;
  1681. font-size: 16px;
  1682. }
  1683. .dialysis-print-order .radio-lebel-box {
  1684. font-weight: 400;
  1685. cursor: pointer;
  1686. }
  1687. .dialysis-print-order .radio-no {
  1688. opacity: 0;
  1689. outline: none;
  1690. position: absolute;
  1691. margin: 0;
  1692. width: 0;
  1693. height: 0;
  1694. z-index: -1;
  1695. }
  1696. .dialysis-print-order .radio-inner {
  1697. white-space: nowrap;
  1698. cursor: pointer;
  1699. outline: none;
  1700. display: inline-block;
  1701. line-height: 1;
  1702. position: relative;
  1703. vertical-align: middle;
  1704. }
  1705. .dialysis-print-order .radio-fang {
  1706. display: inline-block;
  1707. position: relative;
  1708. border: 1px solid #000;
  1709. box-sizing: border-box;
  1710. width: 14px;
  1711. height: 14px;
  1712. background-color: #fff;
  1713. z-index: 1;
  1714. transition: border-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46),
  1715. background-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46);
  1716. }
  1717. .dialysis-print-order .is-checked-radio::after {
  1718. content: "√";
  1719. font-size: 15px;
  1720. }
  1721. .dialysis-print-order .print-table-no tr td {
  1722. padding: 8px 5px;
  1723. line-height: 25px;
  1724. }
  1725. .dialysis-print-order .print-table tr td {
  1726. padding: 1px 1px;
  1727. /*line-height: 25px;*/
  1728. }
  1729. .es-img {
  1730. height: 25px;
  1731. }
  1732. .advice-name {
  1733. text-align: left;
  1734. }
  1735. .advice-children {
  1736. display: flex;
  1737. }
  1738. .title-box-pro {
  1739. border: 0 #fff;
  1740. line-height: 25px;
  1741. height: 25px;
  1742. text-align: left;
  1743. padding-left: 10px !important;
  1744. }
  1745. .title-box-pro-tr {
  1746. border: 0 #fff;
  1747. }
  1748. .text-align-left {
  1749. text-align: left !important;
  1750. padding-left: 10px !important;
  1751. font-size: 14px !important;
  1752. line-height: 25px;
  1753. }
  1754. .print-table-tr-new td {
  1755. line-height: 20px !important;
  1756. }
  1757. .border-top-solid {
  1758. border: solid 1px #000;
  1759. }
  1760. .print-template-two tr {
  1761. line-height: 30px;
  1762. }
  1763. </style>