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

assessmentBeforeDislysisDialog.vue 77KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986
  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. this.$refs.assessmentBeforeDislysis.validate((valid) => {
  1349. if (valid) {
  1350. console.log("hhahdhahfhhadf",this.patient.id )
  1351. console.log("this.$route.query.patient_id",this.$route.query.patient_id)
  1352. if(this.patient.id != undefined && this.patient.id >0){
  1353. ParamsQuery['patient'] = parseInt(this.$route.query.patient_id)
  1354. }
  1355. if(this.patient.id == 'undefined' || this.patient.id ==0){
  1356. ParamsQuery['patient'] = parseInt(this.$route.query.patient_id)
  1357. }
  1358. if(this.$route.query.patient_id == undefined || this.$route.query.patient_id == 0 ){
  1359. ParamsQuery['patient'] = this.patient.id
  1360. }
  1361. // ParamsQuery['patient'] = this.patient.id
  1362. ParamsQuery['record_date'] = this.record_date
  1363. ParamsQuery['mode'] = '1'
  1364. if (this.predialysis_evaluation.id == 0) {
  1365. ParamsQuery['mode'] = '1'
  1366. } else {
  1367. if (this.predialysis_evaluation.creater == 0) {
  1368. ParamsQuery['mode'] = '1'
  1369. } else {
  1370. ParamsQuery['mode'] = '2'
  1371. if (this.predialysis_evaluation.creater != this.$store.getters.xt_user.user.id) {
  1372. ParamsQuery['mode'] = '3'
  1373. }
  1374. }
  1375. }
  1376. console.log("params",ParamsQuery)
  1377. ParamsQuery.whether_unobstructed = parseInt(ParamsQuery.whether_unobstructed)
  1378. ParamsQuery.lien_necessary = parseInt(ParamsQuery.lien_necessary)
  1379. postAssessmentBeforeDislysis(ParamsQuery).then(response => {
  1380. if (response.data.state == 0) {
  1381. this.$message.error(response.data.msg)
  1382. if(response.data.code == 600000008){
  1383. this.infoDialogVisible = true
  1384. }
  1385. return false
  1386. } else {
  1387. this.$notify({
  1388. title: '成功',
  1389. message: '提交成功',
  1390. type: 'success',
  1391. duration: 2000
  1392. })
  1393. 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){
  1394. this.$parent.getParentMethods()
  1395. }
  1396. const assessment_before_dislysis_resp = response.data.data.assessmentBeforeDislysis
  1397. var predialysis_evaluation = this.predialysis_evaluation
  1398. for (var index in assessment_before_dislysis_resp) {
  1399. // predialysis_evaluation[index] = assessment_before_dislysis_resp[index];
  1400. this.$set(predialysis_evaluation, index, assessment_before_dislysis_resp[index])
  1401. }
  1402. let orgId = parseInt(sessionStorage.getItem("org_id"));
  1403. axios.get('/api/index/patientsign/'+ orgId + '/'+ this.patient.id).then((res) => {
  1404. console.log('res',res.data)
  1405. })
  1406. this.hide()
  1407. console.log("hhh23h3h223h23h23h23h2h3")
  1408. }
  1409. })
  1410. } else {
  1411. return false;
  1412. }
  1413. });
  1414. },
  1415. handleCancle: function() {
  1416. this.isVisibility = false
  1417. },
  1418. showDryWeightDialog: function() {
  1419. if (this.$store.getters.xt_user.user.user_type == 3) {
  1420. this.$message.error('您没有权限调整干体重')
  1421. return
  1422. }
  1423. this.dialogFormVisible = true
  1424. this.isVisibility = false
  1425. },
  1426. submitDryWeight() {
  1427. const params = {
  1428. id: this.patient.id,
  1429. dry_weight: this.weight_adjust.weight,
  1430. remark: this.weight_adjust.remark,
  1431. doctor_id: this.weight_adjust.doctor,
  1432. mode: '1'
  1433. }
  1434. CreateDryWeight(params).then(response => {
  1435. if (response.data.state == 0) {
  1436. this.$message.error(response.data.msg)
  1437. return false
  1438. } else {
  1439. this.$message.success('提交成功')
  1440. this.assessmentBeforeDislysis.dry_weight = this.weight_adjust.weight
  1441. this.dialogFormVisible = false
  1442. this.isVisibility = true
  1443. }
  1444. })
  1445. },
  1446. cancleDryWeight() {
  1447. this.dialogFormVisible = false
  1448. this.isVisibility = true
  1449. },
  1450. getPermission() {
  1451. request.get('/api/func_per/get', {
  1452. params: {
  1453. create_url: '/api/dialysis/assessmentbeforedislysis?mode=1',
  1454. modify_url: '/api/dialysis/assessmentbeforedislysis?mode=2',
  1455. modify_other_url: '/api/dialysis/assessmentbeforedislysis?mode=3',
  1456. module: 3
  1457. }
  1458. }).then(res => {
  1459. // console.log(res)
  1460. // console.log('透前', this.patient_prop)
  1461. if (res.data.state == 0) {
  1462. this.hasPermission = false
  1463. } else if (res.data.state == 1) {
  1464. if (this.assessment.id != '' && this.assessment.creater != 0) { // 有数据
  1465. if (this.assessment.creater == this.$store.getters.xt_user.user.id) { // 创建人是自己
  1466. if (res.data.data.is_has_modify == false) {
  1467. this.hasPermission = false
  1468. this.showTxt = '你没有修改透前评估权限'
  1469. }
  1470. } else { // 创建人不是自己
  1471. if (res.data.data.is_has_modify_other == false) {
  1472. this.hasPermission = false
  1473. this.showTxt = '你没有修改他人透前评估权限'
  1474. }
  1475. }
  1476. } else if (this.assessment.id == '' || this.assessment.creater == 0) {
  1477. if (res.data.data.is_has_create == false) {
  1478. this.hasPermission = false
  1479. this.showTxt = '你没有新增透前评估权限'
  1480. }
  1481. }
  1482. }
  1483. })
  1484. },
  1485. changeThrombus(val){
  1486. if(val == 1){
  1487. this.thrombuShow = true
  1488. }
  1489. if(val == 2){
  1490. this.thrombuShow = false
  1491. }
  1492. },
  1493. getTime(value, temp) {
  1494. if (value != undefined) {
  1495. return uParseTime(value, temp)
  1496. }
  1497. return ''
  1498. },
  1499. getUserName(admin_user_id){
  1500. var user_name = ""
  1501. for(let i=0;i<this.docList.length;i++){
  1502. if(admin_user_id == this.docList[i].admin_user_id){
  1503. user_name = this.docList[i].user_name
  1504. }
  1505. }
  1506. return user_name
  1507. },
  1508. saveInformation(){
  1509. var params = {
  1510. selected_date:this.selected_date,
  1511. patient_id:this.$route.query.patient_id,
  1512. record_date:this.$route.query.date,
  1513. module:3,
  1514. remark:this.remark,
  1515. }
  1516. saveInformation(params).then(response=>{
  1517. if(response.data.state == 1){
  1518. var information = response.data.data.information
  1519. this.$message.success("提交成功!")
  1520. this.infoDialogVisible = false
  1521. }
  1522. })
  1523. },
  1524. getTimeOne(val) {
  1525. if(val == ""){
  1526. return ""
  1527. }else {
  1528. return uParseTime(val, '{y}-{m}-{d}')
  1529. }
  1530. },
  1531. dialysisSummarySelectChange: function (values) {
  1532. if (this.assessmentBeforeDislysis.befor_symptoms == "") {
  1533. this.assessmentBeforeDislysis.befor_symptoms = values;
  1534. } else {
  1535. if (this.assessmentBeforeDislysis.befor_symptoms.indexOf(values) == -1) {
  1536. if (
  1537. this.assessmentBeforeDislysis.befor_symptoms
  1538. .charAt(this.assessmentBeforeDislysis.befor_symptoms.length - 1)
  1539. .indexOf("。") == -1
  1540. ) {
  1541. this.assessmentBeforeDislysis.befor_symptoms =
  1542. this.assessmentBeforeDislysis.befor_symptoms+ "," + values;
  1543. } else {
  1544. this.assessmentBeforeDislysis.befor_symptoms =
  1545. this.assessmentBeforeDislysis.befor_symptoms+ "," + values;
  1546. this.assessmentBeforeDislysis.befor_symptoms =
  1547. this.assessmentBeforeDislysis.befor_symptoms + values;
  1548. }
  1549. }
  1550. }
  1551. },
  1552. },
  1553. created() {
  1554. this.last_dialysis_after = getDataConfig('hemodialysis', 'last_dialysis_after')
  1555. this.dialysis_interphase = getDataConfig('hemodialysis', 'dialysis_duration')
  1556. this.symptom_before_dialysis = getDataConfig('hemodialysis', 'dialysis_before')
  1557. this.catheter = getDataConfig('hemodialysis', 'catheter')
  1558. this.complication = getDataConfig('hemodialysis', 'complication')
  1559. this.hemorrhage = getDataConfig('hemodialysis', 'hemorrhage')
  1560. this.puncture_ways = getDataConfig('hemodialysis', 'puncture_method')
  1561. this.blood_access_part = getDataConfig('hemodialysis', 'vascular_access')
  1562. this.blood_access_part_opera = getDataConfig('hemodialysis', 'vascular_access_desc')
  1563. this.humor_excessive_symptom_array = getDataConfig('hemodialysis', 'humor_excessive_symptom')
  1564. // console.log("血管通路部位",this.blood_access_part_opera)
  1565. this.internal_fistula = getDataConfig('hemodialysis', 'internal_fistula')
  1566. // console.log("内瘘222222",this.internal_fistula)
  1567. this.internal_fistula_skin = getDataConfig('hemodialysis', 'internal_fistula_skin')
  1568. this.puncture_method = getDataConfig('hemodialysis', 'puncture_method')
  1569. this.machineType = getDataConfig('hemodialysis', 'machine_type')
  1570. this.catheter_suture = getDataConfig('hemodialysis', 'catheter_suture')
  1571. this.edema = getDataConfig('hemodialysis', 'edema')
  1572. this.suctionList = getDataConfig('hemodialysis', 'suction')
  1573. this.blood_access_noise = this.$store.getters.blood_access_noise
  1574. var date = this.$route.query && this.$route.query.date
  1575. this.record_date = date ? uParseTime(date, "{y}-{m}-{d}") : parseTime(new Date(), '{y}-{m}-{d}')
  1576. //获取皮肤
  1577. this.skins = getDataConfig('hemodialysis','skin')
  1578. this.pinholings = getDataConfig('hemodialysis','pinholing')
  1579. console.log("针眼",this.pinholings)
  1580. this.catheter_maintenancelist = getDataConfig('hemodialysis','catheter_maintenance')
  1581. console.log("导管维护",this.catheter_maintenancelist)
  1582. this.catheter_evaluation_program_list = getDataConfig('hemodialysis','catheter_evaluation_program')
  1583. this.skin_site_catheterization_list = getDataConfig('hemodialysis','skin_site_catheterization')
  1584. console.log("predialysis_evaluation2332323323222323",this.predialysis_evaluation)
  1585. this.point_punctures = getDataConfig('hemodialysis','point_puncture')
  1586. this.summary = getDataConfig("befor_symptoms", "befor_symptoms");
  1587. console.log("hhh32h323h23h23h23h23h23h",getDataConfig("befor_symptoms", "befor_symptoms"))
  1588. // this.weight_adjust.weight = this.dry_weight.dry_weight
  1589. // if(this.predialysis_evaluation.id == 0){
  1590. //
  1591. //
  1592. //
  1593. // }els
  1594. // if(this.dry_weight == null){
  1595. // if (this.predialysis_evaluation['dry_weight'] == 0) {
  1596. // this.assessmentBeforeDislysis['dry_weight'] = ''
  1597. // }
  1598. //
  1599. // }
  1600. },
  1601. watch: {
  1602. isVisibility(val) {
  1603. },
  1604. 'predialysis_evaluation.id': function() {
  1605. console.log("hhahahahhaah",this.predialysis_evaluation)
  1606. if(this.predialysis_evaluation.thromubus_type == 1){
  1607. this.predialysis_evaluation.thromubus_type = this.predialysis_evaluation.thromubus_type.toString()
  1608. this.thrombuShow = true
  1609. }
  1610. if (this.predialysis_evaluation.id > 0) {
  1611. for (var index in this.assessmentBeforeDislysis) {
  1612. this.assessmentBeforeDislysis[index] = this.predialysis_evaluation[index]
  1613. }
  1614. if (this.predialysis_evaluation['catheter_bend'] == 0) {
  1615. this.assessmentBeforeDislysis['catheter_bend'] = ''
  1616. } else {
  1617. this.assessmentBeforeDislysis['catheter_bend'] = this.predialysis_evaluation['catheter_bend'] + ''
  1618. }
  1619. if (this.predialysis_evaluation['is_hemorrhage'] == 0) {
  1620. this.assessmentBeforeDislysis['is_hemorrhage'] = ''
  1621. } else {
  1622. this.assessmentBeforeDislysis['is_hemorrhage'] = this.predialysis_evaluation['is_hemorrhage'] + ''
  1623. }
  1624. if (this.predialysis_evaluation['is_infect'] == 0) {
  1625. this.assessmentBeforeDislysis['is_infect'] = ''
  1626. } else {
  1627. this.assessmentBeforeDislysis['is_infect'] = this.predialysis_evaluation['is_infect'] + ''
  1628. }
  1629. if (this.predialysis_evaluation['blood_access_part_id'] == 0) {
  1630. this.assessmentBeforeDislysis['blood_access_part_id'] = ''
  1631. }
  1632. if (this.predialysis_evaluation['blood_access_part_opera_id'] == 0) {
  1633. this.assessmentBeforeDislysis['blood_access_part_opera_id'] = ''
  1634. }
  1635. if (this.predialysis_evaluation['weight_before'] == 0) {
  1636. this.assessmentBeforeDislysis['weight_before'] = ''
  1637. }
  1638. if (this.predialysis_evaluation['temperature'] == 0) {
  1639. this.assessmentBeforeDislysis['temperature'] = ''
  1640. }
  1641. if (this.predialysis_evaluation['systolic_blood_pressure'] == 0) {
  1642. this.assessmentBeforeDislysis['systolic_blood_pressure'] = ''
  1643. }
  1644. if (this.predialysis_evaluation['diastolic_blood_pressure'] == 0) {
  1645. this.assessmentBeforeDislysis['diastolic_blood_pressure'] = ''
  1646. }
  1647. if (this.predialysis_evaluation['pulse_frequency'] == 0) {
  1648. this.assessmentBeforeDislysis['pulse_frequency'] = ''
  1649. }
  1650. if (this.predialysis_evaluation['pulse_frequency'] == 0) {
  1651. this.assessmentBeforeDislysis['pulse_frequency'] = ''
  1652. }
  1653. }
  1654. },
  1655. 'assessmentBeforeDislysis.weight_before': {
  1656. handler (newWeight, oldWeight) {
  1657. let weight = parseFloat(
  1658. newWeight - this.assessmentBeforeDislysis.additional_weight
  1659. ).toFixed(1)
  1660. if (weight > 0) {
  1661. this.body_weight_before = weight
  1662. } else {
  1663. this.body_weight_before = ''
  1664. }
  1665. },
  1666. deep: true,
  1667. immediate: true
  1668. },
  1669. 'assessmentBeforeDislysis.additional_weight': {
  1670. handler (newWeight, oldWeight) {
  1671. if (newWeight > 0) {
  1672. let weight = parseFloat(
  1673. this.assessmentBeforeDislysis.weight_before - newWeight
  1674. ).toFixed(1)
  1675. if (weight > 0) {
  1676. this.body_weight_before = weight
  1677. } else {
  1678. this.body_weight_before = ''
  1679. }
  1680. }
  1681. },
  1682. deep: true,
  1683. immediate: true,
  1684. data: []
  1685. },
  1686. }
  1687. }
  1688. </script>
  1689. <style scoped>
  1690. .warnTxt{
  1691. text-align: center;
  1692. margin: 0 auto;
  1693. background: #faa331;
  1694. max-width: 240px;
  1695. padding: 10px 20px;
  1696. border-radius: 4px;
  1697. margin-bottom: 10px;
  1698. color:#fff;
  1699. }
  1700. .gantizhong{
  1701. text-align: center;
  1702. }
  1703. </style>
  1704. <style lang="scss">
  1705. .newDialog{
  1706. .el-dialog__body{
  1707. padding: 10px 20px 30px;
  1708. }
  1709. }
  1710. </style>