血透系统pad前端

AssessmentDialog.vue 51KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445
  1. <template>
  2. <div>
  3. <div v-if="isShowDialog" class="Dialog">
  4. <div class="DialogTit">
  5. <span class="iconfont" @click="close()">&#xe6e9;</span>
  6. <h1 class="name">透前评估</h1>
  7. <span @click="commitInfo" class="success">保存</span>
  8. </div>
  9. <div class="DialogContent" id="dialogTop">
  10. <div class="item" v-if="isShow('透前体重')">
  11. <h2 class="name">透前体重(kg)</h2>
  12. <div class="content">
  13. <input type="number" @focus="inputFocus" v-model="formValue.weight_before"/>
  14. </div>
  15. </div>
  16. <div class="item" v-if="isShow('干体重')&&this.$store.getters.user.template_info.template_id == 6">
  17. <h2 class="name">干体重(kg)</h2>
  18. <div class="content" @click="showDryWeight">
  19. <input type="number" @focus="inputFocus" v-model="formValue.dry_weight" disabled="disabled"/>
  20. </div>
  21. <span class="iconfont">&#xe6f9;</span>
  22. </div>
  23. <div
  24. class="item"
  25. v-if="isShow('干体重')&& this.$store.getters.user.template_info.template_id != 6"
  26. >
  27. <h2 class="name">干体重(kg)</h2>
  28. <div class="content">
  29. <input type="number" @focus="inputFocus" v-model="formValue.dry_weight"/>
  30. </div>
  31. </div>
  32. <div class="item" v-if="isShow('衣物重')">
  33. <h2 class="name">衣物重(kg)</h2>
  34. <div class="content">
  35. <input type="number" @focus="inputFocus" v-model="formValue.additional_weight"/>
  36. </div>
  37. </div>
  38. <div class="item" v-if="isShow('体温')">
  39. <h2 class="name">体温(℃)</h2>
  40. <div class="content">
  41. <input type="number" @focus="inputFocus" v-model="formValue.temperature"/>
  42. </div>
  43. </div>
  44. <div class="item" v-if="isShow('呼吸频率')">
  45. <h2 class="name">呼吸频率(次/分)</h2>
  46. <div class="content">
  47. <input type="number" @focus="inputFocus" v-model="formValue.breathing_rate"/>
  48. </div>
  49. </div>
  50. <div class="item" v-if="isShow('出血')" @click="showSubMenu('hemorrhage_state')">
  51. <h2 class="name">出血</h2>
  52. <div class="content">
  53. <span v-if="formValue.is_hemorrhage == 0" class="text" style="width: 50px"></span>
  54. <span v-if="formValue.is_hemorrhage == 1" class="text" style="width: 50px">有</span>
  55. <span v-if="formValue.is_hemorrhage == 2" class="text" style="width: 50px">无</span>
  56. <span class="iconfont">&#xe6f9;</span>
  57. </div>
  58. </div>
  59. <div
  60. @click="showSubMenu('hemorrhage')"
  61. class="item"
  62. ref="hemorrhage"
  63. v-if="hemorrhage_state&&isShow('出血选项')"
  64. >
  65. <h2 class="name">—— 出血选项</h2>
  66. <div class="content">
  67. <span class="text" style="width: 50px">{{formValue.hemorrhage}}</span>
  68. <span class="iconfont">&#xe6f9;</span>
  69. </div>
  70. </div>
  71. <div class="item" v-if="hemorrhage_state&&isShow('其他出血情况')">
  72. <h2 class="name">—— 其他出血情况</h2>
  73. <div class="content">
  74. <input @focus="inputFocus" v-model="formValue.hemorrhage_other"/>
  75. </div>
  76. </div>
  77. <div
  78. @click="showSubMenu('internal_fistula')"
  79. class="item"
  80. ref="internal_fistula"
  81. v-if="isShow('内瘘')"
  82. >
  83. <h2 class="name">内瘘</h2>
  84. <div class="content">
  85. <span class="text" style="width: 100px">{{formValue.internal_fistula}}</span>
  86. <span class="iconfont">&#xe6f9;</span>
  87. </div>
  88. </div>
  89. <div
  90. @click="showSubMenu('internal_fistula_skin')"
  91. class="item"
  92. ref="internal_fistula_skin"
  93. v-if="isShow('内瘘皮肤情况')"
  94. >
  95. <h2 class="name">内瘘皮肤情况</h2>
  96. <div class="content">
  97. <span class="text" style="width: 100px">{{formValue.internal_fistula_skin}}</span>
  98. <span class="iconfont">&#xe6f9;</span>
  99. </div>
  100. </div>
  101. <div @click="showSubMenu('catheter')" class="item" ref="catheter" v-if="isShow('导管')">
  102. <h2 class="name">导管</h2>
  103. <div class="content">
  104. <span class="text">{{formValue.catheter}}</span>
  105. <span class="iconfont">&#xe6f9;</span>
  106. </div>
  107. </div>
  108. <div
  109. @click="showSubMenu('catheter_bend')"
  110. class="item"
  111. ref="catheter_bend"
  112. v-if="isShow('导管打折')"
  113. >
  114. <h2 class="name">导管打折</h2>
  115. <div class="content">
  116. <span class="text">{{GetCatheterBendById(formValue.catheter_bend)}}</span>
  117. <span class="iconfont">&#xe6f9;</span>
  118. </div>
  119. </div>
  120. <div class="line"></div>
  121. <div class="item" v-if="isShow('收缩压')">
  122. <h2 class="name">收缩压(mmHg)</h2>
  123. <div class="content">
  124. <input type="number" @focus="inputFocus" v-model="formValue.systolic_blood_pressure"/>
  125. </div>
  126. </div>
  127. <div class="item" v-if="isShow('舒张压')">
  128. <h2 class="name">舒张压(mmHg)</h2>
  129. <div class="content">
  130. <input type="number" @focus="inputFocus" v-model="formValue.diastolic_blood_pressure"/>
  131. </div>
  132. </div>
  133. <div class="item" v-if="isShow('脉搏')">
  134. <h2 class="name">脉搏(次/分)</h2>
  135. <div class="content">
  136. <input type="number" @focus="inputFocus" v-model="formValue.pulse_frequency"/>
  137. </div>
  138. </div>
  139. <div
  140. @click="showSubMenu('blood_access_part')"
  141. class="item"
  142. ref="blood_access_part"
  143. v-if="isShow('血管通路部位')"
  144. >
  145. <h2 class="name">血管通路部位</h2>
  146. <div class="content">
  147. <span class="text">{{QueryPartById(formValue.blood_access_part_id)}}</span>
  148. <span class="iconfont">&#xe6f9;</span>
  149. </div>
  150. </div>
  151. <div
  152. @click="showSubMenu('blood_access_opera')"
  153. class="item"
  154. ref="blood_access_opera"
  155. v-if="isShow('血管通路操作')"
  156. >
  157. <h2 class="name">血管通路操作</h2>
  158. <div class="content">
  159. <span class="text">{{QueryOperaById(formValue.blood_access_part_opera_id)}}</span>
  160. <span class="iconfont">&#xe6f9;</span>
  161. </div>
  162. </div>
  163. <div class="line"></div>
  164. <div
  165. @click="showSubMenu('complication')"
  166. class="item"
  167. ref="complication"
  168. v-if="isShow('并发症')"
  169. >
  170. <h2 class="name">并发症</h2>
  171. <div class="content">
  172. <span class="text" style="width: 50px">{{formValue.complication}}</span>
  173. <span class="iconfont">&#xe6f9;</span>
  174. </div>
  175. </div>
  176. <div
  177. @click="showSubMenu('last_post_dialysis')"
  178. class="item"
  179. ref="last_post_dialysis"
  180. v-if="isShow('前次透析后')"
  181. >
  182. <h2 class="name">前次透析后</h2>
  183. <div class="content">
  184. <span class="text" style="width: 100px">{{formValue.last_post_dialysis}}</span>
  185. <span class="iconfont">&#xe6f9;</span>
  186. </div>
  187. </div>
  188. <div
  189. @click="showSubMenu('dialysis_interphase')"
  190. class="item"
  191. ref="dialysis_interphase"
  192. v-if="isShow('透析期间')"
  193. >
  194. <h2 class="name">透析期间</h2>
  195. <div class="content">
  196. <span class="text" style="width: 100px">{{formValue.dialysis_interphase}}</span>
  197. <span class="iconfont">&#xe6f9;</span>
  198. </div>
  199. </div>
  200. <div
  201. @click="showSubMenu('symptom_before_dialysis')"
  202. class="item"
  203. ref="symptom_before_dialysis"
  204. v-if="isShow('透析前症状')"
  205. >
  206. <h2 class="name">透析前症状</h2>
  207. <div class="content">
  208. <span class="text" style="width: 100px">{{formValue.symptom_before_dialysis}}</span>
  209. <span class="iconfont">&#xe6f9;</span>
  210. </div>
  211. </div>
  212. <div class="line"></div>
  213. <div class="item" ref="symptom_before_dialysis" v-if="isShow('透析机型号')">
  214. <h2 class="name">透析机型号</h2>
  215. <div class="content">
  216. <input type="number" @focus="inputFocus" v-model="formValue.machine_type"/>
  217. </div>
  218. </div>
  219. <div class="item" ref="symptom_before_dialysis" v-if="isShow('透析频次')">
  220. <h2 class="name">透析频次(次/周)</h2>
  221. <div class="content">
  222. <input type="number" @focus="inputFocus" v-model="formValue.dialysis_count"/>
  223. </div>
  224. </div>
  225. <div
  226. @click="showSubMenu('blood_access_internal_fistula')"
  227. class="item"
  228. ref="blood_access_internal_fistula"
  229. v-if="isShow('血管通路(内瘘)')"
  230. >
  231. <h2 class="name">血管通路(内瘘)</h2>
  232. <div class="content">
  233. <span class="text" style="width: 100px">{{formValue.blood_access_internal_fistula}}</span>
  234. <span class="iconfont">&#xe6f9;</span>
  235. </div>
  236. </div>
  237. <div class="item" ref="internal_fistula_other" v-if="isShow('血管通路(内瘘)其他')">
  238. <h2 class="name">血管通路(内瘘)其他</h2>
  239. <div class="content">
  240. <input @focus="inputFocus" v-model="formValue.internal_fistula_other"/>
  241. </div>
  242. </div>
  243. <div
  244. @click="showSubMenu('blood_access_noise')"
  245. class="item"
  246. ref="blood_access_noise"
  247. v-if="isShow('血管杂音')"
  248. >
  249. <h2 class="name">血管杂音</h2>
  250. <div class="content">
  251. <span
  252. class="text"
  253. style="width: 100px"
  254. >{{getBloodAccessNoise(formValue.blood_access_noise)}}</span>
  255. <span class="iconfont">&#xe6f9;</span>
  256. </div>
  257. </div>
  258. <div
  259. @click="showSubMenu('puncture_needle')"
  260. class="item"
  261. ref="puncture_needle"
  262. v-if="isShow('穿刺针')"
  263. >
  264. <h2 class="name">穿刺针</h2>
  265. <div class="content">
  266. <span class="text" style="width: 100px">{{formValue.puncture_needle}}</span>
  267. <span class="iconfont">&#xe6f9;</span>
  268. </div>
  269. </div>
  270. <div
  271. @click="showSubMenu('puncture_way')"
  272. class="item"
  273. ref="puncture_way"
  274. v-if="isShow('穿刺方式')"
  275. >
  276. <h2 class="name">穿刺方式</h2>
  277. <div class="content">
  278. <span class="text" style="width: 100px">{{getWay(formValue.puncture_way)}}</span>
  279. <span class="iconfont">&#xe6f9;</span>
  280. </div>
  281. </div>
  282. <div
  283. @click="showSubMenu('venous_catheterization')"
  284. class="item"
  285. ref="venous_catheterization"
  286. v-if="isShow('中心静脉置管')"
  287. >
  288. <h2 class="name">中心静脉置管</h2>
  289. <div class="content">
  290. <span
  291. class="text"
  292. style="width: 100px"
  293. >{{getVenousCatheterization(formValue.venous_catheterization)}}</span>
  294. <span class="iconfont">&#xe6f9;</span>
  295. </div>
  296. </div>
  297. <div
  298. @click="showSubMenu('venous_catheterization_part')"
  299. class="item"
  300. ref="venous_catheterization_part"
  301. v-if="isShow('位置')"
  302. >
  303. <h2 class="name">位置</h2>
  304. <div class="content">
  305. <span
  306. class="text"
  307. style="width: 100px"
  308. >{{getVenousCatheterizationPart(formValue.venous_catheterization_part)}}</span>
  309. <span class="iconfont">&#xe6f9;</span>
  310. </div>
  311. </div>
  312. <div class="item" ref="venous_catheterization_part_other" v-if="isShow('其他位置')">
  313. <h2 class="name">其他位置</h2>
  314. <div class="content">
  315. <input @focus="inputFocus" v-model="formValue.venous_catheterization_part_other"/>
  316. </div>
  317. </div>
  318. <div
  319. @click="showSubMenu('ductus_arantii')"
  320. class="item"
  321. ref="ductus_arantii"
  322. v-if="isShow('中心静脉导管')"
  323. >
  324. <h2 class="name">中心静脉导管</h2>
  325. <div class="content">
  326. <span class="text" style="width: 100px">{{formValue.ductus_arantii}}</span>
  327. <span class="iconfont">&#xe6f9;</span>
  328. </div>
  329. </div>
  330. <div class="item" ref="ductus_arantii_other" v-if="isShow('其他中心静脉导管')">
  331. <h2 class="name">其他中心静脉导管</h2>
  332. <div class="content">
  333. <input @focus="inputFocus" v-model="formValue.ductus_arantii_other"/>
  334. </div>
  335. </div>
  336. <div
  337. @click="showSubMenu('emergency_treatment')"
  338. class="item"
  339. ref="emergency_treatment"
  340. v-if="isShow('急诊')"
  341. >
  342. <h2 class="name">急诊</h2>
  343. <div class="content">
  344. <span
  345. class="text"
  346. style="width: 100px"
  347. >{{getEmergencyTreatment(formValue.emergency_treatment)}}</span>
  348. <span class="iconfont">&#xe6f9;</span>
  349. </div>
  350. </div>
  351. <div class="item" ref="emergency_treatment_other" v-if="isShow('其他急诊情况')">
  352. <h2 class="name">其他急诊情况</h2>
  353. <div class="content">
  354. <input @focus="inputFocus" v-model="formValue.emergency_treatment_other"/>
  355. </div>
  356. </div>
  357. <div
  358. class="item"
  359. v-if="isShow('感染')"
  360. @click="showSubMenu('infect_state')"
  361. ref="infect_state"
  362. >
  363. <h2 class="name">感染</h2>
  364. <div class="content">
  365. <span v-if="formValue.is_infect == 0" class="text" style="width: 50px"></span>
  366. <span v-if="formValue.is_infect == 1" class="text" style="width: 50px">无</span>
  367. <span v-if="formValue.is_infect == 2" class="text" style="width: 50px">有</span>
  368. <span class="iconfont">&#xe6f9;</span>
  369. </div>
  370. </div>
  371. <div class="item" ref="skin_other" v-if="isShow('其他感染情况')">
  372. <h2 class="name">其他感染情况</h2>
  373. <div class="content">
  374. <input @focus="inputFocus" v-model="formValue.infect_other"/>
  375. </div>
  376. </div>
  377. <div class="item" v-if="isShow('外露')">
  378. <h2 class="name">外露(cm)</h2>
  379. <div class="content">
  380. <input type="tel" @focus="inputFocus" v-model="formValue.exposed"/>
  381. </div>
  382. </div>
  383. <div @click="showSubMenu('skin')" class="item" ref="skin" v-if="isShow('皮肤')">
  384. <h2 class="name">皮肤</h2>
  385. <div class="content">
  386. <span class="text" style="width: 100px">{{getSkin(formValue.skin)}}</span>
  387. <span class="iconfont">&#xe6f9;</span>
  388. </div>
  389. </div>
  390. <div class="item" ref="skin_other" v-if="isShow('其他皮肤情况')">
  391. <h2 class="name">其他皮肤情况</h2>
  392. <div class="content">
  393. <input @focus="inputFocus" v-model="formValue.skin_other"/>
  394. </div>
  395. </div>
  396. <div class="line"></div>
  397. <div>
  398. <div class="item">
  399. <h2 class="name">备注</h2>
  400. <div class="content">
  401. <span class="text"></span>
  402. </div>
  403. </div>
  404. <textarea
  405. class="textarea"
  406. placeholder="请输入内容"
  407. @focus="lastInputFocus"
  408. @blur="lastInputBlur"
  409. v-model="formValue.remark"
  410. ></textarea>
  411. </div>
  412. </div>
  413. </div>
  414. <check-box-sub-menu
  415. :visibility="visibility"
  416. v-on:menu-cancle="menuCancle"
  417. v-on:menu-comfirm="menuComfirm"
  418. v-on:menu-empty="menuEmpty"
  419. :propsForm="propForm"
  420. ></check-box-sub-menu>
  421. <dry-weight-menu
  422. ref="dry"
  423. v-on:menu-cancle-two="menuDryCancle"
  424. v-on:menu-comfirm-two="menuDryComfirm"
  425. :propsForm="propDryForm"
  426. ></dry-weight-menu>
  427. </div>
  428. </template>
  429. <script>
  430. // import TwoMenu from "./TwoMenu";
  431. import CheckBoxSubMenu from './subMenu/checkBoxSubMenu'
  432. import {EditAssessmentBeforeDislysis} from '@/api/patient'
  433. import {Toast} from 'vant'
  434. import {getDataConfig} from '@/utils/data'
  435. import DryWeightMenu from './subMenu/dryWeightMenu'
  436. export default {
  437. name: 'PrescriptionDialog',
  438. props: {
  439. dry_weight: {
  440. type: Object,
  441. },
  442. patient_prop: {
  443. type: Object,
  444. },
  445. predialysis: {
  446. type: Object,
  447. },
  448. last_predialysis: {
  449. type: Object,
  450. }, admin_users_prop: {
  451. type: Array
  452. },
  453. },
  454. data() {
  455. return {
  456. propDryForm: {
  457. weight: 0,
  458. doctor: [],
  459. },
  460. isShowDialog: true,
  461. //sub menu prop
  462. visibility: false,
  463. is_show_dry_weight: false,
  464. propForm: {
  465. title: '',
  466. list: [],
  467. optionList: [],
  468. isMultiple: 2,
  469. result: [], //选中的值
  470. type: 1, //用来区分不同子菜单,方便对返回值进行赋值
  471. selectId: 0,
  472. isHasOther: 1 //是否有其他选项 1是 2否
  473. },
  474. hemorrhage_state: false,
  475. infect_state: false,
  476. hemorrhages: [
  477. {id: 1, name: "有"},
  478. {id: 2, name: "无"},
  479. ],
  480. infects: [
  481. {id: 1, name: "无"},
  482. {id: 2, name: "有"},
  483. ],
  484. formValue: {
  485. weight_before: '',
  486. dry_weight: '',
  487. additional_weight: '',
  488. temperature: '',
  489. systolic_blood_pressure: '',
  490. diastolic_blood_pressure: '',
  491. symptom_before_dialysis: '',
  492. pulse_frequency: '',
  493. last_post_dialysis: '',
  494. dialysis_interphase: '',
  495. catheter: '',
  496. catheter_bend: 2,
  497. complication: '',
  498. remark: '',
  499. blood_access_part_id: '',
  500. blood_access_part_opera_id: '',
  501. internal_fistula: '',
  502. internal_fistula_skin: '',
  503. is_hemorrhage: 0,
  504. hemorrhage: '',
  505. hemorrhage_other: '',
  506. dialysis_count: '',
  507. emergency_treatment: '',
  508. emergency_treatment_other: '',
  509. ductus_arantii: '',
  510. venous_catheterization_part_other: '',
  511. venous_catheterization_part: '',
  512. venous_catheterization: '',
  513. puncture_way: '',
  514. blood_access_noise: '',
  515. internal_fistula_other: '',
  516. blood_access_internal_fistula: '',
  517. machine_type: '',
  518. breathing_rate: '',
  519. is_infect: 0,
  520. exposed: '',
  521. skin: '',
  522. skin_other: '',
  523. infect_other: '',
  524. ductus_arantii_other: '',
  525. puncture_needle: '',
  526. },
  527. record_date: ''
  528. }
  529. },
  530. methods: {
  531. menuDryComfirm(val) {
  532. this.isShowDialog = true
  533. this.$refs.dry.close()
  534. this.formValue.dry_weight = val.dry_weight
  535. this.propDryForm.weight = val.dry_weight
  536. this.dry_weight = val
  537. this.$emit("weight_update", this.dry_weight);
  538. },
  539. menuDryCancle() {
  540. this.isShowDialog = true
  541. this.$refs.dry.close()
  542. // this.is_show_dry_weight = false
  543. },
  544. isShow(name) {
  545. var filedList = this.$store.getters.user.fileds
  546. for (let i = 0; i < filedList.length; i++) {
  547. if (filedList[i].module == 3 && filedList[i].filed_name_cn == name && filedList[i].is_show == 1) {
  548. return true
  549. }
  550. }
  551. return false
  552. },
  553. getBloodAccessInternalFistula: function (id) {
  554. if (id == -1) {
  555. return '其他'
  556. }
  557. var BloodAccessInternalFistulaName = ''
  558. var BloodAccessInternalFistulaOptions = this.$store.getters.blood_access_internal_fistula
  559. for (let i = 0; i < BloodAccessInternalFistulaOptions.length; i++) {
  560. if (BloodAccessInternalFistulaOptions[i].id == id) {
  561. BloodAccessInternalFistulaName = BloodAccessInternalFistulaOptions[i].name
  562. }
  563. }
  564. return BloodAccessInternalFistulaName
  565. },
  566. getBloodAccessNoise: function (id) {
  567. var BloodAccessNoiseOptions = this.$store.getters.blood_access_noise
  568. var BloodAccessNoiseName = ''
  569. for (let i = 0; i < BloodAccessNoiseOptions.length; i++) {
  570. if (BloodAccessNoiseOptions[i].id == id) {
  571. BloodAccessNoiseName = BloodAccessNoiseOptions[i].name
  572. }
  573. }
  574. return BloodAccessNoiseName
  575. }, getVenousCatheterization: function (id) {
  576. var VenousCatheterizationOptions = this.$store.getters.venous_catheterization
  577. var VenousCatheterizationName = ''
  578. for (let i = 0; i < VenousCatheterizationOptions.length; i++) {
  579. if (VenousCatheterizationOptions[i].id == id) {
  580. VenousCatheterizationName = VenousCatheterizationOptions[i].name
  581. }
  582. }
  583. return VenousCatheterizationName
  584. }, getWay: function (id) {
  585. var PunctureWayOptions = this.$store.getters.puncture_way
  586. var PunctureWayOptionsName = ''
  587. for (let i = 0; i < PunctureWayOptions.length; i++) {
  588. if (PunctureWayOptions[i].id == id) {
  589. PunctureWayOptionsName = PunctureWayOptions[i].name
  590. }
  591. }
  592. return PunctureWayOptionsName
  593. }, getVenousCatheterizationPart: function (id) {
  594. if (id == -1) {
  595. return '其他'
  596. }
  597. var venousCatheterizationPartOptions = this.$store.getters.venous_catheterization_part
  598. var venousCatheterizationPartName = ''
  599. for (let i = 0; i < venousCatheterizationPartOptions.length; i++) {
  600. if (venousCatheterizationPartOptions[i].id == id) {
  601. venousCatheterizationPartName = venousCatheterizationPartOptions[i].name
  602. }
  603. }
  604. return venousCatheterizationPartName
  605. }, getEmergencyTreatment: function (id) {
  606. if (id == -1) {
  607. return '其他'
  608. }
  609. var emergencyTreatmentOptions = this.$store.getters.emergency_treatment
  610. var emergencyTreatmentName = ''
  611. for (let i = 0; i < emergencyTreatmentOptions.length; i++) {
  612. if (emergencyTreatmentOptions[i].id == id) {
  613. emergencyTreatmentName = emergencyTreatmentOptions[i].name
  614. }
  615. }
  616. return emergencyTreatmentName
  617. }, getSkin: function (id) {
  618. if (id == -1) {
  619. return '其他'
  620. }
  621. var skinOptions = this.$store.getters.skin
  622. var skinName = ''
  623. for (let i = 0; i < skinOptions.length; i++) {
  624. if (skinOptions[i].id == id) {
  625. skinName = skinOptions[i].name
  626. }
  627. }
  628. return skinName
  629. },
  630. hemorrhageStateChange: function (is_select) {
  631. this.formValue.is_hemorrhage = is_select == true ? 1 : 2
  632. },
  633. inputFocus: function (event) {
  634. var input = event.target
  635. setTimeout(function () {
  636. input.scrollIntoView()
  637. }, 0)
  638. if (input.setSelectionRange) {
  639. setTimeout(function () {
  640. input.setSelectionRange(0, input.value.length)
  641. }, 0)
  642. } else if (input.createTextRange) {
  643. var rng = input.createTextRange()
  644. rng.move('character', input.value.length)
  645. rng.select()
  646. }
  647. },
  648. lastInputFocus: function (event) {
  649. var input = event.target
  650. setTimeout(function () {
  651. input.style.marginBottom = '2rem'
  652. input.parentNode.scrollIntoView()
  653. }, 0)
  654. },
  655. lastInputBlur: function (event) {
  656. var input = event.target
  657. setTimeout(function () {
  658. input.style.marginBottom = ''
  659. }, 0)
  660. },
  661. showSubMenu: function (val) {
  662. switch (val) {
  663. case 'last_post_dialysis':
  664. this.propForm.result = []
  665. this.isHasOther = 2
  666. this.propForm.type = 1
  667. this.isShowDialog = false
  668. this.propForm.isShowOther = 2
  669. this.propForm.title = '前次透析后'
  670. this.visibility = true
  671. this.propForm.list = getDataConfig('hemodialysis', 'last_dialysis_after')
  672. this.propForm.optionList = []
  673. this.propForm.isMultiple = 2
  674. if (this.formValue.last_post_dialysis != undefined || this.formValue.last_post_dialysis != null) {
  675. if (this.formValue.last_post_dialysis.length > 0) {
  676. this.propForm.result = this.formValue.last_post_dialysis.split(',')
  677. } else {
  678. this.propForm.result = []
  679. }
  680. } else {
  681. this.propForm.result = []
  682. }
  683. this.propForm.click_ref = 'last_post_dialysis'
  684. break
  685. case 'dialysis_interphase':
  686. this.propForm.result = []
  687. this.isHasOther = 2
  688. this.propForm.isShowOther = 2
  689. this.propForm.type = 2
  690. this.isShowDialog = false
  691. this.propForm.title = '透析期间'
  692. this.visibility = true
  693. this.propForm.list = getDataConfig('hemodialysis', 'dialysis_duration')
  694. this.propForm.optionList = []
  695. this.propForm.isMultiple = 2
  696. if (this.formValue.dialysis_interphase != undefined || this.formValue.dialysis_interphase != null) {
  697. if (this.formValue.dialysis_interphase.length > 0) {
  698. this.propForm.result = this.formValue.dialysis_interphase.split(',')
  699. } else {
  700. this.propForm.result = []
  701. }
  702. } else {
  703. this.propForm.result = []
  704. }
  705. this.propForm.click_ref = 'dialysis_interphase'
  706. break
  707. case 'symptom_before_dialysis':
  708. this.propForm.result = []
  709. this.isHasOther = 2
  710. this.propForm.isShowOther = 2
  711. this.propForm.type = 3
  712. this.isShowDialog = false
  713. this.propForm.title = '透析前症状'
  714. this.visibility = true
  715. this.propForm.list = getDataConfig('hemodialysis', 'dialysis_before')
  716. this.propForm.optionList = []
  717. this.propForm.isMultiple = 2
  718. if (this.formValue.symptom_before_dialysis != undefined || this.formValue.symptom_before_dialysis != null) {
  719. if (this.formValue.symptom_before_dialysis.length > 0) {
  720. this.propForm.result = this.formValue.symptom_before_dialysis.split(',')
  721. } else {
  722. this.propForm.result = []
  723. }
  724. } else {
  725. this.propForm.result = []
  726. }
  727. this.propForm.click_ref = 'symptom_before_dialysis'
  728. break
  729. case 'catheter':
  730. this.propForm.result = []
  731. this.isHasOther = 2
  732. this.propForm.isShowOther = 1
  733. this.propForm.type = 4
  734. this.isShowDialog = false
  735. this.propForm.title = '导管'
  736. this.visibility = true
  737. this.propForm.list = getDataConfig('hemodialysis', 'catheter')
  738. this.propForm.optionList = []
  739. this.propForm.isMultiple = 2
  740. if (this.formValue.catheter != undefined || this.formValue.catheter != null) {
  741. if (this.formValue.catheter.length > 0) {
  742. this.propForm.result = this.formValue.catheter.split(',')
  743. } else {
  744. this.propForm.result = []
  745. }
  746. } else {
  747. this.propForm.result = []
  748. }
  749. this.propForm.click_ref = 'catheter'
  750. break
  751. case 'complication':
  752. this.propForm.result = []
  753. this.isHasOther = 1
  754. this.propForm.isShowOther = 2
  755. this.propForm.type = 5
  756. this.isShowDialog = false
  757. this.propForm.title = '并发症'
  758. this.visibility = true
  759. this.propForm.list = getDataConfig('hemodialysis', 'complication')
  760. this.propForm.optionList = []
  761. this.propForm.isMultiple = 2
  762. // this.propForm.result = this.formValue.complication.split(",")
  763. if (this.formValue.complication != undefined || this.formValue.complication != null) {
  764. if (this.formValue.complication.length > 0) {
  765. this.propForm.result = this.formValue.complication.split(',')
  766. } else {
  767. this.propForm.result = []
  768. }
  769. } else {
  770. this.propForm.result = []
  771. }
  772. this.propForm.click_ref = 'complication'
  773. break
  774. case 'blood_access_part':
  775. this.isHasOther = 2
  776. this.propForm.isShowOther = 1
  777. this.propForm.type = 6
  778. this.isShowDialog = false
  779. this.propForm.title = '血管通路部位'
  780. this.visibility = true
  781. this.propForm.list = []
  782. this.propForm.optionList = getDataConfig('hemodialysis', 'vascular_access')
  783. this.propForm.isMultiple = 1
  784. this.propForm.selectId = this.formValue.blood_access_part_id
  785. this.propForm.click_ref = 'blood_access_part'
  786. break
  787. case 'blood_access_opera':
  788. this.isHasOther = 2
  789. this.propForm.isShowOther = 1
  790. this.propForm.type = 7
  791. this.isShowDialog = false
  792. this.propForm.title = '血管通路操作'
  793. this.visibility = true
  794. this.propForm.list = []
  795. this.propForm.optionList = getDataConfig('hemodialysis', 'vascular_access_desc')
  796. this.propForm.isMultiple = 1
  797. this.propForm.selectId = this.formValue.blood_access_part_opera_id
  798. this.propForm.click_ref = 'blood_access_opera'
  799. break
  800. case 'internal_fistula':
  801. this.propForm.result = []
  802. this.isHasOther = 2
  803. this.propForm.isShowOther = 1
  804. this.propForm.type = 8
  805. this.isShowDialog = false
  806. this.propForm.title = '内瘘'
  807. this.visibility = true
  808. this.propForm.list = []
  809. this.propForm.list = getDataConfig('hemodialysis', 'internal_fistula')
  810. this.propForm.optionList = []
  811. this.propForm.isMultiple = 2
  812. // this.propForm.result = this.formValue.internal_fistula.split(",")
  813. if (this.formValue.internal_fistula != undefined || this.formValue.internal_fistula != null) {
  814. if (this.formValue.internal_fistula.length > 0) {
  815. this.propForm.result = this.formValue.internal_fistula.split(',')
  816. } else {
  817. this.propForm.result = []
  818. }
  819. } else {
  820. this.propForm.result = []
  821. }
  822. this.propForm.click_ref = 'internal_fistula'
  823. break
  824. case 'hemorrhage':
  825. this.propForm.result = []
  826. this.isHasOther = 2
  827. this.propForm.isShowOther = 1
  828. this.propForm.type = 9
  829. this.isShowDialog = false
  830. this.propForm.title = '出血'
  831. this.visibility = true
  832. this.propForm.list = []
  833. this.propForm.list = getDataConfig('hemodialysis', 'hemorrhage')
  834. this.propForm.optionList = []
  835. this.propForm.isMultiple = 2
  836. // this.propForm.result = typeof(this.formValue.hemorrhage) == "string"? this.formValue.hemorrhage.split(","):[]
  837. if (this.formValue.hemorrhage != undefined || this.formValue.hemorrhage != null) {
  838. if (this.formValue.hemorrhage.length > 0) {
  839. this.propForm.result = this.formValue.hemorrhage.split(',')
  840. } else {
  841. this.propForm.result = []
  842. }
  843. } else {
  844. this.propForm.result = []
  845. }
  846. this.propForm.click_ref = 'hemorrhage'
  847. break
  848. case 'internal_fistula_skin':
  849. this.propForm.result = []
  850. this.isHasOther = 2
  851. this.propForm.isShowOther = 1
  852. this.propForm.type = 10
  853. this.isShowDialog = false
  854. this.propForm.title = '内瘘皮肤情况'
  855. this.visibility = true
  856. this.propForm.list = this.$store.getters.internal_fistula_skin
  857. this.propForm.optionList = []
  858. this.propForm.isMultiple = 2
  859. // this.propForm.result = this.formValue.hemorrhage.split(",")
  860. if (this.formValue.internal_fistula_skin != undefined || this.formValue.internal_fistula_skin != null) {
  861. if (this.formValue.internal_fistula_skin.length > 0) {
  862. this.propForm.result = this.formValue.internal_fistula_skin.split(',')
  863. } else {
  864. this.propForm.result = []
  865. }
  866. } else {
  867. this.propForm.result = []
  868. }
  869. this.propForm.click_ref = 'internal_fistula_skin'
  870. break
  871. case 'catheter_bend':
  872. this.isHasOther = 2
  873. this.propForm.isShowOther = 1
  874. this.propForm.type = 11
  875. this.isShowDialog = false
  876. this.propForm.title = '导管打折'
  877. this.visibility = true
  878. this.propForm.list = []
  879. this.propForm.optionList = this.$store.getters.catheter_bend
  880. this.propForm.isMultiple = 1
  881. this.propForm.selectId = this.formValue.catheter_bend
  882. this.propForm.click_ref = 'catheter_bend'
  883. break
  884. case 'blood_access_internal_fistula':
  885. this.propForm.result = []
  886. this.propForm.isHasOther = 2
  887. this.propForm.type = 12
  888. this.propForm.isShowOther = 1
  889. this.isShowDialog = false
  890. this.propForm.title = '血管通路(内瘘)'
  891. this.visibility = true
  892. this.propForm.list = this.$store.getters.blood_access_internal_fistula
  893. this.propForm.optionList = []
  894. this.propForm.isMultiple = 2
  895. // this.propForm.result = this.formValue.hemorrhage.split(",")
  896. if (this.formValue.blood_access_internal_fistula != undefined || this.formValue.blood_access_internal_fistula != null) {
  897. if (this.formValue.blood_access_internal_fistula.length > 0) {
  898. this.propForm.result = this.formValue.blood_access_internal_fistula.split(',')
  899. } else {
  900. this.propForm.result = []
  901. }
  902. } else {
  903. this.propForm.result = []
  904. }
  905. this.propForm.click_ref = 'blood_access_internal_fistula'
  906. break
  907. case 'blood_access_noise':
  908. this.propForm.isHasOther = 2
  909. this.propForm.isShowOther = 1
  910. this.propForm.type = 13
  911. this.isShowDialog = false
  912. this.propForm.title = '血管杂音'
  913. this.visibility = true
  914. this.propForm.list = []
  915. this.propForm.optionList = this.$store.getters.blood_access_noise
  916. this.propForm.isMultiple = 1
  917. this.propForm.selectId = this.formValue.blood_access_noise
  918. this.propForm.click_ref = 'blood_access_noise'
  919. break
  920. case 'venous_catheterization':
  921. this.propForm.isHasOther = 2
  922. this.propForm.isShowOther = 1
  923. this.propForm.type = 14
  924. this.isShowDialog = false
  925. this.propForm.title = '中心静脉置管'
  926. this.visibility = true
  927. this.propForm.list = []
  928. this.propForm.optionList = this.$store.getters.venous_catheterization
  929. this.propForm.isMultiple = 1
  930. this.propForm.selectId = this.formValue.venous_catheterization
  931. this.propForm.click_ref = 'venous_catheterization'
  932. break
  933. case 'venous_catheterization_part':
  934. this.propForm.isHasOther = 1
  935. this.propForm.type = 15
  936. this.isShowDialog = false
  937. this.propForm.title = '位置'
  938. this.propForm.isShowOther = 1
  939. this.visibility = true
  940. this.propForm.list = []
  941. this.propForm.optionList = this.$store.getters.venous_catheterization_part
  942. this.propForm.isMultiple = 1
  943. this.propForm.selectId = this.formValue.venous_catheterization_part
  944. this.propForm.click_ref = 'venous_catheterization_part'
  945. break
  946. case 'ductus_arantii':
  947. this.propForm.result = []
  948. this.propForm.isHasOther = 2
  949. this.propForm.type = 16
  950. this.isShowDialog = false
  951. this.propForm.title = '中心静脉导管'
  952. this.propForm.isShowOther = 1
  953. this.visibility = true
  954. this.propForm.list = this.$store.getters.ductus_arantii
  955. this.propForm.optionList = []
  956. this.propForm.isMultiple = 2
  957. // this.propForm.result = this.formValue.hemorrhage.split(",")
  958. if (this.formValue.ductus_arantii != undefined || this.formValue.ductus_arantii != null) {
  959. if (this.formValue.ductus_arantii.length > 0) {
  960. this.propForm.result = this.formValue.ductus_arantii.split(',')
  961. } else {
  962. this.propForm.result = []
  963. }
  964. } else {
  965. this.propForm.result = []
  966. }
  967. this.propForm.click_ref = 'ductus_arantii'
  968. break
  969. case 'emergency_treatment':
  970. this.propForm.isHasOther = 1
  971. this.propForm.type = 17
  972. this.isShowDialog = false
  973. this.propForm.title = '急诊'
  974. this.visibility = true
  975. this.propForm.isShowOther = 1
  976. this.propForm.list = []
  977. this.propForm.optionList = this.$store.getters.emergency_treatment
  978. this.propForm.isMultiple = 1
  979. this.propForm.selectId = this.formValue.emergency_treatment
  980. this.propForm.click_ref = 'emergency_treatment'
  981. break
  982. case 'puncture_way':
  983. this.propForm.isHasOther = 2
  984. this.propForm.type = 18
  985. this.isShowDialog = false
  986. this.propForm.title = '穿刺方式'
  987. this.visibility = true
  988. this.propForm.list = []
  989. this.propForm.isShowOther = 1
  990. this.propForm.optionList = this.$store.getters.puncture_way
  991. this.propForm.isMultiple = 1
  992. this.propForm.selectId = this.formValue.puncture_way
  993. this.propForm.click_ref = 'puncture_way'
  994. break
  995. case 'hemorrhage_state':
  996. this.propForm.type = 19
  997. this.isShowDialog = false
  998. this.propForm.title = '出血'
  999. this.visibility = true
  1000. this.propForm.isShowOther = 1
  1001. this.propForm.list = []
  1002. this.propForm.optionList = this.hemorrhages
  1003. this.propForm.isMultiple = 1
  1004. this.propForm.selectId = this.formValue.is_hemorrhage
  1005. this.propForm.click_ref = 'hemorrhage_state'
  1006. break
  1007. case 'infect_state':
  1008. this.propForm.type = 20
  1009. this.isShowDialog = false
  1010. this.propForm.title = '感染'
  1011. this.visibility = true
  1012. this.propForm.isShowOther = 1
  1013. this.propForm.list = []
  1014. this.propForm.optionList = this.infects
  1015. this.propForm.isMultiple = 1
  1016. this.propForm.selectId = this.formValue.is_infect
  1017. this.propForm.click_ref = 'infect_state'
  1018. break
  1019. case 'skin':
  1020. this.propForm.type = 21
  1021. this.isShowDialog = false
  1022. this.propForm.title = '皮肤'
  1023. this.visibility = true
  1024. this.propForm.isShowOther = 1
  1025. this.propForm.list = []
  1026. this.propForm.optionList = this.$store.getters.skin
  1027. this.propForm.isMultiple = 1
  1028. this.propForm.selectId = this.formValue.skin
  1029. this.propForm.click_ref = 'skin'
  1030. break
  1031. case 'puncture_needle':
  1032. this.propForm.result = []
  1033. this.propForm.isHasOther = 2
  1034. this.propForm.type = 22
  1035. this.isShowDialog = false
  1036. this.propForm.isShowOther = 1
  1037. this.propForm.title = '穿刺针'
  1038. this.visibility = true
  1039. this.propForm.list = this.$store.getters.puncture_needle
  1040. this.propForm.optionList = []
  1041. this.propForm.isMultiple = 2
  1042. if (this.formValue.puncture_needle != undefined || this.formValue.puncture_needle != null) {
  1043. if (this.formValue.puncture_needle.length > 0) {
  1044. this.propForm.result = this.formValue.puncture_needle.split(',')
  1045. } else {
  1046. this.propForm.result = []
  1047. }
  1048. } else {
  1049. this.propForm.result = []
  1050. }
  1051. this.propForm.click_ref = 'puncture_needle'
  1052. break
  1053. }
  1054. }, menuCancle: function () {
  1055. this.visibility = false
  1056. this.isShowDialog = true
  1057. this.$nextTick(() => {
  1058. if (this.$refs[this.propForm.click_ref] != undefined && this.$refs[this.propForm.click_ref] != null) {
  1059. this.$refs[this.propForm.click_ref].scrollIntoView()
  1060. }
  1061. })
  1062. }, menuComfirm: function (val) {
  1063. this.visibility = false
  1064. this.isShowDialog = true
  1065. this.$nextTick(() => {
  1066. if (this.$refs[this.propForm.click_ref] != undefined && this.$refs[this.propForm.click_ref] != null) {
  1067. this.$refs[this.propForm.click_ref].scrollIntoView()
  1068. }
  1069. })
  1070. switch (val.type) {
  1071. case 1:
  1072. this.formValue.last_post_dialysis = val.result.join(',')
  1073. break
  1074. case 2:
  1075. this.formValue.dialysis_interphase = val.result.join(',')
  1076. break
  1077. case 3:
  1078. this.formValue.symptom_before_dialysis = val.result.join(',')
  1079. break
  1080. case 4:
  1081. this.formValue.catheter = val.result.join(',')
  1082. break
  1083. case 5:
  1084. this.formValue.complication = val.result.join(',')
  1085. break
  1086. case 6:
  1087. this.formValue.blood_access_part_id = val.selectId
  1088. break
  1089. case 7:
  1090. this.formValue.blood_access_part_opera_id = val.selectId
  1091. break
  1092. case 8:
  1093. this.formValue.internal_fistula = val.result.join(',')
  1094. break
  1095. case 9:
  1096. this.formValue.hemorrhage = val.result.join(',')
  1097. break
  1098. case 10:
  1099. this.formValue.internal_fistula_skin = val.result.join(',')
  1100. break
  1101. case 11:
  1102. this.formValue.catheter_bend = val.selectId
  1103. break
  1104. case 12:
  1105. this.formValue.blood_access_internal_fistula = val.result.join(',')
  1106. break
  1107. case 13:
  1108. this.formValue.blood_access_noise = val.selectId
  1109. break
  1110. case 14:
  1111. this.formValue.venous_catheterization = val.selectId
  1112. break
  1113. case 15:
  1114. this.formValue.venous_catheterization_part = val.selectId
  1115. break
  1116. case 16:
  1117. this.formValue.ductus_arantii = val.result.join(',')
  1118. break
  1119. case 17:
  1120. this.formValue.emergency_treatment = val.selectId
  1121. break
  1122. case 18:
  1123. this.formValue.puncture_way = val.selectId
  1124. break
  1125. case 19:
  1126. if (val.selectId == 1) {
  1127. this.hemorrhage_state = true
  1128. this.formValue.is_hemorrhage = val.selectId
  1129. } else if (val.selectId == 2) {
  1130. this.hemorrhage_state = false
  1131. this.formValue.is_hemorrhage = val.selectId
  1132. } else if (this.formValue.is_hemorrhage == -2) {
  1133. }
  1134. break
  1135. case 20:
  1136. if (val.selectId == 1) {
  1137. this.infect_state = true
  1138. this.formValue.is_infect = val.selectId.toString()
  1139. } else if (val.selectId == 2) {
  1140. this.infect_state = false
  1141. this.formValue.is_infect = val.selectId.toString()
  1142. } else if (this.formValue.is_infect == -2) {
  1143. }
  1144. break
  1145. case 21:
  1146. this.formValue.skin = val.selectId.toString()
  1147. break
  1148. case 22:
  1149. this.formValue.puncture_needle = val.result.join(',')
  1150. break
  1151. }
  1152. }, QueryPartById: function (val) {
  1153. let vascular_access_part_name = ''
  1154. let vascular_access = getDataConfig('hemodialysis', 'vascular_access')
  1155. for (let i = 0; i < vascular_access.length; i++) {
  1156. if (vascular_access[i].id == val) {
  1157. vascular_access_part_name = vascular_access[i].name
  1158. }
  1159. }
  1160. return vascular_access_part_name
  1161. }, QueryOperaById: function (val) {
  1162. let vascular_access_desc_name = ''
  1163. let vascular_access_desc = getDataConfig('hemodialysis', 'vascular_access_desc')
  1164. for (let i = 0; i < vascular_access_desc.length; i++) {
  1165. if (vascular_access_desc[i].id == val) {
  1166. vascular_access_desc_name = vascular_access_desc[i].name
  1167. }
  1168. }
  1169. return vascular_access_desc_name
  1170. },
  1171. GetCatheterBendById: function (val) {
  1172. let name = ''
  1173. let options = this.$store.getters.catheter_bend
  1174. for (let index = 0; index < options.length; index++) {
  1175. const option = options[index]
  1176. if (option.id == val) {
  1177. name = option.name
  1178. break
  1179. }
  1180. }
  1181. return name
  1182. },
  1183. commitInfo: function () {
  1184. Toast.loading({forbidClick: true, duration: 0})
  1185. if (this.formValue.dry_weight == undefined) {
  1186. this.formValue.dry_weight = "0"
  1187. } else {
  1188. this.formValue.dry_weight = this.formValue.dry_weight.toString()
  1189. }
  1190. // if (this.formValue.dry_weight == ""){
  1191. // this.formValue.
  1192. // }
  1193. EditAssessmentBeforeDislysis(this.$route.query.patient_id, this.record_date, this.formValue).then(response => {
  1194. if (response.data.state == 0) {
  1195. Toast(response.data.msg)
  1196. return false
  1197. } else {
  1198. Toast('提交完成')
  1199. this.$emit('evaluation', response.data.data.evaluation)
  1200. }
  1201. })
  1202. }, showDryWeight: function () {
  1203. if (this.$store.getters.user.user.user_type == 3) {
  1204. return
  1205. }
  1206. this.isShowDialog = false
  1207. this.$refs.dry.open()
  1208. this.propDryForm.doctor = []
  1209. for (let i = 0; i < this.admin_users_prop.length; i++) {
  1210. if (this.admin_users_prop[i].user_type == 2 || this.admin_users_prop[i].user_type == 1) {
  1211. this.propDryForm.doctor.push(this.admin_users_prop[i])
  1212. }
  1213. }
  1214. },
  1215. close: function () {
  1216. this.$emit('close')
  1217. }, open: function () {
  1218. this.isShowDialog = true
  1219. this.visibility = false
  1220. var dialogTop = document.querySelector('#dialogTop')
  1221. if (dialogTop != null) {
  1222. this.$nextTick(() => {
  1223. dialogTop.scrollTop = 0
  1224. })
  1225. }
  1226. }, menuEmpty: function (val) {
  1227. this.visibility = false
  1228. this.isShowDialog = true
  1229. switch (val.type) {
  1230. case 6:
  1231. this.formValue.blood_access_part_id = ''
  1232. break
  1233. case 7:
  1234. this.formValue.blood_access_part_opera_id = ''
  1235. break
  1236. case 11:
  1237. this.formValue.catheter_bend = ''
  1238. break
  1239. case 13:
  1240. this.formValue.blood_access_noise = ''
  1241. break
  1242. case 14:
  1243. this.formValue.venous_catheterization = ''
  1244. break
  1245. case 15:
  1246. this.formValue.venous_catheterization_part = ''
  1247. break
  1248. case 17:
  1249. this.formValue.emergency_treatment = ''
  1250. break
  1251. case 18:
  1252. this.formValue.puncture_way = ''
  1253. break
  1254. }
  1255. }
  1256. }, components: {
  1257. DryWeightMenu,
  1258. CheckBoxSubMenu,
  1259. }, created() {
  1260. var date = this.$route.query && this.$route.query.date
  1261. date *= 1000
  1262. var newDate = new Date(date)
  1263. var y = newDate.getFullYear()
  1264. var m = newDate.getMonth() + 1
  1265. var d = newDate.getDate()
  1266. if (isNaN(y) || isNaN(m) || isNaN(d)) {
  1267. newDate = new Date()
  1268. y = newDate.getFullYear()
  1269. m = newDate.getMonth() + 1
  1270. d = newDate.getDate()
  1271. }
  1272. this.record_date = y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d)
  1273. this.formValue = this.predialysis
  1274. if (this.predialysis.id == undefined && this.last_predialysis.id != undefined) {
  1275. this.$set(this.formValue, 'additional_weight', this.last_predialysis['additional_weight'].toString())
  1276. this.$set(this.formValue, 'internal_fistula', this.last_predialysis['internal_fistula'])
  1277. this.$set(this.formValue, 'internal_fistula_skin', this.last_predialysis['internal_fistula_skin'])
  1278. this.$set(this.formValue, 'blood_access_part_id', this.last_predialysis['blood_access_part_id'])
  1279. this.$set(this.formValue, 'blood_access_part_opera_id', this.last_predialysis['blood_access_part_opera_id'])
  1280. // this.$set(this.formValue, 'complication', this.last_predialysis['complication'])
  1281. // this.$set(this.formValue, 'last_post_dialysis', this.last_predialysis['last_post_dialysis'])
  1282. // this.$set(this.formValue, 'dialysis_interphase', this.last_predialysis['dialysis_interphase'])
  1283. // this.$set(this.formValue, 'symptom_before_dialysis', this.last_predialysis['symptom_before_dialysis'])
  1284. // this.$set(this.formValue, 'puncture_needle', this.last_predialysis['puncture_needle'])
  1285. // this.$set(this.formValue, 'puncture_way', this.last_predialysis['puncture_way'])
  1286. //
  1287. //
  1288. // this.$set(this.formValue, 'temperature', this.last_predialysis['temperature'])
  1289. // this.$set(this.formValue, 'breathing_rate', this.last_predialysis['breathing_rate'])
  1290. // this.$set(this.formValue, 'catheter', this.last_predialysis['catheter'])
  1291. // this.$set(this.formValue, 'internal_fistula', this.last_predialysis['internal_fistula'])
  1292. // this.$set(this.formValue, 'pulse_frequency', this.last_predialysis['pulse_frequency'])
  1293. }
  1294. // if(this.$store.getters.user.template_info.template_id != 6 && this.predialysis.id == undefined && this.last_predialysis.id != undefined){
  1295. // this.$set(this.formValue, 'dry_weight', this.last_predialysis['dry_weight'].toString())
  1296. // }
  1297. // if (this.$store.getters.user.template_info.template_id == 6 ) {
  1298. if (this.dry_weight != null && this.dry_weight.id != undefined) {
  1299. this.$set(this.formValue, 'dry_weight', this.dry_weight.dry_weight.toString())
  1300. this.propDryForm.weight = this.dry_weight.dry_weight.toString()
  1301. } else {
  1302. if (this.predialysis.id == undefined && this.last_predialysis.id != undefined) {
  1303. this.$set(this.formValue, 'dry_weight', this.last_predialysis['dry_weight'].toString())
  1304. this.propDryForm.weight = this.formValue.dry_weight
  1305. }
  1306. }
  1307. this.hemorrhage_state = this.formValue.is_hemorrhage == 0
  1308. }
  1309. }
  1310. </script>
  1311. <style style="stylesheet/scss" lang="scss" scoped>
  1312. .textarea {
  1313. width: 100%;
  1314. height: 2.4rem;
  1315. line-height: 0.6rem;
  1316. color: $pgh-color;
  1317. font-size: 0.45rem;
  1318. padding-left: 0.36rem;
  1319. border: none;
  1320. border-bottom: 1px #e5e5e5 solid;
  1321. }
  1322. </style>