AssessmentAfterDislysis.vue 53KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398
  1. <template>
  2. <div class="assessment-after-box">
  3. <el-dialog
  4. class="newDialog"
  5. title="透后评估"
  6. :visible.sync="isVisibility"
  7. width="1010px"
  8. :modal-append-to-body="false"
  9. >
  10. <div class="warnTxt" v-if="showTxt != ''">{{ showTxt }}</div>
  11. <el-form ref="form" :model="form" label-width="160px">
  12. <el-row :gutter="20">
  13. <el-col :span="8" v-if="isShow('实际治疗时长')">
  14. <el-form-item label="实际治疗时长(时):">
  15. <!-- <el-input v-model="form.actual_treatment_hour"></el-input> -->
  16. <el-time-picker
  17. v-model="actualTreatmentHourShow"
  18. placeholder="透析时长"
  19. style="width:100%;"
  20. value-format="H:m"
  21. format="H:m"
  22. @change="selectActualTreatmentHour"
  23. >
  24. </el-time-picker>
  25. </el-form-item>
  26. </el-col>
  27. <el-col :span="8" v-if="isShow('实际超滤量')">
  28. <el-form-item
  29. label="实际超滤量(ml): "
  30. v-if=" this.template_id == 6 || this.template_id == 9 || this.template_id == 10 || this.template_id == 11 || this.template_id == 17 || this.template_id == 20 || this.template_id == 21 || this.template_id == 22 || this.template_id == 23 || this.template_id == 24 || this.template_id == 26 || this.template_id == 28 || this.template_id == 27 || this.template_id == 29 || this.template_id == 30 || this.template_id == 31 || this.template_id == 32 || this.template_id == 34 || this.template_id == 36 || this.template_id == 38 || this.template_id == 43 || this.template_id == 44 || this.template_id == 47 || this.template_id == 56 || this.template_id == 60 || this.$store.getters.xt_user.template_info.org_id == 10307 || this.$store.getters.xt_user.template_info.org_id == 10340 || this.$store.getters.xt_user.template_info.org_id == 9555 || this.$store.getters.xt_user.template_info.org_id == 10387 || this.$store.getters.xt_user.template_info.org_id == 10430 || this.$store.getters.xt_user.template_info.org_id == 10432 || this.$store.getters.xt_user.template_info.org_id == 10441 || this.$store.getters.xt_user.template_info.org_id == 10445" >
  31. <el-input v-model="form.actual_ultrafiltration"></el-input>
  32. </el-form-item>
  33. <el-form-item label="实际超滤量(L): " v-else>
  34. <el-input v-model="form.actual_ultrafiltration"></el-input>
  35. </el-form-item>
  36. </el-col>
  37. <el-col :span="8" v-if="isShow('透后称重')">
  38. <el-form-item label="透后称重(kg): ">
  39. <el-input v-model="form.weight_after"></el-input>
  40. </el-form-item>
  41. </el-col>
  42. <el-col :span="8" v-if="isShow('衣物重')">
  43. <el-form-item label="衣物重(kg): ">
  44. <el-input v-model="form.additional_weight"></el-input>
  45. </el-form-item>
  46. </el-col>
  47. </el-row>
  48. <el-row :gutter="20">
  49. <el-col :span="8" v-if="isShow('体重减少')">
  50. <el-form-item label="体重减少(kg): ">
  51. <el-input v-model="form.weight_loss"></el-input>
  52. </el-form-item>
  53. </el-col>
  54. <el-col :span="8" v-if="isShow('穿刺处血肿')">
  55. <el-form-item label="穿刺处血肿: ">
  56. <el-radio-group v-model="form.puncture_point_haematoma">
  57. <el-radio :label="1">有</el-radio>
  58. <el-radio :label="2">无</el-radio>
  59. </el-radio-group>
  60. </el-form-item>
  61. </el-col>
  62. <el-col :span="8" v-if="isShow('并发症')">
  63. <el-form-item label="并发症: ">
  64. <el-input
  65. v-model="form.complication"
  66. readonly
  67. @focus="showDialog('5')"
  68. ></el-input>
  69. </el-form-item>
  70. </el-col>
  71. </el-row>
  72. <el-row :gutter="20">
  73. <el-col :span="8" v-if="isShow('内瘘')">
  74. <el-form-item label="内瘘: ">
  75. <el-input
  76. v-model="form.internal_fistula"
  77. readonly
  78. @focus="showDialog('3')"
  79. ></el-input>
  80. </el-form-item>
  81. </el-col>
  82. <el-col :span="8" v-if="isShow('导管')">
  83. <el-form-item label="导管: ">
  84. <el-input
  85. v-model="form.catheter"
  86. readonly
  87. @focus="showDialog('4')"
  88. ></el-input>
  89. </el-form-item>
  90. </el-col>
  91. <el-col :span="8" v-if="isShow('透析过程')">
  92. <el-form-item label="透析过程: ">
  93. <el-select v-model="form.dialysis_process">
  94. <el-option :key="0" label="请选择" :value="0"></el-option>
  95. <el-option
  96. v-for="item in this.$store.getters.dialysis_process"
  97. :label="item.name"
  98. :value="item.id"
  99. :key="item.id"
  100. ></el-option>
  101. </el-select>
  102. </el-form-item>
  103. </el-col>
  104. <el-col :span="8" v-if="isShow('透析过程提前时间')">
  105. <el-form-item label="透析过程提前时间(min): ">
  106. <el-input v-model="form.in_advance_minute"></el-input>
  107. </el-form-item>
  108. </el-col>
  109. <el-col :span="8" v-if="isShow('透析过程提前原因')">
  110. <el-form-item label="透析过程提前原因: ">
  111. <el-input
  112. v-model="form.in_advance_reason"
  113. readonly
  114. @focus="showDialog('7')"
  115. ></el-input>
  116. </el-form-item>
  117. </el-col>
  118. <el-col :span="8" v-if="isShow('透析过程提前其他原因')">
  119. <el-form-item label="透析过程提前其他原因: ">
  120. <el-input
  121. v-model="form.in_advance_reason_other"
  122. :rows="2"
  123. ></el-input>
  124. </el-form-item>
  125. </el-col>
  126. </el-row>
  127. <el-row :gutter="20">
  128. <el-col :span="8" v-if="isShow('内瘘管拔针后压迫止血时间')">
  129. <el-form-item label="内瘘管拔针后压迫止血时间(min): ">
  130. <el-input v-model="form.hemostasis_minute" :rows="5"></el-input>
  131. </el-form-item>
  132. </el-col>
  133. <el-col :span="8" v-if="isShow('内瘘管拔针后压迫止血操作')">
  134. <el-form-item label="内瘘管拔针后压迫止血操作: ">
  135. <el-select v-model="form.hemostasis_opera">
  136. <el-option :key="0" label="请选择" :value="0"></el-option>
  137. <el-option
  138. v-for="item in this.$store.getters.hemostasis_opera"
  139. :label="item.name"
  140. :value="item.id"
  141. :key="item.id"
  142. ></el-option>
  143. </el-select>
  144. </el-form-item>
  145. </el-col>
  146. <el-col :span="8" v-if="isShow('动脉管道')">
  147. <el-form-item label="动脉管道: ">
  148. <el-select v-model="form.arterial_tube">
  149. <el-option :key="0" label="请选择" :value="0"></el-option>
  150. <el-option
  151. v-for="item in this.$store.getters.arterial_tube"
  152. :label="item.name"
  153. :value="item.id"
  154. :key="item.id"
  155. ></el-option>
  156. </el-select>
  157. </el-form-item>
  158. </el-col>
  159. </el-row>
  160. <el-row :gutter="20">
  161. <el-col :span="8" v-if="isShow('静脉管道')">
  162. <el-form-item label="静脉管道: ">
  163. <el-select v-model="form.intravenous_tube">
  164. <el-option :key="0" label="请选择" :value="0"></el-option>
  165. <el-option
  166. v-for="item in this.$store.getters.intravenous_tube"
  167. :label="item.name"
  168. :value="item.id"
  169. :key="item.id"
  170. ></el-option>
  171. </el-select>
  172. </el-form-item>
  173. </el-col>
  174. <el-col :span="8" v-if="isShow('透析器凝血')">
  175. <el-form-item label="透析器凝血: ">
  176. <el-input
  177. v-model="form.cruor"
  178. readonly
  179. @focus="showDialog('1')"
  180. ></el-input>
  181. </el-form-item>
  182. </el-col>
  183. <el-col :span="8" v-if="isShow('管路凝血')">
  184. <el-form-item label="管路凝血: ">
  185. <el-input
  186. v-model="form.pip_coagulation"
  187. readonly
  188. @focus="showDialog('10')"
  189. ></el-input>
  190. </el-form-item>
  191. </el-col>
  192. <el-col :span="8" v-if="isShow('患者去向')">
  193. <el-form-item label="患者去向: ">
  194. <el-select v-model="form.patient_gose">
  195. <el-option :key="0" label="请选择" :value="0"></el-option>
  196. <el-option
  197. v-for="item in patientGoseOptions"
  198. :label="item.name"
  199. :value="item.id"
  200. :key="item.id"
  201. ></el-option>
  202. </el-select>
  203. </el-form-item>
  204. </el-col>
  205. </el-row>
  206. <el-row>
  207. <el-col :span="8" v-if="isShow('拔针后穿刺点渗血')">
  208. <el-form-item label="拔针后穿刺点渗血: ">
  209. <el-radio-group v-model="form.puncture_point_oozing_blood">
  210. <el-radio :label="1">有</el-radio>
  211. <el-radio :label="2">无</el-radio>
  212. </el-radio-group>
  213. </el-form-item>
  214. </el-col>
  215. </el-row>
  216. <!-- <el-col :span="8" v-if="isShow('压迫后内瘘震颤')">-->
  217. <!-- <el-form-item label="压迫后内瘘震颤: ">-->
  218. <!-- <el-select v-model="form.internal_fistula_tremor_ac">-->
  219. <!-- <el-option :key="0" label="请选择" :value="0"></el-option>-->
  220. <!-- <el-option-->
  221. <!-- v-for="item in internalFistulaTremorAcOptions"-->
  222. <!-- :label="item.name"-->
  223. <!-- :value="item.id"-->
  224. <!-- :key="item.id"-->
  225. <!-- ></el-option>-->
  226. <!-- </el-select>-->
  227. <!-- </el-form-item>-->
  228. <!-- </el-col>-->
  229. <el-row :gutter="20" v-if="form.patient_gose == 3 && isShow('科室')">
  230. <el-col :span="24">
  231. <el-form-item label="科室: ">
  232. <el-input
  233. v-model="form.inpatient_department"
  234. :rows="5"
  235. ></el-input>
  236. </el-form-item>
  237. </el-col>
  238. </el-row>
  239. <el-row
  240. :gutter="20"
  241. v-if="
  242. form.patient_gose == 3 && isShow('交待病房护士/患者/陪人观察内容')
  243. "
  244. >
  245. <el-col :span="24">
  246. <el-form-item label="交待病房护士/患者/陪人观察内容: ">
  247. <el-input
  248. placeholder="交待病房护士/患者/陪人观察内容"
  249. v-model="form.observation_content"
  250. :rows="5"
  251. readonly
  252. @focus="showDialog('6')"
  253. ></el-input>
  254. </el-form-item>
  255. </el-col>
  256. </el-row>
  257. <el-row
  258. :gutter="20"
  259. v-show="form.patient_gose == 3 && isShow('其他观察内容')"
  260. >
  261. <el-col :span="24">
  262. <el-form-item label="其他观察内容: ">
  263. <el-input
  264. v-model="form.observation_content_other"
  265. :rows="5"
  266. ></el-input>
  267. </el-form-item>
  268. </el-col>
  269. </el-row>
  270. <el-col :span="8" v-if="isShow('体温')">
  271. <el-form-item label="体温(℃): ">
  272. <el-input v-model="form.temperature"></el-input>
  273. </el-form-item>
  274. </el-col>
  275. <!-- </el-row>
  276. <el-row :gutter="20"> -->
  277. <el-col :span="8" v-if="isShow('收缩压')">
  278. <el-form-item label="收缩压(mmHg): ">
  279. <el-input v-model="form.systolic_blood_pressure"></el-input>
  280. </el-form-item>
  281. </el-col>
  282. <el-col :span="8" v-if="isShow('舒张压')">
  283. <el-form-item label="舒张压(mmHg): ">
  284. <el-input v-model="form.diastolic_blood_pressure"></el-input>
  285. </el-form-item>
  286. </el-col>
  287. <el-col :span="8" v-if="isShow('卧位收缩压')">
  288. <el-form-item label="卧位收缩压(mmHg):">
  289. <el-input v-model="form.supine_systolic_blood_pressure"></el-input>
  290. </el-form-item>
  291. </el-col>
  292. <el-col :span="8" v-if="isShow('卧位舒张压')">
  293. <el-form-item label="卧位舒张压(mmHg):">
  294. <el-input v-model="form.supine_diastolic_blood_pressure"></el-input>
  295. </el-form-item>
  296. </el-col>
  297. <el-col :span="8" v-if="isShow('坐位收缩压')">
  298. <el-form-item label="坐位收缩压(mmHg):">
  299. <el-input v-model="form.setting_pressure"></el-input>
  300. </el-form-item>
  301. </el-col>
  302. <el-col :span="8" v-if="isShow('坐位舒张压')">
  303. <el-form-item label="坐位舒张压(mmHg):">
  304. <el-input v-model="form.diastolic_pressure"></el-input>
  305. </el-form-item>
  306. </el-col>
  307. <el-col :span="8" v-if="isShow('呼吸频率')">
  308. <el-form-item label="呼吸频率(次/min): ">
  309. <el-input v-model="form.breathing_rate"></el-input>
  310. </el-form-item>
  311. </el-col>
  312. <el-col :span="8" v-if="isShow('脉搏')">
  313. <el-form-item label="脉搏(次/分): ">
  314. <el-input v-model="form.pulse_frequency"></el-input>
  315. </el-form-item>
  316. </el-col>
  317. <el-col :span="8" v-if="isShow('透后症状')">
  318. <el-form-item label="透后症状: ">
  319. <el-input
  320. v-model="form.symptom_after_dialysis"
  321. readonly
  322. @focus="showDialog('2')"
  323. ></el-input>
  324. </el-form-item>
  325. </el-col>
  326. <el-col :span="8" v-if="isShow('透析中入量')">
  327. <el-form-item label="透析中入量: ">
  328. <el-input v-model="form.dialysis_intakes"></el-input>
  329. </el-form-item>
  330. </el-col>
  331. <el-col :span="8" v-if="isShow('透析中入量单位')">
  332. <el-form-item label="透析中入量单位: ">
  333. <el-select v-model="form.dialysis_intakes_unit">
  334. <el-option :key="0" label="请选择" :value="0"></el-option>
  335. <el-option
  336. v-for="item in unit"
  337. :label="item.name"
  338. :value="item.id"
  339. :key="item.id"
  340. ></el-option>
  341. </el-select>
  342. </el-form-item>
  343. </el-col>
  344. <el-col :span="8" v-if="isShow('回血')">
  345. <el-form-item label="回血(ml): ">
  346. <el-input v-model="form.return_blood"></el-input>
  347. </el-form-item>
  348. </el-col>
  349. <el-col :span="8" v-if="isShow('补液量')">
  350. <el-form-item label="补液量(ml): ">
  351. <el-input v-model="form.rehydration_volume"></el-input>
  352. </el-form-item>
  353. </el-col>
  354. <el-col :span="8" v-if="isShow('透析中进食')">
  355. <el-form-item label="透析中进食(ml): " v-if="template_id != 36">
  356. <el-input v-model="form.dialysis_during"></el-input>
  357. </el-form-item>
  358. <el-form-item label="透析中进食(g): " v-if="template_id == 36">
  359. <el-input v-model="form.dialysis_during"></el-input>
  360. </el-form-item>
  361. </el-col>
  362. <el-col :span="8" v-if="isShow('出量')">
  363. <el-form-item label="出量(ml): ">
  364. <el-input v-model="form.stroke_volume"></el-input>
  365. </el-form-item>
  366. </el-col>
  367. <el-col :span="8" v-if="isShow('血流量')">
  368. <el-form-item label="血流量: ">
  369. <el-select v-model="form.blood_flow">
  370. <el-option :key="0" label="请选择" :value="0"></el-option>
  371. <el-option v-for="item in this.bloodFlowOptions" :label="item.name" :value="item.id" :key="item.id"></el-option>
  372. </el-select>
  373. </el-form-item>
  374. </el-col>
  375. <el-col :span="8" v-if="isShow('封管液配置')">
  376. <el-form-item label="封管液配置:">
  377. <!-- <el-select v-model="form.sealing_fluid_dispose">
  378. <el-option :key="0" label="请选择" :value="0"></el-option>
  379. <el-option v-for="item in this.sealingFluidDisposeOptions" :label="item.name" :value="item.id" :key="item.id"></el-option>
  380. </el-select> -->
  381. <el-input
  382. v-model="form.sealing_fluid_dispose"
  383. readonly
  384. @focus="showDialog('9')"
  385. ></el-input>
  386. </el-form-item>
  387. </el-col>
  388. <el-col :span="8" v-if="sealing_fluid_special_name == '特殊'&&isShow('封管液特殊')">
  389. <el-form-item label="封管液配置(特殊): ">
  390. <el-input v-model="form.sealing_fluid_special"></el-input>
  391. </el-form-item>
  392. </el-col>
  393. <!-- </el-row>
  394. <el-row :gutter="20"> -->
  395. <el-col :span="8" v-if="isShow('实际置换量')">
  396. <el-form-item v-if="this.template_id == 20 || this.template_id == 21" label="实际置换量(ml): ">
  397. <el-input v-model="form.actual_displacement"></el-input>
  398. </el-form-item>
  399. <el-form-item v-else label="实际置换量(L): ">
  400. <el-input v-model="form.actual_displacement"></el-input>
  401. </el-form-item>
  402. </el-col>
  403. <el-col :span="8" v-if="isShow('失衡综合症')">
  404. <el-form-item label="失衡综合症: ">
  405. <el-select v-model="form.disequilibrium_syndrome">
  406. <el-option :key="0" label="请选择" :value="0"></el-option>
  407. <el-option
  408. v-for="item in this.$store.getters.disequilibrium_syndrome"
  409. :label="item.name"
  410. :value="item.id"
  411. :key="item.id"
  412. ></el-option>
  413. </el-select>
  414. </el-form-item>
  415. </el-col>
  416. <el-col :span="8" v-if="isShow('透析期间进食')">
  417. <el-form-item label="透析期间进食: ">
  418. <el-radio-group v-model="form.is_eat">
  419. <el-radio :label="1">有</el-radio>
  420. <el-radio :label="2">无</el-radio>
  421. </el-radio-group>
  422. </el-form-item>
  423. </el-col>
  424. <el-col :span="8" v-if="isShow('中心静脉封管(肝素-A端)')">
  425. <el-form-item label="中心静脉封管(肝素-A端): ">
  426. <el-input v-model="form.cvc_a"></el-input>
  427. </el-form-item>
  428. </el-col>
  429. <el-col :span="8" v-if="isShow('中心静脉封管(肝素-V端)')">
  430. <el-form-item label="中心静脉封管(肝素-V端): ">
  431. <el-input v-model="form.cvc_v"></el-input>
  432. </el-form-item>
  433. </el-col>
  434. <el-col :span="8" v-if="isShow('管路')">
  435. <el-form-item label="管路: ">
  436. <el-select v-model="form.channel">
  437. <el-option :key="0" label="请选择" :value="0"></el-option>
  438. <el-option
  439. v-for="item in channels"
  440. :label="item.name"
  441. :value="item.id"
  442. :key="item.id"
  443. ></el-option>
  444. </el-select>
  445. </el-form-item>
  446. </el-col>
  447. <el-col :span="8" v-if="isShow('实际抗凝剂用量')">
  448. <el-form-item label="实际抗凝剂用量: ">
  449. <el-input v-model="form.dosage_of_anticoagulants"></el-input>
  450. </el-form-item>
  451. </el-col>
  452. <el-col :span="8" v-if="isShow('并发症其他')">
  453. <el-form-item label="并发症其他: ">
  454. <el-input v-model="form.other_complication"></el-input>
  455. </el-form-item>
  456. </el-col>
  457. <el-col :span="8" v-if="isShow('URR')">
  458. <el-form-item label="URR:">
  459. <el-input v-model="form.urr"></el-input>
  460. </el-form-item>
  461. </el-col>
  462. <el-col :span="8" v-if="isShow('透析相关高血压')">
  463. <el-form-item label="透析相关高血压:">
  464. <el-select v-model="form.hypertenison">
  465. <el-option :key="0" label="请选择" :value="0"></el-option>
  466. <el-option
  467. v-for="item in option"
  468. :label="item.name"
  469. :value="item.id"
  470. :key="item.id"
  471. ></el-option>
  472. </el-select>
  473. </el-form-item>
  474. </el-col>
  475. <el-col :span="8" v-if="isShow('透析相关低血压')">
  476. <el-form-item label="透析相关低血压">
  477. <el-select v-model="form.hypopiesia">
  478. <el-option
  479. v-for="item in optionOne"
  480. :label="item.name"
  481. :value="item.id"
  482. :key="item.id"
  483. ></el-option>
  484. </el-select>
  485. </el-form-item>
  486. </el-col>
  487. <el-col :span="8" v-if="isShow('离科方式')">
  488. <el-form-item label="离科方式">
  489. <el-select v-model="form.leave_office_method">
  490. <el-option
  491. v-for="item in leaveOfficeMethod"
  492. :label="item.name"
  493. :value="item.id"
  494. :key="item.id"
  495. ></el-option>
  496. </el-select>
  497. </el-form-item>
  498. </el-col>
  499. <el-col :span="8" v-if="isShow('转归')">
  500. <el-form-item label="转归">
  501. <el-select v-model="form.lapse">
  502. <el-option
  503. v-for="item in lapseList"
  504. :label="item.name"
  505. :value="item.id"
  506. :key="item.id"
  507. ></el-option>
  508. </el-select>
  509. </el-form-item>
  510. </el-col>
  511. <el-col :span="8" v-if="isShow('意识')">
  512. <el-form-item label="意识">
  513. <el-select v-model="form.consciousness">
  514. <el-option
  515. v-for="item in consciousnessList"
  516. :label="item.name"
  517. :value="item.id"
  518. :key="item.id"
  519. ></el-option>
  520. </el-select>
  521. </el-form-item>
  522. </el-col>
  523. <el-col :span="8" v-if="isShow('跌倒风险')">
  524. <el-form-item label="跌倒风险">
  525. <el-select v-model="form.fallrisk">
  526. <el-option
  527. v-for="item in fallriskList"
  528. :label="item.name"
  529. :value="item.id"
  530. :key="item.id"
  531. ></el-option>
  532. </el-select>
  533. </el-form-item>
  534. </el-col>
  535. <el-col :span="8" v-if="isShow('机器运行')">
  536. <el-form-item label="机器运行: ">
  537. <el-select v-model="form.machine_run">
  538. <el-option :key="0" label="请选择" :value="0"></el-option>
  539. <el-option
  540. v-for="item in machineList"
  541. :label="item.name"
  542. :value="item.name"
  543. :key="item.value"
  544. ></el-option>
  545. </el-select>
  546. </el-form-item>
  547. </el-col>
  548. <el-col :span="8" v-if="isShow('透后尿素')">
  549. <el-form-item label="透后尿素(mmol/L):" label-width="150px">
  550. <el-input v-model="form.after_urea"></el-input>
  551. </el-form-item>
  552. </el-col>
  553. <el-col :span="8" v-if="isShow('累计血容量')">
  554. <el-form-item label="累计血容量(L):" label-width="150px">
  555. <el-input v-model="form.accumulated_blood_volume"></el-input>
  556. </el-form-item>
  557. </el-col>
  558. <el-col :span="24" v-if="isShow('KT/V')">
  559. <el-form-item label="KT/V:">
  560. <el-input type="textarea" :rows="4" v-model="form.ktv"></el-input>
  561. </el-form-item>
  562. </el-col>
  563. </el-form>
  564. <span slot="footer" class="dialog-footer">
  565. <el-button @click="hide">取 消</el-button>
  566. <el-button
  567. type="primary"
  568. @click="submitForm"
  569. :loading="loading"
  570. v-if="hasPermission"
  571. >保 存</el-button
  572. >
  573. </span>
  574. </el-dialog>
  575. <multi-select-box
  576. :propsForm="InnerDialogProps"
  577. v-on:dialog-comfirm="DialogComfirm"
  578. v-on:dialog-cancle="DialogCancle"
  579. ></multi-select-box>
  580. </div>
  581. </template>
  582. <script>
  583. import { getDataConfig } from '@/utils/data'
  584. import MultiSelectBox from './MultiSelectBox'
  585. import { postAssessmentAfterDislysis } from '@/api/dialysis'
  586. import { uParseTime } from '@/utils/tools'
  587. import store from '@/store'
  588. import { parseTime } from '@/utils'
  589. import request from '@/utils/request'
  590. export default {
  591. name: 'AssessmentAfterDislysis',
  592. props: {
  593. assessment_after_dislysis: {
  594. // 透后评估
  595. type: Object,
  596. default: () => {
  597. return { id: 0 }
  598. }
  599. },
  600. dialysis_order: {
  601. // 透析记录
  602. type: Object,
  603. default: () => {
  604. return { id: 0 }
  605. }
  606. },
  607. patient: {
  608. // 患者信息
  609. type: Object,
  610. default: () => {
  611. return { id: 0 }
  612. }
  613. },
  614. prescription: {
  615. // 透析记录
  616. type: Object,
  617. default: () => {
  618. return { id: 0 }
  619. }
  620. },
  621. predialysis_evaluation: {
  622. // 透析记录
  623. type: Object,
  624. default: () => {
  625. return { id: 0 }
  626. }
  627. },
  628. },
  629. data() {
  630. return {
  631. showTxt: '',
  632. hasPermission: true,
  633. loading: false,
  634. record_date: '',
  635. isVisibility: false,
  636. template_id: 0,
  637. cruorOptions: [],
  638. pip_coagulationOptions: [],
  639. symptomsOptions: [],
  640. internalFistulaOptions: [],
  641. vascularAccessOptions: [],
  642. unit: [{ id: 1, name: 'g' }, { id: 2, name: 'ml' },{ id: 3, name: 'kg' }],
  643. actualTreatmentHourShow: '',
  644. vascularAccessDescOptions: [],
  645. catheterOptions: [],
  646. complicationOptions: [],
  647. internalFistulaTremorAcOptions: [],
  648. patientGoseOptions: [],
  649. observationContentOptions: [],
  650. channels: [],
  651. bloodFlowOptions: [],
  652. sealingFluidDisposeOptions: [],
  653. isVisibiltyForCruorDialog: false,
  654. dialogCruorTitle: '凝血',
  655. sealing_fluid_special_name: '',
  656. option:[
  657. {id:"1",name:"有"},
  658. {id:"2",name:"无"},
  659. ],
  660. optionOne:[
  661. {id:"1",name:"有"},
  662. {id:"2",name:"无"},
  663. ],
  664. InnerDialogProps: {
  665. values: [],
  666. visibility: false,
  667. isShowTextArea: true,
  668. customContent: '',
  669. titles: '',
  670. type: '' // 不同弹框类型,用来匹配数据
  671. },
  672. form: {
  673. weight_after: '',
  674. weight_loss: '',
  675. temperature: '',
  676. systolic_blood_pressure: '',
  677. diastolic_blood_pressure: '',
  678. pulse_frequency: '',
  679. actual_ultrafiltration: '',
  680. actual_displacement: '',
  681. actual_treatment_hour: '',
  682. actual_treatment_minute: '',
  683. cruor: '',
  684. pip_coagulation: '',
  685. symptom_after_dialysis: '',
  686. dialysis_intakes: '',
  687. internal_fistula: '',
  688. blood_access_part_id: '',
  689. blood_access_part_opera_id: '',
  690. catheter: '',
  691. complication: '',
  692. puncture_point_oozing_blood: 2,
  693. puncture_point_haematoma: 2,
  694. internal_fistula_tremor_ac: '',
  695. patient_gose: '',
  696. inpatient_department: '',
  697. observation_content: '',
  698. observation_content_other: '',
  699. remark: '',
  700. dialysis_order_id: 0,
  701. is_eat: 2,
  702. dialysis_process: '',
  703. in_advance_minute: '',
  704. in_advance_reason: '',
  705. in_advance_reason_other: '',
  706. hemostasis_minute: '',
  707. hemostasis_opera: '',
  708. tremor_noise: '',
  709. disequilibrium_syndrome: '',
  710. disequilibrium_syndrome_option: '',
  711. arterial_tube: '',
  712. intravenous_tube: '',
  713. dialyzer: '',
  714. breathing_rate: '',
  715. dialysis_intakes_unit: 0,
  716. cvc_a: 0,
  717. cvc_v: 0,
  718. channel: '',
  719. return_blood: '',
  720. rehydration_volume: '',
  721. dialysis_during: '',
  722. stroke_volume: '',
  723. blood_flow: '',
  724. sealing_fluid_dispose: '',
  725. sealing_fluid_special: '',
  726. dosage_of_anticoagulants:'',
  727. supine_systolic_blood_pressure:'',
  728. setting_pressure:'',
  729. supine_diastolic_blood_pressure:'',
  730. diastolic_pressure:'',
  731. additional_weight:'',
  732. other_complication:'',
  733. ktv:"",
  734. urr:"",
  735. hypertenison:"",
  736. hypopiesia:"",
  737. leave_office_method:"",
  738. lapse:"",
  739. consciousness:"",
  740. fallrisk:"",
  741. machine_run:"",
  742. after_urea:"",
  743. accumulated_blood_volume:"",
  744. },
  745. lapseList:[],
  746. leaveOfficeMethod:[],
  747. consciousnessList:[],
  748. fallriskList:[],
  749. machineList:[],
  750. }
  751. },
  752. watch: {
  753. 'form.sealing_fluid_dispose': function() {
  754. // var tempsealingFluidDisposeOptions = getDataConfig('hemodialysis', 'sealing_fluid_dispose')
  755. // for (let i = 0; i < tempsealingFluidDisposeOptions.length; i++) {
  756. // if (tempsealingFluidDisposeOptions[i].id == this.form.sealing_fluid_dispose) {
  757. // this.sealing_fluid_special_name = tempsealingFluidDisposeOptions[i].name
  758. // }
  759. // }
  760. var name =""
  761. var str = this.form.sealing_fluid_dispose
  762. var arr = str.split(',')
  763. for(let i=0;i<arr.length;i++){
  764. if(arr[i]== "特殊"){
  765. name = "特殊"
  766. }
  767. }
  768. this.sealing_fluid_special_name = name
  769. return this.sealing_fluid_special_name
  770. },
  771. 'assessment_after_dislysis.id': function() {
  772. if (this.assessment_after_dislysis.id > 0) {
  773. for (var index in this.form) {
  774. this.form[index] = this.assessment_after_dislysis[index]
  775. }
  776. if (this.assessment_after_dislysis['blood_access_part_id'] == 0) {
  777. this.form['blood_access_part_id'] = ''
  778. }
  779. if (this.assessment_after_dislysis['blood_access_part_opera_id'] == 0) {
  780. this.form['blood_access_part_opera_id'] = ''
  781. }
  782. if (this.assessment_after_dislysis['internal_fistula_tremor_ac'] == 0) {
  783. this.form['internal_fistula_tremor_ac'] = ''
  784. }
  785. if (this.assessment_after_dislysis['patient_gose'] == 0) {
  786. this.form['patient_gose'] = ''
  787. }
  788. if (this.assessment_after_dislysis['weight_after'] == 0) {
  789. this.form['weight_after'] = ''
  790. }
  791. if (this.assessment_after_dislysis['weight_loss'] == 0) {
  792. this.form['weight_loss'] = ''
  793. }
  794. if (this.assessment_after_dislysis['temperature'] == 0) {
  795. this.form['temperature'] = ''
  796. }
  797. if (this.assessment_after_dislysis['systolic_blood_pressure'] == 0) {
  798. this.form['systolic_blood_pressure'] = ''
  799. }
  800. if (this.assessment_after_dislysis['diastolic_blood_pressure'] == 0) {
  801. this.form['diastolic_blood_pressure'] = ''
  802. }
  803. if (this.assessment_after_dislysis['pulse_frequency'] == 0) {
  804. this.form['pulse_frequency'] = ''
  805. }
  806. if (this.assessment_after_dislysis['breathing_rate'] == 0) {
  807. this.form['breathing_rate'] = ''
  808. }
  809. if (this.assessment_after_dislysis['actual_ultrafiltration'] == 0) {
  810. this.form['actual_ultrafiltration'] = ''
  811. }
  812. if (this.assessment_after_dislysis['actual_displacement'] == 0) {
  813. this.form['actual_displacement'] = ''
  814. }
  815. if (this.assessment_after_dislysis['dialysis_intakes'] == 0) {
  816. this.form['dialysis_intakes'] = ''
  817. }
  818. if (this.assessment_after_dislysis['return_blood'] == 0) {
  819. this.form['return_blood'] = ''
  820. }
  821. if (this.assessment_after_dislysis['rehydration_volume'] == 0) {
  822. this.form['rehydration_volume'] = ''
  823. }
  824. if (this.assessment_after_dislysis['dialysis_during'] == 0) {
  825. this.form['dialysis_during'] = ''
  826. }
  827. if (this.assessment_after_dislysis['stroke_volume'] == 0) {
  828. this.form['stroke_volume'] = ''
  829. }
  830. if (this.assessment_after_dislysis['blood_flow'] == 0) {
  831. this.form['blood_flow'] = ''
  832. }
  833. if (this.assessment_after_dislysis['sealing_fluid_dispose'] == 0) {
  834. this.form['sealing_fluid_dispose'] = ''
  835. }
  836. this.actualTreatmentHourShow = new Date(
  837. 2018,
  838. 1,
  839. 1,
  840. this.assessment_after_dislysis['actual_treatment_hour'],
  841. this.assessment_after_dislysis['actual_treatment_minute']
  842. )
  843. }
  844. },
  845. 'dialysis_order.id': function() {
  846. this.form['dialysis_order_id'] = this.assessment_after_dislysis[
  847. 'dialysis_order_id'
  848. ]
  849. },
  850. 'form.patient_gose': function() {
  851. if (this.form.patient_gose.patient_gose != 3) {
  852. this.form.inpatient_department = ''
  853. this.form.observation_content = ''
  854. this.form.observation_content_other = ''
  855. }
  856. },
  857. 'form.weight_after': function() {
  858. if (this) {
  859. }
  860. }
  861. },
  862. methods: {
  863. submitForm() {
  864. this.loading = true
  865. const ParamsQuery = {}
  866. if (!(this.patient.id > 0)) {
  867. this.$message.error('没有选择患者')
  868. this.loading = false
  869. return false
  870. }
  871. if (this.record_date.length != 10) {
  872. this.$message.error('无效的日期')
  873. this.loading = false
  874. return false
  875. }
  876. ParamsQuery['patient'] = this.patient.id
  877. ParamsQuery['record_date'] = this.record_date
  878. ParamsQuery['mode'] = '1'
  879. if (this.assessment_after_dislysis.creater > 0) {
  880. ParamsQuery['mode'] = '2'
  881. if (
  882. this.assessment_after_dislysis.creater !=
  883. this.$store.getters.xt_user.user.id
  884. ) {
  885. ParamsQuery['mode'] = '3'
  886. }
  887. }
  888. const data = {}
  889. data['weight_after'] = this.form.weight_after ? parseFloat(this.form.weight_after) : 0
  890. data['weight_loss'] = this.form.weight_loss ? parseFloat(this.form.weight_loss) : 0
  891. data['temperature'] = this.form.temperature ? parseFloat(this.form.temperature) : 0
  892. data['breathing_rate'] = this.form.breathing_rate
  893. data['systolic_blood_pressure'] = this.form.systolic_blood_pressure ? parseFloat(this.form.systolic_blood_pressure) : 0
  894. data['diastolic_blood_pressure'] = this.form.diastolic_blood_pressure ? parseFloat(this.form.diastolic_blood_pressure) : 0
  895. data['pulse_frequency'] = this.form.pulse_frequency ? parseFloat(this.form.pulse_frequency) : 0
  896. data['actual_ultrafiltration'] = this.form.actual_ultrafiltration ? parseFloat(this.form.actual_ultrafiltration) : 0
  897. data['actual_displacement'] = this.form.actual_displacement ? parseFloat(this.form.actual_displacement) : 0
  898. data['actual_treatment_hour'] = this.form.actual_treatment_hour ? parseFloat(this.form.actual_treatment_hour) : 0
  899. data['actual_treatment_minute'] = this.form.actual_treatment_minute ? parseFloat(this.form.actual_treatment_minute) : 0
  900. data['cruor'] = this.form.cruor
  901. data['pip_coagulation'] = this.form.pip_coagulation
  902. data['symptom_after_dialysis'] = this.form.symptom_after_dialysis
  903. data['dialysis_intakes'] = this.form.dialysis_intakes ? parseFloat(this.form.dialysis_intakes) : 0
  904. data['internal_fistula'] = this.form.internal_fistula
  905. data['blood_access_part_id'] = this.form.blood_access_part_id ? parseFloat(this.form.blood_access_part_id) : 0
  906. data['blood_access_part_opera_id'] = this.form.blood_access_part_opera_id ? parseFloat(this.form.blood_access_part_opera_id) : 0
  907. data['catheter'] = this.form.catheter
  908. data['complication'] = this.form.complication
  909. data['puncture_point_oozing_blood'] = this.form.puncture_point_oozing_blood ? parseFloat(this.form.puncture_point_oozing_blood) : 0
  910. data['puncture_point_haematoma'] = this.form.puncture_point_haematoma ? parseFloat(this.form.puncture_point_haematoma) : 0
  911. data['internal_fistula_tremor_ac'] = this.form.internal_fistula_tremor_ac ? parseFloat(this.form.internal_fistula_tremor_ac) : 0
  912. data['patient_gose'] = this.form.patient_gose ? parseFloat(this.form.patient_gose) : 0
  913. data['inpatient_department'] = this.form.inpatient_department
  914. data['observation_content'] = this.form.observation_content
  915. data['observation_content_other'] = this.form.observation_content_other
  916. data['remark'] = this.form.remark
  917. data['dialysis_order_id'] = this.form.dialysis_order_id ? parseFloat(this.form.dialysis_order_id) : 0
  918. data['dialysis_process'] = this.form.dialysis_process ? parseFloat(this.form.dialysis_process) : 0
  919. data['in_advance_minute'] = this.form.in_advance_minute ? parseFloat(this.form.in_advance_minute) : 0
  920. data['in_advance_reason_other'] = this.form.in_advance_reason_other
  921. data['in_advance_reason'] = this.form.in_advance_reason
  922. data['hemostasis_minute'] = this.form.hemostasis_minute ? parseFloat(this.form.hemostasis_minute) : 0
  923. data['hemostasis_opera'] = this.form.hemostasis_opera ? parseFloat(this.form.hemostasis_opera) : 0
  924. data['tremor_noise'] = this.form.tremor_noise ? parseFloat(this.form.tremor_noise) : 0
  925. data['disequilibrium_syndrome'] = this.form.disequilibrium_syndrome ? parseFloat(this.form.disequilibrium_syndrome) : 0
  926. data['disequilibrium_syndrome_option'] = this.form.disequilibrium_syndrome_option
  927. data['arterial_tube'] = this.form.arterial_tube ? parseFloat(this.form.arterial_tube) : 0
  928. data['intravenous_tube'] = this.form.intravenous_tube ? parseFloat(this.form.intravenous_tube) : 0
  929. data['dialysis_intakes_unit'] = this.form.dialysis_intakes_unit
  930. data['dialyzer'] = this.form.dialyzer ? parseFloat(this.form.dialyzer) : 0
  931. data['is_eat'] = this.form.is_eat ? parseFloat(this.form.is_eat) : 0
  932. data['cvc_a'] = this.form.cvc_a ? parseFloat(this.form.cvc_a) : 0
  933. data['cvc_v'] = this.form.cvc_v ? parseFloat(this.form.cvc_v) : 0
  934. data['return_blood'] = this.form.return_blood ? parseFloat(this.form.return_blood) : 0
  935. data['rehydration_volume'] = this.form.rehydration_volume ? parseFloat(this.form.rehydration_volume) : 0
  936. data['dialysis_during'] = this.form.dialysis_during ? parseFloat(this.form.dialysis_during) : 0
  937. data['stroke_volume'] = this.form.stroke_volume ? parseFloat(this.form.stroke_volume) : 0
  938. data['blood_flow'] = this.form.blood_flow ? parseFloat(this.form.blood_flow) : 0
  939. // data['sealing_fluid_dispose'] = this.form.sealing_fluid_dispose ? parseFloat(this.form.sealing_fluid_dispose) : 0
  940. data['sealing_fluid_dispose'] = this.form.sealing_fluid_dispose
  941. data['sealing_fluid_special'] = this.form.sealing_fluid_special
  942. data['dosage_of_anticoagulants'] = this.form.dosage_of_anticoagulants ? parseFloat(this.form.dosage_of_anticoagulants) : 0
  943. data['supine_systolic_blood_pressure'] = this.form.supine_systolic_blood_pressure
  944. data['setting_pressure'] = this.form.setting_pressure
  945. data["supine_diastolic_blood_pressure"] = this.form.supine_diastolic_blood_pressure
  946. data["diastolic_pressure"] = this.form.diastolic_pressure
  947. data["additional_weight"] = this.form.additional_weight ? parseFloat(this.form.additional_weight) : 0
  948. data["other_complication"] = this.form.other_complication
  949. data["ktv"] = this.form.ktv
  950. data["urr"] = this.form.urr
  951. data["hypertenison"] = parseInt(this.form.hypertenison)
  952. data["hypopiesia"] = parseInt(this.form.hypopiesia)
  953. data["leave_office_method"] = this.form.leave_office_method
  954. data["lapse"] = this.form.lapse
  955. data["consciousness"] = this.form.consciousness
  956. data["fallrisk"] = this.form.fallrisk
  957. data["machine_run"] = this.form.machine_run
  958. data["after_urea"] = this.form.after_urea
  959. data["pip_coagulation"] = this.form.pip_coagulation
  960. data["accumulated_blood_volume"] = this.form.accumulated_blood_volume
  961. console.log("Paramsquery",data)
  962. postAssessmentAfterDislysis(ParamsQuery, data)
  963. .then(response => {
  964. this.loading = false
  965. if (response.data.state == 0) {
  966. this.$message.error(response.data.msg)
  967. return false
  968. } else {
  969. this.$notify({
  970. title: '成功',
  971. message: '提交成功',
  972. type: 'success',
  973. duration: 2000
  974. })
  975. var assement = response.data.data.AssessmentAfterDislysis
  976. var assessment_after_dislysis = this.assessment_after_dislysis
  977. for (var index in assement) {
  978. // assessment_after_dislysis[index] = assement[index];
  979. this.$set(assessment_after_dislysis, index, assement[index])
  980. }
  981. this.hide()
  982. }
  983. })
  984. .catch(v => {
  985. this.loading = false
  986. })
  987. },
  988. showDialog: function(val) {
  989. this.InnerDialogProps.visibility = true
  990. switch (val) {
  991. case '1':
  992. this.InnerDialogProps.values = this.cruorOptions
  993. this.InnerDialogProps.titles = '凝血'
  994. this.InnerDialogProps.type = 'cruor'
  995. this.InnerDialogProps.selected = this.form.cruor
  996. this.InnerDialogProps.isShowTextArea = false
  997. break
  998. case '2':
  999. this.InnerDialogProps.values = this.symptomsOptions
  1000. this.InnerDialogProps.titles = '透后症状'
  1001. this.InnerDialogProps.type = 'symptom_after_dialysis'
  1002. this.InnerDialogProps.selected = this.form.symptom_after_dialysis
  1003. this.InnerDialogProps.isShowTextArea = false
  1004. break
  1005. case '3':
  1006. this.InnerDialogProps.values = this.internalFistulaOptions
  1007. this.InnerDialogProps.titles = '内瘘'
  1008. this.InnerDialogProps.type = 'internal_fistula'
  1009. this.InnerDialogProps.selected = this.form.internal_fistula
  1010. this.InnerDialogProps.isShowTextArea = false
  1011. break
  1012. case '4':
  1013. this.InnerDialogProps.values = this.catheterOptions
  1014. this.InnerDialogProps.titles = '导管'
  1015. this.InnerDialogProps.type = 'catheter'
  1016. this.InnerDialogProps.selected = this.form.catheter
  1017. this.InnerDialogProps.isShowTextArea = false
  1018. break
  1019. case '5':
  1020. this.InnerDialogProps.values = this.complicationOptions
  1021. this.InnerDialogProps.titles = '并发症'
  1022. this.InnerDialogProps.type = 'complication'
  1023. this.InnerDialogProps.selected = this.form.complication
  1024. this.InnerDialogProps.isShowTextArea = false
  1025. break
  1026. case '6':
  1027. this.InnerDialogProps.values = this.observationContentOptions
  1028. this.InnerDialogProps.titles = '交待病房护士/患者/陪人观察内容'
  1029. this.InnerDialogProps.type = 'observation_content'
  1030. this.InnerDialogProps.selected = this.form.observation_content
  1031. this.InnerDialogProps.isShowTextArea = false
  1032. break
  1033. case '7':
  1034. this.InnerDialogProps.values = this.$store.getters.in_advance_reason
  1035. this.InnerDialogProps.titles = '透析过程提前原因'
  1036. this.InnerDialogProps.type = 'in_advance_reason'
  1037. this.InnerDialogProps.selected = this.form.in_advance_reason
  1038. this.InnerDialogProps.isShowTextArea = false
  1039. break
  1040. case '8':
  1041. this.InnerDialogProps.values = this.$store.getters.disequilibrium_syndrome_option
  1042. this.InnerDialogProps.titles = '失衡综合症症状'
  1043. this.InnerDialogProps.type = 'disequilibrium_syndrome_option'
  1044. this.InnerDialogProps.selected = this.form.disequilibrium_syndrome_option
  1045. this.InnerDialogProps.isShowTextArea = false
  1046. break
  1047. case '9':
  1048. this.InnerDialogProps.values = this.sealingFluidDisposeOptions
  1049. this.InnerDialogProps.titles = '封管液配置'
  1050. this.InnerDialogProps.type = 'sealing_fluid_dispose'
  1051. this.InnerDialogProps.selected = this.form.sealing_fluid_dispose
  1052. this.InnerDialogProps.isShowTextArea = false
  1053. break
  1054. case '10':
  1055. this.InnerDialogProps.values = this.pip_coagulationOptions
  1056. this.InnerDialogProps.titles = '管路凝血'
  1057. this.InnerDialogProps.type = 'pip_coagulation'
  1058. this.InnerDialogProps.selected = this.form.pip_coagulation
  1059. this.InnerDialogProps.isShowTextArea = false
  1060. break
  1061. }
  1062. },
  1063. selectActualTreatmentHour(val) {
  1064. var valTime = val.split(':')
  1065. this.form.actual_treatment_hour = valTime[0]
  1066. this.form.actual_treatment_minute = valTime[1]
  1067. },
  1068. DialogComfirm: function(val) {
  1069. this.InnerDialogProps.visibility = false
  1070. switch (val.type) {
  1071. case 'cruor':
  1072. this.form.cruor = val.value.join(',')
  1073. break
  1074. case 'pip_coagulation':
  1075. this.form.pip_coagulation = val.value.join(',')
  1076. break
  1077. case 'symptom_after_dialysis':
  1078. this.form.symptom_after_dialysis = val.value.join(',')
  1079. break
  1080. case 'internal_fistula':
  1081. this.form.internal_fistula = val.value.join(',')
  1082. break
  1083. case 'catheter':
  1084. this.form.catheter = val.value.join(',')
  1085. break
  1086. case 'complication':
  1087. this.form.complication = val.value.join(',')
  1088. break
  1089. case 'observation_content':
  1090. this.form.observation_content = val.value.join(',')
  1091. break
  1092. case 'in_advance_reason':
  1093. this.form.in_advance_reason = val.value.join(',')
  1094. break
  1095. case 'disequilibrium_syndrome_option':
  1096. this.form.disequilibrium_syndrome_option = val.value.join(',')
  1097. break
  1098. case 'sealing_fluid_dispose':
  1099. this.form.sealing_fluid_dispose = val.value.join(',')
  1100. break
  1101. default:
  1102. break
  1103. }
  1104. // console.log(val);
  1105. },
  1106. DialogCancle: function(val) {
  1107. this.InnerDialogProps.visibility = false
  1108. },
  1109. // 数据开始
  1110. show(predialysis,last_after) {
  1111. console.log("透后体重2332233223wo",predialysis)
  1112. this.isVisibility = true
  1113. this.predialysis = predialysis
  1114. this.form.observation_content = predialysis.observation_content
  1115. this.form.inpatient_department = predialysis.inpatient_department
  1116. this.form.observation_content_other = predialysis.observation_content_other
  1117. if(predialysis.id > 0){
  1118. this.form.hypertenison = predialysis.hypertenison.toString()
  1119. }
  1120. if(predialysis.id > 0){
  1121. this.form.hypopiesia = predialysis.hypopiesia.toString()
  1122. }
  1123. if(predialysis.id > 0){
  1124. this.form.hypertenison = predialysis.hypertenison.toString()
  1125. }
  1126. if(predialysis.id > 0){
  1127. this.form.hypopiesia = predialysis.hypopiesia.toString()
  1128. }
  1129. //针对长沙南雅 ,透后体重 - 目标超滤量
  1130. // if(predialysis.id > 0){
  1131. // if(this.$store.getters.xt_user.template_info.org_id == 9671 || this.$store.getters.xt_user.template_info.org_id == 9675 || this.$store.getters.xt_user.template_info.org_id == 10340){
  1132. // if(predialysis.weight_after == 0){
  1133. // if(this.predialysis_evaluation!=null && this.prescription.target_ultrafiltration!=null){
  1134. // this.form.weight_after = this.predialysis_evaluation.weight_before - (this.prescription.target_ultrafiltration/1000)
  1135. // }
  1136. // }
  1137. // }
  1138. // }
  1139. this.form.leave_office_method = predialysis.leave_office_method
  1140. this.form.lapse = predialysis.lapse
  1141. // console.log("透后", predialysis);
  1142. if(predialysis != null && predialysis.id == 0){
  1143. if (last_after != null) {
  1144. for (var key in last_after){
  1145. if (key != 'actual_treatment_hour' && key != 'actual_treatment_minute' && key != 'weight_loss' && key != 'weight_after' && key != 'systolic_blood_pressure' && key != 'diastolic_blood_pressure' && key != 'pulse_frequency' ){
  1146. this.$set(
  1147. this.form,
  1148. key,
  1149. last_after[key]
  1150. )
  1151. }
  1152. }
  1153. }
  1154. if(last_after.id > 0){
  1155. this.form.hypertenison = last_after.hypertenison.toString()
  1156. }
  1157. if(last_after.id > 0){
  1158. this.form.hypopiesia = last_after.hypopiesia.toString()
  1159. }
  1160. //针对长沙南雅 ,透后体重 - 目标超滤量
  1161. // if(this.$store.getters.xt_user.template_info.org_id == 9671 || this.$store.getters.xt_user.template_info.org_id == 9675 || this.$store.getters.xt_user.template_info.org_id == 10340){
  1162. // if(this.prescription!=null && this.predialysis_evaluation!=null){
  1163. // this.form.weight_after = this.predialysis_evaluation.weight_before - (this.prescription.target_ultrafiltration/1000)
  1164. // }
  1165. // }
  1166. }
  1167. this.getPermission()
  1168. },
  1169. hide() {
  1170. this.isVisibility = false
  1171. },
  1172. isShow(name) {
  1173. var filedList = store.getters.xt_user.fileds
  1174. for (let i = 0; i < filedList.length; i++) {
  1175. if (
  1176. filedList[i].module == 5 &&
  1177. filedList[i].filed_name_cn == name &&
  1178. filedList[i].is_show == 1
  1179. ) {
  1180. return true
  1181. }
  1182. }
  1183. return false
  1184. },
  1185. setRecords(records) {
  1186. for (var index in records) {
  1187. this.$set(this.assessment_after_dislysis, index, records[index])
  1188. }
  1189. this.actualTreatmentHourShow = new Date(
  1190. 2018,
  1191. 1,
  1192. 1,
  1193. this.assessment_after_dislysis['actual_treatment_hour'],
  1194. this.assessment_after_dislysis['actual_treatment_minute']
  1195. )
  1196. },
  1197. getPermission() {
  1198. request
  1199. .get('/api/func_per/get', {
  1200. params: {
  1201. create_url: '/api/dialysis/assessmentafterdislysis?mode=1',
  1202. modify_url: '/api/dialysis/assessmentafterdislysis?mode=2',
  1203. modify_other_url: '/api/dialysis/assessmentafterdislysis?mode=3',
  1204. module: 8
  1205. }
  1206. })
  1207. .then(res => {
  1208. console.log(res)
  1209. // console.log("透后", this.predialysis);
  1210. if (res.data.state == 0) {
  1211. this.hasPermission = false
  1212. } else if (res.data.state == 1) {
  1213. if (this.predialysis.id != '' && this.predialysis.creater != 0) {
  1214. // 有数据
  1215. if (
  1216. this.predialysis.creater == this.$store.getters.xt_user.user.id
  1217. ) {
  1218. // 创建人是自己
  1219. if (res.data.data.is_has_modify == false) {
  1220. this.hasPermission = false
  1221. this.showTxt = '你没有修改透后评估权限'
  1222. }
  1223. } else {
  1224. // 创建人不是自己
  1225. if (res.data.data.is_has_modify_other == false) {
  1226. this.hasPermission = false
  1227. this.showTxt = '你没有修改他人透后评估权限'
  1228. }
  1229. }
  1230. } else if (
  1231. this.predialysis.id == '' ||
  1232. this.predialysis.creater == 0
  1233. ) {
  1234. if (res.data.data.is_has_create == false) {
  1235. this.hasPermission = false
  1236. this.showTxt = '你没有新增透后评估权限'
  1237. }
  1238. }
  1239. }
  1240. })
  1241. }
  1242. },
  1243. created() {
  1244. // console.log("this.form", this.form);
  1245. this.cruorOptions = getDataConfig('hemodialysis', 'cruor')
  1246. this.pip_coagulationOptions = getDataConfig('hemodialysis','pip_coagulation')
  1247. this.symptomsOptions = getDataConfig('hemodialysis', 'symptoms')
  1248. this.internalFistulaOptions = getDataConfig('hemodialysis', 'internal_fistula')
  1249. this.vascularAccessOptions = getDataConfig('hemodialysis', 'vascular_access')
  1250. this.vascularAccessDescOptions = getDataConfig('hemodialysis', 'vascular_access_desc')
  1251. this.catheterOptions = getDataConfig('hemodialysis', 'catheter')
  1252. this.complicationOptions = getDataConfig('hemodialysis', 'complication')
  1253. this.bloodFlowOptions = getDataConfig('hemodialysis', 'blood_flow')
  1254. this.sealingFluidDisposeOptions = getDataConfig('hemodialysis', 'sealing_fluid_dispose')
  1255. this.lapseList = getDataConfig('hemodialysis', 'lapse')
  1256. this.leaveOfficeMethod = getDataConfig('hemodialysis','leave_office_method')
  1257. this.consciousnessList = getDataConfig("hemodialysis","consciousness")
  1258. this.fallriskList = getDataConfig("hemodialysis","fallrisk")
  1259. this.machineList = getDataConfig("hemodialysis","machine_run")
  1260. console.log("机器运行",this.machineList)
  1261. this.internalFistulaTremorAcOptions = this.$store.getters.internal_fistula_tremor_ac
  1262. this.patientGoseOptions = this.$store.getters.patient_gose
  1263. this.observationContentOptions = this.$store.getters.observation_content
  1264. this.template_id = this.$store.getters.xt_user.template_info.template_id
  1265. this.channels = this.$store.getters.channels
  1266. var date = this.$route.query && this.$route.query.date
  1267. this.record_date = date ? uParseTime(date, '{y}-{m}-{d}') : parseTime(new Date(), '{y}-{m}-{d}')
  1268. if(this.$store.getters.xt_user.template_info.org_id == 0 || this.$store.getters.xt_user.template_info.org_id==9829){
  1269. this.form.pulse_frequency = 80
  1270. }
  1271. },
  1272. components: {
  1273. MultiSelectBox
  1274. }
  1275. }
  1276. </script>
  1277. <style scoped>
  1278. .warnTxt {
  1279. text-align: center;
  1280. margin: 0 auto;
  1281. background: #faa331;
  1282. max-width: 240px;
  1283. padding: 10px 20px;
  1284. border-radius: 4px;
  1285. margin-bottom: 10px;
  1286. color: #fff;
  1287. }
  1288. </style>
  1289. <style lang="scss">
  1290. .newDialog {
  1291. .el-dialog__body {
  1292. padding: 10px 20px 30px;
  1293. }
  1294. }
  1295. </style>