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

assessmentBeforeDislysisDialog.vue 77KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978
  1. <template>
  2. <div>
  3. <el-dialog
  4. class="newDialog"
  5. title="透前评估"
  6. :visible.sync="isVisibility"
  7. width="1010px"
  8. :modal = 'false'
  9. :modal-append-to-body="false"
  10. :close-on-click-modal="false"
  11. >
  12. <div class="warnTxt" v-if="showTxt != ''">{{ showTxt }}</div>
  13. <!--<check-box-dialog-->
  14. <!--:propsForm="InnerDialogProps"-->
  15. <!--v-on:dialog-comfirm="innerDialogComfirm"-->
  16. <!--v-on:dialog-cancle="innerDialogCancle"-->
  17. <!--&gt;</check-box-dialog>-->
  18. <multi-select-box
  19. :propsForm="InnerDialogProps"
  20. v-on:dialog-comfirm="innerDialogComfirm"
  21. v-on:dialog-cancle="innerDialogCancle"
  22. ></multi-select-box>
  23. <el-form ref="assessmentBeforeDislysis" :model="assessmentBeforeDislysis" label-width="125px">
  24. <el-row :gutter="24">
  25. <el-col :span="8">
  26. <el-form-item label="透前称重(kg): " :prop="isName('透前称重')"
  27. :rules="isCheckmust('透前称重')" v-if="isShow('透前称重')">
  28. <el-input type="number" v-model="assessmentBeforeDislysis.weight_before"></el-input>
  29. </el-form-item>
  30. </el-col>
  31. <el-col :span="8">
  32. <el-form-item label="透前体重备注:" :prop="isName('透前体重备注')"
  33. :rules="isCheckmust('透前体重备注')" v-if="isShow('透前体重备注')">
  34. <el-input v-model="assessmentBeforeDislysis.weight_befor_remake"></el-input>
  35. </el-form-item>
  36. </el-col>
  37. <el-col :span="8">
  38. <el-form-item label="干体重(kg):"
  39. :prop="isName('干体重')"
  40. :rules="isCheckmust('干体重')"
  41. v-if="isShow('干体重')">
  42. <!-- -->
  43. <el-input type="number" v-model="assessmentBeforeDislysis.dry_weight" readonly
  44. @focus="showDryWeightDialog"></el-input>
  45. </el-form-item>
  46. </el-col>
  47. <el-col :span="8">
  48. <el-form-item label="身高(cm):"
  49. prop="height"
  50. :rules="isCheckmust('身高')"
  51. v-if="isShow('身高')">
  52. <el-input v-model="assessmentBeforeDislysis.height"></el-input>
  53. </el-form-item>
  54. </el-col>
  55. <el-col :span="8">
  56. <el-form-item label="年龄(岁):" :prop="isName('年龄')"
  57. :rules="isCheckmust('年龄')" v-if="isShow('年龄')">
  58. <el-input v-model="assessmentBeforeDislysis.age" ></el-input>
  59. </el-form-item>
  60. </el-col>
  61. <el-col :span="8">
  62. <el-form-item label="衣物重(kg):" :prop="isName('衣物重')"
  63. :rules="isCheckmust('衣物重')" v-if="isShow('衣物重')">
  64. <el-input type="number" v-model="assessmentBeforeDislysis.additional_weight"></el-input>
  65. </el-form-item>
  66. </el-col>
  67. <!-- <el-col :span="8">-->
  68. <!-- <el-form-item label="透析机型号:" v-if="isShow('透析机型号')">-->
  69. <!-- <el-input v-model="assessmentBeforeDislysis.machine_type"></el-input>-->
  70. <!-- </el-form-item>-->
  71. <!-- </el-col>-->
  72. <el-col :span="8">
  73. <el-form-item label="透析机型号" :prop="isName('透析机型号')"
  74. :rules="isCheckmust('透析机型号')" v-if="isShow('透析机型号')">
  75. <el-select v-model="assessmentBeforeDislysis.machine_type">
  76. <el-option :key="0" label="请选择" :value="0"></el-option>
  77. <el-option v-for="item in machineType" :label="item.name" :value="item.id"
  78. :key="item.id"></el-option>
  79. </el-select>
  80. </el-form-item>
  81. </el-col>
  82. <el-col :span="8" v-if="isShow('透析频次')">
  83. <el-form-item label="透析频次(次/周):" :prop="isName('透析频次')"
  84. :rules="isCheckmust('透析频次')" v-if="this.$store.getters.xt_user.template_info.org_id != 10243">
  85. <el-input v-model="assessmentBeforeDislysis.dialysis_count"></el-input>
  86. </el-form-item>
  87. <el-form-item label="透析频次:" :prop="isName('透析频次')"
  88. :rules="isCheckmust('透析频次')" v-else>
  89. <el-input v-model="assessmentBeforeDislysis.dialysis_count"></el-input>
  90. </el-form-item>
  91. </el-col>
  92. <el-col :span="8">
  93. <el-form-item label="体温(℃):" :prop="isName('体温')"
  94. :rules="isCheckmust('体温')" v-if="isShow('体温')">
  95. <el-input type="number" v-model="assessmentBeforeDislysis.temperature"></el-input>
  96. </el-form-item>
  97. </el-col>
  98. <el-col :span="8">
  99. <el-form-item label="收缩压(mmHg): " :prop="isName('收缩压')"
  100. :rules="isCheckmust('收缩压')" v-if="isShow('收缩压')">
  101. <el-input type="number" v-model="assessmentBeforeDislysis.systolic_blood_pressure"></el-input>
  102. </el-form-item>
  103. </el-col>
  104. <el-col :span="8">
  105. <el-form-item label="舒张压(mmHg): " :prop="isName('舒张压')"
  106. :rules="isCheckmust('舒张压')" v-if="isShow('舒张压')">
  107. <el-input type="number" v-model="assessmentBeforeDislysis.diastolic_blood_pressure"></el-input>
  108. </el-form-item>
  109. </el-col>
  110. <el-col :span="8">
  111. <el-form-item label="呼吸频率(次/分):" :prop="isName('呼吸频率')"
  112. :rules="isCheckmust('呼吸频率')" v-if="isShow('呼吸频率')">
  113. <el-input v-model="assessmentBeforeDislysis.breathing_rate"></el-input>
  114. </el-form-item>
  115. </el-col>
  116. <el-col :span="8">
  117. <el-form-item label="脉搏(次/分):" :prop="isName('脉搏')"
  118. :rules="isCheckmust('脉搏')" v-if="isShow('脉搏')">
  119. <el-input type="number" v-model="assessmentBeforeDislysis.pulse_frequency"></el-input>
  120. </el-form-item>
  121. </el-col>
  122. <!--
  123. <el-col :span="8">
  124. <el-form-item label="体液过多症状: " v-if="isShow('体液过多症状')">
  125. <el-select v-model="assessmentBeforeDislysis.humor_excessive_symptom">
  126. <el-option :key="0" label="请选择" :value="0"></el-option>
  127. <el-option v-for="item in humor_excessive_symptom_array" :label="item.name" :value="item.id"
  128. :key="item.id"></el-option>
  129. </el-select>
  130. </el-form-item>
  131. </el-col> -->
  132. <el-col :span="8">
  133. <el-form-item label="体液过多症状:" :prop="isName('体液过多症状')"
  134. :rules="isCheckmust('体液过多症状')" v-if="isShow('体液过多症状')">
  135. <el-input v-model="assessmentBeforeDislysis.humor_excessive_symptom" readonly
  136. @focus="showInnerDialog('19')"></el-input>
  137. </el-form-item>
  138. </el-col>
  139. <el-col :span="8">
  140. <el-form-item label="血管通路: " :prop="isName('血管通路')"
  141. :rules="isCheckmust('血管通路')" v-if="isShow('血管通路')">
  142. <el-select v-model="assessmentBeforeDislysis.blood_access_part_opera_id">
  143. <el-option :key="0" label="请选择" :value="0"></el-option>
  144. <el-option v-for="item in blood_access_part_opera" :label="item.name" :value="item.id"
  145. :key="item.id"></el-option>
  146. </el-select>
  147. </el-form-item>
  148. </el-col>
  149. <el-col :span="8">
  150. <el-form-item label="血管通路部位: " :prop="isName('血管通路部位')"
  151. :rules="isCheckmust('血管通路部位')" v-if="isShow('血管通路部位')">
  152. <!-- <el-select v-model="assessmentBeforeDislysis.blood_access_part_id">
  153. <el-option :key="0" label="请选择" :value="0"></el-option>
  154. <el-option v-for="item in blood_access_part" :label="item.name" :value="item.id"
  155. :key="item.id"></el-option>
  156. </el-select> -->
  157. <el-input v-model="assessmentBeforeDislysis.blood_access_part_id" readonly @focus="showInnerDialog('17')"></el-input>
  158. </el-form-item>
  159. </el-col>
  160. <el-col :span="8">
  161. <el-form-item label="血管通路其他部位:" :prop="isName('血管通路其他部位')"
  162. :rules="isCheckmust('血管通路其他部位')" v-if="isShow('血管通路其他部位')">
  163. <el-input v-model="assessmentBeforeDislysis.venous_catheterization_part_other"></el-input>
  164. </el-form-item>
  165. </el-col>
  166. <el-col :span="8">
  167. <el-form-item label="内瘘: " :prop="isName('内瘘')"
  168. :rules="isCheckmust('内瘘')" v-if="isShow('内瘘')">
  169. <el-input v-model="assessmentBeforeDislysis.internal_fistula" readonly
  170. @focus="showInnerDialog('7')"></el-input>
  171. </el-form-item>
  172. </el-col>
  173. <el-col :span="8" v-if="assessmentBeforeDislysis.is_hemorrhage == 1&&isShow('其他出血情况')">
  174. <el-form-item label="其他出血情况: " prop="hemorrhage_other"
  175. :rules="isCheckmust('其他出血情况')">
  176. <!-- :prop="isName('其他出血情况')" -->
  177. <el-input v-model="assessmentBeforeDislysis.hemorrhage_other"></el-input>
  178. </el-form-item>
  179. </el-col>
  180. <el-col :span="8">
  181. <el-form-item label="血管通路(内瘘)其他:" :prop="isName('血管通路(内瘘)其他')"
  182. :rules="isCheckmust('血管通路(内瘘)其他')" v-if="isShow('血管通路(内瘘)其他')">
  183. <el-input v-model="assessmentBeforeDislysis.internal_fistula_other"></el-input>
  184. </el-form-item>
  185. </el-col>
  186. <el-col :span="8" v-if="isShow('血管杂音')">
  187. <el-form-item label="血管杂音: " :prop="isName('血管杂音')"
  188. :rules="isCheckmust('血管杂音')">
  189. <el-select v-model="assessmentBeforeDislysis.blood_access_noise">
  190. <el-option :key="0" label="请选择" :value="0"></el-option>
  191. <el-option v-for="item in blood_access_noise" :label="item.name" :value="item.id"
  192. :key="item.id"></el-option>
  193. </el-select>
  194. </el-form-item>
  195. </el-col>
  196. <el-col :span="8">
  197. <el-form-item label="血管通路皮肤情况: " :prop="isName('血管通路皮肤情况')"
  198. :rules="isCheckmust('血管通路皮肤情况')" v-if="isShow('血管通路皮肤情况')">
  199. <el-input v-model="assessmentBeforeDislysis.internal_fistula_skin" readonly
  200. @focus="showInnerDialog('8')"></el-input>
  201. </el-form-item>
  202. </el-col>
  203. <el-col :span="8">
  204. <el-form-item label="中心静脉置管: " :prop="isName('中心静脉置管')"
  205. :rules="isCheckmust('中心静脉置管')" v-if="isShow('中心静脉置管')">
  206. <el-select v-model="assessmentBeforeDislysis.venous_catheterization">
  207. <el-option :key="0" label="请选择" :value="0"></el-option>
  208. <el-option v-for="item in this.$store.getters.venous_catheterization" :label="item.name"
  209. :value="item.id"
  210. :key="item.id"></el-option>
  211. </el-select>
  212. </el-form-item>
  213. </el-col>
  214. <el-col :span="8">
  215. <el-form-item label="导管: " :prop="isName('导管')"
  216. :rules="isCheckmust('导管')" v-if="isShow('导管')">
  217. <el-input v-model="assessmentBeforeDislysis.catheter" @focus="showInnerDialog('4')"></el-input>
  218. </el-form-item>
  219. </el-col>
  220. <el-col :span="8">
  221. <el-form-item label="导管维护: " :prop="isName('导管维护')"
  222. :rules="isCheckmust('导管维护')" v-if="isShow('导管维护')">
  223. <el-input v-model="assessmentBeforeDislysis.catheter_maintenance" @focus="showInnerDialog('18')"></el-input>
  224. </el-form-item>
  225. </el-col>
  226. <!--<el-col :span="8">-->
  227. <!--<el-form-item label="附加物重(kg): ">-->
  228. <!--<el-input type="number" v-model="assessmentBeforeDislysis.additional_weight"></el-input>-->
  229. <!--</el-form-item>-->
  230. <!--</el-col>-->
  231. <!-- </el-row>
  232. <el-row :gutter="20"> -->
  233. <el-col :span="8">
  234. <el-form-item label="导管打折: " :prop="isName('导管打折')"
  235. :rules="isCheckmust('导管打折')" v-if="isShow('导管打折')">
  236. <el-select v-model="assessmentBeforeDislysis.catheter_bend">
  237. <el-option :key="0" label="请选择" :value="0"></el-option>
  238. <el-option label="有" value="1"></el-option>
  239. <el-option label="无" value="2"></el-option>
  240. </el-select>
  241. <!-- <el-select v-model="assessmentBeforeDislysis.catheter_bend" placeholder="请选择">
  242. <el-option
  243. v-for="item in catheters"
  244. :key="item.value"
  245. :label="item.label"
  246. :value="item.value">
  247. </el-option>
  248. </el-select> -->
  249. </el-form-item>
  250. </el-col>
  251. <!-- </el-row>
  252. <el-row :gutter="20"> -->
  253. <el-col :span="8">
  254. <el-form-item label="穿刺针: " :prop="isName('穿刺针')"
  255. :rules="isCheckmust('穿刺针')" v-if="isShow('穿刺针')">
  256. <el-input v-model="assessmentBeforeDislysis.puncture_needle" @focus="showInnerDialog('11')"></el-input>
  257. </el-form-item>
  258. </el-col>
  259. <el-col :span="8">
  260. <el-form-item label="针眼: " :prop="isName('针眼')"
  261. :rules="isCheckmust('针眼')" v-if="isShow('针眼')">
  262. <el-input v-model="assessmentBeforeDislysis.pinholing" readonly
  263. @focus="showInnerDialog('14')"></el-input>
  264. </el-form-item>
  265. </el-col>
  266. <el-col :span="8">
  267. <el-form-item label="穿刺方式: " :prop="isName('穿刺方式')"
  268. :rules="isCheckmust('穿刺方式')" v-if="isShow('穿刺方式')">
  269. <!-- <el-select v-model="assessmentBeforeDislysis.puncture_way">
  270. <el-option :key="0" label="请选择" :value="0"></el-option>
  271. <el-option v-for="item in this.puncture_ways" :label="item.name" :value="item.id"
  272. :key="item.id"></el-option>
  273. </el-select> -->
  274. <el-input v-model="assessmentBeforeDislysis.puncture_way" readonly
  275. @focus="showInnerDialog('13')">
  276. </el-input>
  277. </el-form-item>
  278. </el-col>
  279. <el-col :span="8">
  280. <el-form-item label="穿刺点: " :prop="isName('穿刺点')" v-if="isShow('穿刺点')&& assessmentBeforeDislysis.puncture_way.indexOf('绳梯')!==-1">
  281. <el-input v-model="assessmentBeforeDislysis.point_puncture" readonly
  282. @focus="showInnerDialog('21')">
  283. </el-input>
  284. </el-form-item>
  285. </el-col>
  286. <el-col :span="8">
  287. <el-form-item label="出血: " :prop="isName('出血')"
  288. :rules="isCheckmust('出血')" v-if="isShow('出血')">
  289. <el-select v-model="assessmentBeforeDislysis.is_hemorrhage">
  290. <el-option :key="0" label="请选择" :value="0"></el-option>
  291. <el-option label="是" value="1"></el-option>
  292. <el-option label="否" value="2"></el-option>
  293. </el-select>
  294. </el-form-item>
  295. </el-col>
  296. <el-col :span="8" v-if="assessmentBeforeDislysis.is_hemorrhage == 1&&isShow('出血选项')">
  297. <el-form-item label="出血选项: " :prop="isName('出血选项')"
  298. :rules="isCheckmust('出血选项')">
  299. <div>
  300. <el-input v-model="assessmentBeforeDislysis.hemorrhage" @focus="showInnerDialog('6')"></el-input>
  301. </div>
  302. </el-form-item>
  303. </el-col>
  304. <el-col :span="8">
  305. <el-form-item label="血栓:" :prop="isName('血栓')"
  306. :rules="isCheckmust('血栓')" v-if="isShow('血栓')">
  307. <el-select v-model="assessmentBeforeDislysis.thromubus_type" @change="changeThrombus">
  308. <el-option :key="0" label="请选择" :value="0"></el-option>
  309. <el-option label="有" value="1"></el-option>
  310. <el-option label="无" value="2"></el-option>
  311. </el-select>
  312. </el-form-item>
  313. </el-col>
  314. <el-col :span="8">
  315. <el-form-item label="导管AV端约为(cm):" :prop="isName('导管AV端各约')"
  316. :rules="isCheckmust('导管AV端各约')" v-show="thrombuShow" label-width="150px">
  317. <el-input v-model="assessmentBeforeDislysis.thrombus_av" style="width:150px"></el-input>
  318. </el-form-item>
  319. </el-col>
  320. <el-col :span="8">
  321. <el-form-item label="导管A端约(cm):" :prop="isName('导管A端约')"
  322. :rules="isCheckmust('导管A端约')" v-show="thrombuShow">
  323. <el-input v-model="assessmentBeforeDislysis.thromubus_a" style="width:150px"></el-input>
  324. </el-form-item>
  325. </el-col>
  326. <el-col :span="8">
  327. <el-form-item label="导管V端约(cm):" :prop="isName('导管V端约')"
  328. :rules="isCheckmust('导管V端约')" v-show="thrombuShow">
  329. <el-input v-model="assessmentBeforeDislysis.thromubus_v" style="width:150px"></el-input>
  330. </el-form-item>
  331. </el-col>
  332. <el-col :span="8" v-if="isShow('皮肤')">
  333. <el-form-item label="皮肤: " :prop="isName('皮肤')"
  334. :rules="isCheckmust('皮肤')">
  335. <!-- <el-select v-model="assessmentBeforeDislysis.skin">
  336. <el-option :key="0" label="请选择" :value="0"></el-option>
  337. <el-option v-for="item in this.$store.getters.skin" :label="item.name" :value="item.id"
  338. :key="item.id"></el-option>
  339. </el-select> -->
  340. <el-input v-model="assessmentBeforeDislysis.skin" readonly
  341. @focus="showInnerDialog('12')">
  342. </el-input>
  343. </el-form-item>
  344. </el-col>
  345. <el-col :span="8">
  346. <el-form-item label="并发症: " :prop="isName('并发症')"
  347. :rules="isCheckmust('并发症')" v-if="isShow('并发症')">
  348. <el-input v-model="assessmentBeforeDislysis.complication" @focus="showInnerDialog('5')"></el-input>
  349. </el-form-item>
  350. </el-col>
  351. <el-col :span="8">
  352. <el-form-item label="透析前症状: " :prop="isName('透析前症状')"
  353. :rules="isCheckmust('透析前症状')" v-if="isShow('透析前症状')">
  354. <el-input v-model="assessmentBeforeDislysis.symptom_before_dialysis"
  355. @focus="showInnerDialog('3')"></el-input>
  356. </el-form-item>
  357. </el-col>
  358. <el-col :span="8">
  359. <el-form-item label="前次透析后症状:" :prop="isName('前次透析后症状')"
  360. :rules="isCheckmust('前次透析后症状')" v-if="isShow('前次透析后症状')">
  361. <el-input v-model="assessmentBeforeDislysis.last_post_dialysis" @focus="showInnerDialog('1')"></el-input>
  362. </el-form-item>
  363. </el-col>
  364. <el-col :span="8" v-if="isShow('急诊')">
  365. <el-form-item label="急诊: " :prop="isName('急诊')"
  366. :rules="isCheckmust('急诊')">
  367. <el-select v-model="assessmentBeforeDislysis.emergency_treatment">
  368. <el-option :key="0" label="请选择" :value="0"></el-option>
  369. <el-option v-for="item in this.$store.getters.emergency_treatment" :label="item.name" :value="item.id"
  370. :key="item.id"></el-option>
  371. </el-select>
  372. </el-form-item>
  373. </el-col>
  374. <el-col :span="8" v-if="isShow('其他急诊情况')">
  375. <el-form-item label="其他急诊情况:" :prop="isName('其他急诊情况')"
  376. :rules="isCheckmust('其他急诊情况')">
  377. <el-input v-model="assessmentBeforeDislysis.emergency_treatment_other"></el-input>
  378. </el-form-item>
  379. </el-col>
  380. <el-col :span="8" v-if="isShow('特殊处理情况')">
  381. <el-form-item label="特殊处理情况:" :prop="isName('特殊处理情况')"
  382. :rules="isCheckmust('特殊处理情况')">
  383. <el-input v-model="assessmentBeforeDislysis.special_treatment"></el-input>
  384. </el-form-item>
  385. </el-col>
  386. <el-col :span="8">
  387. <el-form-item label="透析期间: " :prop="isName('透析期间')"
  388. :rules="isCheckmust('透析期间')" v-if="isShow('透析期间')">
  389. <el-input v-model="assessmentBeforeDislysis.dialysis_interphase" @focus="showInnerDialog('2')">>
  390. </el-input>
  391. </el-form-item>
  392. </el-col>
  393. <el-col :span="8">
  394. <el-form-item label="位置: " :prop="isName('位置')"
  395. :rules="isCheckmust('位置')" v-if="isShow('位置')">
  396. <el-select v-model="assessmentBeforeDislysis.venous_catheterization_part">
  397. <el-option :key="0" label="请选择" :value="0"></el-option>
  398. <el-option v-for="item in this.$store.getters.venous_catheterization_part" :label="item.name"
  399. :value="item.id"
  400. :key="item.id"></el-option>
  401. </el-select>
  402. </el-form-item>
  403. </el-col>
  404. <el-col :span="8" v-if="isShow('其他中心静脉导管')">
  405. <el-form-item label="其他中心静脉导管:" :prop="isName('其他中心静脉导管')"
  406. :rules="isCheckmust('其他中心静脉导管')">
  407. <div>
  408. <el-input v-model="assessmentBeforeDislysis.ductus_arantii_other"></el-input>
  409. </div>
  410. </el-form-item>
  411. </el-col>
  412. <el-col :span="8">
  413. <el-form-item label="感染: " :prop="isName('感染')"
  414. :rules="isCheckmust('感染')" v-if="isShow('感染')">
  415. <el-select v-model="assessmentBeforeDislysis.is_infect">
  416. <el-option :key="0" label="请选择" :value="0"></el-option>
  417. <el-option label="无" value="1"></el-option>
  418. <el-option label="有" value="2"></el-option>
  419. </el-select>
  420. </el-form-item>
  421. </el-col>
  422. <el-col :span="8" v-if="isShow('其他感染情况')">
  423. <el-form-item label="其他感染情况:" :prop="isName('其他感染情况')"
  424. :rules="isCheckmust('其他感染情况')">
  425. <el-input v-model="assessmentBeforeDislysis.infect_other"></el-input>
  426. </el-form-item>
  427. </el-col>
  428. <el-col :span="8" v-if="isShow('外露')">
  429. <el-form-item label="外露(cm):" :prop="isName('外露')"
  430. :rules="isCheckmust('外露')">
  431. <el-input v-model="assessmentBeforeDislysis.exposed"></el-input>
  432. </el-form-item>
  433. </el-col>
  434. <el-col :span="8" v-if="isShow('其他皮肤情况')">
  435. <el-form-item label="其他皮肤情况:" :prop="isName('其他皮肤情况')"
  436. :rules="isCheckmust('其他皮肤情况')">
  437. <el-input v-model="assessmentBeforeDislysis.skin_other"></el-input>
  438. </el-form-item>
  439. </el-col>
  440. <el-col :span="8">
  441. <el-form-item label="导管缝线:" :prop="isName('导管缝线')"
  442. :rules="isCheckmust('导管缝线')" v-if="isShow('导管缝线')">
  443. <el-input v-model="assessmentBeforeDislysis.catheter_suture" @focus="showInnerDialog('15')"></el-input>
  444. </el-form-item>
  445. </el-col>
  446. <el-col :span="8" v-if="isShow('导管缝线(其他)')">
  447. <el-form-item label="导管缝线(其他):" :prop="isName('导管缝线(其他)')"
  448. :rules="isCheckmust('导管缝线(其他)')">
  449. <el-input v-model="assessmentBeforeDislysis.catheter_suture_other"></el-input>
  450. </el-form-item>
  451. </el-col>
  452. <el-col :span="8" v-if="isShow('尿量')">
  453. <el-form-item label="尿量(ml):" :prop="isName('尿量')"
  454. :rules="isCheckmust('尿量')">
  455. <el-input v-model="assessmentBeforeDislysis.urine_volume"></el-input>
  456. </el-form-item>
  457. </el-col>
  458. <el-col :span="8">
  459. <el-form-item label="水肿:" :prop="isName('水肿')"
  460. :rules="isCheckmust('水肿')" v-if="isShow('水肿')">
  461. <el-input v-model="assessmentBeforeDislysis.edema" @focus="showInnerDialog('16')"></el-input>
  462. </el-form-item>
  463. </el-col>
  464. <el-col :span="8">
  465. <el-form-item label="预增脱水量(L):" :prop="isName('预增脱水量')"
  466. :rules="isCheckmust('预增脱水量')" v-if="isShow('预增脱水量')">
  467. <el-input v-model="assessmentBeforeDislysis.dehydration"></el-input>
  468. </el-form-item>
  469. </el-col>
  470. <el-col :span="8">
  471. <el-form-item label="透析前药物:" :prop="isName('透析前药物')"
  472. :rules="isCheckmust('透析前药物')" v-if="isShow('透析前药物')">
  473. <el-input v-model="assessmentBeforeDislysis.pre_dialysis_drugs"></el-input>
  474. </el-form-item>
  475. </el-col>
  476. <el-col :span="8">
  477. <el-form-item label="围手术期:" :prop="isName('围手术期')"
  478. :rules="isCheckmust('围手术期')" v-if="isShow('围手术期')">
  479. <el-select v-model="assessmentBeforeDislysis.period">
  480. <el-option :key="0" label="请选择" :value="0"></el-option>
  481. <el-option label="无" value="1"></el-option>
  482. <el-option label="有" value="2"></el-option>
  483. </el-select>
  484. </el-form-item>
  485. </el-col>
  486. <el-col :span="8">
  487. <el-form-item label="预计进食量(g):" :prop="isName('预计进食量')"
  488. :rules="isCheckmust('预计进食量')" v-if="isShow('预计进食量')">
  489. <el-input v-model="assessmentBeforeDislysis.estimated_food_intake"></el-input>
  490. </el-form-item>
  491. </el-col>
  492. <el-col :span="8">
  493. <el-form-item label="透析期间血压:" :prop="isName('透析期间血压')"
  494. :rules="isCheckmust('透析期间血压')" v-if="isShow('透析期间血压')">
  495. <el-input v-model="assessmentBeforeDislysis.blood_pressure_during_dialysis"></el-input>
  496. </el-form-item>
  497. </el-col>
  498. <el-col :span="8" v-if="isShow('透前尿素')">
  499. <el-form-item label="透前尿素(mmol/L):" :prop="isName('透前尿素')"
  500. :rules="isCheckmust('透前尿素')" label-width="150px">
  501. <el-input v-model="assessmentBeforeDislysis.urea_befor"></el-input>
  502. </el-form-item>
  503. </el-col>
  504. <el-col :span="8" v-if="isShow('住院科室')">
  505. <el-form-item label="住院科室:" :prop="isName('住院科室')"
  506. :rules="isCheckmust('住院科室')" label-width="150px">
  507. <el-input v-model="assessmentBeforeDislysis.his_department"></el-input>
  508. </el-form-item>
  509. </el-col>
  510. <el-col :span="8" v-if="isShow('住院床位')">
  511. <el-form-item label="住院床位:" :prop="isName('住院床位')"
  512. :rules="isCheckmust('住院床位')" label-width="150px">
  513. <el-input v-model="assessmentBeforeDislysis.his_bed"></el-input>
  514. </el-form-item>
  515. </el-col>
  516. <el-col :span="8">
  517. <el-form-item label="抽吸:" :prop="isName('抽吸')"
  518. :rules="isCheckmust('抽吸')" v-if="isShow('抽吸')">
  519. <el-input v-model="assessmentBeforeDislysis.suction" @focus="showInnerDialog('20')"></el-input>
  520. </el-form-item>
  521. </el-col>
  522. <el-col :span="8">
  523. <el-form-item label="透前净体重:"
  524. v-if="this.$store.getters.xt_user.template_info.template_id == 6">
  525. <el-input v-model="body_weight_before" readonly></el-input>
  526. </el-form-item>
  527. </el-col>
  528. <el-col :span="8">
  529. <el-form-item label="导管评估项目: " :prop="isName('导管评估项目')"
  530. :rules="isCheckmust('导管评估项目')" v-if="isShow('导管评估项目')">
  531. <el-input v-model="assessmentBeforeDislysis.catheter_evaluation_program" readonly
  532. @focus="showInnerDialog('22')"></el-input>
  533. </el-form-item>
  534. </el-col>
  535. <el-col :span="8">
  536. <el-form-item label="置管部位皮肤:" :prop="isName('置管部位皮肤')"
  537. :rules="isCheckmust('置管部位皮肤')" v-if="isShow('置管部位皮肤')">
  538. <el-input v-model="assessmentBeforeDislysis.skin_site_catheterization" readonly
  539. @focus="showInnerDialog('23')"></el-input>
  540. </el-form-item>
  541. </el-col>
  542. <el-col :span="8">
  543. <el-form-item label="是否通畅:" :prop="isName('是否通畅')"
  544. :rules="isCheckmust('是否通畅')" v-if="isShow('是否通畅')">
  545. <el-select v-model="assessmentBeforeDislysis.whether_unobstructed" @change="changeThrombus">
  546. <el-option :key="0" label="请选择" :value="0"></el-option>
  547. <el-option label="是" value="1"></el-option>
  548. <el-option label="否" value="2"></el-option>
  549. </el-select>
  550. </el-form-item>
  551. </el-col>
  552. <el-col :span="8">
  553. <el-form-item label="留置必要:" :prop="isName('留置必要')"
  554. :rules="isCheckmust('留置必要')" v-if="isShow('留置必要')">
  555. <el-select v-model="assessmentBeforeDislysis.lien_necessary" @change="changeThrombus">
  556. <el-option :key="0" label="请选择" :value="0"></el-option>
  557. <el-option label="是" value="1"></el-option>
  558. <el-option label="否" value="2"></el-option>
  559. </el-select>
  560. </el-form-item>
  561. </el-col>
  562. <el-col :span="8">
  563. <el-form-item label="通路形成时间:" :prop="isName('通路形成时间')"
  564. :rules="isCheckmust('通路形成时间')" v-if="isShow('通路形成时间')">
  565. <el-date-picker
  566. v-model="assessmentBeforeDislysis.pathway_formation_time"
  567. type="date"
  568. style="width:200px"
  569. format="yyyy-MM-dd"
  570. value-format="yyyy-MM-dd"
  571. placeholder="通路形成时间">
  572. </el-date-picker>
  573. </el-form-item>
  574. </el-col>
  575. </el-row>
  576. <el-row :gutter="20">
  577. <el-col :span="24" v-if="isShow('透前症状')">
  578. <el-form-item
  579. label="透前症状:"
  580. :prop="isName('透前症状')"
  581. :rules="isCheckmust('透前症状')"
  582. >
  583. <el-select @change="dialysisSummarySelectChange" v-model="value2">
  584. <el-option
  585. v-for="(item, index) in summary"
  586. :label="item.text"
  587. :value="item.value"
  588. :key="index"
  589. ></el-option>
  590. </el-select>
  591. </el-form-item>
  592. </el-col>
  593. <el-col v-if="isShow('透前症状')">
  594. <el-form-item
  595. :prop="isName('透前症状')"
  596. :rules="isCheckmust('透前症状')"
  597. >
  598. <el-input
  599. type="textarea"
  600. v-model="assessmentBeforeDislysis.befor_symptoms"
  601. :rows="4"
  602. ></el-input>
  603. </el-form-item>
  604. </el-col>
  605. <el-col :span="8">
  606. <el-form-item label="Ns冲洗量(ml):" :prop="isName('冲洗量')" v-if="isShow('冲洗量')">
  607. <el-input v-model="assessmentBeforeDislysis.warsh_count"></el-input>
  608. </el-form-item>
  609. </el-col>
  610. <el-col :span="8">
  611. <el-form-item label="q(h):" :prop="isName('冲洗时间')" v-if="isShow('冲洗时间')">
  612. <el-input v-model="assessmentBeforeDislysis.washing_time"></el-input>
  613. </el-form-item>
  614. </el-col>
  615. <el-col :span="24">
  616. <el-form-item label="备注: " :prop="isName('备注')"
  617. :rules="isCheckmust('备注')">
  618. <el-input type="textarea" v-model="assessmentBeforeDislysis.remark" :rows="5"></el-input>
  619. </el-form-item>
  620. </el-col>
  621. </el-row>
  622. </el-form>
  623. <span slot="footer" class="dialog-footer">
  624. <el-button @click="handleCancle">取 消</el-button>
  625. <!--v-if="hasPermission" -->
  626. <el-button type="primary" @click="handleComfirm('assessmentBeforeDislysis')">保 存</el-button>
  627. </span>
  628. </el-dialog>
  629. <el-dialog title="调整干体重 " :visible.sync="dialogFormVisible" width="50%" @close="cancleDryWeight()">
  630. <el-form :model="weight_adjust" ref="weight_adjust">
  631. <el-form-item label="干体重 :" label-width="80px" >
  632. <el-input style="width: 200px" v-model="weight_adjust.weight" auto-complete="off"></el-input>
  633. </el-form-item>
  634. <el-form-item label="医生 : " label-width="80px">
  635. <el-select v-model="weight_adjust.doctor" placeholder="请选择医生">
  636. <el-option v-for="(item,index) in doctorOptions" :label="item.name" :value="item.id" :key="index"></el-option>
  637. </el-select>
  638. </el-form-item>
  639. <el-form-item label="备注 : " label-width="80px">
  640. <el-input
  641. type="textarea"
  642. :rows="2"
  643. style="width:200px;"
  644. placeholder="请输入内容"
  645. v-model="weight_adjust.remark">
  646. </el-input>
  647. </el-form-item>
  648. </el-form>
  649. <!-- 六次干体重调整记录 -->
  650. <div style="margin: 10px 50px;"><span style="font-weight: bold;">近六次干体重调整记录</span></div>
  651. <div class="gantizhong">
  652. <el-table :data="dryWeightList" stripe style="width: 100%">
  653. <el-table-column prop="" label="时间" width="180">
  654. <template slot-scope="scope">
  655. {{ getTime(scope.row.ctime) }}
  656. </template>
  657. </el-table-column>
  658. <el-table-column prop="" label="干体重" width="180">
  659. <template slot-scope="scope">
  660. {{scope.row.dry_weight }}
  661. </template>
  662. </el-table-column>
  663. <el-table-column prop="" label="医生" width="180">
  664. <template slot-scope="scope">
  665. {{getUserName(scope.row.creator) }}
  666. </template>
  667. </el-table-column>
  668. <el-table-column prop="" label="备注">
  669. <template slot-scope="scope">
  670. {{scope.row.remakes }}
  671. </template>
  672. </el-table-column>
  673. </el-table>
  674. </div>
  675. <div slot="footer" class="dialog-footer">
  676. <el-button @click="cancleDryWeight()">取 消</el-button>
  677. <el-button type="primary" @click="submitDryWeight()">保 存</el-button>
  678. </div>
  679. </el-dialog>
  680. <el-dialog
  681. title="提示"
  682. :visible.sync="infoDialogVisible"
  683. width="30%">
  684. <span>
  685. <el-form>
  686. <el-row>
  687. <span>申请日期:</span>
  688. <span>
  689. <el-date-picker
  690. type="datetime"
  691. format="yyyy-MM-dd HH:mm"
  692. value-format="yyyy-MM-dd HH:mm"
  693. placeholder="选择时间"
  694. v-model="selected_date"
  695. ></el-date-picker>
  696. </span>
  697. </el-row>
  698. <el-row>
  699. <span>备注:</span>
  700. <span>
  701. <el-input v-model="remark" style="width:200px"></el-input>
  702. </span>
  703. </el-row>
  704. </el-form>
  705. </span>
  706. <span slot="footer" class="dialog-footer">
  707. <el-button @click="infoDialogVisible = false">取 消</el-button>
  708. <el-button type="primary" @click="saveInformation">确 定</el-button>
  709. </span>
  710. </el-dialog>
  711. </div>
  712. </template>
  713. <script>
  714. import axios from 'axios'
  715. import multiSelectBox from './MultiSelectBox'
  716. import { getDataConfig } from '@/utils/data'
  717. import { postAssessmentBeforeDislysis, CreateDryWeight,saveInformation } from '@/api/dialysis'
  718. import store from '@/store'
  719. import { uParseTime } from '@/utils/tools'
  720. import { parseTime } from '@/utils'
  721. import request from '@/utils/request'
  722. const moment = require('moment')
  723. export default {
  724. components: {
  725. multiSelectBox
  726. },
  727. name: 'assessment-after-dislysis-dialog',
  728. data() {
  729. return {
  730. hemorrhages:[
  731. {value:0,label:'请选择'},
  732. {value:1,label: '是'},
  733. {value:2,label: '否'},
  734. ],
  735. catheters:[
  736. {value:0,label:'请选择'},
  737. {value:1,label:'有'},
  738. {value:2,label:'无'}
  739. ],
  740. showTxt: '',
  741. hasPermission: true,
  742. weight_adjust: {
  743. weight: '',
  744. doctor: '',
  745. remark: ''
  746. },
  747. lastPredialysisEvaluation: null,
  748. lastDryWeightDislysis: null,
  749. doctorOptions: [],
  750. isVisibility: false,
  751. dialogFormVisible: false,
  752. actualTreatmentHourShow: new Date(2018, 1, 1, 3, 0),
  753. record_date: '',
  754. cruorOptions: [],
  755. last_dialysis_after: [],
  756. dialysis_interphase: [],
  757. symptom_before_dialysis: [],
  758. blood_access_noise: [],
  759. catheter_suture:[],
  760. edema:[],
  761. catheter: [],
  762. complication: [],
  763. hemorrhage: [],
  764. blood_access_part: [],
  765. blood_access_part_opera: [],
  766. humor_excessive_symptom_array: [],
  767. internal_fistula: [],
  768. internal_fistula_skin: [],
  769. puncture_method: [],
  770. suctionList:[],
  771. isVisibiltyForCruorDialog: false,
  772. assessmentBeforeDislysis: {
  773. puncture_needle: '',
  774. catheter_bend: '',
  775. internal_fistula_skin: '',
  776. weight_before: '',
  777. additional_weight: '',
  778. temperature: '',
  779. dry_weight: '',
  780. systolic_blood_pressure: '',
  781. diastolic_blood_pressure: '',
  782. symptom_before_dialysis: '',
  783. pulse_frequency: '',
  784. last_post_dialysis: '',
  785. dialysis_interphase: '',
  786. catheter: '',
  787. complication: '',
  788. remark: '',
  789. humor_excessive_symptom: '',
  790. blood_access_part_id: '',
  791. blood_access_part_opera_id: '',
  792. internal_fistula: '',
  793. is_hemorrhage: '',
  794. hemorrhage: '',
  795. hemorrhage_other: '',
  796. puncture_method: '',
  797. breathing_rate: '',
  798. dialysis_count: '',
  799. emergency_treatment: '',
  800. emergency_treatment_other: '',
  801. ductus_arantii_other: '',
  802. ductus_arantii: '',
  803. venous_catheterization_part_other: '',
  804. venous_catheterization_part: '',
  805. venous_catheterization: '',
  806. puncture_way: '',
  807. blood_access_noise: '',
  808. internal_fistula_other: '',
  809. blood_access_internal_fistula: '',
  810. is_infect: '',
  811. exposed: '',
  812. skin: '',
  813. skin_other: '',
  814. infect_other: '',
  815. machine_type: '',
  816. pinholing:'',
  817. catheter_suture:'',
  818. catheter_suture_other:'',
  819. urine_volume:'',
  820. edema:'',
  821. special_treatment:'',
  822. catheter_maintenance:"",
  823. thromubus_type:"",
  824. thrombus_av:"",
  825. thromubus_a:"",
  826. thromubus_v:"",
  827. dehydration:"",
  828. pre_dialysis_drugs:"",
  829. period:"",
  830. estimated_food_intake:"",
  831. blood_pressure_during_dialysis:"",
  832. urea_befor:"",
  833. suction:"",
  834. weight_befor_remake:"",
  835. height:"",
  836. age:"",
  837. his_department:"",
  838. his_bed:"",
  839. point_puncture:"",
  840. catheter_evaluation_program:"",
  841. skin_site_catheterization:"",
  842. pathway_formation_time:"",
  843. lien_necessary:"",
  844. befor_symptoms:"",
  845. washing_time:"",
  846. warsh_count:"",
  847. },
  848. InnerDialogProps: {
  849. values: [],
  850. visibility: false,
  851. isShowTextArea: true,
  852. customContent: '',
  853. titles: '',
  854. type: '' // 不同弹框类型,用来匹配数据
  855. },
  856. machineType: [],
  857. puncture_ways: '',
  858. skins:[],
  859. pinholings:[],
  860. catheter_maintenancelist:[],
  861. thrombuShow:false,
  862. body_weight_before:"",
  863. point_punctures:[],
  864. infoDialogVisible:false,
  865. selected_date:"",
  866. remark:"",
  867. catheter_evaluation_program_list:[],
  868. skin_site_catheterization_list:[],
  869. summary:[],
  870. value2:""
  871. }
  872. },
  873. props: {
  874. predialysis_evaluation: { // 透前评估
  875. type: Object,
  876. default: () => {
  877. return { id: 0 }
  878. }
  879. },
  880. patient: { // 患者信息
  881. type: Object,
  882. default: () => {
  883. return { id: 0 }
  884. }
  885. },
  886. admin_users: { // 系统用户列表
  887. type: Array,
  888. default: () => {
  889. return []
  890. }
  891. },
  892. lastAssessment:{
  893. type:Object,
  894. default: () => {
  895. return []
  896. }
  897. },
  898. prescription: {
  899. // 透析处方
  900. type: Object,
  901. default: () => {
  902. return { id: 0 }
  903. }
  904. },
  905. dryWeightList:{
  906. type:Array,
  907. default:()=>{
  908. return [];
  909. }
  910. },
  911. docList:{
  912. type:Array,
  913. default:()=>{
  914. return [];
  915. }
  916. }
  917. },
  918. methods: {
  919. isName(name) {
  920. let filedList = store.getters.xt_user.fileds;
  921. for (let i = 0; i < filedList.length; i++) {
  922. if (filedList[i].module == 3 && filedList[i].filed_name_cn == name) {
  923. return filedList[i].filed_name;
  924. }
  925. }
  926. },
  927. isCheckmust(name) {
  928. let filedList = store.getters.xt_user.fileds;
  929. for (let i = 0; i < filedList.length; i++) {
  930. if (
  931. filedList[i].module == 3 &&
  932. filedList[i].filed_name_cn == name &&
  933. filedList[i].is_write == 1&&
  934. filedList[i].is_show == 1
  935. ) {
  936. // console.log(filedList[i],'false')
  937. if (name == "血管通路"||name == "导管打折"||name == '出血'||name == '血栓'||
  938. name == '围手术期'||name=='血管杂音'||name=='急诊'||name=='中心静脉导置管'
  939. ) {
  940. return [
  941. { required: true, message: `请输入${name}` },
  942. // {
  943. // required: true,
  944. // pattern: /^[1-9]\d*$/,
  945. // message: `请输入${name}`,
  946. // },
  947. ];
  948. }
  949. return [{ required: true ,message:`请输入${name}`, trigger: ['blur','change'] }];
  950. }
  951. }
  952. },
  953. setLastRecord(lastPredialysisEvaluation, lastDryWeightDislysis) {
  954. this.lastPredialysisEvaluation = lastPredialysisEvaluation
  955. this.lastDryWeightDislysis = lastDryWeightDislysis
  956. },
  957. isShow(name) {
  958. var filedList = store.getters.xt_user.fileds
  959. for (let i = 0; i < filedList.length; i++) {
  960. if (filedList[i].module == 3 && filedList[i].filed_name_cn == name && filedList[i].is_show == 1) {
  961. // console.log("filedList",filedList)
  962. return true
  963. }
  964. }
  965. return false
  966. },
  967. show(assessment, lastDryWeightDislysis,last_predialysis_evaluation,lastAssessment,record_date) {
  968. let filedList = store.getters.xt_user.fileds;
  969. this.lastPredialysisEvaluation = last_predialysis_evaluation
  970. console.log("获取上次数据",this.lastPredialysisEvaluation, this.$store.getters.xt_user.org.id )
  971. if(record_date!=null && record_date!=undefined){
  972. this.record_date = record_date
  973. }
  974. if(this.lastPredialysisEvaluation != null) {
  975. // if(this.lastPredialysisEvaluation.remark == "" && this.$store.getters.xt_user.org.id == 10307){
  976. // console.log("2o2o3232o23o2o3o23")
  977. // this.assessmentBeforeDislysis.remark = "患者已确认无发热,无流行病学接触史"
  978. // }
  979. if(this.lastPredialysisEvaluation.thromubus_type == 1){
  980. this.assessmentBeforeDislysis.thromubus_type = this.lastPredialysisEvaluation.thromubus_type.toString()
  981. this.thrombuShow = true
  982. }
  983. if(this.lastPredialysisEvaluation.thromubus_type == 2){
  984. this.assessmentBeforeDislysis.thromubus_type = this.lastPredialysisEvaluation.thromubus_type.toString()
  985. }
  986. if (this.lastPredialysisEvaluation.is_hemorrhage == 1) {
  987. this.lastPredialysisEvaluation.is_hemorrhage = "1"
  988. }
  989. if (this.lastPredialysisEvaluation.is_hemorrhage == 2) {
  990. this.lastPredialysisEvaluation.is_hemorrhage = "2"
  991. }
  992. if (this.lastPredialysisEvaluation.catheter_bend == 1) {
  993. this.lastPredialysisEvaluation.catheter_bend = "1"
  994. }
  995. if (this.lastPredialysisEvaluation.catheter_bend == 2) {
  996. this.lastPredialysisEvaluation.catheter_bend = "2"
  997. }
  998. if (this.lastPredialysisEvaluation.is_infect == 1) {
  999. this.lastPredialysisEvaluation.is_infect = "1"
  1000. }
  1001. if (this.lastPredialysisEvaluation.is_infect == 2) {
  1002. this.lastPredialysisEvaluation.is_infect = "2"
  1003. }
  1004. if(this.lastPredialysisEvaluation.period == 1){
  1005. this.lastPredialysisEvaluation.period = "1"
  1006. }
  1007. if(this.lastPredialysisEvaluation.period == 2){
  1008. this.lastPredialysisEvaluation.period = "2"
  1009. }
  1010. }
  1011. this.assessmentBeforeDislysis.pathway_formation_time = moment(new Date()).format('YYYY-MM-DD')
  1012. console.log(" this.assessmentBeforeDislysis.pathway_formation_time", moment(new Date()).format('YYYY-MM-DD'))
  1013. console.log("hhahhahahah",assessment)
  1014. if(assessment!=null){
  1015. if(assessment.pathway_formation_time >0){
  1016. this.assessmentBeforeDislysis.pathway_formation_time = this.getTimeOne(assessment.pathway_formation_time)
  1017. }else{
  1018. this.assessmentBeforeDislysis.pathway_formation_time = ""
  1019. }
  1020. if(assessment.whether_unobstructed >0){
  1021. this.assessmentBeforeDislysis.whether_unobstructed = assessment.whether_unobstructed.toString()
  1022. }
  1023. if(assessment.lien_necessary>0){
  1024. this.assessmentBeforeDislysis.lien_necessary = assessment.lien_necessary.toString()
  1025. }
  1026. }
  1027. this.assessment = assessment
  1028. this.getPermission()
  1029. this.isVisibility = true
  1030. for (let i = 0; i < this.admin_users.length; i++) {
  1031. if (this.admin_users[i].user_type != 3) {
  1032. this.doctorOptions.push(this.admin_users[i])
  1033. }
  1034. }
  1035. if (this.$store.getters.xt_user.user.user_type == 1 || this.$store.getters.xt_user.user.user_type == 2) {
  1036. this.weight_adjust.doctor = this.$store.getters.xt_user.user.id
  1037. }
  1038. if (this.predialysis_evaluation.id == 0) {
  1039. if (lastDryWeightDislysis != null) {
  1040. this.weight_adjust.weight = lastDryWeightDislysis.dry_weight
  1041. this.$set(
  1042. this.assessmentBeforeDislysis,
  1043. 'dry_weight',
  1044. lastDryWeightDislysis.dry_weight.toString()
  1045. )
  1046. } else {
  1047. if (this.lastPredialysisEvaluation != null) {
  1048. this.weight_adjust.weight = this.lastPredialysisEvaluation.dry_weight
  1049. this.assessmentBeforeDislysis.dry_weight = this.lastPredialysisEvaluation.dry_weight
  1050. }
  1051. }
  1052. if (this.lastPredialysisEvaluation != null) {
  1053. for (var key in this.lastPredialysisEvaluation){
  1054. if (key != 'systolic_blood_pressure' && key != 'diastolic_blood_pressure' && key != 'pulse_frequency' && key != 'dry_weight' && key != 'weight_before'){
  1055. this.$set(
  1056. this.assessmentBeforeDislysis,
  1057. key,
  1058. this.lastPredialysisEvaluation[key]
  1059. )
  1060. }
  1061. }
  1062. }
  1063. //最后一次血管通路
  1064. if(this.lastAssessment!=null){
  1065. var blood_id = 0
  1066. for(let i= 0;i<this.blood_access_part_opera.length;i++){
  1067. if(this.lastAssessment.blood_access_part_opera_id == this.blood_access_part_opera[i].name){
  1068. blood_id = this.blood_access_part_opera[i].id
  1069. }
  1070. }
  1071. this.assessmentBeforeDislysis.blood_access_part_opera_id = blood_id
  1072. this.assessmentBeforeDislysis.blood_access_part_id = this.lastAssessment.blood_access_part_id
  1073. } else {
  1074. if (this.lastPredialysisEvaluation != null) {
  1075. var blood_id = 0
  1076. for(let i= 0;i<this.blood_access_part_opera.length;i++){
  1077. if(this.lastAssessment.blood_access_part_opera_id == this.blood_access_part_opera[i].name){
  1078. blood_id = this.blood_access_part_opera[i].id
  1079. }
  1080. }
  1081. this.assessmentBeforeDislysis.blood_access_part_opera_id = blood_id
  1082. this.assessmentBeforeDislysis.blood_access_part_id = this.lastPredialysisEvaluation.blood_access_part_id
  1083. }
  1084. }
  1085. } else {
  1086. console.log("为首务2322323",this.assessmentBeforeDislysis.period)
  1087. this.assessmentBeforeDislysis.period = this.assessmentBeforeDislysis.period.toString()
  1088. // this.assessmentBeforeDislysis.dry_weight = this.predialysis_evaluation['dry_weight']
  1089. this.weight_adjust.weight = this.predialysis_evaluation['dry_weight']
  1090. }
  1091. },
  1092. hide() {
  1093. this.isVisibility = false
  1094. },
  1095. showInnerDialog: function(val) {
  1096. this.InnerDialogProps.visibility = true
  1097. switch (val) {
  1098. case '1': // 前次透析后
  1099. this.InnerDialogProps.values = this.last_dialysis_after
  1100. this.InnerDialogProps.titles = '前次透析后'
  1101. this.InnerDialogProps.type = 'last_dialysis_after'
  1102. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.last_post_dialysis
  1103. this.InnerDialogProps.isShowTextArea = false
  1104. break
  1105. case '2': // 透析期间
  1106. this.InnerDialogProps.values = this.dialysis_interphase
  1107. this.InnerDialogProps.titles = '透析期间'
  1108. this.InnerDialogProps.type = 'dialysis_interphase'
  1109. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.dialysis_interphase
  1110. this.InnerDialogProps.isShowTextArea = false
  1111. break
  1112. break
  1113. case '3': // 透析前症状
  1114. this.InnerDialogProps.values = this.symptom_before_dialysis
  1115. this.InnerDialogProps.titles = '透析前症状'
  1116. this.InnerDialogProps.type = 'symptom_before_dialysis'
  1117. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.symptom_before_dialysis
  1118. this.InnerDialogProps.isShowTextArea = false
  1119. break
  1120. case '4': // 导管
  1121. this.InnerDialogProps.values = this.catheter
  1122. this.InnerDialogProps.titles = '导管'
  1123. this.InnerDialogProps.type = 'catheter'
  1124. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.catheter
  1125. this.InnerDialogProps.isShowTextArea = false
  1126. break
  1127. break
  1128. case '5': // 并发症
  1129. this.InnerDialogProps.values = this.complication
  1130. this.InnerDialogProps.titles = '并发症'
  1131. this.InnerDialogProps.type = 'complication'
  1132. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.complication
  1133. this.InnerDialogProps.isShowTextArea = false
  1134. break
  1135. case '6': // 出血选项
  1136. this.InnerDialogProps.values = this.hemorrhage
  1137. this.InnerDialogProps.titles = '出血选项'
  1138. this.InnerDialogProps.type = 'hemorrhage'
  1139. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.hemorrhage
  1140. this.InnerDialogProps.isShowTextArea = false
  1141. break
  1142. case '7': // 内瘘
  1143. this.InnerDialogProps.values = this.internal_fistula
  1144. this.InnerDialogProps.titles = '内瘘'
  1145. this.InnerDialogProps.type = 'internal_fistula'
  1146. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.internal_fistula
  1147. this.InnerDialogProps.isShowTextArea = false
  1148. break
  1149. case '8': // 内瘘皮肤情况
  1150. this.InnerDialogProps.values = this.internal_fistula_skin
  1151. this.InnerDialogProps.titles = '血管通路皮肤情况'
  1152. this.InnerDialogProps.type = 'internal_fistula_skin'
  1153. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.internal_fistula_skin
  1154. this.InnerDialogProps.isShowTextArea = false
  1155. break
  1156. case '9': //
  1157. this.InnerDialogProps.values = this.$store.getters.blood_access_internal_fistula
  1158. this.InnerDialogProps.titles = '血管通路(内瘘)'
  1159. this.InnerDialogProps.type = 'blood_access_internal_fistula'
  1160. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.blood_access_internal_fistula
  1161. this.InnerDialogProps.isShowTextArea = false
  1162. break
  1163. case '10': //
  1164. this.InnerDialogProps.values = this.$store.getters.ductus_arantii
  1165. this.InnerDialogProps.titles = '中心静脉导管'
  1166. this.InnerDialogProps.type = 'ductus_arantii'
  1167. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.ductus_arantii
  1168. this.InnerDialogProps.isShowTextArea = false
  1169. break
  1170. case '11': //
  1171. this.InnerDialogProps.values =getDataConfig('hemodialysis', 'puncture_needle')
  1172. this.InnerDialogProps.titles = '穿刺针'
  1173. this.InnerDialogProps.type = 'puncture_needle'
  1174. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.puncture_needle
  1175. this.InnerDialogProps.isShowTextArea = false
  1176. break
  1177. case '12': // 皮肤
  1178. this.InnerDialogProps.values = this.skins
  1179. this.InnerDialogProps.titles = '皮肤'
  1180. this.InnerDialogProps.type = 'skin'
  1181. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.skin
  1182. this.InnerDialogProps.isShowTextArea = false
  1183. break
  1184. case '13': // 穿刺方式
  1185. this.InnerDialogProps.values = this.puncture_ways
  1186. this.InnerDialogProps.titles = '穿刺方式'
  1187. this.InnerDialogProps.type = 'puncture_way'
  1188. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.puncture_way
  1189. this.InnerDialogProps.isShowTextArea = false
  1190. break
  1191. case '14': // 针眼
  1192. this.InnerDialogProps.values = this.pinholings
  1193. this.InnerDialogProps.titles = '针眼'
  1194. this.InnerDialogProps.type = 'pinholing'
  1195. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.pinholing
  1196. this.InnerDialogProps.isShowTextArea = false
  1197. break
  1198. case '15': // 导管缝线
  1199. this.InnerDialogProps.values = this.catheter_suture
  1200. this.InnerDialogProps.titles = '导管缝线'
  1201. this.InnerDialogProps.type = 'catheter_suture'
  1202. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.catheter_suture
  1203. this.InnerDialogProps.isShowTextArea = false
  1204. break
  1205. case '16': // 水肿
  1206. this.InnerDialogProps.values = this.edema
  1207. this.InnerDialogProps.titles = '水肿'
  1208. this.InnerDialogProps.type = 'edema'
  1209. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.edema
  1210. this.InnerDialogProps.isShowTextArea = false
  1211. break
  1212. case '17': // 水肿
  1213. this.InnerDialogProps.values = this.blood_access_part
  1214. this.InnerDialogProps.titles = '血管通路部位'
  1215. this.InnerDialogProps.type = 'blood_access_part_id'
  1216. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.blood_access_part_id
  1217. this.InnerDialogProps.isShowTextArea = false
  1218. break
  1219. case '18': // 导管维护
  1220. this.InnerDialogProps.values = this.catheter_maintenancelist
  1221. this.InnerDialogProps.titles = '导管维护'
  1222. this.InnerDialogProps.type = 'catheter_maintenance'
  1223. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.catheter_maintenance
  1224. this.InnerDialogProps.isShowTextArea = false
  1225. break
  1226. case '19': // 内瘘
  1227. this.InnerDialogProps.values = this.humor_excessive_symptom_array
  1228. this.InnerDialogProps.titles = '体液过多症状'
  1229. this.InnerDialogProps.type = 'humor_excessive_symptom'
  1230. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.humor_excessive_symptom
  1231. this.InnerDialogProps.isShowTextArea = false
  1232. break
  1233. case '20': // 抽吸
  1234. this.InnerDialogProps.values = this.suctionList
  1235. this.InnerDialogProps.titles = '抽吸'
  1236. this.InnerDialogProps.type = 'suction'
  1237. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.suction
  1238. this.InnerDialogProps.isShowTextArea = false
  1239. case '21': // 穿刺点
  1240. this.InnerDialogProps.values = this.point_punctures
  1241. this.InnerDialogProps.titles = '穿刺点'
  1242. this.InnerDialogProps.type = 'point_puncture'
  1243. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.point_puncture
  1244. this.InnerDialogProps.isShowTextArea = false
  1245. break
  1246. case '22': // 导管评估项目
  1247. this.InnerDialogProps.values = this.catheter_evaluation_program_list
  1248. this.InnerDialogProps.titles = '导管评估项目'
  1249. this.InnerDialogProps.type = 'catheter_evaluation_program'
  1250. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.catheter_evaluation_program
  1251. this.InnerDialogProps.isShowTextArea = false
  1252. break
  1253. case '23': // 置管部位皮肤
  1254. this.InnerDialogProps.values = this.skin_site_catheterization_list
  1255. this.InnerDialogProps.titles = '置管部位皮肤'
  1256. this.InnerDialogProps.type = 'skin_site_catheterization'
  1257. this.InnerDialogProps.selected = this.assessmentBeforeDislysis.skin_site_catheterization
  1258. this.InnerDialogProps.isShowTextArea = false
  1259. break
  1260. }
  1261. },
  1262. innerDialogComfirm: function(val) {
  1263. this.InnerDialogProps.visibility = false
  1264. switch (val.type) {
  1265. case 'last_dialysis_after':
  1266. this.assessmentBeforeDislysis.last_post_dialysis = val.value.join(',')
  1267. break
  1268. case 'dialysis_interphase':
  1269. this.assessmentBeforeDislysis.dialysis_interphase = val.value.join(',')
  1270. break
  1271. case 'symptom_before_dialysis':
  1272. this.assessmentBeforeDislysis.symptom_before_dialysis = val.value.join(',')
  1273. break
  1274. case 'catheter':
  1275. this.assessmentBeforeDislysis.catheter = val.value.join(',')
  1276. break
  1277. case 'complication':
  1278. this.assessmentBeforeDislysis.complication = val.value.join(',')
  1279. break
  1280. case 'hemorrhage':
  1281. this.assessmentBeforeDislysis.hemorrhage = val.value.join(',')
  1282. break
  1283. case 'internal_fistula':
  1284. this.assessmentBeforeDislysis.internal_fistula = val.value.join(',')
  1285. break
  1286. case 'internal_fistula_skin':
  1287. this.assessmentBeforeDislysis.internal_fistula_skin = val.value.join(',')
  1288. break
  1289. case 'blood_access_internal_fistula':
  1290. this.assessmentBeforeDislysis.blood_access_internal_fistula = val.value.join(',')
  1291. break
  1292. case 'ductus_arantii':
  1293. this.assessmentBeforeDislysis.ductus_arantii = val.value.join(',')
  1294. break
  1295. case 'puncture_needle':
  1296. this.assessmentBeforeDislysis.puncture_needle = val.value.join(',')
  1297. break
  1298. case 'skin':
  1299. this.assessmentBeforeDislysis.skin = val.value.join(',')
  1300. break
  1301. case 'puncture_way':
  1302. this.assessmentBeforeDislysis.puncture_way = val.value.join(',')
  1303. break
  1304. case 'pinholing':
  1305. this.assessmentBeforeDislysis.pinholing = val.value.join(',')
  1306. break
  1307. case 'catheter_suture':
  1308. this.assessmentBeforeDislysis.catheter_suture = val.value.join(',')
  1309. break
  1310. case 'edema':
  1311. this.assessmentBeforeDislysis.edema = val.value.join(',')
  1312. break
  1313. case 'blood_access_part_id':
  1314. this.assessmentBeforeDislysis.blood_access_part_id = val.value.join(',')
  1315. break
  1316. case 'catheter_maintenance':
  1317. this.assessmentBeforeDislysis.catheter_maintenance = val.value.join(',')
  1318. break
  1319. case 'humor_excessive_symptom':
  1320. this.assessmentBeforeDislysis.humor_excessive_symptom = val.value.join(',')
  1321. break
  1322. case 'suction':
  1323. this.assessmentBeforeDislysis.suction = val.value.join(',')
  1324. break
  1325. case 'point_puncture':
  1326. this.assessmentBeforeDislysis.point_puncture = val.value.join(',')
  1327. break
  1328. case 'catheter_evaluation_program':
  1329. this.assessmentBeforeDislysis.catheter_evaluation_program = val.value.join(',')
  1330. break
  1331. case 'skin_site_catheterization':
  1332. this.assessmentBeforeDislysis.skin_site_catheterization = val.value.join(',')
  1333. break
  1334. }
  1335. },
  1336. innerDialogCancle: function() {
  1337. this.InnerDialogProps.visibility = false
  1338. },
  1339. handleComfirm(formName) {
  1340. console.log("提交日期",this.record_date)
  1341. var arr = this.assessmentBeforeDislysis
  1342. for (let i = 0; i < this.machineType.length; i++) {
  1343. if (arr.machine_type == this.machineType[i].id) {
  1344. arr.machine_type = this.machineType[i].name
  1345. }
  1346. }
  1347. const ParamsQuery = arr
  1348. console.log("params",ParamsQuery)
  1349. this.$refs.assessmentBeforeDislysis.validate((valid) => {
  1350. if (valid) {
  1351. // if(this.patient.id == 'NaN' || this.patient.id ==0){
  1352. // ParamsQuery['patient'] = parseInt(this.$route.query.patient_id)
  1353. // }
  1354. // if(this.$route.query.patient_id == 'NaN' || this.$route.query.patient_id == 0 ){
  1355. // ParamsQuery['patient'] = this.patient.id
  1356. // }
  1357. ParamsQuery['patient'] = this.patient.id
  1358. ParamsQuery['record_date'] = this.record_date
  1359. ParamsQuery['mode'] = '1'
  1360. if (this.predialysis_evaluation.id == 0) {
  1361. ParamsQuery['mode'] = '1'
  1362. } else {
  1363. if (this.predialysis_evaluation.creater == 0) {
  1364. ParamsQuery['mode'] = '1'
  1365. } else {
  1366. ParamsQuery['mode'] = '2'
  1367. if (this.predialysis_evaluation.creater != this.$store.getters.xt_user.user.id) {
  1368. ParamsQuery['mode'] = '3'
  1369. }
  1370. }
  1371. }
  1372. console.log("params",ParamsQuery)
  1373. ParamsQuery.whether_unobstructed = parseInt(ParamsQuery.whether_unobstructed)
  1374. ParamsQuery.lien_necessary = parseInt(ParamsQuery.lien_necessary)
  1375. postAssessmentBeforeDislysis(ParamsQuery).then(response => {
  1376. if (response.data.state == 0) {
  1377. this.$message.error(response.data.msg)
  1378. if(response.data.code == 600000008){
  1379. this.infoDialogVisible = true
  1380. }
  1381. return false
  1382. } else {
  1383. this.$notify({
  1384. title: '成功',
  1385. message: '提交成功',
  1386. type: 'success',
  1387. duration: 2000
  1388. })
  1389. if(this.$store.getters.xt_user.template_info.org_id == 9671 || this.$store.getters.xt_user.template_info.org_id==3877 || this.$store.getters.xt_user.template_info.org_id ==10469){
  1390. this.$parent.getParentMethods()
  1391. }
  1392. const assessment_before_dislysis_resp = response.data.data.assessmentBeforeDislysis
  1393. var predialysis_evaluation = this.predialysis_evaluation
  1394. for (var index in assessment_before_dislysis_resp) {
  1395. // predialysis_evaluation[index] = assessment_before_dislysis_resp[index];
  1396. this.$set(predialysis_evaluation, index, assessment_before_dislysis_resp[index])
  1397. }
  1398. let orgId = parseInt(sessionStorage.getItem("org_id"));
  1399. axios.get('/api/index/patientsign/'+ orgId + '/'+ this.patient.id).then((res) => {
  1400. console.log('res',res.data)
  1401. })
  1402. this.hide()
  1403. console.log("hhh23h3h223h23h23h23h2h3")
  1404. }
  1405. })
  1406. } else {
  1407. return false;
  1408. }
  1409. });
  1410. },
  1411. handleCancle: function() {
  1412. this.isVisibility = false
  1413. },
  1414. showDryWeightDialog: function() {
  1415. if (this.$store.getters.xt_user.user.user_type == 3) {
  1416. this.$message.error('您没有权限调整干体重')
  1417. return
  1418. }
  1419. this.dialogFormVisible = true
  1420. this.isVisibility = false
  1421. },
  1422. submitDryWeight() {
  1423. const params = {
  1424. id: this.patient.id,
  1425. dry_weight: this.weight_adjust.weight,
  1426. remark: this.weight_adjust.remark,
  1427. doctor_id: this.weight_adjust.doctor,
  1428. mode: '1'
  1429. }
  1430. CreateDryWeight(params).then(response => {
  1431. if (response.data.state == 0) {
  1432. this.$message.error(response.data.msg)
  1433. return false
  1434. } else {
  1435. this.$message.success('提交成功')
  1436. this.assessmentBeforeDislysis.dry_weight = this.weight_adjust.weight
  1437. this.dialogFormVisible = false
  1438. this.isVisibility = true
  1439. }
  1440. })
  1441. },
  1442. cancleDryWeight() {
  1443. this.dialogFormVisible = false
  1444. this.isVisibility = true
  1445. },
  1446. getPermission() {
  1447. request.get('/api/func_per/get', {
  1448. params: {
  1449. create_url: '/api/dialysis/assessmentbeforedislysis?mode=1',
  1450. modify_url: '/api/dialysis/assessmentbeforedislysis?mode=2',
  1451. modify_other_url: '/api/dialysis/assessmentbeforedislysis?mode=3',
  1452. module: 3
  1453. }
  1454. }).then(res => {
  1455. // console.log(res)
  1456. // console.log('透前', this.patient_prop)
  1457. if (res.data.state == 0) {
  1458. this.hasPermission = false
  1459. } else if (res.data.state == 1) {
  1460. if (this.assessment.id != '' && this.assessment.creater != 0) { // 有数据
  1461. if (this.assessment.creater == this.$store.getters.xt_user.user.id) { // 创建人是自己
  1462. if (res.data.data.is_has_modify == false) {
  1463. this.hasPermission = false
  1464. this.showTxt = '你没有修改透前评估权限'
  1465. }
  1466. } else { // 创建人不是自己
  1467. if (res.data.data.is_has_modify_other == false) {
  1468. this.hasPermission = false
  1469. this.showTxt = '你没有修改他人透前评估权限'
  1470. }
  1471. }
  1472. } else if (this.assessment.id == '' || this.assessment.creater == 0) {
  1473. if (res.data.data.is_has_create == false) {
  1474. this.hasPermission = false
  1475. this.showTxt = '你没有新增透前评估权限'
  1476. }
  1477. }
  1478. }
  1479. })
  1480. },
  1481. changeThrombus(val){
  1482. if(val == 1){
  1483. this.thrombuShow = true
  1484. }
  1485. if(val == 2){
  1486. this.thrombuShow = false
  1487. }
  1488. },
  1489. getTime(value, temp) {
  1490. if (value != undefined) {
  1491. return uParseTime(value, temp)
  1492. }
  1493. return ''
  1494. },
  1495. getUserName(admin_user_id){
  1496. var user_name = ""
  1497. for(let i=0;i<this.docList.length;i++){
  1498. if(admin_user_id == this.docList[i].admin_user_id){
  1499. user_name = this.docList[i].user_name
  1500. }
  1501. }
  1502. return user_name
  1503. },
  1504. saveInformation(){
  1505. var params = {
  1506. selected_date:this.selected_date,
  1507. patient_id:this.$route.query.patient_id,
  1508. record_date:this.$route.query.date,
  1509. module:3,
  1510. remark:this.remark,
  1511. }
  1512. saveInformation(params).then(response=>{
  1513. if(response.data.state == 1){
  1514. var information = response.data.data.information
  1515. this.$message.success("提交成功!")
  1516. this.infoDialogVisible = false
  1517. }
  1518. })
  1519. },
  1520. getTimeOne(val) {
  1521. if(val == ""){
  1522. return ""
  1523. }else {
  1524. return uParseTime(val, '{y}-{m}-{d}')
  1525. }
  1526. },
  1527. dialysisSummarySelectChange: function (values) {
  1528. if (this.assessmentBeforeDislysis.befor_symptoms == "") {
  1529. this.assessmentBeforeDislysis.befor_symptoms = values;
  1530. } else {
  1531. if (this.assessmentBeforeDislysis.befor_symptoms.indexOf(values) == -1) {
  1532. if (
  1533. this.assessmentBeforeDislysis.befor_symptoms
  1534. .charAt(this.assessmentBeforeDislysis.befor_symptoms.length - 1)
  1535. .indexOf("。") == -1
  1536. ) {
  1537. this.assessmentBeforeDislysis.befor_symptoms =
  1538. this.assessmentBeforeDislysis.befor_symptoms+ "," + values;
  1539. } else {
  1540. this.assessmentBeforeDislysis.befor_symptoms =
  1541. this.assessmentBeforeDislysis.befor_symptoms+ "," + values;
  1542. this.assessmentBeforeDislysis.befor_symptoms =
  1543. this.assessmentBeforeDislysis.befor_symptoms + values;
  1544. }
  1545. }
  1546. }
  1547. },
  1548. },
  1549. created() {
  1550. this.last_dialysis_after = getDataConfig('hemodialysis', 'last_dialysis_after')
  1551. this.dialysis_interphase = getDataConfig('hemodialysis', 'dialysis_duration')
  1552. this.symptom_before_dialysis = getDataConfig('hemodialysis', 'dialysis_before')
  1553. this.catheter = getDataConfig('hemodialysis', 'catheter')
  1554. this.complication = getDataConfig('hemodialysis', 'complication')
  1555. this.hemorrhage = getDataConfig('hemodialysis', 'hemorrhage')
  1556. this.puncture_ways = getDataConfig('hemodialysis', 'puncture_method')
  1557. this.blood_access_part = getDataConfig('hemodialysis', 'vascular_access')
  1558. this.blood_access_part_opera = getDataConfig('hemodialysis', 'vascular_access_desc')
  1559. this.humor_excessive_symptom_array = getDataConfig('hemodialysis', 'humor_excessive_symptom')
  1560. // console.log("血管通路部位",this.blood_access_part_opera)
  1561. this.internal_fistula = getDataConfig('hemodialysis', 'internal_fistula')
  1562. // console.log("内瘘222222",this.internal_fistula)
  1563. this.internal_fistula_skin = getDataConfig('hemodialysis', 'internal_fistula_skin')
  1564. this.puncture_method = getDataConfig('hemodialysis', 'puncture_method')
  1565. this.machineType = getDataConfig('hemodialysis', 'machine_type')
  1566. this.catheter_suture = getDataConfig('hemodialysis', 'catheter_suture')
  1567. this.edema = getDataConfig('hemodialysis', 'edema')
  1568. this.suctionList = getDataConfig('hemodialysis', 'suction')
  1569. this.blood_access_noise = this.$store.getters.blood_access_noise
  1570. var date = this.$route.query && this.$route.query.date
  1571. this.record_date = date ? uParseTime(date, "{y}-{m}-{d}") : parseTime(new Date(), '{y}-{m}-{d}')
  1572. //获取皮肤
  1573. this.skins = getDataConfig('hemodialysis','skin')
  1574. this.pinholings = getDataConfig('hemodialysis','pinholing')
  1575. console.log("针眼",this.pinholings)
  1576. this.catheter_maintenancelist = getDataConfig('hemodialysis','catheter_maintenance')
  1577. console.log("导管维护",this.catheter_maintenancelist)
  1578. this.catheter_evaluation_program_list = getDataConfig('hemodialysis','catheter_evaluation_program')
  1579. this.skin_site_catheterization_list = getDataConfig('hemodialysis','skin_site_catheterization')
  1580. console.log("predialysis_evaluation2332323323222323",this.predialysis_evaluation)
  1581. this.point_punctures = getDataConfig('hemodialysis','point_puncture')
  1582. this.summary = getDataConfig("befor_symptoms", "befor_symptoms");
  1583. console.log("hhh32h323h23h23h23h23h23h",getDataConfig("befor_symptoms", "befor_symptoms"))
  1584. // this.weight_adjust.weight = this.dry_weight.dry_weight
  1585. // if(this.predialysis_evaluation.id == 0){
  1586. //
  1587. //
  1588. //
  1589. // }els
  1590. // if(this.dry_weight == null){
  1591. // if (this.predialysis_evaluation['dry_weight'] == 0) {
  1592. // this.assessmentBeforeDislysis['dry_weight'] = ''
  1593. // }
  1594. //
  1595. // }
  1596. },
  1597. watch: {
  1598. isVisibility(val) {
  1599. },
  1600. 'predialysis_evaluation.id': function() {
  1601. console.log("hhahahahhaah",this.predialysis_evaluation)
  1602. if(this.predialysis_evaluation.thromubus_type == 1){
  1603. this.predialysis_evaluation.thromubus_type = this.predialysis_evaluation.thromubus_type.toString()
  1604. this.thrombuShow = true
  1605. }
  1606. if (this.predialysis_evaluation.id > 0) {
  1607. for (var index in this.assessmentBeforeDislysis) {
  1608. this.assessmentBeforeDislysis[index] = this.predialysis_evaluation[index]
  1609. }
  1610. if (this.predialysis_evaluation['catheter_bend'] == 0) {
  1611. this.assessmentBeforeDislysis['catheter_bend'] = ''
  1612. } else {
  1613. this.assessmentBeforeDislysis['catheter_bend'] = this.predialysis_evaluation['catheter_bend'] + ''
  1614. }
  1615. if (this.predialysis_evaluation['is_hemorrhage'] == 0) {
  1616. this.assessmentBeforeDislysis['is_hemorrhage'] = ''
  1617. } else {
  1618. this.assessmentBeforeDislysis['is_hemorrhage'] = this.predialysis_evaluation['is_hemorrhage'] + ''
  1619. }
  1620. if (this.predialysis_evaluation['is_infect'] == 0) {
  1621. this.assessmentBeforeDislysis['is_infect'] = ''
  1622. } else {
  1623. this.assessmentBeforeDislysis['is_infect'] = this.predialysis_evaluation['is_infect'] + ''
  1624. }
  1625. if (this.predialysis_evaluation['blood_access_part_id'] == 0) {
  1626. this.assessmentBeforeDislysis['blood_access_part_id'] = ''
  1627. }
  1628. if (this.predialysis_evaluation['blood_access_part_opera_id'] == 0) {
  1629. this.assessmentBeforeDislysis['blood_access_part_opera_id'] = ''
  1630. }
  1631. if (this.predialysis_evaluation['weight_before'] == 0) {
  1632. this.assessmentBeforeDislysis['weight_before'] = ''
  1633. }
  1634. if (this.predialysis_evaluation['temperature'] == 0) {
  1635. this.assessmentBeforeDislysis['temperature'] = ''
  1636. }
  1637. if (this.predialysis_evaluation['systolic_blood_pressure'] == 0) {
  1638. this.assessmentBeforeDislysis['systolic_blood_pressure'] = ''
  1639. }
  1640. if (this.predialysis_evaluation['diastolic_blood_pressure'] == 0) {
  1641. this.assessmentBeforeDislysis['diastolic_blood_pressure'] = ''
  1642. }
  1643. if (this.predialysis_evaluation['pulse_frequency'] == 0) {
  1644. this.assessmentBeforeDislysis['pulse_frequency'] = ''
  1645. }
  1646. if (this.predialysis_evaluation['pulse_frequency'] == 0) {
  1647. this.assessmentBeforeDislysis['pulse_frequency'] = ''
  1648. }
  1649. }
  1650. },
  1651. 'assessmentBeforeDislysis.weight_before': {
  1652. handler (newWeight, oldWeight) {
  1653. let weight = parseFloat(
  1654. newWeight - this.assessmentBeforeDislysis.additional_weight
  1655. ).toFixed(1)
  1656. if (weight > 0) {
  1657. this.body_weight_before = weight
  1658. } else {
  1659. this.body_weight_before = ''
  1660. }
  1661. },
  1662. deep: true,
  1663. immediate: true
  1664. },
  1665. 'assessmentBeforeDislysis.additional_weight': {
  1666. handler (newWeight, oldWeight) {
  1667. if (newWeight > 0) {
  1668. let weight = parseFloat(
  1669. this.assessmentBeforeDislysis.weight_before - newWeight
  1670. ).toFixed(1)
  1671. if (weight > 0) {
  1672. this.body_weight_before = weight
  1673. } else {
  1674. this.body_weight_before = ''
  1675. }
  1676. }
  1677. },
  1678. deep: true,
  1679. immediate: true,
  1680. data: []
  1681. },
  1682. }
  1683. }
  1684. </script>
  1685. <style scoped>
  1686. .warnTxt{
  1687. text-align: center;
  1688. margin: 0 auto;
  1689. background: #faa331;
  1690. max-width: 240px;
  1691. padding: 10px 20px;
  1692. border-radius: 4px;
  1693. margin-bottom: 10px;
  1694. color:#fff;
  1695. }
  1696. .gantizhong{
  1697. text-align: center;
  1698. }
  1699. </style>
  1700. <style lang="scss">
  1701. .newDialog{
  1702. .el-dialog__body{
  1703. padding: 10px 20px 30px;
  1704. }
  1705. }
  1706. </style>