DialysisPrintOrderEight.vue 79KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310
  1. <template>
  2. <div id="dialysis-print-box">
  3. <div class="dialysis-print-order">
  4. <div class="order-yy-name"></div>
  5. <div class="order-title">
  6. {{ orgname }}&nbsp;&nbsp;&nbsp;血液净化治疗记录单
  7. </div>
  8. <table class="print-table" border="1" style="margin-top: 10px;">
  9. <tr>
  10. <td style="text-align:left;">
  11. <span style="display:inline-block;margin-left:15px;">{{
  12. getDatge(queryParams.xtdate)
  13. }}</span>
  14. </td>
  15. <td style="text-align:center;">
  16. 姓名:
  17. <span style="display:inline-block;margin-left:10px;">{{
  18. patientInfo.name
  19. }}</span>
  20. </td>
  21. <td style="text-align:center;">
  22. 性别:
  23. <span style="display:inline-block;margin-left:10px;">{{
  24. patientInfo.gender
  25. }}</span>
  26. </td>
  27. <td style="text-align:center;">
  28. 年龄:
  29. <span style="display:inline-block;margin-left:10px;">{{
  30. getAge(patientInfo)
  31. }}</span>
  32. </td>
  33. <td style="text-align:center;">
  34. <label-box
  35. showValue="门诊"
  36. :isChecked="receiverTreatmentAccess.condition == 2 ? true : false"
  37. ></label-box>
  38. <label-box
  39. showValue="住院"
  40. :isChecked="receiverTreatmentAccess.condition == 1 ? true : false"
  41. ></label-box>
  42. </td>
  43. <td style="text-align:center;">
  44. <template v-if="receiverTreatmentAccess.condition == 1">
  45. 住院号:
  46. <span style="display:inline-block;margin-left:10px;">{{
  47. receiverTreatmentAccess.admission_number
  48. ? receiverTreatmentAccess.admission_number
  49. : "/"
  50. }}</span>
  51. </template>
  52. <template v-else>
  53. 门诊号:
  54. <span style="display:inline-block;margin-left:10px;">{{
  55. patientInfo.admission_number
  56. ? patientInfo.admission_number
  57. : "/"
  58. }}</span>
  59. </template>
  60. </td>
  61. <td style="text-align:center;">
  62. 机器号:
  63. <span style="display:inline-block;margin-left:10px;">
  64. {{
  65. dialysisOrder &&
  66. dialysisOrder.DeviceNumber &&
  67. dialysisOrder.DeviceNumber.number > 0
  68. ? dialysisOrder.DeviceNumber.number
  69. : patientInfo.DialysisSchedule.device_number.number
  70. }}
  71. </span>
  72. </td>
  73. </tr>
  74. <tr>
  75. <td style="text-align:left;" colspan="2">
  76. <span style="display:inline-block;margin-left:15px;"
  77. >治疗方式:</span
  78. >
  79. <label-box
  80. :isChecked="prescription.mode_id == 1 ? true : false"
  81. showValue="HD"
  82. ></label-box
  83. >&nbsp;
  84. <label-box
  85. :isChecked="prescription.mode_id == 2 ? true : false"
  86. showValue="HDF"
  87. ></label-box
  88. >&nbsp;
  89. <label-box
  90. :isChecked="prescription.mode_id == 4 ? true : false"
  91. showValue="HP"
  92. ></label-box
  93. >&nbsp;
  94. <label-box
  95. :isChecked="prescription.mode_id == 7 ? true : false"
  96. showValue="IUF"
  97. ></label-box
  98. >&nbsp;
  99. <label-box
  100. :isChecked="prescription.mode_id == 5 ? true : false"
  101. showValue="HF"
  102. ></label-box
  103. >&nbsp;
  104. </td>
  105. <td style="text-align:left;" colspan="5">
  106. <span style="display:inline-block;margin-left:15px;"
  107. >诊断: {{ patientInfo.diagnose }}</span
  108. >
  109. </td>
  110. </tr>
  111. <tr>
  112. <td style="text-align:left;" colspan="1">
  113. <span style="display:inline-block;margin-left:15px;">
  114. 干体重:
  115. {{ predialysis.dry_weight ? predialysis.dry_weight : "/" }}kg
  116. </span>
  117. </td>
  118. <td style="text-align:left;" colspan="1">
  119. <span style="display:inline-block;margin-left:15px;"
  120. >电导率:{{
  121. prescription.conductivity ? prescription.conductivity : "/"
  122. }}&nbsp;(mS/cm)</span
  123. >
  124. </td>
  125. <td style="text-align:left;" colspan="2">
  126. <span style="display:inline-block;margin-left:15px;">
  127. 钙:
  128. {{
  129. prescription.calcium ? prescription.calcium : "/"
  130. }}&nbsp;mmol/L
  131. </span>
  132. </td>
  133. <td style="text-align:left;" colspan="4">
  134. <span style="display:inline-block;margin-left:15px;"
  135. >透析液温度:{{
  136. prescription.dialysate_temperature
  137. ? prescription.dialysate_temperature
  138. : "/"
  139. }}&nbsp;℃</span
  140. >
  141. </td>
  142. </tr>
  143. <tr>
  144. <td style="text-align:left;" colspan="1">
  145. <span style="display:inline-block;margin-left:15px;"
  146. >透前体重:{{
  147. predialysis.weight_before ? predialysis.weight_before : "/"
  148. }}kg</span
  149. >
  150. </td>
  151. <td style="text-align:left;" colspan="1">
  152. <span style="display:inline-block;margin-left:15px;"
  153. >设定脱水量:{{
  154. prescription.target_ultrafiltration
  155. ? prescription.target_ultrafiltration
  156. : "/"
  157. }}L</span
  158. >
  159. </td>
  160. <td style="text-align:left;" colspan="2">
  161. <span style="display:inline-block;margin-left:15px;">
  162. <label-box
  163. :isChecked="anticoagulant == 1 ? true : false"
  164. showValue="无肝素"
  165. ></label-box>
  166. </span>
  167. </td>
  168. <td style="text-align:left;" colspan="1">
  169. <span style="display:inline-block;margin-left:15px;">
  170. 肝素首剂:
  171. {{
  172. prescription.anticoagulant_shouji
  173. ? prescription.anticoagulant_shouji
  174. : "/"
  175. }}
  176. </span>
  177. <span v-if="prescription.anticoagulant == 4">mg</span>
  178. <span v-if="prescription.anticoagulant == 3">iu</span>
  179. <span v-if="prescription.anticoagulant == 2">iu</span>
  180. <span v-if="prescription.anticoagulant == 1">mg</span>
  181. </td>
  182. <td style="text-align:left;" colspan="1">
  183. <span style="display:inline-block;margin-left:15px;">
  184. 维持:
  185. {{
  186. prescription.anticoagulant_weichi
  187. ? prescription.anticoagulant_weichi
  188. : "/"
  189. }}
  190. </span>
  191. <span v-if="prescription.anticoagulant == 5">ml/h</span>
  192. <span v-if="prescription.anticoagulant == 4">mg/h</span>
  193. <span v-if="prescription.anticoagulant == 3">iu/h</span>
  194. <span v-if="prescription.anticoagulant == 2">iu/h</span>
  195. <span v-if="prescription.anticoagulant == 1">mg/h</span>
  196. </td>
  197. <td style="text-align:left;" colspan="2">
  198. <span style="display:inline-block;margin-left:15px;">
  199. 总量:
  200. {{
  201. prescription.anticoagulant_zongliang
  202. ? prescription.anticoagulant_zongliang
  203. : "/"
  204. }}
  205. </span>
  206. <span v-if="prescription.anticoagulant == 4">mg</span>
  207. <span v-if="prescription.anticoagulant == 3">iu</span>
  208. <span v-if="prescription.anticoagulant == 2">iu</span>
  209. <span v-if="prescription.anticoagulant == 1">mg</span>
  210. </td>
  211. </tr>
  212. <tr>
  213. <td style="text-align:left;" colspan="1">
  214. <span style="display:inline-block;margin-left:15px;">
  215. 透后体重:
  216. {{
  217. afterdialysis.weight_after
  218. ? parseFloat(
  219. afterdialysis.weight_after -
  220. afterdialysis.additional_weight
  221. ).toFixed(1)
  222. : "/"
  223. }}kg
  224. </span>
  225. </td>
  226. <td style="text-align:left;" colspan="1">
  227. <span style="display:inline-block;margin-left:15px;"
  228. >实际脱水量:{{
  229. afterdialysis.actual_ultrafiltration
  230. ? afterdialysis.actual_ultrafiltration
  231. : "/"
  232. }}L</span
  233. >
  234. </td>
  235. <td style="text-align:left;" colspan="2">
  236. <span style="display:inline-block;margin-left:15px;"
  237. >透析时间:
  238. {{
  239. afterdialysis.actual_treatment_hour
  240. ? afterdialysis.actual_treatment_hour
  241. : "0"
  242. }}小时{{
  243. afterdialysis.actual_treatment_minute
  244. ? afterdialysis.actual_treatment_minute
  245. : "0"
  246. }}分钟</span
  247. >
  248. </td>
  249. <td style="text-align:left;" colspan="1">
  250. <span style="display:inline-block;margin-left:15px;"
  251. >透析器型号:{{
  252. prescription.dialyzer_perfusion_apparatus
  253. ? prescription.dialyzer_perfusion_apparatus
  254. : "/"
  255. }}</span
  256. >
  257. </td>
  258. <td style="text-align:left;" colspan="2">
  259. <span style="display:inline-block;margin-left:15px;">
  260. 置换方式:
  261. <label-box
  262. :isChecked="
  263. prescription.displace_liqui_part == 1 ? true : false
  264. "
  265. showValue="前"
  266. ></label-box
  267. >&nbsp;
  268. <label-box
  269. :isChecked="
  270. prescription.displace_liqui_part == 2 ? true : false
  271. "
  272. showValue="后"
  273. ></label-box>
  274. &nbsp; (总量:{{
  275. prescription.displace_liqui_value
  276. ? prescription.displace_liqui_value
  277. : "/"
  278. }}L)
  279. </span>
  280. </td>
  281. </tr>
  282. <tr>
  283. <td style="text-align:left;" colspan="1">
  284. <span style="display:inline-block;margin-left:15px;">
  285. <span v-if="orderForm.url === ''"
  286. >责任护士:{{ orderForm.start_nurse }}</span
  287. >
  288. <span v-if="orderForm.url !== ''">
  289. 责任护士:
  290. <img :src="orderForm.url" style="height:30px;" />
  291. </span>
  292. </span>
  293. </td>
  294. <td style="text-align:left;" colspan="1">
  295. <span style="display:inline-block;margin-left:15px;">
  296. <span v-if="orderForm.url === ''"
  297. >上机护士:{{ orderForm.start_nurse }}</span
  298. >
  299. <span v-if="orderForm.url !== ''">
  300. 上机护士:
  301. <img :src="orderForm.url" style="height:30px;" />
  302. </span>
  303. </span>
  304. </td>
  305. <td style="text-align:left;" colspan="3">
  306. <span style="display:inline-block;margin-left:15px;">
  307. <span v-if="orderForm.url === ''"
  308. >抗凝剂执行护士:{{ orderForm.start_nurse }}</span
  309. >
  310. <span v-if="orderForm.url !== ''">
  311. 抗凝剂执行护士:
  312. <img :src="orderForm.url" style="height:30px;" />
  313. </span>
  314. </span>
  315. </td>
  316. <td style="text-align:left;" colspan="3">
  317. <span style="display:inline-block;margin-left:15px;">
  318. <span v-if="doctorForm.url === ''"
  319. >医生签名:{{ doctorForm.doctor }}</span
  320. >
  321. <span v-if="doctorForm.url !== ''">
  322. 医生签名:
  323. <img style="height:30px" :src="doctorForm.url" />
  324. </span>
  325. </span>
  326. </td>
  327. </tr>
  328. <tr>
  329. <td style="text-align:left;" colspan="4">
  330. <span style="display:inline-block;margin-left:15px;">
  331. 透前评估: 入科方式:
  332. <label-box
  333. :isChecked="receiverTreatmentAccess.way == 1 ? true : false"
  334. showValue="步行"
  335. ></label-box
  336. >&nbsp;
  337. <label-box
  338. :isChecked="receiverTreatmentAccess.way == 2 ? true : false"
  339. showValue="扶行"
  340. ></label-box
  341. >&nbsp;
  342. <label-box
  343. :isChecked="receiverTreatmentAccess.way == 3 ? true : false"
  344. showValue="轮椅"
  345. ></label-box
  346. >&nbsp;
  347. <label-box
  348. :isChecked="receiverTreatmentAccess.way == 4 ? true : false"
  349. showValue="平车"
  350. ></label-box
  351. >&nbsp;
  352. </span>
  353. </td>
  354. <td style="text-align:left;" colspan="4">
  355. <span style="display:inline-block;margin-left:15px;">
  356. 意识:
  357. <label-box
  358. :isChecked="
  359. receiverTreatmentAccess.consciousness == 1 ? true : false
  360. "
  361. showValue="清醒"
  362. ></label-box
  363. >&nbsp;
  364. <label-box
  365. :isChecked="
  366. receiverTreatmentAccess.consciousness == 2 ? true : false
  367. "
  368. showValue="嗜睡"
  369. ></label-box
  370. >&nbsp;
  371. <label-box
  372. :isChecked="
  373. receiverTreatmentAccess.consciousness == 4 ? true : false
  374. "
  375. showValue="模糊"
  376. ></label-box
  377. >&nbsp;
  378. <label-box
  379. :isChecked="
  380. receiverTreatmentAccess.consciousness == 3 ? true : false
  381. "
  382. showValue="昏迷"
  383. ></label-box
  384. >&nbsp;
  385. </span>
  386. </td>
  387. </tr>
  388. <tr>
  389. <td colspan="2" style="text-align:left;">
  390. <span style="display:inline-block;margin-left:15px;">食欲:</span>
  391. <label-box
  392. :isChecked="receiverTreatmentAccess.appetite == 1 ? true : false"
  393. showValue="正常"
  394. ></label-box
  395. >&nbsp;
  396. <label-box
  397. :isChecked="receiverTreatmentAccess.appetite == 2 ? true : false"
  398. showValue="减退"
  399. ></label-box
  400. >&nbsp;
  401. <label-box
  402. :isChecked="receiverTreatmentAccess.appetite == 3 ? true : false"
  403. showValue="恶心"
  404. ></label-box
  405. >&nbsp;
  406. <label-box
  407. :isChecked="receiverTreatmentAccess.appetite == 4 ? true : false"
  408. showValue="呕吐"
  409. ></label-box
  410. >&nbsp;
  411. <label-box
  412. :isChecked="receiverTreatmentAccess.appetite == 5 ? true : false"
  413. showValue="腹泻"
  414. ></label-box
  415. >&nbsp;
  416. </td>
  417. <td colspan="2" style="text-align:left;">
  418. <span style="display:inline-block;margin-left:15px;"
  419. >体温:{{
  420. predialysis.temperature ? predialysis.temperature : "/"
  421. }}
  422. ℃</span
  423. >
  424. </td>
  425. <td colspan="3" style="text-align:left;">
  426. <span style="display:inline-block;margin-left:15px;">
  427. 体位:
  428. <label-box
  429. v-for="(item, index) in posture_arr"
  430. :key="index"
  431. :isChecked="
  432. receiverTreatmentAccess.posture == item.id ? true : false
  433. "
  434. :showValue="item.name"
  435. ></label-box>
  436. <label-box
  437. :isChecked="receiverTreatmentAccess.posture == 1 ? true : false"
  438. showValue="自动体位"
  439. ></label-box
  440. >&nbsp;
  441. <label-box
  442. :isChecked="receiverTreatmentAccess.posture == 2 ? true : false"
  443. showValue="平卧位"
  444. ></label-box
  445. >&nbsp;
  446. <label-box
  447. :isChecked="receiverTreatmentAccess.posture == 3 ? true : false"
  448. showValue="半卧位"
  449. ></label-box
  450. >&nbsp;
  451. <label-box
  452. :isChecked="receiverTreatmentAccess.posture == 4 ? true : false"
  453. showValue="端坐位"
  454. ></label-box
  455. >&nbsp;
  456. <label-box
  457. :isChecked="receiverTreatmentAccess.posture == 5 ? true : false"
  458. showValue="躁动不安"
  459. ></label-box
  460. >&nbsp;
  461. </span>
  462. </td>
  463. </tr>
  464. <tr>
  465. <td colspan="8" style="text-align:left;">
  466. <span style="display:inline-block;margin-left:15px;">
  467. 血管通路:内瘘波动及震颤: (&nbsp;
  468. <label-box
  469. v-for="(item, index) in arr"
  470. :key="index"
  471. :isChecked="
  472. predialysis.blood_access_part_opera_id == item.id
  473. ? true
  474. : false
  475. "
  476. :showValue="item.name"
  477. ></label-box
  478. >)
  479. <label-box
  480. v-for="(item, index) in arrtwo"
  481. :key="index"
  482. :isChecked="
  483. predialysis.blood_access_part_opera_id == item.id
  484. ? true
  485. : false
  486. "
  487. :showValue="item.name"
  488. ></label-box>
  489. </span>
  490. </td>
  491. </tr>
  492. <tr>
  493. <td colspan="8" style="text-align:left;">
  494. <span style="display:inline-block;margin-left:15px;"
  495. >中心静脉导管:</span
  496. >
  497. (部位:{{ getPartName(predialysis.blood_access_part_id) }})
  498. <label-box
  499. showValue="长期"
  500. :isChecked="
  501. predialysis.venous_catheterization == 1 ? true : false
  502. "
  503. ></label-box>
  504. <label-box
  505. showValue="临时"
  506. :isChecked="
  507. predialysis.venous_catheterization == 2 ? true : false
  508. "
  509. ></label-box>
  510. &nbsp;&nbsp; 感染:
  511. <label-box
  512. showValue="有"
  513. :isChecked="
  514. predialysis.catheter.indexOf('感染-有') > -1 ? true : false
  515. "
  516. ></label-box>
  517. <label-box
  518. showValue="无"
  519. :isChecked="
  520. predialysis.catheter.indexOf('感染-无') > -1 ? true : false
  521. "
  522. ></label-box>
  523. &nbsp;&nbsp;流畅度:
  524. <label-box
  525. showValue="好"
  526. :isChecked="
  527. predialysis.catheter.indexOf('流畅度-好') > -1 ? true : false
  528. "
  529. ></label-box>
  530. <label-box
  531. showValue="差"
  532. :isChecked="
  533. predialysis.catheter.indexOf('流畅度-差') > -1 ? true : false
  534. "
  535. ></label-box>
  536. &nbsp;&nbsp;溶栓:
  537. <label-box
  538. showValue="有"
  539. :isChecked="
  540. predialysis.catheter.indexOf('溶栓-有') > -1 ? true : false
  541. "
  542. ></label-box>
  543. <label-box
  544. showValue="无"
  545. :isChecked="
  546. predialysis.catheter.indexOf('溶栓-无') > -1 ? true : false
  547. "
  548. ></label-box>
  549. &nbsp;&nbsp;外露:{{ predialysis.exposed }}cm
  550. </td>
  551. </tr>
  552. <tr>
  553. <td style="text-align:left;" colspan="8">
  554. <span style="display:inline-block;margin-left:15px;">
  555. 血管通路皮肤情况:
  556. <label-box
  557. :isChecked="
  558. predialysis.internal_fistula_skin.indexOf('正常') > -1
  559. ? true
  560. : false
  561. "
  562. showValue="正常"
  563. ></label-box
  564. >&nbsp;
  565. <label-box
  566. :isChecked="
  567. predialysis.internal_fistula_skin.indexOf('淤血') > -1
  568. ? true
  569. : false
  570. "
  571. showValue="淤血"
  572. ></label-box
  573. >&nbsp;
  574. <label-box
  575. :isChecked="
  576. predialysis.internal_fistula_skin.indexOf('红') > -1
  577. ? true
  578. : false
  579. "
  580. showValue="红"
  581. ></label-box
  582. >&nbsp;
  583. <label-box
  584. :isChecked="
  585. predialysis.internal_fistula_skin.indexOf('肿') > -1
  586. ? true
  587. : false
  588. "
  589. showValue="肿"
  590. ></label-box>
  591. <!-- 其他: -->
  592. </span>
  593. </td>
  594. </tr>
  595. <tr>
  596. <td style="text-align:left;" colspan="8">
  597. <span style="display:inline-block;margin-left:15px;">皮肤:</span>
  598. <label-box
  599. showValue="完整"
  600. :isChecked="predialysis.skin == 1 ? true : false"
  601. ></label-box>
  602. <label-box
  603. showValue="干燥"
  604. :isChecked="predialysis.skin == 2 ? true : false"
  605. ></label-box>
  606. <label-box
  607. showValue="瘙痒"
  608. :isChecked="predialysis.skin == 3 ? true : false"
  609. ></label-box>
  610. <label-box
  611. showValue="菲薄"
  612. :isChecked="predialysis.skin == 4 ? true : false"
  613. ></label-box
  614. >/
  615. <label-box
  616. showValue="水肿"
  617. :isChecked="predialysis.skin == 5 ? true : false"
  618. ></label-box>
  619. <label-box
  620. showValue="皮疹"
  621. :isChecked="predialysis.skin == 6 ? true : false"
  622. ></label-box>
  623. <label-box
  624. showValue="出血点"
  625. :isChecked="predialysis.skin == 7 ? true : false"
  626. ></label-box>
  627. <label-box
  628. showValue="压疮"
  629. :isChecked="predialysis.skin == 8 ? true : false"
  630. ></label-box>
  631. <label-box
  632. showValue="皮下淤血"
  633. :isChecked="predialysis.skin == 9 ? true : false"
  634. ></label-box>
  635. </td>
  636. </tr>
  637. <tr>
  638. <td style="text-align:left;" colspan="8">
  639. <span style="display:inline-block;margin-left:15px;"
  640. >出血影响因素:</span
  641. >
  642. <label-box
  643. showValue="无"
  644. :isChecked="predialysis.is_hemorrhage == 2 ? true : false"
  645. ></label-box>
  646. <label-box
  647. showValue="异常"
  648. :isChecked="predialysis.is_hemorrhage == 1 ? true : false"
  649. ></label-box
  650. >&nbsp;
  651. <label-box
  652. showValue="穿刺点渗血"
  653. :isChecked="
  654. predialysis.is_hemorrhage == 1 &&
  655. predialysis.hemorrhage.indexOf('穿刺点渗血') > -1
  656. ? true
  657. : false
  658. "
  659. ></label-box>
  660. <label-box
  661. showValue="牙龈出血"
  662. :isChecked="
  663. predialysis.is_hemorrhage == 1 &&
  664. predialysis.hemorrhage.indexOf('牙龈出血') > -1
  665. ? true
  666. : false
  667. "
  668. ></label-box>
  669. <label-box
  670. showValue="消化道出血"
  671. :isChecked="
  672. predialysis.is_hemorrhage == 1 &&
  673. predialysis.hemorrhage.indexOf('消化道出血') > -1
  674. ? true
  675. : false
  676. "
  677. ></label-box>
  678. <label-box
  679. showValue="女性经期"
  680. :isChecked="
  681. predialysis.is_hemorrhage == 1 &&
  682. predialysis.hemorrhage.indexOf('女性经期') > -1
  683. ? true
  684. : false
  685. "
  686. ></label-box
  687. >其他:
  688. <span>{{ predialysis.hemorrhage_other }}</span>
  689. </td>
  690. </tr>
  691. <tr>
  692. <td style="text-align:left;" colspan="8">
  693. <span style="display:inline-block;margin-left:15px;"
  694. >使用特殊药物:</span
  695. >
  696. <label-box
  697. :isChecked="prescription.special_medicine == 1 ? true : false"
  698. showValue="无"
  699. ></label-box>
  700. <label-box
  701. :isChecked="prescription.special_medicine == 2 ? true : false"
  702. showValue="有"
  703. ></label-box
  704. >:
  705. <label-box
  706. :isChecked="prescription.special_medicine == 3 ? true : false"
  707. showValue="降压药"
  708. ></label-box>
  709. <label-box
  710. :isChecked="prescription.special_medicine == 4 ? true : false"
  711. showValue="抗凝药"
  712. ></label-box>
  713. 其他:{{ prescription.special_medicine_other }}
  714. </td>
  715. </tr>
  716. <tr>
  717. <td style="text-align:left;" colspan="8">
  718. <span style="display:inline-block;margin-left:15px;"
  719. >跌倒风险:</span
  720. >
  721. <label-box
  722. showValue="无"
  723. :isChecked="
  724. receiverTreatmentAccess.danger_level == 1 ? true : false
  725. "
  726. ></label-box>
  727. <label-box
  728. showValue="低风险"
  729. :isChecked="
  730. receiverTreatmentAccess.danger_level == 2 ? true : false
  731. "
  732. ></label-box>
  733. <label-box
  734. showValue="中度风险"
  735. :isChecked="
  736. receiverTreatmentAccess.danger_level == 3 ? true : false
  737. "
  738. ></label-box>
  739. <label-box
  740. showValue="高风险"
  741. :isChecked="
  742. receiverTreatmentAccess.danger_level == 4 ? true : false
  743. "
  744. >
  745. </label-box
  746. ><span>&nbsp;&nbsp;</span>跌倒风险预防措施:
  747. <label-box
  748. showValue="镇定剂"
  749. :isChecked="
  750. receiverTreatmentAccess.precaution.indexOf('镇定剂') > -1
  751. ? true
  752. : false
  753. "
  754. ></label-box>
  755. <label-box
  756. showValue="约束带"
  757. :isChecked="
  758. receiverTreatmentAccess.precaution.indexOf('约束带') > -1
  759. ? true
  760. : false
  761. "
  762. ></label-box>
  763. <label-box
  764. showValue="床栏"
  765. :isChecked="
  766. receiverTreatmentAccess.precaution.indexOf('床栏') > -1
  767. ? true
  768. : false
  769. "
  770. ></label-box>
  771. <label-box
  772. showValue="加强宣教"
  773. :isChecked="
  774. receiverTreatmentAccess.precaution.indexOf('加强宣教') > -1
  775. ? true
  776. : false
  777. "
  778. ></label-box>
  779. </td>
  780. </tr>
  781. </table>
  782. <table class="print-table" border="1" style="line-height:30px;">
  783. <tr style="line-height:20px;">
  784. <td style="min-width:60px">时间</td>
  785. <td style="min-width:60px">
  786. 血压
  787. <br />(mmHg)
  788. </td>
  789. <td style="min-width:60px">
  790. 心率
  791. <br />次/分
  792. </td>
  793. <td style="min-width:60px">
  794. 血流量
  795. <br />ml/min
  796. </td>
  797. <td style="min-width:60px">
  798. 静脉压
  799. <br />(mmHg)
  800. </td>
  801. <td style="min-width:60px">
  802. 跨膜压
  803. <br />(mmHg)
  804. </td>
  805. <td style="min-width:60px">
  806. 超滤率
  807. <br />L/h
  808. </td>
  809. <td style="min-width:60px">
  810. 超滤量
  811. <br />L
  812. </td>
  813. <td style="min-width:60px">
  814. NA⁺
  815. <br />
  816. </td>
  817. <td style="min-width:60px">病情变化及处理</td>
  818. <td style="min-width:110px">护士签名核对者</td>
  819. </tr>
  820. <tr v-for="(monitor, monindex) in monitors" :key="monindex">
  821. <td>{{ getTime(monitor.operate_time, "{h}:{i}") }}</td>
  822. <td>
  823. {{
  824. monitor.systolic_blood_pressure
  825. ? monitor.systolic_blood_pressure + "/"
  826. : ""
  827. }}{{
  828. monitor.diastolic_blood_pressure
  829. ? monitor.diastolic_blood_pressure
  830. : ""
  831. }}
  832. </td>
  833. <td>{{ monitor.pulse_frequency }}</td>
  834. <td>{{ monitor.blood_flow_volume }}</td>
  835. <td>{{ monitor.venous_pressure }}</td>
  836. <td>{{ monitor.transmembrane_pressure }}</td>
  837. <td>{{ monitor.ultrafiltration_rate }}</td>
  838. <td>{{ monitor.ultrafiltration_volume }}</td>
  839. <td>{{ monitor.sodium_concentration }}</td>
  840. <td>
  841. <span style="line-height:18px;display:block;"
  842. >{{ monitor.symptom }}&nbsp;{{ monitor.dispose }}&nbsp;{{
  843. monitor.result
  844. }}</span
  845. >
  846. </td>
  847. <td>
  848. <span v-if="setAdminUserES(monitor.monitoring_nurse) == ''">{{
  849. getAdminUser(monitor.monitoring_nurse)
  850. }}</span>
  851. <img
  852. style="height:30px;"
  853. :src="setAdminUserES(monitor.monitoring_nurse)"
  854. alt
  855. srcset
  856. v-else
  857. />
  858. </td>
  859. </tr>
  860. <tr>
  861. <td style="text-align:left;" colspan="12">
  862. <span style="display:inline-block;margin-left:15px;"
  863. >透析护理记录:{{ nursing_record }}</span
  864. >
  865. </td>
  866. </tr>
  867. <tr>
  868. <td style="text-align:left;" colspan="12">
  869. <span style="display:inline-block;margin-left:15px;">
  870. 透后评估: 透析过程:
  871. <label-box
  872. showValue="完成"
  873. :isChecked="afterdialysis.dialysis_process == 1 ? true : false"
  874. ></label-box>
  875. <label-box
  876. showValue="提前"
  877. :isChecked="afterdialysis.dialysis_process == 2 ? true : false"
  878. ></label-box>
  879. &nbsp;&nbsp; 并发症:
  880. <label-box
  881. :isChecked="
  882. afterdialysis.complications_index.indexOf('低血压') > -1
  883. ? true
  884. : false
  885. "
  886. showValue="低血压"
  887. ></label-box>
  888. <label-box
  889. :isChecked="
  890. afterdialysis.complications_index.indexOf('高血压') > -1
  891. ? true
  892. : false
  893. "
  894. showValue="高血压"
  895. ></label-box>
  896. <label-box
  897. :isChecked="
  898. afterdialysis.complications_index.indexOf('心律失常') > -1
  899. ? true
  900. : false
  901. "
  902. showValue="心律失常"
  903. ></label-box>
  904. <label-box
  905. :isChecked="
  906. afterdialysis.complications_index.indexOf('头晕') > -1
  907. ? true
  908. : false
  909. "
  910. showValue="头晕"
  911. ></label-box>
  912. <label-box
  913. :isChecked="
  914. afterdialysis.complications_index.indexOf('头痛') > -1
  915. ? true
  916. : false
  917. "
  918. showValue="头痛"
  919. ></label-box>
  920. <label-box
  921. :isChecked="
  922. afterdialysis.complications_index.indexOf('呕吐') > -1
  923. ? true
  924. : false
  925. "
  926. showValue="呕吐"
  927. ></label-box>
  928. <label-box
  929. :isChecked="
  930. afterdialysis.complications_index.indexOf('抽搐') > -1
  931. ? true
  932. : false
  933. "
  934. showValue="抽搐"
  935. ></label-box>
  936. <label-box
  937. :isChecked="
  938. afterdialysis.complications_index.indexOf('出血') > -1
  939. ? true
  940. : false
  941. "
  942. showValue="出血"
  943. ></label-box>
  944. <label-box
  945. :isChecked="
  946. afterdialysis.complications_index.indexOf('心衰') > -1
  947. ? true
  948. : false
  949. "
  950. showValue="心衰"
  951. ></label-box>
  952. <label-box
  953. :isChecked="
  954. afterdialysis.complications_index.indexOf('腹痛') > -1
  955. ? true
  956. : false
  957. "
  958. showValue="腹痛"
  959. ></label-box>
  960. <label-box
  961. :isChecked="
  962. afterdialysis.complications_index.indexOf('无') > -1
  963. ? true
  964. : false
  965. "
  966. showValue="无"
  967. ></label-box>
  968. </span>
  969. </td>
  970. </tr>
  971. <tr>
  972. <td style="text-align:left;" colspan="2">
  973. <span style="display:inline-block;margin-left:15px;">
  974. 实际置换量:{{ afterdialysis.actual_displacement }} L
  975. </span>
  976. </td>
  977. <td style="text-align:left;" colspan="10">
  978. <span style="display:inline-block;margin-left:15px;">
  979. 内瘘搏动及震颤音:
  980. <label-box
  981. showValue="存在"
  982. :isChecked="
  983. afterdialysis.internal_fistula.indexOf('震颤-存在') > -1
  984. ? true
  985. : false
  986. "
  987. ></label-box>
  988. <label-box
  989. showValue="减弱"
  990. :isChecked="
  991. afterdialysis.internal_fistula.indexOf('震颤-减弱') > -1
  992. ? true
  993. : false
  994. "
  995. ></label-box>
  996. <label-box
  997. showValue="不存在"
  998. :isChecked="
  999. afterdialysis.internal_fistula.indexOf('震颤-无') > -1
  1000. ? true
  1001. : false
  1002. "
  1003. ></label-box> </span
  1004. >&nbsp;
  1005. <span>
  1006. 透析器及管路凝血情况:
  1007. <label-box
  1008. showValue="0级"
  1009. :isChecked="afterdialysis.cruor.indexOf('透析器-0度') > -1"
  1010. ></label-box>
  1011. <label-box
  1012. showValue="1级"
  1013. :isChecked="afterdialysis.cruor.indexOf('透析器-Ⅰ度') > -1"
  1014. ></label-box>
  1015. <label-box
  1016. showValue="2级"
  1017. :isChecked="afterdialysis.cruor.indexOf('透析器-Ⅱ度') > -1"
  1018. ></label-box>
  1019. <label-box
  1020. showValue="3级"
  1021. :isChecked="afterdialysis.cruor.indexOf('透析器-Ⅲ度') > -1"
  1022. ></label-box>
  1023. </span>
  1024. </td>
  1025. </tr>
  1026. <tr>
  1027. <td style="text-align:left;" colspan="10">
  1028. <span style="display:inline-block;margin-left:15px;">
  1029. 透析中进食:
  1030. <label-box
  1031. showValue="无"
  1032. :isChecked="afterdialysis.dialysis_intakes == 0 ? true : false"
  1033. ></label-box>
  1034. <label-box
  1035. showValue="有"
  1036. :isChecked="afterdialysis.dialysis_intakes > 0 ? true : false"
  1037. ></label-box> </span
  1038. >&nbsp;&nbsp;
  1039. <span>
  1040. 患者去向:
  1041. <label-box
  1042. showValue="离院"
  1043. :isChecked="afterdialysis.patient_gose == 1 ? true : false"
  1044. ></label-box>
  1045. <label-box
  1046. showValue="留观"
  1047. :isChecked="afterdialysis.patient_gose == 2 ? true : false"
  1048. ></label-box>
  1049. <label-box
  1050. showValue="住院"
  1051. :isChecked="afterdialysis.patient_gose == 3 ? true : false"
  1052. ></label-box>
  1053. </span>
  1054. </td>
  1055. <td style="text-align:left;" colspan="2">
  1056. <span>
  1057. <span v-if="finshForm.url === ''"
  1058. >下机护士:{{ finshForm.finish_nurse }}</span
  1059. >
  1060. <span v-if="finshForm.url !== ''">
  1061. 下机护士:
  1062. <img :src="finshForm.url" style="height:30px;" />
  1063. </span>
  1064. </span>
  1065. </td>
  1066. </tr>
  1067. </table>
  1068. <table class="print-table" border="1">
  1069. <tr>
  1070. <td>时间</td>
  1071. <td>医生</td>
  1072. <td>临时医嘱</td>
  1073. <td>执行者</td>
  1074. <td>执行时间</td>
  1075. <td>核对者</td>
  1076. </tr>
  1077. <tr v-for="(advice, advice_index) in tableAdvice" :key="advice_index">
  1078. <td style="height:30px;line-height:30px">
  1079. {{ getTime(advice.start_time, "{y}-{m}-{d} {h}:{i}") }}
  1080. </td>
  1081. <td>
  1082. <span v-if="setAdminUserES(advice.advice_doctor) == ''">{{
  1083. getAdminUser(advice.advice_doctor)
  1084. }}</span>
  1085. <img
  1086. style="height:30px;"
  1087. :src="setAdminUserES(advice.advice_doctor)"
  1088. alt
  1089. srcset
  1090. v-else
  1091. />
  1092. </td>
  1093. <td class="parent">
  1094. <span v-if="advice.parent_id > 0">&nbsp;&nbsp;&nbsp</span>
  1095. <span>{{ advice.advice_name }}</span>
  1096. <span v-if="advice && advice.advice_desc"
  1097. >({{ advice.advice_desc }}{{ advice.drug_spec_unit }})</span
  1098. >
  1099. <span v-if="advice.prescribing_number"
  1100. >&nbsp;&nbsp; {{ advice.prescribing_number
  1101. }}{{ advice.prescribing_number_unit }}</span
  1102. >
  1103. <span v-if="advice.single_dose != 0"
  1104. >{{ advice.single_dose }}{{ advice.single_dose_unit }}</span
  1105. >
  1106. <span v-if="advice.parent_id == 0">{{ advice.delivery_way }}</span>
  1107. <span v-if="advice.parent_id == 0">{{
  1108. advice.execution_frequency
  1109. }}</span>
  1110. <span v-if="advice.parent_id == 0 && advice.remark.length > 0"
  1111. >({{ advice.remark }})</span
  1112. >
  1113. </td>
  1114. <td>
  1115. <span v-if="setAdminUserES(advice.execution_staff) == ''">{{
  1116. getAdminUser(advice.execution_staff)
  1117. }}</span>
  1118. <img
  1119. style="height:30px;"
  1120. :src="setAdminUserES(advice.execution_staff)"
  1121. alt
  1122. srcset
  1123. v-else
  1124. />
  1125. </td>
  1126. <td>{{ getTime(advice.execution_time, "{y}-{m}-{d} {h}:{i}") }}</td>
  1127. <td>
  1128. <span v-if="setAdminUserES(advice.checker) == ''">{{
  1129. getAdminUser(advice.checker)
  1130. }}</span>
  1131. <img
  1132. style="height:20px;"
  1133. :src="setAdminUserES(advice.checker)"
  1134. alt
  1135. srcset
  1136. v-else
  1137. />
  1138. </td>
  1139. </tr>
  1140. <tr>
  1141. <td style="text-align:left;" colspan="6">
  1142. <span style="display:inline-block;margin-left:15px;"
  1143. >特殊记录:{{ special_record }}</span
  1144. >
  1145. </td>
  1146. </tr>
  1147. <tr>
  1148. <!-- <td style="text-align:left;" colspan="3">
  1149. <span style="display:inline-block;margin-left:15px;">医生签名:</span>
  1150. <span v-if="doctorForm.url === ''">{{doctorForm.doctor}}</span>
  1151. <span v-if="doctorForm.url!==''">
  1152. <img style="height:20px" :src="doctorForm.url" />
  1153. </span>
  1154. </td> -->
  1155. <td style="text-align:left;" colspan="6">
  1156. <span style="display:inline-block;margin-left:15px;"
  1157. >质控护士签名:</span
  1158. >
  1159. </td>
  1160. </tr>
  1161. </table>
  1162. <!-- <div style="margin-top:20px">
  1163. <span style="margin-left:280px;">肝素浓度:每毫升肝素生理盐水含肝素钠2.5毫克</span>
  1164. </div> -->
  1165. </div>
  1166. </div>
  1167. </template>
  1168. <script>
  1169. import { getDialysisRecord } from "@/api/dialysis";
  1170. import { getDataConfig } from "@/utils/data";
  1171. import { jsGetAge, uParseTime } from "@/utils/tools";
  1172. import LabelBox from "../printItem/LabelBox";
  1173. import CheckBox from "../batch_print/option_check_box";
  1174. import BreadCrumb from "@/xt_pages/components/bread-crumb";
  1175. // import DialysisPrintOrderOne from './template/dialysisPrintOrderOne'
  1176. // import DialysisPrintOrderTwo from './template/dialysisPrintOrderTwo'
  1177. export default {
  1178. name: "dialysisPrintOrderOne",
  1179. components: {
  1180. // DialysisPrintOrderOne,
  1181. // DialysisPrintOrderTwo,
  1182. LabelBox,
  1183. BreadCrumb,
  1184. CheckBox
  1185. },
  1186. data() {
  1187. return {
  1188. crumbs: [
  1189. { path: false, name: "透析管理" },
  1190. { path: false, name: "打印单" }
  1191. ],
  1192. operators: [],
  1193. adminUser: [],
  1194. check: {},
  1195. dialysisOrder: {
  1196. DeviceNumber: []
  1197. },
  1198. posture_arr: [],
  1199. operatorMaps: {},
  1200. complications: [
  1201. "低血压",
  1202. "高血压",
  1203. "心律失常",
  1204. "头晕",
  1205. "头痛",
  1206. "呕吐",
  1207. "抽搐",
  1208. "出血",
  1209. "心衰",
  1210. "腹痛",
  1211. "无"
  1212. ],
  1213. consciousness_arr: [],
  1214. jilurow: 0,
  1215. advice_jilurow: 0,
  1216. loading: false,
  1217. orgname: "",
  1218. patientInfo_gender_1: false,
  1219. patientInfo_gender_2: false,
  1220. patientInfo_source_2: false,
  1221. patientInfo_source_1: false,
  1222. modeOptions: {},
  1223. replacementWays: [],
  1224. perfusionApparatus: [],
  1225. anticoagulantsConfit: {},
  1226. bloodAccessParOpera: {},
  1227. dialysateFormulationOptions: {},
  1228. queryParams: {
  1229. xtdate: "",
  1230. xtno: ""
  1231. },
  1232. patientInfo: {
  1233. birth: "",
  1234. age: "",
  1235. DialysisSchedule: {
  1236. device_number: { number: "" },
  1237. device_zone: { name: "" }
  1238. },
  1239. gender: 0
  1240. },
  1241. predialysis: {
  1242. score: "",
  1243. internal_fistula: "",
  1244. internal_fistula_skin: "",
  1245. catheter: "",
  1246. blood_access_part_opera_name: ""
  1247. },
  1248. afterdialysis: {
  1249. complications_index: ""
  1250. },
  1251. prescription: {
  1252. dialysate_formulation_name: "",
  1253. device: {}
  1254. },
  1255. advices: [],
  1256. users: [],
  1257. monitors: [],
  1258. summary: {},
  1259. receiverTreatmentAccess: {},
  1260. org_template_info: {},
  1261. doctor_advices: [],
  1262. advice_groups: [],
  1263. schedule: [],
  1264. AlPanel: {
  1265. id: 0,
  1266. name: "",
  1267. type: 1,
  1268. shouji: 2,
  1269. weichi: 2,
  1270. zongliang: 2,
  1271. gaimingcheng: -1,
  1272. gaijiliang: -1,
  1273. shouji_unit: "mg",
  1274. weichi_unit: "mg/h",
  1275. zongliang_unit: "mg",
  1276. gaimingcheng_unit: "",
  1277. gaijiliang_unit: ""
  1278. },
  1279. list: 5,
  1280. replacement_total: "",
  1281. actual_treatment_hour: "",
  1282. actual_treatment_minute: "",
  1283. anticoagulant: "",
  1284. anticoagulant_shouji: "",
  1285. anticoagulant_zongliang: "",
  1286. prescription_dewatering: "",
  1287. blood_flow_volume: "",
  1288. dialysate_flow: "",
  1289. bed: "",
  1290. dialyzer_perfusion_apparatus: "",
  1291. dialysate_formulation: "",
  1292. blood_access: "",
  1293. doctor: "",
  1294. nurse: "",
  1295. doctorAdvice: [],
  1296. total: "",
  1297. weight_before: "",
  1298. dry_weight: "",
  1299. weight_after: "",
  1300. weightloss_after: "",
  1301. actual_ultrafiltration: "",
  1302. temperature: "",
  1303. systolic_blood_pressure: "",
  1304. diastolic_blood_pressure: "",
  1305. mission: "",
  1306. dialysis_summary: "",
  1307. orderForm: {
  1308. start_nurse: "",
  1309. url: ""
  1310. },
  1311. doctorForm: {
  1312. doctor: "",
  1313. url: ""
  1314. },
  1315. finshForm: {
  1316. finish_nurse: "",
  1317. url: ""
  1318. },
  1319. tableAdvice: [],
  1320. monitor: [],
  1321. displace_liqui: "",
  1322. kalium: "",
  1323. sodium: "",
  1324. calcium: "",
  1325. weight_gain: "",
  1326. afterWeightLast: "",
  1327. anticoagulant_weichi: "",
  1328. target_ultrafiltration: "",
  1329. blood_access_internal_fistula: "",
  1330. venous_catheterization: "",
  1331. blood_access_part_opera_id: "",
  1332. dryWeight_add: "",
  1333. weight: "",
  1334. vascularId: 0,
  1335. PunctureNurse: {
  1336. user_name: "",
  1337. url: ""
  1338. },
  1339. arr: [],
  1340. arrtwo: [],
  1341. bloodAccess: [],
  1342. vascularAccess: [],
  1343. nursing_record: "",
  1344. special_record: ""
  1345. };
  1346. },
  1347. methods: {
  1348. getAdminUser(id) {
  1349. if (id == 0) {
  1350. return "";
  1351. }
  1352. if (id == undefined) {
  1353. return "";
  1354. }
  1355. for (let i = 0; i < this.adminUser.length; i++) {
  1356. if (this.adminUser[i].id == id) {
  1357. return this.adminUser[i].name;
  1358. }
  1359. }
  1360. },
  1361. getDatge(value) {
  1362. var times = Date.parse(value) / 1000;
  1363. var timestr = uParseTime(times, "{y}年{m}月{d}日");
  1364. return timestr;
  1365. },
  1366. getTime(value, temp) {
  1367. if (value == 0) {
  1368. return "";
  1369. }
  1370. if (value != undefined) {
  1371. return uParseTime(value, temp);
  1372. }
  1373. return "";
  1374. },
  1375. getTimes(time) {
  1376. if (time === "") {
  1377. return "";
  1378. }
  1379. return uParseTime(time, "{y}-{m}-{d} {h}:{i}");
  1380. },
  1381. printThisPage() {
  1382. var ptime = Math.round(new Date().getTime() / 1000);
  1383. this.print_time = uParseTime(ptime, "{y}-{m}-{d} {h}:{i}");
  1384. const style =
  1385. '@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;}';
  1386. if (this.org_template_info.template_id == 1) {
  1387. printJS({
  1388. printable: "dialysis-print-box",
  1389. type: "html",
  1390. style: style,
  1391. scanStyles: false
  1392. });
  1393. } else if (
  1394. this.org_template_info.template_id == 2 ||
  1395. this.org_template_info.template_id == 0
  1396. ) {
  1397. printJS({
  1398. printable: "dialysis-print-box-1",
  1399. type: "html",
  1400. style: style,
  1401. scanStyles: false
  1402. });
  1403. }
  1404. },
  1405. getNumber() {
  1406. if (this.dialysisOrder != null) {
  1407. return (
  1408. this.patientInfo.DialysisSchedule.device_zone.name +
  1409. this.dialysisOrder.DeviceNumber.number
  1410. );
  1411. } else {
  1412. return (
  1413. this.patientInfo.DialysisSchedule.device_zone.name +
  1414. this.patientInfo.DialysisSchedule.device_number.number
  1415. );
  1416. }
  1417. },
  1418. getXuserName(id) {
  1419. if (id <= 0) {
  1420. return "";
  1421. }
  1422. var name = "";
  1423. if (this.users == null || typeof this.users.length === "undefined") {
  1424. return name;
  1425. }
  1426. var leng = this.users.length;
  1427. if (leng === 0) {
  1428. return name;
  1429. }
  1430. for (let index = 0; index < leng; index++) {
  1431. if (this.users[index].id === id) {
  1432. name = this.users[index].name;
  1433. break;
  1434. }
  1435. }
  1436. return name;
  1437. },
  1438. setAdminUserES(id) {
  1439. if (id === 0) {
  1440. return "";
  1441. }
  1442. if (id in this.operatorMaps) {
  1443. return this.operatorMaps[id].url;
  1444. } else {
  1445. return "";
  1446. }
  1447. },
  1448. modeName(mode_id) {
  1449. return typeof this.modeOptions[mode_id] !== "undefined" &&
  1450. typeof this.modeOptions[mode_id].name !== "undefined"
  1451. ? this.modeOptions[mode_id].name
  1452. : "";
  1453. },
  1454. getDialysisRecord() {
  1455. this.loading = true;
  1456. getDialysisRecord(this.queryParams).then(response => {
  1457. if (response.data.state === 1) {
  1458. this.adminUser = response.data.data.users;
  1459. this.users = response.data.data.users;
  1460. var patientInfo = response.data.data.patientInfo;
  1461. if (patientInfo.gender === 1) {
  1462. patientInfo.gender = "男";
  1463. }
  1464. if (patientInfo.gender === 2) {
  1465. patientInfo.gender = "女";
  1466. }
  1467. this.patientInfo = response.data.data.patientInfo;
  1468. // console.log("透析记录", this.patientInfo);
  1469. this.patientInfo.birth = uParseTime(
  1470. this.patientInfo.birthday,
  1471. "{y}-{m}-{d}"
  1472. );
  1473. // this.patientInfo.age = jsGetAge(this.patientInfo.birth, '-')
  1474. if (response.data.data.patientInfo.first_dialysis_date != 0) {
  1475. this.patientInfo.first_dialysis_date = uParseTime(
  1476. response.data.data.patientInfo.first_dialysis_date,
  1477. "{y}-{m}-{d}"
  1478. );
  1479. } else {
  1480. this.patientInfo.first_dialysis_date = "";
  1481. }
  1482. this.check = response.data.data.check;
  1483. var predialysis = response.data.data.PredialysisEvaluation;
  1484. console.log("透前评估", predialysis);
  1485. var predialysName = response.data.data.predialysName;
  1486. this.blood_access_part_opera_id = predialysName.name;
  1487. // console.log('血管', predialysName)
  1488. // this.weight_before = predialysis.weight_before
  1489. this.dry_weight = predialysis.dry_weight;
  1490. this.weight_gain = predialysis.weight_gain;
  1491. this.blood_access_internal_fistula =
  1492. predialysis.blood_access_internal_fistula;
  1493. this.venous_catheterization = predialysis.venous_catheterization;
  1494. // this.blood_access_part_opera_id = predialysis.blood_access_part_opera_id
  1495. // console.log('血管通路', this.blood_access_part_opera_id)
  1496. var arry = [];
  1497. arry = getDataConfig("hemodialysis", "vascular_access_desc");
  1498. // eslint-disable-next-line no-empty
  1499. var id = 0;
  1500. for (let i = 0; i < arry.length; i++) {
  1501. if (arry[i].id === predialysis.blood_access_part_opera_id) {
  1502. id = predialysis.blood_access_part_opera_id;
  1503. }
  1504. this.vascularId = id;
  1505. }
  1506. this.predialysis = predialysis;
  1507. // console.log('透前评估', this.predialysis)
  1508. this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(
  1509. this.predialysis.blood_access_part_opera_id
  1510. );
  1511. var afterdialysis = response.data.data.AssessmentAfterDislysis;
  1512. // eslint-disable-next-line no-undef
  1513. console.log("透后评估", afterdialysis);
  1514. this.temperature = afterdialysis.temperature;
  1515. this.actual_ultrafiltration = afterdialysis.actual_ultrafiltration;
  1516. this.actual_treatment_hour = afterdialysis.actual_treatment_hour;
  1517. this.actual_treatment_minute = afterdialysis.actual_treatment_minute;
  1518. this.systolic_blood_pressure = afterdialysis.systolic_blood_pressure;
  1519. this.diastolic_blood_pressure =
  1520. afterdialysis.diastolic_blood_pressure;
  1521. this.afterdialysis = afterdialysis;
  1522. // eslint-disable-next-line no-unused-vars
  1523. var doctoradvce = response.data.data.doctorAdvice;
  1524. var doctorAdevieInfo = response.data.data.doctorAdevieInfo;
  1525. var tableAdvice = doctorAdevieInfo;
  1526. console.log("tableAdvice", tableAdvice);
  1527. // console.log('医生', tableAdvice.length)
  1528. if (tableAdvice.length === 0) {
  1529. var obj = { advice_name: "", start_time: "" };
  1530. var obj1 = { advice_name: "", start_time: "" };
  1531. var obj2 = { advice_name: "", start_time: "" };
  1532. var obj3 = { advice_name: "", start_time: "" };
  1533. var obj4 = { advice_name: "", start_time: "" };
  1534. var obj5 = { advice_name: "", start_time: "" };
  1535. var obj6 = { advice_name: "", start_time: "" };
  1536. tableAdvice.push(obj);
  1537. tableAdvice.push(obj1);
  1538. tableAdvice.push(obj2);
  1539. tableAdvice.push(obj3);
  1540. tableAdvice.push(obj4);
  1541. tableAdvice.push(obj5);
  1542. tableAdvice.push(obj6);
  1543. this.tableAdvice = tableAdvice;
  1544. }
  1545. if (tableAdvice.length === 1) {
  1546. var obj = { advice_name: "", start_time: "" };
  1547. var obj1 = { advice_name: "", start_time: "" };
  1548. var obj2 = { advice_name: "", start_time: "" };
  1549. var obj3 = { advice_name: "", start_time: "" };
  1550. var obj4 = { advice_name: "", start_time: "" };
  1551. var obj5 = { advice_name: "", start_time: "" };
  1552. tableAdvice.push(obj);
  1553. tableAdvice.push(obj1);
  1554. tableAdvice.push(obj2);
  1555. tableAdvice.push(obj3);
  1556. tableAdvice.push(obj4);
  1557. tableAdvice.push(obj5);
  1558. this.tableAdvice = tableAdvice;
  1559. }
  1560. if (tableAdvice.length === 2) {
  1561. var obj = { advice_name: "", start_time: "" };
  1562. var obj1 = { advice_name: "", start_time: "" };
  1563. var obj2 = { advice_name: "", start_time: "" };
  1564. var obj3 = { advice_name: "", start_time: "" };
  1565. var obj4 = { advice_name: "", start_time: "" };
  1566. tableAdvice.push(obj);
  1567. tableAdvice.push(obj1);
  1568. tableAdvice.push(obj2);
  1569. tableAdvice.push(obj3);
  1570. tableAdvice.push(obj4);
  1571. this.tableAdvice = tableAdvice;
  1572. }
  1573. if (tableAdvice.length === 3) {
  1574. // eslint-disable-next-line no-redeclare
  1575. var obj = { advice_name: "", start_time: "" };
  1576. // eslint-disable-next-line no-redeclare
  1577. var obj1 = { advice_name: "", start_time: "" };
  1578. // eslint-disable-next-line no-redeclare
  1579. var obj2 = { advice_name: "", start_time: "" };
  1580. // eslint-disable-next-line no-redeclare
  1581. var obj3 = { advice_name: "", start_time: "" };
  1582. tableAdvice.push(obj);
  1583. tableAdvice.push(obj1);
  1584. tableAdvice.push(obj2);
  1585. tableAdvice.push(obj3);
  1586. this.tableAdvice = tableAdvice;
  1587. }
  1588. if (tableAdvice.length === 4) {
  1589. // eslint-disable-next-line no-redeclare
  1590. var obj = { advice_name: "", start_time: "" };
  1591. // eslint-disable-next-line no-redeclare
  1592. var obj1 = { advice_name: "", start_time: "" };
  1593. // eslint-disable-next-line no-redeclare
  1594. var obj2 = { advice_name: "", start_time: "" };
  1595. tableAdvice.push(obj);
  1596. tableAdvice.push(obj1);
  1597. tableAdvice.push(obj2);
  1598. this.tableAdvice = tableAdvice;
  1599. }
  1600. if (tableAdvice.length === 5) {
  1601. // eslint-disable-next-line no-redeclare
  1602. var obj = { advice_name: "", start_time: "" };
  1603. // eslint-disable-next-line no-redeclare
  1604. var obj1 = { advice_name: "", start_time: "" };
  1605. tableAdvice.push(obj);
  1606. tableAdvice.push(obj1);
  1607. this.tableAdvice = tableAdvice;
  1608. }
  1609. if (tableAdvice.length === 6) {
  1610. // eslint-disable-next-line no-redeclare
  1611. var obj = { advice_name: "", start_time: "" };
  1612. tableAdvice.push(obj);
  1613. this.tableAdvice = tableAdvice;
  1614. }
  1615. if (tableAdvice.length >= 7) {
  1616. this.tableAdvice = tableAdvice;
  1617. }
  1618. var doctor = response.data.data.doctor;
  1619. this.doctor = doctor.user_name;
  1620. // console.log('医生', doctor)
  1621. this.PunctureNurse = response.data.data.nurse;
  1622. // console.log('穿刺护士', this.PunctureNurse)
  1623. var operators = response.data.data.operators;
  1624. // console.log('operators', operators)
  1625. var total = response.data.data.total;
  1626. console.log("total", total);
  1627. this.total = total;
  1628. this.operators = operators;
  1629. this.dialysisOrder =
  1630. response.data.data.dialysisOrder === null
  1631. ? null
  1632. : response.data.data.dialysisOrder;
  1633. if (this.operators.length > 0) {
  1634. var operatorsLen = this.operators.length;
  1635. for (var index = 0; index < operatorsLen; index++) {
  1636. this.$set(
  1637. this.operatorMaps,
  1638. this.operators[index].creator,
  1639. this.operators[index]
  1640. );
  1641. }
  1642. }
  1643. this.afterdialysis.txqnx = -1;
  1644. if (this.afterdialysis.cruor.indexOf("0度") > -1) {
  1645. this.afterdialysis.txqnx = 0;
  1646. }
  1647. if (this.afterdialysis.cruor.indexOf("Ⅰ度") > -1) {
  1648. this.afterdialysis.txqnx = 1;
  1649. }
  1650. if (this.afterdialysis.cruor.indexOf("Ⅱ度") > -1) {
  1651. this.afterdialysis.txqnx = 2;
  1652. }
  1653. if (this.afterdialysis.cruor.indexOf("Ⅲ度") > -1) {
  1654. this.afterdialysis.txqnx = 3;
  1655. }
  1656. this.afterdialysis.complications = this.afterdialysis.complication.split(
  1657. ","
  1658. );
  1659. this.afterdialysis.complications_other = [];
  1660. this.afterdialysis.complications_index = [];
  1661. var acllen = this.afterdialysis.complications.length;
  1662. for (let index = 0; index < acllen; index++) {
  1663. if (
  1664. this.complications.indexOf(
  1665. this.afterdialysis.complications[index]
  1666. ) >= 0
  1667. ) {
  1668. this.afterdialysis.complications_index.push(
  1669. this.afterdialysis.complications[index]
  1670. );
  1671. } else if (
  1672. this.complications.indexOf(
  1673. this.afterdialysis.complications[index]
  1674. ) < 0 &&
  1675. this.afterdialysis.complications_other.indexOf(
  1676. this.afterdialysis.complications[index]
  1677. ) < 0
  1678. ) {
  1679. this.afterdialysis.complications_other.push(
  1680. this.afterdialysis.complications[index]
  1681. );
  1682. }
  1683. }
  1684. this.afterdialysis.complications_other = this.afterdialysis.complications_other.join(
  1685. ","
  1686. );
  1687. var prescription = response.data.data.dialysisPrescription;
  1688. this.prescription = prescription;
  1689. var schedule = response.data.data.schedule;
  1690. // console.log('排班', schedule)
  1691. this.schedule = schedule;
  1692. var receiverTreatmentAccess =
  1693. response.data.data.receiverTreatmentAccess;
  1694. console.log("接诊评估", receiverTreatmentAccess);
  1695. var obj = receiverTreatmentAccess.precaution;
  1696. var arr = obj.split(",");
  1697. console.log("arr", arr);
  1698. var arr2 = [];
  1699. for (let i = 0; i < this.precautions.length; i++) {
  1700. for (let j = 0; j < arr.length; j++) {
  1701. if (this.precautions[i].id == parseInt(arr[j])) {
  1702. arr2.push(this.precautions[i].name);
  1703. }
  1704. }
  1705. }
  1706. var obj2 = arr2.join(",");
  1707. console.log("obj2", obj2);
  1708. receiverTreatmentAccess.precaution = obj2;
  1709. console.log("接诊评估", receiverTreatmentAccess);
  1710. this.receiverTreatmentAccess = receiverTreatmentAccess;
  1711. var dialysisway = response.data.data.dialysisway;
  1712. console.log("透析处方", dialysisway);
  1713. this.target_ultrafiltration = dialysisway.target_ultrafiltration;
  1714. var order = response.data.data.order;
  1715. // console.log('上下机', order)
  1716. var start_nurse = response.data.data.startNuse;
  1717. // console.log('上机护士', start_nurse)
  1718. this.orderForm.start_nurse = start_nurse.user_name;
  1719. this.orderForm.url = start_nurse.url;
  1720. var finish_nurse = response.data.data.FinishNuse;
  1721. // console.log('下机护士', finish_nurse)
  1722. this.finshForm.url = finish_nurse.url;
  1723. this.finshForm.finish_nurse = finish_nurse.user_name;
  1724. var doctorname = response.data.data.DoctorName;
  1725. // console.log('医师签名', doctorname)
  1726. this.doctorForm.doctor = doctorname.user_name;
  1727. this.doctorForm.url = doctorname.url;
  1728. this.bed = order.number;
  1729. this.replacement_total = dialysisway.replacement_total;
  1730. this.anticoagulant = dialysisway.anticoagulant;
  1731. this.anticoagulant_shouji = dialysisway.anticoagulant_shouji;
  1732. this.anticoagulant_zongliang = dialysisway.anticoagulant_zongliang;
  1733. this.prescription_dewatering = dialysisway.prescription_dewatering;
  1734. this.blood_flow_volume = dialysisway.blood_flow_volume;
  1735. this.dialysate_flow = dialysisway.dialysate_flow;
  1736. this.dialyzer_perfusion_apparatus =
  1737. dialysisway.dialyzer_perfusion_apparatus;
  1738. this.dialysate_formulation = dialysisway.dialysate_formulation;
  1739. this.blood_access = dialysisway.blood_access;
  1740. this.displace_liqui = dialysisway.displace_liqui;
  1741. this.kalium = dialysisway.kalium;
  1742. this.sodium = dialysisway.sodium;
  1743. this.calcium = dialysisway.calcium;
  1744. this.anticoagulant_weichi = dialysisway.anticoagulant_weichi;
  1745. // var afterWeightLast = response.data.data.assessmentAfterDislysis
  1746. // this.afterWeightLast = afterWeightLast.weight_after
  1747. // eslint-disable-next-line no-undef
  1748. // console.log('透前体重', this.weight_before)
  1749. // console.log('干体中', this.dry_weight)
  1750. // console.log('什么体重', predialysis.additional_weight)
  1751. // console.log('较干体中增加量', this.dryWeight_add)
  1752. // this.afterWeightLast = afterWeightLast.weight_after
  1753. this.prescription.mode = this.modeName(this.prescription.mode_id);
  1754. var rwLen = this.replacementWays.length;
  1755. this.prescription.replacement = "";
  1756. for (let index = 0; index < rwLen; index++) {
  1757. if (
  1758. this.replacementWays[index].id ==
  1759. this.prescription.replacement_way
  1760. ) {
  1761. this.prescription.replacement = this.replacementWays[index].name;
  1762. break;
  1763. }
  1764. }
  1765. this.prescription.dialysate_formulation_name = this.dialysateFormulationName(
  1766. this.prescription.dialysate_formulation
  1767. );
  1768. var paLen = this.perfusionApparatus.length;
  1769. this.prescription.perfusion_apparatus_name = "";
  1770. for (let index = 0; index < paLen; index++) {
  1771. if (
  1772. this.perfusionApparatus[index].id ==
  1773. this.prescription.perfusion_apparatus
  1774. ) {
  1775. this.prescription.perfusion_apparatus_name = this.perfusionApparatus[
  1776. index
  1777. ].name;
  1778. break;
  1779. }
  1780. }
  1781. // eslint-disable-next-line no-unused-vars
  1782. var acLen = this.anticoagulantsConfit.length;
  1783. var thisALID = this.prescription.anticoagulant;
  1784. this.prescription.anticoagulant_name = "";
  1785. if (
  1786. typeof this.anticoagulantsConfit[thisALID] !== "undefined" &&
  1787. this.anticoagulantsConfit[thisALID] != null
  1788. ) {
  1789. this.prescription.anticoagulant_name = this.anticoagulantsConfit[
  1790. thisALID
  1791. ].name;
  1792. this.AlPanel = this.anticoagulantsConfit[thisALID];
  1793. }
  1794. this.advices = response.data.data.advices;
  1795. // console.log('医嘱', this.advices)
  1796. var monitor = response.data.data.monitor;
  1797. // console.log('透析监测', monitor)
  1798. this.monitor = monitor;
  1799. // console.log('monitor', monitor)
  1800. this.monitors = response.data.data.monitors;
  1801. //console.log("透析监测", this.monitors);
  1802. var summary = response.data.data.summary;
  1803. console.log("透析小结", summary);
  1804. this.mission = summary.mission;
  1805. this.dialysis_summary = summary.dialysis_summary;
  1806. this.nursing_record = summary.nursing_record;
  1807. this.special_record = summary.special_record;
  1808. this.org_template_info = response.data.data.org_template_info;
  1809. if (this.monitors.length < 7) {
  1810. var nl = 8 - this.monitors.length;
  1811. for (let index = 0; index < nl; index++) {
  1812. this.monitors.push([]);
  1813. }
  1814. }
  1815. this.jilurow = this.monitors.length + 1;
  1816. this.advice_jilurow = this.advices.length + 1;
  1817. var childMap = {};
  1818. for (const index in this.advices) {
  1819. if (this.advices[index].parent_id == 0) {
  1820. continue;
  1821. }
  1822. if (!(this.advices[index].parent_id in childMap)) {
  1823. childMap[this.advices[index].parent_id] = [];
  1824. }
  1825. childMap[this.advices[index].parent_id].push(this.advices[index]);
  1826. }
  1827. var advices = [];
  1828. for (const index in this.advices) {
  1829. if (this.advices[index].parent_id > 0) {
  1830. continue;
  1831. }
  1832. var item = this.advices[index];
  1833. if (item.id in childMap) {
  1834. item.children = childMap[item.id];
  1835. } else {
  1836. item.children = [];
  1837. }
  1838. advices.push(item);
  1839. }
  1840. var leftAdvice = [];
  1841. var rightAdvice = [];
  1842. var adlen = advices.length;
  1843. var halfLen = adlen % 2 == 0 ? adlen / 2 : (adlen + 1) / 2;
  1844. for (var i = 0; i < halfLen; i++) {
  1845. leftAdvice.push(advices[i]);
  1846. rightAdvice.push(advices[i + halfLen]);
  1847. }
  1848. if (halfLen < 5) {
  1849. var nl = 5 - leftAdvice.length;
  1850. for (let index = 0; index < nl; index++) {
  1851. leftAdvice.push([]);
  1852. }
  1853. var nl = 5 - rightAdvice.length;
  1854. for (let index = 0; index < nl; index++) {
  1855. rightAdvice.push([]);
  1856. }
  1857. }
  1858. this.advices = [];
  1859. for (var i = 0; i < halfLen; i++) {
  1860. var item = [];
  1861. item.push(leftAdvice[i]);
  1862. item.push(rightAdvice[i]);
  1863. this.advices.push(item);
  1864. }
  1865. this.loading = false;
  1866. this.doctor_advices =
  1867. response.data.data.advices == null
  1868. ? []
  1869. : response.data.data.advices;
  1870. for (let index = 0; index < this.doctor_advices.length; index++) {
  1871. this.doctor_advices[index]["isShow"] = 2;
  1872. }
  1873. if (this.doctor_advices.length > 0) {
  1874. var group = this.newAdviceGroupObject();
  1875. var initGroupBlock = function(group, advice) {
  1876. group.group_no = advice.groupno;
  1877. };
  1878. for (
  1879. let index = this.doctor_advices.length - 1;
  1880. index >= 0;
  1881. index--
  1882. ) {
  1883. var new_advice_index = 0;
  1884. if (
  1885. "children" in this.doctor_advices[index] &&
  1886. this.doctor_advices[index].children.length > 0
  1887. ) {
  1888. new_advice_index =
  1889. index + this.doctor_advices[index].children.length + 1;
  1890. var doctor_advice = {
  1891. delivery_way: this.doctor_advices[index].delivery_way,
  1892. execution_frequency: this.doctor_advices[index]
  1893. .execution_frequency,
  1894. groupno: this.doctor_advices[index].groupno,
  1895. id: this.doctor_advices[index].id,
  1896. parent_id: this.doctor_advices[index].parent_id,
  1897. children: this.doctor_advices[index].children,
  1898. remark: this.doctor_advices[index].remark
  1899. };
  1900. doctor_advice["isShow"] = 1;
  1901. this.doctor_advices.splice(new_advice_index, 0, doctor_advice);
  1902. // this.doctor_advices.push(doctor_advice)
  1903. }
  1904. }
  1905. for (let index = 0; index < this.doctor_advices.length; index++) {
  1906. const advice = this.doctor_advices[index];
  1907. if (advice.groupno == 0) {
  1908. // 老版本的医嘱没有分组的概念,所以这一个 if 是解决这个问题的,将每个无分组的医嘱各自归为一组
  1909. if (advice.parent_id > 0) {
  1910. if (this.advice_groups.length > 0) {
  1911. var parent_group = this.advice_groups[
  1912. this.advice_groups.length - 1
  1913. ];
  1914. if (parent_group.advices.length > 0) {
  1915. if (parent_group.advices[0].id == advice.parent_id) {
  1916. parent_group.advices.push(advice);
  1917. }
  1918. }
  1919. }
  1920. continue;
  1921. } else {
  1922. if (group.group_no > 0) {
  1923. this.advice_groups.push(group);
  1924. group = this.newAdviceGroupObject();
  1925. }
  1926. initGroupBlock(group, advice);
  1927. group.advices.push(advice);
  1928. this.advice_groups.push(group);
  1929. group = this.newAdviceGroupObject();
  1930. continue;
  1931. }
  1932. }
  1933. if (group.group_no > 0 && group.group_no != advice.groupno) {
  1934. this.advice_groups.push(group);
  1935. group = this.newAdviceGroupObject();
  1936. }
  1937. if (group.group_no == 0) {
  1938. initGroupBlock(group, advice);
  1939. }
  1940. if (group.group_no == advice.groupno) {
  1941. group.advices.push(advice);
  1942. }
  1943. }
  1944. if (group.group_no > 0) {
  1945. // 上述的算法会导致最后一组没有加到advice_groups,这里要手动加上
  1946. this.advice_groups.push(group);
  1947. }
  1948. }
  1949. } else {
  1950. this.loading = false;
  1951. this.$message.error("请求数据失败");
  1952. return false;
  1953. }
  1954. });
  1955. },
  1956. bloodAccessParOperaName(id) {
  1957. if (id in this.bloodAccessParOpera) {
  1958. return this.bloodAccessParOpera[id].name;
  1959. }
  1960. return "";
  1961. },
  1962. dialysateFormulationName(id) {
  1963. if (id in this.dialysateFormulationOptions) {
  1964. return this.dialysateFormulationOptions[id].name;
  1965. }
  1966. return "";
  1967. },
  1968. getAge: function(val) {
  1969. if (val.birthday != 0) {
  1970. return jsGetAge(val.birth, "-");
  1971. } else {
  1972. return "";
  1973. }
  1974. },
  1975. newAdviceGroupObject: function() {
  1976. return Object.assign(
  1977. {},
  1978. {
  1979. group_no: 0,
  1980. // advice_doctor: 0,
  1981. // start_time: 0,
  1982. advices: []
  1983. // exec_staff: 0,
  1984. // exec_time: 0,
  1985. // checker: 0,
  1986. }
  1987. );
  1988. },
  1989. getPartName(id) {
  1990. for (let i = 0; i < this.vascularAccess.length; i++) {
  1991. if (this.vascularAccess[i].id == id) {
  1992. return this.vascularAccess[i].name;
  1993. }
  1994. }
  1995. }
  1996. },
  1997. watch: {
  1998. "patientInfo.gender": function() {
  1999. if (this.patientInfo.gender == 1) {
  2000. this.patientInfo_gender_1 = true;
  2001. this.patientInfo_gender_2 = false;
  2002. } else if (this.patientInfo.gender == 2) {
  2003. this.patientInfo_gender_2 = true;
  2004. this.patientInfo_gender_1 = false;
  2005. } else {
  2006. this.patientInfo_gender_2 = false;
  2007. this.patientInfo_gender_1 = false;
  2008. }
  2009. },
  2010. "patientInfo.source": function() {
  2011. if (this.patientInfo.source == 1) {
  2012. this.patientInfo_source_1 = true;
  2013. this.patientInfo_source_2 = false;
  2014. } else if (this.patientInfo.source == 2) {
  2015. this.patientInfo_source_2 = true;
  2016. this.patientInfo_source_1 = false;
  2017. } else {
  2018. this.patientInfo_source_2 = false;
  2019. this.patientInfo_source_1 = false;
  2020. }
  2021. }
  2022. },
  2023. created() {
  2024. var xtuser = this.$store.getters.xt_user;
  2025. this.orgname = xtuser.org.org_name;
  2026. // this.orgname = "遂溪方济医院";
  2027. this.modeOptions = this.$store.getters.treatment_mode;
  2028. this.replacementWays = this.$store.getters.replacement_ways;
  2029. this.perfusionApparatus = this.$store.getters.perfusion_apparatus;
  2030. this.anticoagulantsConfit = this.$store.getters.anticoagulants_confit;
  2031. var vascularAccess = getDataConfig("hemodialysis", "vascular_access");
  2032. this.vascularAccess = vascularAccess;
  2033. //console.log("hhe", vascularAccess);
  2034. console.log(
  2035. "血管通路部位",
  2036. getDataConfig("hemodialysis", "vascular_access")
  2037. );
  2038. this.consciousness_arr = getDataConfig("hemodialysis", "consciousness");
  2039. var bloodAccessParOpera = getDataConfig(
  2040. "hemodialysis",
  2041. "vascular_access_desc"
  2042. );
  2043. var arr = [];
  2044. var arrtwo = [];
  2045. for (let i = 0; i < bloodAccessParOpera.length; i++) {
  2046. if (bloodAccessParOpera[i].name == "内瘘波动及震颤-存在") {
  2047. bloodAccessParOpera[i].name = "存在";
  2048. arr.push(bloodAccessParOpera[i]);
  2049. }
  2050. if (bloodAccessParOpera[i].name == "内瘘波动及震颤-减弱") {
  2051. bloodAccessParOpera[i].name = "减弱";
  2052. arr.push(bloodAccessParOpera[i]);
  2053. }
  2054. if (bloodAccessParOpera[i].name == "内瘘波动及震颤-消失") {
  2055. bloodAccessParOpera[i].name = "消失";
  2056. arr.push(bloodAccessParOpera[i]);
  2057. }
  2058. if (bloodAccessParOpera[i].name == "直穿") {
  2059. arrtwo.push(bloodAccessParOpera[i]);
  2060. }
  2061. if (bloodAccessParOpera[i].name == "人造血管") {
  2062. arrtwo.push(bloodAccessParOpera[i]);
  2063. }
  2064. if (bloodAccessParOpera[i].name == "移植血管") {
  2065. arrtwo.push(bloodAccessParOpera[i]);
  2066. }
  2067. this.arr = arr;
  2068. this.arrtwo = arrtwo;
  2069. }
  2070. console.log("arr", arr);
  2071. console.log("arrtwo", arrtwo);
  2072. // var bloodAccessParOpera = getDataConfig(
  2073. // "hemodialysis",
  2074. // "vascular_access_desc"
  2075. // );
  2076. // for (var key in bloodAccessParOpera) {
  2077. // this.bloodAccessParOpera[bloodAccessParOpera[key].id] =
  2078. // bloodAccessParOpera[key];
  2079. // }
  2080. var dialysateFormulationOptions = getDataConfig(
  2081. "hemodialysis",
  2082. "dialysate_formulation"
  2083. );
  2084. for (var key in dialysateFormulationOptions) {
  2085. this.dialysateFormulationOptions[dialysateFormulationOptions[key].id] =
  2086. dialysateFormulationOptions[key];
  2087. }
  2088. const xtdate = this.$route.query && this.$route.query.xtdate;
  2089. const xtno = this.$route.query && this.$route.query.xtno;
  2090. if (
  2091. typeof xtdate === "string" &&
  2092. xtdate.length > 0 &&
  2093. typeof xtno === "string" &&
  2094. xtno.length > 0
  2095. ) {
  2096. this.queryParams.xtdate = xtdate;
  2097. this.queryParams.xtno = xtno;
  2098. this.getDialysisRecord();
  2099. } else {
  2100. this.$message.error("参数不齐");
  2101. return false;
  2102. }
  2103. this.ways = getDataConfig("hemodialysis", "way");
  2104. console.log("ways", this.ways);
  2105. this.consciousnesses = getDataConfig("hemodialysis", "consciousness");
  2106. this.appetites = getDataConfig("hemodialysis", "appetite");
  2107. this.postures = getDataConfig("hemodialysis", "posture");
  2108. this.sick_condition = getDataConfig("hemodialysis", "sick_condition");
  2109. this.precautions = getDataConfig("hemodialysis", "precaution");
  2110. console.log("跌倒", this.precautions);
  2111. this.intake = getDataConfig("hemodialysis", "intake");
  2112. this.nutrition = getDataConfig("hemodialysis", "nutrition");
  2113. }
  2114. };
  2115. </script>
  2116. <style>
  2117. .dialysis-print-order {
  2118. width: 960px;
  2119. margin: 0 auto;
  2120. }
  2121. .dialysis-print-order .order-yy-name {
  2122. margin: auto;
  2123. text-align: center;
  2124. font-size: 20px;
  2125. letter-spacing: 5px;
  2126. }
  2127. .dialysis-print-order .order-title {
  2128. margin: auto;
  2129. font-weight: 600;
  2130. text-align: center;
  2131. font-size: 22px;
  2132. padding: 10px 20px 20px 20px;
  2133. }
  2134. .dialysis-print-order .table-box {
  2135. width: 100%;
  2136. line-height: 23px;
  2137. font-size: 14px;
  2138. }
  2139. .dialysis-print-order .print-table {
  2140. width: 100%;
  2141. text-align: center;
  2142. border-collapse: collapse;
  2143. line-height: 40px;
  2144. font-size: 14px;
  2145. }
  2146. .dialysis-print-order .print-table-no {
  2147. width: 100%;
  2148. text-align: center;
  2149. border-collapse: collapse;
  2150. font-size: 14px;
  2151. }
  2152. .dialysis-print-order .under-line {
  2153. border-bottom: 1px solid #999;
  2154. width: 95%;
  2155. text-align: center;
  2156. margin-left: 2px;
  2157. }
  2158. .dialysis-print-order .title-box {
  2159. text-align: center;
  2160. font-size: 16px;
  2161. }
  2162. .dialysis-print-order .radio-lebel-box {
  2163. font-weight: 400;
  2164. cursor: pointer;
  2165. }
  2166. .dialysis-print-order .radio-no {
  2167. opacity: 0;
  2168. outline: none;
  2169. position: absolute;
  2170. margin: 0;
  2171. width: 0;
  2172. height: 0;
  2173. z-index: -1;
  2174. }
  2175. .dialysis-print-order .radio-inner {
  2176. white-space: nowrap;
  2177. cursor: pointer;
  2178. outline: none;
  2179. display: inline-block;
  2180. line-height: 1;
  2181. position: relative;
  2182. vertical-align: middle;
  2183. }
  2184. .dialysis-print-order .radio-fang {
  2185. display: inline-block;
  2186. position: relative;
  2187. border: 1px solid #000;
  2188. box-sizing: border-box;
  2189. width: 14px;
  2190. height: 14px;
  2191. background-color: #fff;
  2192. z-index: 1;
  2193. transition: border-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46),
  2194. background-color 0.25s cubic-bezier(0.71, -0.46, 0.29, 1.46);
  2195. }
  2196. .dialysis-print-order .is-checked-radio::after {
  2197. content: "√";
  2198. font-size: 15px;
  2199. }
  2200. .dialysis-print-order .print-table-no tr td {
  2201. padding: 8px 5px;
  2202. line-height: 25px;
  2203. }
  2204. .dialysis-print-order .print-table tr td {
  2205. padding: 1px 1px;
  2206. /*line-height: 25px;*/
  2207. }
  2208. .es-img {
  2209. height: 25px;
  2210. }
  2211. .advice-name {
  2212. text-align: left;
  2213. }
  2214. .advice-children {
  2215. display: flex;
  2216. }
  2217. .title-box-pro {
  2218. border: 0 #fff;
  2219. line-height: 25px;
  2220. height: 25px;
  2221. text-align: left;
  2222. padding-left: 10px !important;
  2223. }
  2224. .title-box-pro-tr {
  2225. border: 0 #fff;
  2226. }
  2227. .text-align-left {
  2228. text-align: left !important;
  2229. padding-left: 10px !important;
  2230. font-size: 14px !important;
  2231. line-height: 25px;
  2232. }
  2233. .print-table-tr-new td {
  2234. line-height: 20px !important;
  2235. }
  2236. .border-top-solid {
  2237. border: solid 1px #000;
  2238. }
  2239. .print-template-two tr {
  2240. line-height: 30px;
  2241. }
  2242. .parent {
  2243. text-align: left;
  2244. padding-left: 20px !important;
  2245. }
  2246. </style>