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

monitor_dialog.vue 46KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417
  1. <template>
  2. <div class="dialog_box">
  3. <el-dialog
  4. title="透析监测"
  5. :visible.sync="visible"
  6. width="1100px"
  7. @close="reset"
  8. :modal-append-to-body="false"
  9. >
  10. <div v-show="edit == false">
  11. <div class="txsj">
  12. <el-button round :disabled="!is_has_create" @click="newRecordAction"
  13. >新增监测</el-button
  14. >
  15. <el-button
  16. round
  17. :disabled="!is_has_modify && !is_has_modify_other"
  18. @click="modifyRecordAction"
  19. >修改监测</el-button
  20. >
  21. <el-button
  22. round
  23. :disabled="!is_has_del && !is_has_del_other"
  24. @click="deleteRecordAction"
  25. >删除监测</el-button
  26. >
  27. </div>
  28. <el-table
  29. :header-cell-style="{ backgroundColor: 'rgb(245, 247, 250)' }"
  30. ref="table"
  31. :data="monitors"
  32. border
  33. highlight-current-row
  34. @current-change="tableCurrentRowChange"
  35. style="width: 100%"
  36. :class="current_row_class"
  37. >
  38. <el-table-column
  39. label="监测时间"
  40. align="center"
  41. width="144"
  42. v-if="isShow('监测时间')"
  43. >
  44. <template slot-scope="scope">
  45. {{ getMonitorDate(scope.row) }}
  46. </template>
  47. </el-table-column>
  48. <el-table-column
  49. prop="temperature"
  50. align="center"
  51. width="100"
  52. label="体温(℃)"
  53. v-if="isShow('体温')"
  54. >
  55. <template slot-scope="scope">
  56. {{ scope.row.temperature ? scope.row.temperature : "" }}
  57. </template>
  58. </el-table-column>
  59. <el-table-column
  60. align="center"
  61. label="血压(mmHg)"
  62. width="110"
  63. v-if="isShow('血压')"
  64. >
  65. <template slot-scope="scope">
  66. {{
  67. scope.row.systolic_blood_pressure
  68. ? scope.row.systolic_blood_pressure
  69. : ""
  70. }}/{{
  71. scope.row.diastolic_blood_pressure
  72. ? scope.row.diastolic_blood_pressure
  73. : ""
  74. }}
  75. </template>
  76. </el-table-column>
  77. <el-table-column
  78. prop="pulse_frequency"
  79. align="center"
  80. width="100"
  81. label="脉搏(次/分)"
  82. v-if="isShow('脉搏')"
  83. >
  84. <template slot-scope="scope">
  85. {{ scope.row.pulse_frequency ? scope.row.pulse_frequency : "" }}
  86. </template>
  87. </el-table-column>
  88. <el-table-column
  89. prop="breathing_rate"
  90. align="center"
  91. label="呼吸频率(次/分)"
  92. width="100"
  93. v-if="isShow('呼吸频率')"
  94. >
  95. <template slot-scope="scope">
  96. {{ scope.row.breathing_rate ? scope.row.breathing_rate : "" }}
  97. </template>
  98. </el-table-column>
  99. <el-table-column
  100. prop="venous_pressure"
  101. align="center"
  102. label="静脉压/动脉压(mmHg)"
  103. width="120"
  104. >
  105. <template slot-scope="scope">
  106. <span
  107. >{{
  108. scope.row.venous_pressure ? scope.row.venous_pressure : ""
  109. }}/
  110. {{
  111. scope.row.arterial_pressure ? scope.row.arterial_pressure : ""
  112. }}</span
  113. >
  114. </template>
  115. </el-table-column>
  116. <el-table-column
  117. prop="blood_flow_volume"
  118. align="center"
  119. label="血流量(ml/min)"
  120. width="120"
  121. v-if="isShow('血流量')"
  122. >
  123. <template slot-scope="scope">
  124. {{
  125. scope.row.blood_flow_volume ? scope.row.blood_flow_volume : ""
  126. }}
  127. </template>
  128. </el-table-column>
  129. <el-table-column
  130. prop="transmembrane_pressure"
  131. align="center"
  132. label="跨膜压(mmHg)"
  133. width="120"
  134. v-if="isShow('跨膜压')"
  135. >
  136. <template slot-scope="scope">
  137. {{
  138. scope.row.transmembrane_pressure
  139. ? scope.row.transmembrane_pressure
  140. : ""
  141. }}
  142. </template>
  143. </el-table-column>
  144. <el-table-column
  145. prop="ultrafiltration_volume"
  146. align="center"
  147. label="超滤量(ml)"
  148. width="110"
  149. v-if="
  150. isShow('超滤量') &&
  151. (template_id == 6 || template_id == 10 || template_id == 11)
  152. "
  153. >
  154. <template slot-scope="scope">
  155. {{
  156. scope.row.ultrafiltration_volume
  157. ? scope.row.ultrafiltration_volume
  158. : ""
  159. }}
  160. </template>
  161. </el-table-column>
  162. <el-table-column
  163. prop="ultrafiltration_volume"
  164. align="center"
  165. label="超滤量(L)"
  166. width="110"
  167. v-if="
  168. isShow('超滤量') &&
  169. template_id != 6 &&
  170. template_id != 10 &&
  171. template_id != 11
  172. "
  173. >
  174. <template slot-scope="scope">
  175. {{
  176. scope.row.ultrafiltration_volume
  177. ? scope.row.ultrafiltration_volume
  178. : ""
  179. }}
  180. </template>
  181. </el-table-column>
  182. <el-table-column
  183. prop="sodium_concentration"
  184. align="center"
  185. label="钠浓度(mmol/L)"
  186. width="126"
  187. v-if="isShow('钠浓度')"
  188. >
  189. <template slot-scope="scope">
  190. {{
  191. scope.row.sodium_concentration
  192. ? scope.row.sodium_concentration
  193. : ""
  194. }}
  195. </template>
  196. </el-table-column>
  197. <el-table-column
  198. prop="dialysate_temperature"
  199. align="center"
  200. label="透析液温度(℃)"
  201. width="120"
  202. v-if="isShow('透析液温度')"
  203. >
  204. <template slot-scope="scope">
  205. {{
  206. scope.row.dialysate_temperature
  207. ? scope.row.dialysate_temperature
  208. : ""
  209. }}
  210. </template>
  211. </el-table-column>
  212. <el-table-column
  213. prop="replacement_rate"
  214. align="center"
  215. label="置换率(ml/min)"
  216. width="120"
  217. v-if="
  218. isShow('置换率') &&
  219. (template_id == 6 || template_id == 10 || template_id == 11)
  220. "
  221. >
  222. <template slot-scope="scope">
  223. {{ scope.row.replacement_rate ? scope.row.replacement_rate : "" }}
  224. </template>
  225. </el-table-column>
  226. <el-table-column
  227. prop="replacement_rate"
  228. align="center"
  229. label="置换率(L/h)"
  230. width="120"
  231. v-if="
  232. isShow('置换率') &&
  233. template_id != 6 &&
  234. template_id != 10 &&
  235. template_id != 11
  236. "
  237. >
  238. <template slot-scope="scope">
  239. {{ scope.row.replacement_rate ? scope.row.replacement_rate : "" }}
  240. </template>
  241. </el-table-column>
  242. <el-table-column
  243. prop="displacement_quantity"
  244. align="center"
  245. label="置换量(ml)"
  246. width="100"
  247. v-if="
  248. isShow('置换量') &&
  249. (template_id == 6 || template_id == 10 || template_id == 11)
  250. "
  251. >
  252. <template slot-scope="scope">
  253. {{
  254. scope.row.displacement_quantity
  255. ? scope.row.displacement_quantity
  256. : ""
  257. }}
  258. </template>
  259. </el-table-column>
  260. <el-table-column
  261. prop="displacement_quantity"
  262. align="center"
  263. label="置换量(L)"
  264. width="100"
  265. v-if="
  266. isShow('置换量') &&
  267. template_id != 6 &&
  268. template_id != 10 &&
  269. template_id != 11
  270. "
  271. >
  272. <template slot-scope="scope">
  273. {{
  274. scope.row.displacement_quantity
  275. ? scope.row.displacement_quantity
  276. : ""
  277. }}
  278. </template>
  279. </el-table-column>
  280. <el-table-column
  281. prop="displacement_quantity"
  282. align="center"
  283. label="SpO₂(%)"
  284. width="100"
  285. v-if="
  286. isShow('SpO₂') &&
  287. template_id != 6 &&
  288. template_id != 10 &&
  289. template_id != 11
  290. "
  291. >
  292. <template slot-scope="scope">
  293. {{
  294. scope.row.blood_oxygen_saturation
  295. ? scope.row.blood_oxygen_saturation
  296. : ""
  297. }}
  298. </template>
  299. </el-table-column>
  300. <el-table-column
  301. prop="displacement_flow_quantity"
  302. align="center"
  303. label="电导度(mS/m)"
  304. width="100"
  305. v-if="isShow('电导度')"
  306. >
  307. <template slot-scope="scope">
  308. {{ scope.row.conductivity ? scope.row.conductivity : "" }}
  309. </template>
  310. </el-table-column>
  311. <el-table-column
  312. prop="displacement_flow_quantity"
  313. align="center"
  314. label="置换液流量(ml/h)"
  315. width="100"
  316. v-if="isShow('置换液流量')"
  317. >
  318. <template slot-scope="scope">
  319. {{
  320. scope.row.displacement_flow_quantity
  321. ? scope.row.displacement_flow_quantity
  322. : ""
  323. }}
  324. </template>
  325. </el-table-column>
  326. <el-table-column
  327. prop="heparin"
  328. align="center"
  329. label="肝素用量余量(ml)"
  330. width="140"
  331. v-if="isShow('肝素用量余量')"
  332. >
  333. </el-table-column>
  334. <el-table-column
  335. prop="symptom"
  336. align="center"
  337. label="病情变化"
  338. width="130"
  339. v-if="isShow('病情变化')"
  340. >
  341. </el-table-column>
  342. <el-table-column
  343. prop="dispose"
  344. align="center"
  345. label="处理"
  346. width="130"
  347. v-if="isShow('处理')"
  348. >
  349. </el-table-column>
  350. <el-table-column
  351. prop="result"
  352. align="center"
  353. label="结果"
  354. width="130"
  355. v-if="isShow('结果')"
  356. >
  357. </el-table-column>
  358. </el-table>
  359. </div>
  360. <!--<div v-show="edit">-->
  361. <el-form v-show="edit" ref="form" :model="form" label-width="130px">
  362. <el-row :gutter="20">
  363. <el-col :span="8" v-if="isShow('监测时间')">
  364. <el-form-item label="监测时间:">
  365. <!-- {{ monitor_date_str }}
  366. <el-time-picker v-model="form.monitoring_time" :clearable="false" arrow-control :picker-options="{format: 'HH:mm'}" prefix-icon="" value-format="HH:mm" style="width: 60%;">
  367. </el-time-picker> -->
  368. <el-date-picker
  369. v-model="form.operate_time"
  370. type="datetime"
  371. prefix-icon=""
  372. style="width: 100%"
  373. format="yyyy-MM-dd HH:mm"
  374. value-format="timestamp"
  375. ></el-date-picker>
  376. </el-form-item>
  377. </el-col>
  378. <el-col :span="8" v-if="isShow('体温')">
  379. <el-form-item label="体温(℃):">
  380. <el-input v-model="form.temperature"></el-input>
  381. </el-form-item>
  382. </el-col>
  383. <el-col :span="8" v-if="isShow('收缩压')">
  384. <el-form-item label="收缩压(mmHg):">
  385. <el-input v-model="form.systolic_bp"></el-input>
  386. </el-form-item>
  387. </el-col>
  388. <el-col :span="8" v-if="isShow('舒张压')">
  389. <el-form-item label="舒张压(mmHg):">
  390. <el-input v-model="form.diastolic_bp"></el-input>
  391. </el-form-item>
  392. </el-col>
  393. <el-col :span="8" v-if="isShow('脉搏')">
  394. <el-form-item label="脉搏(次/分):">
  395. <el-input v-model="form.pulse_frequency"></el-input>
  396. </el-form-item>
  397. </el-col>
  398. <el-col :span="8" v-if="isShow('呼吸频率')">
  399. <el-form-item label="呼吸频率(次/分):">
  400. <el-input v-model="form.breathing_rated"></el-input>
  401. </el-form-item>
  402. </el-col>
  403. <el-col :span="8" v-if="isShow('静脉压')">
  404. <el-form-item label="静脉压(mmHg):">
  405. <el-input
  406. style="width: 140px"
  407. v-model="form.venous_pressure"
  408. ></el-input>
  409. <el-button
  410. size="mini"
  411. type="primary"
  412. @click="venousPressureChangeOne"
  413. >转换</el-button
  414. >
  415. </el-form-item>
  416. </el-col>
  417. <el-col :span="8" v-if="isShow('动脉压')">
  418. <el-form-item label="动脉压(mmHg):">
  419. <el-input
  420. style="width: 140px"
  421. v-model="form.arterial_pressure"
  422. ></el-input>
  423. <el-button
  424. size="mini"
  425. type="primary"
  426. @click="venousPressureChangeThree"
  427. >转换</el-button
  428. >
  429. </el-form-item>
  430. </el-col>
  431. <el-col :span="8" v-if="isShow('血流量')">
  432. <el-form-item label="血流量(ml/min):">
  433. <el-input v-model="form.blood_flow_volume"></el-input>
  434. </el-form-item>
  435. </el-col>
  436. <el-col :span="8" v-if="isShow('跨膜压')">
  437. <el-form-item label="跨膜压(mmHg):">
  438. <el-input
  439. style="width: 140px"
  440. v-model="form.transmembrane_pressure"
  441. ></el-input>
  442. <el-button
  443. size="mini"
  444. type="primary"
  445. @click="venousPressureChangeTwo"
  446. >转换</el-button
  447. >
  448. </el-form-item>
  449. </el-col>
  450. <el-col :span="8" v-if="isShow('超滤率')">
  451. <el-form-item label="超滤率(ml/h)">
  452. <el-input v-model="form.ultrafiltration_rate"></el-input>
  453. </el-form-item>
  454. </el-col>
  455. <el-col
  456. :span="8"
  457. v-if="
  458. isShow('超滤量') &&
  459. (template_id != 6 || template_id != 10 || template_id != 11)
  460. "
  461. >
  462. <el-form-item label="超滤量(ml):">
  463. <el-input v-model="form.ultrafiltration_volume"></el-input>
  464. </el-form-item>
  465. </el-col>
  466. <el-col
  467. :span="8"
  468. v-if="
  469. isShow('超滤量') &&
  470. template_id != 6 &&
  471. template_id != 10 &&
  472. template_id != 11
  473. "
  474. >
  475. <el-form-item label="超滤量(L):">
  476. <el-input v-model="form.ultrafiltration_volume"></el-input>
  477. </el-form-item>
  478. </el-col>
  479. <el-col :span="8" v-if="isShow('钠浓度')">
  480. <el-form-item label="钠浓度(mmol/L):">
  481. <el-input v-model="form.sodium_concentration"></el-input>
  482. </el-form-item>
  483. </el-col>
  484. <!-- </el-row>
  485. <el-row :gutter="20"> -->
  486. <el-col :span="8" v-if="isShow('透析液温度')">
  487. <el-form-item label="透析液温度(℃):">
  488. <el-input v-model="form.dialysate_temperature"></el-input>
  489. </el-form-item>
  490. </el-col>
  491. <el-col :span="8" v-if="isShow('置换率')">
  492. <el-form-item label="置换率(L/h):">
  493. <el-input v-model="form.replacement_rate"></el-input>
  494. </el-form-item>
  495. </el-col>
  496. <el-col :span="8" v-if="isShow('置换量')">
  497. <el-form-item label="置换量(L):">
  498. <el-input v-model="form.displacement_quantity"></el-input>
  499. </el-form-item>
  500. </el-col>
  501. <el-col :span="8" v-if="isShow('电导度')">
  502. <el-form-item label="电导度(mS/m):">
  503. <el-input v-model="form.conductivity"></el-input>
  504. </el-form-item>
  505. </el-col>
  506. <el-col :span="8" v-if="isShow('置换液流量')">
  507. <el-form-item label="置换液流量(ml/h):">
  508. <el-input v-model="form.displacement_flow_quantity"></el-input>
  509. </el-form-item>
  510. </el-col>
  511. <el-col :span="8" v-if="isShow('SpO₂')">
  512. <el-form-item label="SpO₂(%):">
  513. <el-input v-model="form.blood_oxygen_saturation"></el-input>
  514. </el-form-item>
  515. </el-col>
  516. <el-col :span="8" v-if="isShow('肝素用量余量')">
  517. <el-form-item label="肝素用量余量(ml):">
  518. <el-input v-model="form.heparin"></el-input>
  519. </el-form-item>
  520. </el-col>
  521. <!-- </el-row>
  522. <el-row :gutter="20"> -->
  523. <el-col :span="24" v-if="isShow('KT/V')">
  524. <el-form-item label="KT/V(在线):">
  525. <el-input type="textarea" :rows="4" v-model="form.ktv"></el-input>
  526. </el-form-item>
  527. </el-col>
  528. <!-- </el-row>
  529. <el-row :gutter="20"> -->
  530. <el-col :span="24" v-if="isShow('病情变化')">
  531. <el-form-item label="病情变化:">
  532. <el-select
  533. v-model="symptom_selecteds"
  534. style="width: 100%"
  535. :multiple="true"
  536. collapse-tags
  537. @change="symptomSelectorChange"
  538. >
  539. <el-option
  540. v-for="(symptom, index) in symptom_options"
  541. :key="index"
  542. :label="symptom.name"
  543. :value="symptom.name"
  544. ></el-option>
  545. </el-select>
  546. </el-form-item>
  547. </el-col>
  548. <!-- </el-row>
  549. <el-row :gutter="20"> -->
  550. <el-col :span="24" v-if="isShow('病情变化')">
  551. <el-form-item>
  552. <el-input
  553. type="textarea"
  554. :rows="4"
  555. v-model="form.symptom"
  556. @blur="symptomTextareaBlur"
  557. ></el-input>
  558. </el-form-item>
  559. </el-col>
  560. <!-- </el-row>
  561. <el-row :gutter="20"> -->
  562. <el-col :span="24" v-if="isShow('处理')">
  563. <el-form-item label="处理:">
  564. <el-select
  565. v-model="dispose_selecteds"
  566. style="width: 100%"
  567. :multiple="true"
  568. collapse-tags
  569. @change="disposeSelectorChange"
  570. >
  571. <el-option
  572. v-for="(dispose, index) in dispose_options"
  573. :key="index"
  574. :label="dispose.name"
  575. :value="dispose.name"
  576. ></el-option>
  577. </el-select>
  578. </el-form-item>
  579. </el-col>
  580. <!-- </el-row>
  581. <el-row :gutter="20"> -->
  582. <el-col :span="24" v-if="isShow('处理')">
  583. <el-form-item>
  584. <el-input
  585. type="textarea"
  586. :rows="4"
  587. v-model="form.dispose"
  588. @blur="disposeTextareaBlur"
  589. ></el-input>
  590. </el-form-item>
  591. </el-col>
  592. <!-- </el-row>
  593. <el-row :gutter="20"> -->
  594. <el-col :span="24" v-if="isShow('结果')">
  595. <el-form-item label="结果:">
  596. <el-select
  597. v-model="result_selecteds"
  598. style="width: 100%"
  599. :multiple="true"
  600. collapse-tags
  601. @change="resultSelectorChange"
  602. >
  603. <el-option
  604. v-for="(result, index) in result_options"
  605. :key="index"
  606. :label="result.name"
  607. :value="result.name"
  608. ></el-option>
  609. </el-select>
  610. </el-form-item>
  611. </el-col>
  612. <!-- </el-row>
  613. <el-row :gutter="20"> -->
  614. <el-col :span="24" v-if="isShow('结果')">
  615. <el-form-item>
  616. <el-input
  617. type="textarea"
  618. :rows="4"
  619. v-model="form.result"
  620. @blur="resultTextareaBlur"
  621. ></el-input>
  622. </el-form-item>
  623. </el-col>
  624. </el-row>
  625. </el-form>
  626. <div slot="footer" class="dialog-footer" v-show="edit">
  627. <el-button @click="cancelEditAction">取 消</el-button>
  628. <el-button type="primary" @click="submitAction">保 存</el-button>
  629. </div>
  630. <!--</div>-->
  631. </el-dialog>
  632. </div>
  633. </template>
  634. <script>
  635. import { parseTime } from "@/utils";
  636. import { getDataConfig } from "@/utils/data";
  637. import {
  638. editMonitor,
  639. postDelMonitorInfo,
  640. getTodayMonitor
  641. } from "@/api/dialysis_record";
  642. import store from "@/store";
  643. import request from "@/utils/request";
  644. export default {
  645. name: "MonitorDialog",
  646. data() {
  647. return {
  648. is_has_create: true,
  649. is_has_modify: true,
  650. is_has_modify_other: true,
  651. is_has_del: true,
  652. is_has_del_other: true,
  653. visible: false,
  654. edit: false,
  655. current_row_class: "current-box-class",
  656. creator: 0,
  657. patient_id: 0,
  658. schedule_date: 0,
  659. template_id: 0,
  660. isAdd: false,
  661. // monitoring_date: 0,
  662. form: {
  663. id: 0,
  664. monitoring_date: 0, // 监测日期
  665. // operate_date: 0, // 实际测量日期
  666. // monitoring_time: "", // 监测时间 HH:mm
  667. operate_time: 0,
  668. systolic_bp: "", // 收缩压
  669. diastolic_bp: "", // 舒张压
  670. pulse_frequency: "", // 心率
  671. temperature: "", // 体温
  672. breathing_rated: "", // 呼吸频率
  673. blood_flow_volume: "", // 血流量
  674. venous_pressure: "", // 静脉压
  675. transmembrane_pressure: "", // 跨膜压
  676. ultrafiltration_volume: "", // 超滤量
  677. ultrafiltration_rate: "", // 超滤率
  678. arterial_pressure: "", // 动脉压
  679. sodium_concentration: "", // 钠浓度
  680. dialysate_temperature: "", // 透析液温度
  681. replacement_rate: "", // 置换率
  682. displacement_quantity: "", // 置换量
  683. conductivity: "", // 电导度
  684. displacement_flow_quantity: "", // 置换液流量
  685. heparin: "", //肝素用量余量
  686. ktv: "", // KT/V
  687. symptom: "", // 病情变化
  688. dispose: "", // 处理
  689. result: "", // 结果,
  690. blood_oxygen_saturation: "" // 血氧饱和度
  691. },
  692. table_current_row: null,
  693. symptom_selecteds: [],
  694. symptom_options: getDataConfig("hemodialysis", "symptoms"),
  695. dispose_selecteds: [],
  696. dispose_options: getDataConfig("hemodialysis", "deals"),
  697. result_selecteds: [],
  698. result_options: getDataConfig("hemodialysis", "results"),
  699. valueOne: 0,
  700. valueTwo: 0,
  701. valueThree: 0
  702. };
  703. },
  704. props: {
  705. monitors: {
  706. type: Array
  707. }
  708. },
  709. computed: {
  710. monitor_date_str: function() {
  711. return parseTime(this.form.monitoring_date, "{y}-{m}-{d}");
  712. }
  713. },
  714. created() {
  715. this.template_id = this.$store.getters.xt_user.template_info.template_id;
  716. var date = this.$route.query.date;
  717. var patient_id = this.$route.query.patient_id;
  718. this.patient_id = patient_id;
  719. this.schedule_date = date;
  720. this.form.monitoring_date = date;
  721. // this.form.operate_date = parseInt((new Date()).getTime() / 1000)
  722. // this.form.monitoring_time = parseTime(new Date(), "{h}:{i}")
  723. this.form.operate_time = new Date().getTime();
  724. },
  725. methods: {
  726. venousPressureChange(type) {
  727. if (type == 1) {
  728. this.form.venous_pressure = Math.ceil(
  729. Math.round(this.form.venous_pressure * 7.5)
  730. );
  731. } else if (type == 2) {
  732. this.form.transmembrane_pressure = Math.ceil(
  733. Math.round(this.form.transmembrane_pressure * 7.5)
  734. );
  735. } else {
  736. this.form.arterial_pressure = Math.ceil(
  737. Math.round(this.form.arterial_pressure * 7.5)
  738. );
  739. }
  740. },
  741. venousPressureChangeOne() {
  742. if (this.valueOne == 0) {
  743. this.form.venous_pressure = Math.ceil(
  744. Math.round(this.form.venous_pressure * 7.5)
  745. );
  746. this.valueOne = 1;
  747. return false;
  748. }
  749. if (this.valueOne == 1) {
  750. this.form.venous_pressure = Math.ceil(
  751. Math.round(this.form.venous_pressure / 7.5)
  752. );
  753. this.valueOne = 0;
  754. return false;
  755. }
  756. },
  757. venousPressureChangeThree() {
  758. if (this.valueThree == 0) {
  759. this.form.arterial_pressure = Math.ceil(
  760. Math.round(this.form.arterial_pressure * 7.5)
  761. );
  762. this.valueThree = 1;
  763. return false;
  764. }
  765. if (this.valueThree == 1) {
  766. this.form.arterial_pressure = Math.ceil(
  767. Math.round(this.form.arterial_pressure / 7.5)
  768. );
  769. this.valueThree = 0;
  770. return false;
  771. }
  772. },
  773. venousPressureChangeTwo() {
  774. if (this.valueTwo == 0) {
  775. this.form.transmembrane_pressure = Math.ceil(
  776. Math.round(this.form.transmembrane_pressure * 7.5)
  777. );
  778. this.valueTwo = 1;
  779. return false;
  780. }
  781. if (this.valueTwo == 1) {
  782. this.form.transmembrane_pressure = Math.ceil(
  783. Math.round(this.form.transmembrane_pressure / 7.5)
  784. );
  785. this.valueTwo = 0;
  786. return false;
  787. }
  788. },
  789. isShow(name) {
  790. var filedList = store.getters.xt_user.fileds;
  791. for (let i = 0; i < filedList.length; i++) {
  792. if (
  793. filedList[i].module == 4 &&
  794. filedList[i].filed_name_cn == name &&
  795. filedList[i].is_show == 1
  796. ) {
  797. return true;
  798. }
  799. }
  800. return false;
  801. },
  802. reset: function() {
  803. this.cancelEditAction();
  804. },
  805. show() {
  806. this.getPermission();
  807. this.visible = true;
  808. },
  809. hide() {
  810. this.visible = false;
  811. },
  812. getMonitorDate: function(monitor) {
  813. return parseTime(monitor.operate_time, "{y}-{m}-{d} {h}:{i}");
  814. },
  815. newRecordAction: function() {
  816. this.setEditMonitor(null);
  817. this.$refs.table.setCurrentRow(null);
  818. this.edit = true;
  819. this.isAdd = true;
  820. this.getLastRecordTody();
  821. },
  822. getLastRecordTody() {
  823. const params = {
  824. patient_id: this.patient_id
  825. };
  826. getTodayMonitor(params).then(rs => {
  827. var resp = rs.data.data;
  828. this.form.operate_time = resp.monitor.operate_time
  829. ? (resp.monitor.operate_time + 3600) * 1000
  830. : Date.parse(new Date());
  831. this.form.pulse_frequency = ""; // this.last_monitor_record.pulse_frequency;
  832. this.form.breathing_rated = resp.monitor.breathing_rate
  833. ? resp.monitor.breathing_rate
  834. : "";
  835. this.form.systolic_bp = ""; // this.last_monitor_record.systolic_blood_pressure;
  836. this.form.diastolic_bp = ""; // this.last_monitor_record.diastolic_blood_pressure;
  837. this.form.blood_flow_volume = resp.monitor.blood_flow_volume
  838. ? resp.monitor.blood_flow_volume
  839. : "";
  840. this.form.venous_pressure = ""; // this.last_monitor_record.venous_pressure;
  841. this.form.arterial_pressure = ""; // this.last_monitor_record.arterial_pressure;
  842. this.form.transmembrane_pressure = ""; // this.last_monitor_record.transmembrane_pressure;
  843. this.form.ultrafiltration_rate = resp.monitor.ultrafiltration_rate
  844. ? resp.monitor.ultrafiltration_rate
  845. : "";
  846. this.form.ultrafiltration_volume = resp.monitor.ultrafiltration_volume
  847. ? resp.monitor.ultrafiltration_volume
  848. : "";
  849. this.form.sodium_concentration = resp.monitor.sodium_concentration
  850. ? resp.monitor.sodium_concentration
  851. : "";
  852. this.form.dialysate_temperature = resp.monitor.dialysate_temperature
  853. ? resp.monitor.dialysate_temperature
  854. : "";
  855. this.form.temperature = resp.monitor.temperature
  856. ? resp.monitor.temperature
  857. : "";
  858. this.form.replacement_rate = resp.monitor.replacement_rate
  859. ? resp.monitor.replacement_rate
  860. : "";
  861. this.form.heparin = resp.monitor.heparin ? resp.monitor.heparin : "";
  862. this.form.displacement_quantity = ""; // this.last_monitor_record.displacement_quantity;
  863. this.form.conductivity = "";
  864. this.form.displacement_flow_quantity = "";
  865. this.form.ktv = ""; // this.last_monitor_record.ktv;
  866. this.form.symptom = ""; // this.last_monitor_record.symptom;
  867. this.form.dispose = ""; // this.last_monitor_record.dispose;
  868. this.form.result = ""; // this.last_monitor_record.result;
  869. });
  870. },
  871. modifyRecordAction: function() {
  872. if (this.table_current_row == null) {
  873. this.$message.error("请选择一条监测记录");
  874. return;
  875. }
  876. this.creator = this.table_current_row.creator;
  877. console.log(this.table_current_row);
  878. console.log(this.table_current_row.creator);
  879. console.log(this.creator);
  880. this.setEditMonitor(this.table_current_row);
  881. this.$refs.table.setCurrentRow(null);
  882. this.edit = true;
  883. this.isAdd = false;
  884. },
  885. cancelEditAction: function() {
  886. this.setEditMonitor(null);
  887. this.$refs.table.setCurrentRow(null);
  888. this.edit = false;
  889. },
  890. tableCurrentRowChange: function(currentRow) {
  891. this.table_current_row = currentRow;
  892. // console.log("tableCurrentRowChange", currentRow)
  893. },
  894. setEditMonitor: function(monitor) {
  895. if (monitor == null || monitor == undefined) {
  896. this.form.id = 0;
  897. // this.form.operate_date = parseInt((new Date()).getTime() / 1000)
  898. // this.form.monitoring_time = parseTime(new Date(), "{h}:{i}")
  899. this.form.operate_time = new Date().getTime();
  900. this.form.systolic_bp = "";
  901. this.form.diastolic_bp = "";
  902. this.form.pulse_frequency = "";
  903. this.form.breathing_rated = "";
  904. this.form.blood_flow_volume = "";
  905. this.form.temperature = "";
  906. this.form.venous_pressure = "";
  907. this.form.transmembrane_pressure = "";
  908. this.form.ultrafiltration_volume = "";
  909. this.form.ultrafiltration_rate = "";
  910. this.form.arterial_pressure = "";
  911. this.form.sodium_concentration = "";
  912. this.form.dialysate_temperature = "";
  913. this.form.replacement_rate = "";
  914. this.form.displacement_quantity = "";
  915. this.form.conductivity = "";
  916. this.form.displacement_flow_quantity = "";
  917. this.form.heparin = "";
  918. this.form.ktv = "";
  919. this.form.symptom = "";
  920. this.form.dispose = "";
  921. this.form.result = "";
  922. this.symptom_selecteds = [];
  923. this.dispose_selecteds = [];
  924. this.result_selecteds = [];
  925. } else {
  926. (this.form.id = monitor.id),
  927. // this.form.operate_date = monitor.operate_date
  928. // this.form.monitoring_time = monitor.monitoring_time
  929. (this.form.operate_time = monitor.operate_time * 1000);
  930. this.form.systolic_bp = monitor.systolic_blood_pressure
  931. ? monitor.systolic_blood_pressure
  932. : "";
  933. this.form.temperature = monitor.temperature ? monitor.temperature : "";
  934. this.form.diastolic_bp = monitor.diastolic_blood_pressure
  935. ? monitor.diastolic_blood_pressure
  936. : "";
  937. this.form.pulse_frequency = monitor.pulse_frequency
  938. ? monitor.pulse_frequency
  939. : "";
  940. this.form.breathing_rated = monitor.breathing_rate
  941. ? monitor.breathing_rate
  942. : "";
  943. this.form.blood_flow_volume = monitor.blood_flow_volume
  944. ? monitor.blood_flow_volume
  945. : "";
  946. this.form.venous_pressure = monitor.venous_pressure
  947. ? monitor.venous_pressure
  948. : "";
  949. this.form.transmembrane_pressure = monitor.transmembrane_pressure
  950. ? monitor.transmembrane_pressure
  951. : "";
  952. this.form.ultrafiltration_volume = monitor.ultrafiltration_volume
  953. ? monitor.ultrafiltration_volume
  954. : "";
  955. this.form.ultrafiltration_rate = monitor.ultrafiltration_rate
  956. ? monitor.ultrafiltration_rate
  957. : "";
  958. this.form.arterial_pressure = monitor.arterial_pressure
  959. ? monitor.arterial_pressure
  960. : "";
  961. this.form.sodium_concentration = monitor.sodium_concentration
  962. ? monitor.sodium_concentration
  963. : "";
  964. this.form.dialysate_temperature = monitor.dialysate_temperature
  965. ? monitor.dialysate_temperature
  966. : "";
  967. this.form.replacement_rate = monitor.replacement_rate
  968. ? monitor.replacement_rate
  969. : "";
  970. this.form.displacement_quantity = monitor.displacement_quantity
  971. ? monitor.displacement_quantity
  972. : "";
  973. this.form.conductivity = monitor.conductivity
  974. ? monitor.conductivity
  975. : "";
  976. this.form.displacement_flow_quantity = monitor.displacement_flow_quantity
  977. ? monitor.displacement_flow_quantity
  978. : "";
  979. this.form.heparin = monitor.heparin ? monitor.heparin : "";
  980. this.form.ktv = monitor.ktv;
  981. this.form.symptom = monitor.symptom;
  982. this.form.dispose = monitor.dispose;
  983. this.form.result = monitor.result;
  984. this.form.blood_oxygen_saturation = monitor.blood_oxygen_saturation;
  985. // 设置三个下拉框的值,直接调用事件偷懒
  986. this.symptomTextareaBlur();
  987. this.disposeTextareaBlur();
  988. this.resultTextareaBlur();
  989. }
  990. },
  991. submitAction: function() {
  992. // TODO loading
  993. var is_new = this.form.id;
  994. this.form.operate_time = parseInt(this.form.operate_time / 1000);
  995. this.form.systolic_bp =
  996. parseFloat(this.form.systolic_bp) == NaN
  997. ? 0
  998. : parseFloat(this.form.systolic_bp);
  999. this.form.diastolic_bp =
  1000. parseFloat(this.form.diastolic_bp) == NaN
  1001. ? 0
  1002. : parseFloat(this.form.diastolic_bp);
  1003. this.form.temperature =
  1004. parseFloat(this.form.temperature) == NaN
  1005. ? 0
  1006. : parseFloat(this.form.temperature);
  1007. this.form.pulse_frequency =
  1008. parseFloat(this.form.pulse_frequency) == NaN
  1009. ? 0
  1010. : parseFloat(this.form.pulse_frequency);
  1011. this.form.breathing_rated =
  1012. parseFloat(this.form.breathing_rated) == NaN
  1013. ? 0
  1014. : parseFloat(this.form.breathing_rated);
  1015. this.form.blood_flow_volume =
  1016. parseFloat(this.form.blood_flow_volume) == NaN
  1017. ? 0
  1018. : parseFloat(this.form.blood_flow_volume);
  1019. this.form.venous_pressure =
  1020. parseFloat(this.form.venous_pressure) == NaN
  1021. ? 0
  1022. : parseFloat(this.form.venous_pressure);
  1023. this.form.transmembrane_pressure =
  1024. parseFloat(this.form.transmembrane_pressure) == NaN
  1025. ? 0
  1026. : parseFloat(this.form.transmembrane_pressure);
  1027. this.form.ultrafiltration_volume =
  1028. parseFloat(this.form.ultrafiltration_volume) == NaN
  1029. ? 0
  1030. : parseFloat(this.form.ultrafiltration_volume);
  1031. this.form.ultrafiltration_rate =
  1032. parseFloat(this.form.ultrafiltration_rate) == NaN
  1033. ? 0
  1034. : parseFloat(this.form.ultrafiltration_rate);
  1035. this.form.arterial_pressure =
  1036. parseFloat(this.form.arterial_pressure) == NaN
  1037. ? 0
  1038. : parseFloat(this.form.arterial_pressure);
  1039. this.form.sodium_concentration =
  1040. parseFloat(this.form.sodium_concentration) == NaN
  1041. ? 0
  1042. : parseFloat(this.form.sodium_concentration);
  1043. this.form.dialysate_temperature =
  1044. parseFloat(this.form.dialysate_temperature) == NaN
  1045. ? 0
  1046. : parseFloat(this.form.dialysate_temperature);
  1047. this.form.replacement_rate =
  1048. parseFloat(this.form.replacement_rate) == NaN
  1049. ? 0
  1050. : parseFloat(this.form.replacement_rate);
  1051. this.form.displacement_quantity =
  1052. parseFloat(this.form.displacement_quantity) == NaN
  1053. ? 0
  1054. : parseFloat(this.form.displacement_quantity);
  1055. this.form.conductivity =
  1056. parseFloat(this.form.conductivity) == NaN
  1057. ? 0
  1058. : parseFloat(this.form.conductivity);
  1059. this.form.displacement_flow_quantity =
  1060. parseFloat(this.form.displacement_flow_quantity) == NaN
  1061. ? 0
  1062. : parseFloat(this.form.displacement_flow_quantity);
  1063. this.form.heparin =
  1064. parseFloat(this.form.heparin) == NaN
  1065. ? 0
  1066. : parseFloat(this.form.heparin);
  1067. this.form.ktv =
  1068. parseFloat(this.form.ktv) == NaN ? 0 : parseFloat(this.form.ktv);
  1069. this.form.monitoring_date = parseInt(this.form.monitoring_date);
  1070. let mode = "1";
  1071. if (this.form.id > 0) {
  1072. mode = "2";
  1073. if (
  1074. this.creator > 0 &&
  1075. this.creator != this.$store.getters.xt_user.user.id
  1076. ) {
  1077. mode = "3";
  1078. }
  1079. }
  1080. editMonitor(this.patient_id, this.schedule_date, this.form, mode).then(
  1081. rs => {
  1082. var resp = rs.data;
  1083. if (resp.state == 1) {
  1084. var monitor = resp.data.monitor;
  1085. if (this.isAdd) {
  1086. this.monitors.unshift(monitor);
  1087. this.monitors.sort((a, b) => b.operate_time - a.operate_time);
  1088. this.monitors.reverse();
  1089. } else {
  1090. for (let index = 0; index < this.monitors.length; index++) {
  1091. const m = this.monitors[index];
  1092. if (m.id == monitor.id) {
  1093. for (const key in monitor) {
  1094. m[key] = monitor[key];
  1095. }
  1096. break;
  1097. }
  1098. }
  1099. }
  1100. this.reset();
  1101. } else {
  1102. this.form.systolic_bp =
  1103. parseFloat(this.form.systolic_bp) == NaN
  1104. ? 0
  1105. : parseFloat(this.form.systolic_bp);
  1106. this.form.diastolic_bp =
  1107. parseFloat(this.form.diastolic_bp) == NaN
  1108. ? 0
  1109. : parseFloat(this.form.diastolic_bp);
  1110. this.form.temperature =
  1111. parseFloat(this.form.temperature) == NaN
  1112. ? 0
  1113. : parseFloat(this.form.temperature);
  1114. this.form.pulse_frequency =
  1115. parseFloat(this.form.pulse_frequency) == NaN
  1116. ? 0
  1117. : parseFloat(this.form.pulse_frequency);
  1118. this.form.breathing_rated =
  1119. parseFloat(this.form.breathing_rated) == NaN
  1120. ? 0
  1121. : parseFloat(this.form.breathing_rated);
  1122. this.form.blood_flow_volume =
  1123. parseFloat(this.form.blood_flow_volume) == NaN
  1124. ? 0
  1125. : parseFloat(this.form.blood_flow_volume);
  1126. this.form.venous_pressure =
  1127. parseFloat(this.form.venous_pressure) == NaN
  1128. ? 0
  1129. : parseFloat(this.form.venous_pressure);
  1130. this.form.transmembrane_pressure =
  1131. parseFloat(this.form.transmembrane_pressure) == NaN
  1132. ? 0
  1133. : parseFloat(this.form.transmembrane_pressure);
  1134. this.form.ultrafiltration_volume =
  1135. parseFloat(this.form.ultrafiltration_volume) == NaN
  1136. ? 0
  1137. : parseFloat(this.form.ultrafiltration_volume);
  1138. this.form.ultrafiltration_rate =
  1139. parseFloat(this.form.ultrafiltration_rate) == NaN
  1140. ? 0
  1141. : parseFloat(this.form.ultrafiltration_rate);
  1142. this.form.arterial_pressure =
  1143. parseFloat(this.form.arterial_pressure) == NaN
  1144. ? 0
  1145. : parseFloat(this.form.arterial_pressure);
  1146. this.form.sodium_concentration =
  1147. parseFloat(this.form.sodium_concentration) == NaN
  1148. ? 0
  1149. : parseFloat(this.form.sodium_concentration);
  1150. this.form.dialysate_temperature =
  1151. parseFloat(this.form.dialysate_temperature) == NaN
  1152. ? 0
  1153. : parseFloat(this.form.dialysate_temperature);
  1154. this.form.replacement_rate =
  1155. parseFloat(this.form.replacement_rate) == NaN
  1156. ? 0
  1157. : parseFloat(this.form.replacement_rate);
  1158. this.form.displacement_quantity =
  1159. parseFloat(this.form.displacement_quantity) == NaN
  1160. ? 0
  1161. : parseFloat(this.form.displacement_quantity);
  1162. this.form.conductivity =
  1163. parseFloat(this.form.conductivity) == NaN
  1164. ? 0
  1165. : parseFloat(this.form.conductivity);
  1166. this.form.displacement_flow_quantity =
  1167. parseFloat(this.form.displacement_flow_quantity) == NaN
  1168. ? 0
  1169. : parseFloat(this.form.displacement_flow_quantity);
  1170. this.form.heparin =
  1171. parseFloat(this.form.heparin) == NaN
  1172. ? 0
  1173. : parseFloat(this.form.heparin);
  1174. this.form.ktv =
  1175. parseFloat(this.form.ktv) == NaN ? 0 : parseFloat(this.form.ktv);
  1176. this.$message.error(resp.msg);
  1177. }
  1178. }
  1179. );
  1180. },
  1181. symptomTextareaBlur: function() {
  1182. if (this.form.symptom.length > 0) {
  1183. this.symptom_selecteds = this.form.symptom.split(",");
  1184. } else {
  1185. this.symptom_selecteds = [];
  1186. }
  1187. },
  1188. symptomSelectorChange: function() {
  1189. if (this.symptom_selecteds.length > 0) {
  1190. this.form.symptom = this.symptom_selecteds.join(",") + ",";
  1191. } else {
  1192. this.form.symptom = "";
  1193. }
  1194. },
  1195. disposeTextareaBlur: function() {
  1196. if (this.form.dispose.length > 0) {
  1197. this.dispose_selecteds = this.form.dispose.split(",");
  1198. } else {
  1199. this.dispose_selecteds = [];
  1200. }
  1201. },
  1202. disposeSelectorChange: function() {
  1203. if (this.dispose_selecteds.length > 0) {
  1204. this.form.dispose = this.dispose_selecteds.join(",") + ",";
  1205. } else {
  1206. this.form.dispose = "";
  1207. }
  1208. },
  1209. resultTextareaBlur: function() {
  1210. if (this.form.result.length > 0) {
  1211. this.result_selecteds = this.form.result.split(",");
  1212. } else {
  1213. this.result_selecteds = [];
  1214. }
  1215. },
  1216. setRecords(records) {
  1217. this.monitors = records;
  1218. },
  1219. resultSelectorChange: function() {
  1220. if (this.result_selecteds.length > 0) {
  1221. this.form.result = this.result_selecteds.join(",") + ",";
  1222. } else {
  1223. this.form.result = "";
  1224. }
  1225. },
  1226. deleteRecordAction: function() {
  1227. if (this.table_current_row == null) {
  1228. this.$message.error("请选择一条监测记录");
  1229. return;
  1230. }
  1231. this.$confirm("删除记录", "是否删除该监测记录", {
  1232. confirmButtonText: "确定",
  1233. cancelButtonText: "取消",
  1234. type: "warning"
  1235. })
  1236. .then(() => {
  1237. let mode = "4";
  1238. if (
  1239. this.table_current_row.creator > 0 &&
  1240. this.table_current_row.creator !=
  1241. this.$store.getters.xt_user.user.id
  1242. ) {
  1243. mode = "5";
  1244. }
  1245. const params = {
  1246. patient_id: this.patient_id,
  1247. record_id: this.table_current_row.id,
  1248. mode: mode
  1249. };
  1250. postDelMonitorInfo(params).then(response => {
  1251. if (response.data.state == 0) {
  1252. this.$message.error(response.data.msg);
  1253. return false;
  1254. } else {
  1255. const record_id = response.data.data.record_id;
  1256. for (let i = 0; i < this.monitors.length; i++) {
  1257. if (this.monitors[i].id == record_id) {
  1258. this.monitors.splice(i, 1);
  1259. }
  1260. }
  1261. this.$message.success("删除成功");
  1262. }
  1263. });
  1264. })
  1265. .catch(() => {});
  1266. },
  1267. getPermission() {
  1268. request
  1269. .get("/api/func_per/get", {
  1270. params: {
  1271. create_url: "/api/dislysis/monitor/edit?mode=1",
  1272. modify_url: "/api/dislysis/monitor/edit?mode=2",
  1273. modify_other_url: "/api/dislysis/monitor/edit?mode=3",
  1274. del_url: "/api/dialysis/monitor/del?mode=4",
  1275. del_other_url: "/api/dialysis/monitor/del?mode=5",
  1276. module: 7
  1277. }
  1278. })
  1279. .then(res => {
  1280. console.log(res);
  1281. if (res.data.state == 0) {
  1282. this.hasPermission = false;
  1283. } else if (res.data.state == 1) {
  1284. this.is_has_create = res.data.data.is_has_create;
  1285. this.is_has_exce = res.data.data.is_has_exce;
  1286. this.is_has_check = res.data.data.is_has_check;
  1287. this.is_has_modify = res.data.data.is_has_modify;
  1288. this.is_has_modify_other = res.data.data.is_has_modify_other;
  1289. this.is_has_modify_exce = res.data.data.is_has_modify_exce;
  1290. this.is_has_del = res.data.data.is_has_del;
  1291. this.is_has_del_other = res.data.data.is_has_del_other;
  1292. }
  1293. });
  1294. }
  1295. }
  1296. };
  1297. </script>
  1298. <style style="stylesheet/scss" lang="scss" scoped>
  1299. .grid {
  1300. padding: 10px 0 20px 0;
  1301. .list {
  1302. ul {
  1303. @include display-flex;
  1304. @include align-items-center;
  1305. @include text-align;
  1306. @include justify-content-around;
  1307. cursor: pointer;
  1308. li {
  1309. font-size: 12px;
  1310. color: #5d6b7a;
  1311. margin-top: 20px;
  1312. p {
  1313. height: 30px;
  1314. line-height: 30px;
  1315. color: #34495e;
  1316. font-size: 14px;
  1317. }
  1318. img {
  1319. width: 50px;
  1320. height: 50px;
  1321. }
  1322. }
  1323. }
  1324. }
  1325. }
  1326. .txsj {
  1327. text-align: center;
  1328. margin-bottom: 20px;
  1329. }
  1330. .current-box-class::-webkit-scrollbar {
  1331. height: 20px; /*滚动条高度*/
  1332. }
  1333. </style>
  1334. <style style="stylesheet/scss" lang="scss">
  1335. .dialog_box .current-box-class .current-row > td {
  1336. background: #6fb5fa;
  1337. // color: #000;
  1338. /* font-size: 12px; */
  1339. }
  1340. .dialog_box .current-box-class .current-row:hover > td {
  1341. background: #6fb5fa;
  1342. // color: white;
  1343. /* font-size: 12px; */
  1344. }
  1345. .el-table__body-wrapper::-webkit-scrollbar {
  1346. height: 20px;
  1347. }
  1348. .dialog_box .current-box-class .current-row {
  1349. background: #87ceff;
  1350. }
  1351. .dialog_box tr:hover > td {
  1352. background-color: #ecf5ff !important;
  1353. color: #3a8ee6;
  1354. }
  1355. .dialog_box tr > td:hover {
  1356. background-color: #409eff !important;
  1357. color: #fff !important;
  1358. }
  1359. </style>