血透系统PC前端

dialysisPrintOrder.vue 28KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715
  1. <template>
  2. <div class="main-contain">
  3. <div class="position">
  4. <bread-crumb :crumbs='crumbs'></bread-crumb>
  5. <el-button :loading="loading" size="small" icon="el-icon-printer" @click="printThisPage" type="primary">打印</el-button>
  6. </div>
  7. <div class="app-container ">
  8. <!--<div class="order-print-btn"-->
  9. <!--v-loading="loading"-->
  10. <!--element-loading-text="加载中"-->
  11. <!--element-loading-spinner="el-icon-loading"-->
  12. <!--element-loading-background="rgba(0, 0, 0, 0.8)"-->
  13. <!--style="width: 100%;">-->
  14. <!--</div>-->
  15. <!--<dialysis-print-order-two :patientInfo="patientInfo" :receiverTreatmentAccess="receiverTreatmentAccess" :predialysis="predialysis"></dialysis-print-order-two>-->
  16. <DialysisPrintOrderOne v-bind:childResponse="childResponse" v-if="org_template_info.template_id != 2"> </DialysisPrintOrderOne>
  17. <DialysisPrintOrderTwo v-bind:childResponse="childResponse" v-if="org_template_info.template_id == 2"></DialysisPrintOrderTwo>
  18. </div>
  19. </div>
  20. </template>
  21. <script>
  22. import { getDialysisRecord } from '@/api/dialysis'
  23. import { getDataConfig } from '@/utils/data'
  24. import { jsGetAge, uParseTime } from '@/utils/tools'
  25. import LabelBox from './printItem/LabelBox'
  26. import BreadCrumb from '@/xt_pages/components/bread-crumb'
  27. import DialysisPrintOrderOne from './template/dialysisPrintOrderOne'
  28. import DialysisPrintOrderTwo from './template/dialysisPrintOrderTwo'
  29. import print from 'print-js'
  30. export default {
  31. name: 'dialysisPrintOrder',
  32. components: {
  33. DialysisPrintOrderOne,
  34. DialysisPrintOrderTwo,
  35. LabelBox,
  36. BreadCrumb
  37. },
  38. data() {
  39. return {
  40. crumbs: [
  41. { path: false, name: '透析管理' },
  42. { path: false, name: '打印单' }
  43. ],
  44. childResponse:{},
  45. operators: [],
  46. adminUser: [],
  47. check: {},
  48. dialysisOrder: {
  49. DeviceNumber: []
  50. },
  51. operatorMaps: {},
  52. complications: ['低血压', '高血压', '心律失常', '头晕', '头痛', '呕吐', '抽搐', '出血', '心衰', '腹痛'],
  53. jilurow: 0,
  54. advice_jilurow: 0,
  55. loading: false,
  56. orgname: '',
  57. patientInfo_gender_1: false,
  58. patientInfo_gender_2: false,
  59. patientInfo_source_2: false,
  60. patientInfo_source_1: false,
  61. modeOptions: {},
  62. replacementWays: [],
  63. perfusionApparatus: [],
  64. anticoagulantsConfit: {},
  65. bloodAccessParOpera: {},
  66. dialysateFormulationOptions: {},
  67. queryParams: {
  68. xtdate: '',
  69. xtno: ''
  70. },
  71. patientInfo: {
  72. birth: '',
  73. age: '',
  74. DialysisSchedule: {
  75. device_number: { number: '' },
  76. device_zone: { name: '' }
  77. },
  78. gender: 0
  79. },
  80. predialysis: {
  81. score: '',
  82. internal_fistula: '',
  83. internal_fistula_skin: '',
  84. catheter: '',
  85. blood_access_part_opera_name: ''
  86. },
  87. afterdialysis: {
  88. complications_index: ''
  89. },
  90. prescription: {
  91. dialysate_formulation_name: '',
  92. device: {}
  93. },
  94. advices: [],
  95. users: [],
  96. monitors: [],
  97. summary: {},
  98. receiverTreatmentAccess: {},
  99. org_template_info: {},
  100. doctor_advices: [],
  101. advice_groups: [],
  102. AlPanel: {
  103. id: 0,
  104. name: '',
  105. type: 1,
  106. shouji: 2,
  107. weichi: 2,
  108. zongliang: 2,
  109. gaimingcheng: -1,
  110. gaijiliang: -1,
  111. shouji_unit: 'mg',
  112. weichi_unit: 'mg/h',
  113. zongliang_unit: 'mg',
  114. gaimingcheng_unit: '',
  115. gaijiliang_unit: ''
  116. }
  117. }
  118. },
  119. methods: {
  120. getAdminUser(id) {
  121. if (id == 0) {
  122. return ''
  123. }
  124. if (id == undefined) {
  125. return ''
  126. }
  127. for (let i = 0; i < this.adminUser.length; i++) {
  128. if (this.adminUser[i].id == id) {
  129. return this.adminUser[i].name
  130. }
  131. }
  132. },
  133. getTime(value, temp) {
  134. if (value == 0) {
  135. return ''
  136. }
  137. if (value != undefined) {
  138. return uParseTime(value, temp)
  139. }
  140. return ''
  141. },
  142. printThisPage() {
  143. var ptime = Math.round(new Date().getTime() / 1000)
  144. this.print_time = uParseTime(ptime, '{y}-{m}-{d} {h}:{i}')
  145. const style = '@media print {.dialysis-print-order{width:960px;margin:0 auto}.dialysis-print-order .order-yy-name{margin:auto;text-align:center;font-size:20px;letter-spacing:5px}.dialysis-print-order .order-title{margin:auto;font-weight:600;text-align:center;font-size:22px;padding:10px 20px 20px 20px}.dialysis-print-order .table-box{width:100%;line-height:23px;font-size:14px}.dialysis-print-order .print-table{width:100%;text-align:center;border-collapse:collapse;line-height:25px;font-size:14px}.dialysis-print-order .print-table-no{width:100%;text-align:center;border-collapse:collapse;font-size:14px}.dialysis-print-order .under-line{border-bottom:1px solid #999;width:95%;text-align:center;margin-left:2px}.dialysis-print-order .title-box{text-align:center;font-size:16px;border:1px solid #666}.dialysis-print-order .radio-lebel-box{font-weight:400;cursor:pointer}.dialysis-print-order .radio-no{opacity:0;outline:0;position:absolute;margin:0;width:0;height:0;z-index:-1}.dialysis-print-order .radio-inner{white-space:nowrap;cursor:pointer;outline:0;display:inline-block;line-height:1;position:relative;vertical-align:middle}.dialysis-print-order .radio-fang{display:inline-block;position:relative;border:1px solid #000;box-sizing:border-box;width:14px;height:14px;background-color:#fff;z-index:1;transition:border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46)}.dialysis-print-order .is-checked-radio::after{content:"√";font-size:15px}}.dialysis-print-order .print-table-no tr td { padding: 8px 5px; line-height: 25px; }.es-img{height: 20px; }.advice-name{text-align: left;}.advice-children{display:flex;} .dialysis-print-order .print-table tr td{padding: 0px 0px;} .print-template-two tr {line-height: 30px;} .title-box-pro{border: 0 #fff;line-height: 40px;height: 40px;text-align: left;padding-left: 10px !important;} .text-align-left{text-align: left !important;padding-left:10px !important;font-size: 14px !important;line-height: 25px;}'
  146. const style2 = '@media print {.option_panel { margin: 0 5px 0 0; } .option_panel .check_box_panel { white-space: nowrap; outline: none; display: inline-block; line-height: 1; position: relative; vertical-align: middle; } .option_panel .check_box_panel .check_box { display: inline-block; position: relative; border: 1px solid #000; box-sizing: border-box; width: 14px; height: 12px; background-color: #fff; } .check_box_panel .did_checked::after { content: "√"; font-size: 15px; } .print_page_main_content {background-color: white;width: 960px;margin: 0 auto 50px;padding: 0 0 0 0; page-break-after: always;}.print_page_main_content .order-yy-name {margin: auto;text-align: center;font-size: 20px;letter-spacing: 5px;}.print_page_main_content .order_title {text-align: center;font-size: 23px; line-height: 50px;font-weight: 500;} .row {font-size: 14px;line-height: 20px;padding: 5px 0;}.inline_block { display: inline-block;}.under_line_two {display: inline-block;border-bottom: 1px solid #999;text-align: left;white-space: nowrap;width: 50%;}.under_line {display: inline-block;border-bottom: 1px solid #999;text-align: center;white-space: nowrap; width: 50%;}.flex {display: -webkit-box;display: -moz-box; display: -ms-flexbox; display: -webkit-flex;display: flex;align-items: center;-webkit-align-items: center;box-align: center;-moz-box-align: center;-webkit-box-align: center;text-align: center;-webkit-justify-content: space-between;justify-content: space-between;-moz-box-pack: space-between;-webkit--moz-box-pack: space-between;box-pack: space-between;}.print_page_main_content .proj_table {width: 100%;border: 1px solid;border-collapse: collapse;padding: 2px;}.print_page_main_content .proj_table tbody tr td {border: 1px solid;font-size: 16px;padding: 10px 8px;line-height: 30px;}.print_page_main_content .proj_table .inside_table {width: 100%;border: hidden; border-collapse: collapse;}.print_page_main_content .proj_table .inside_table tr td {border: 1px solid; text-align: center;font-size: 14px;padding: 8px 5px;line-height: 25px;}.print-table-no {width: 100%;text-align: center;border-collapse: collapse;font-size: 14px;}.es-img {height: 25px;}.advice-name {text-align: left !important;line-height: 16px !important;}.advice-children {display: flex;}}.margin-bottom-300 {margin-bottom:300px;}.margin-bottom-600 {margin-bottom:600px;}.margin-bottom-900 {margin-bottom:900px;}';
  147. if (this.org_template_info.template_id != 2) {
  148. printJS({
  149. printable: 'dialysis-print-box',
  150. type: 'html',
  151. style: style,
  152. scanStyles: false
  153. })
  154. } else if (this.org_template_info.template_id == 2) {
  155. printJS({
  156. printable: 'dialysis-print-box-1',
  157. type: 'html',
  158. style: style2,
  159. scanStyles: false
  160. })
  161. }
  162. }, getNumber() {
  163. if (this.dialysisOrder != null) {
  164. return this.patientInfo.DialysisSchedule.device_zone.name + this.dialysisOrder.DeviceNumber.number
  165. } else {
  166. return this.patientInfo.DialysisSchedule.device_zone.name + this.patientInfo.DialysisSchedule.device_number.number
  167. }
  168. },
  169. getXuserName(id) {
  170. if (id <= 0) {
  171. return ''
  172. }
  173. var name = ''
  174. if (this.users == null || typeof (this.users.length) === 'undefined') {
  175. return name
  176. }
  177. var leng = this.users.length
  178. if (leng == 0) {
  179. return name
  180. }
  181. for (let index = 0; index < leng; index++) {
  182. if (this.users[index].id == id) {
  183. name = this.users[index].name
  184. break
  185. }
  186. }
  187. return name
  188. },
  189. setAdminUserES(id) {
  190. console.log(id)
  191. if (id == 0) {
  192. return ''
  193. }
  194. if (id in this.operatorMaps) {
  195. return this.operatorMaps[id].url
  196. } else {
  197. return ''
  198. }
  199. },
  200. modeName(mode_id) {
  201. return typeof (this.modeOptions[mode_id]) !== 'undefined' && typeof (this.modeOptions[mode_id].name) !== 'undefined' ? this.modeOptions[mode_id].name : ''
  202. },
  203. getDialysisRecord() {
  204. this.loading = true
  205. getDialysisRecord(this.queryParams).then(response => {
  206. if (response.data.state == 1) {
  207. this.childResponse = response
  208. this.org_template_info = response.data.data.org_template_info
  209. this.loading = false
  210. // this.adminUser = response.data.data.users
  211. // this.users = response.data.data.users
  212. // this.patientInfo = response.data.data.patientInfo
  213. // this.patientInfo.birth = uParseTime(this.patientInfo.birthday, '{y}-{m}-{d}')
  214. // // this.patientInfo.age = jsGetAge(this.patientInfo.birth, '-')
  215. // if (response.data.data.patientInfo.first_dialysis_date != 0) {
  216. // this.patientInfo.first_dialysis_date = uParseTime(response.data.data.patientInfo.first_dialysis_date, '{y}-{m}-{d}')
  217. // } else {
  218. // this.patientInfo.first_dialysis_date = ''
  219. // }
  220. // this.check = response.data.data.check
  221. // this.predialysis = response.data.data.PredialysisEvaluation
  222. // this.predialysis.blood_access_part_opera_name = this.bloodAccessParOperaName(this.predialysis.blood_access_part_opera_id)
  223. // this.afterdialysis = response.data.data.AssessmentAfterDislysis
  224. // this.operators = response.data.data.operators
  225. // this.dialysisOrder = response.data.data.dialysisOrder === null ? null : response.data.data.dialysisOrder
  226. // if (this.operators.length > 0) {
  227. // var operatorsLen = this.operators.length
  228. // for (var index = 0; index < operatorsLen; index++) {
  229. // this.$set(this.operatorMaps, this.operators[index].creator, this.operators[index])
  230. // }
  231. // }
  232. // this.afterdialysis.txqnx = -1
  233. // if (this.afterdialysis.cruor.indexOf('0度') > -1) {
  234. // this.afterdialysis.txqnx = 0
  235. // }
  236. // if (this.afterdialysis.cruor.indexOf('Ⅰ度') > -1) {
  237. // this.afterdialysis.txqnx = 1
  238. // }
  239. // if (this.afterdialysis.cruor.indexOf('Ⅱ度') > -1) {
  240. // this.afterdialysis.txqnx = 2
  241. // }
  242. // if (this.afterdialysis.cruor.indexOf('Ⅲ度') > -1) {
  243. // this.afterdialysis.txqnx = 3
  244. // }
  245. // this.afterdialysis.complications = this.afterdialysis.complication.split(',')
  246. // this.afterdialysis.complications_other = []
  247. // this.afterdialysis.complications_index = []
  248. // var acllen = this.afterdialysis.complications.length
  249. // for (let index = 0; index < acllen; index++) {
  250. // if (this.complications.indexOf(this.afterdialysis.complications[index]) >= 0) {
  251. // this.afterdialysis.complications_index.push(this.afterdialysis.complications[index])
  252. // } else if (this.complications.indexOf(this.afterdialysis.complications[index]) < 0 && this.afterdialysis.complications_other.indexOf(this.afterdialysis.complications[index]) < 0) {
  253. // this.afterdialysis.complications_other.push(this.afterdialysis.complications[index])
  254. // }
  255. // }
  256. // this.afterdialysis.complications_other = this.afterdialysis.complications_other.join(',')
  257. // this.prescription = response.data.data.dialysisPrescription
  258. // this.receiverTreatmentAccess = response.data.data.receiverTreatmentAccess
  259. // this.prescription.mode = this.modeName(this.prescription.mode_id)
  260. // var rwLen = this.replacementWays.length
  261. // this.prescription.replacement = ''
  262. // for (let index = 0; index < rwLen; index++) {
  263. // if (this.replacementWays[index].id == this.prescription.replacement_way) {
  264. // this.prescription.replacement = this.replacementWays[index].name
  265. // break
  266. // }
  267. // }
  268. // this.prescription.dialysate_formulation_name = this.dialysateFormulationName(this.prescription.dialysate_formulation)
  269. // var paLen = this.perfusionApparatus.length
  270. // this.prescription.perfusion_apparatus_name = ''
  271. // for (let index = 0; index < paLen; index++) {
  272. // if (this.perfusionApparatus[index].id == this.prescription.perfusion_apparatus) {
  273. // this.prescription.perfusion_apparatus_name = this.perfusionApparatus[index].name
  274. // break
  275. // }
  276. // }
  277. // var acLen = this.anticoagulantsConfit.length
  278. // var thisALID = this.prescription.anticoagulant
  279. // this.prescription.anticoagulant_name = ''
  280. // if (typeof (this.anticoagulantsConfit[thisALID]) !== 'undefined' && this.anticoagulantsConfit[thisALID] != null) {
  281. // this.prescription.anticoagulant_name = this.anticoagulantsConfit[thisALID].name
  282. // this.AlPanel = this.anticoagulantsConfit[thisALID]
  283. // }
  284. // this.advices = response.data.data.advices
  285. // this.monitors = response.data.data.monitors
  286. // this.summary = response.data.data.summary
  287. // this.org_template_info = response.data.data.org_template_info
  288. // if (this.monitors.length < 8) {
  289. // var nl = 8 - this.monitors.length
  290. // for (let index = 0; index < nl; index++) {
  291. // this.monitors.push([])
  292. // }
  293. // }
  294. // this.jilurow = this.monitors.length + 1
  295. // this.advice_jilurow = this.advices.length + 1
  296. // var childMap = {}
  297. // for (const index in this.advices) {
  298. // if (this.advices[index].parent_id == 0) {
  299. // continue
  300. // }
  301. // if (!(this.advices[index].parent_id in childMap)) {
  302. // childMap[this.advices[index].parent_id] = []
  303. // }
  304. // childMap[this.advices[index].parent_id].push(this.advices[index])
  305. // }
  306. // var advices = []
  307. // for (const index in this.advices) {
  308. // if (this.advices[index].parent_id > 0) {
  309. // continue
  310. // }
  311. // var item = this.advices[index]
  312. // if (item.id in childMap) {
  313. // item.children = childMap[item.id]
  314. // } else {
  315. // item.children = []
  316. // }
  317. // advices.push(item)
  318. // }
  319. // var leftAdvice = []
  320. // var rightAdvice = []
  321. // var adlen = advices.length
  322. // var halfLen = adlen % 2 == 0 ? adlen / 2 : (adlen + 1) / 2
  323. // for (var i = 0; i < halfLen; i++) {
  324. // leftAdvice.push(advices[i])
  325. // rightAdvice.push(advices[i + halfLen])
  326. // }
  327. // if (halfLen < 5) {
  328. // var nl = 5 - leftAdvice.length
  329. // for (let index = 0; index < nl; index++) {
  330. // leftAdvice.push([])
  331. // }
  332. // var nl = 5 - rightAdvice.length
  333. // for (let index = 0; index < nl; index++) {
  334. // rightAdvice.push([])
  335. // }
  336. // }
  337. // this.advices = []
  338. // for (var i = 0; i < halfLen; i++) {
  339. // var item = []
  340. // item.push(leftAdvice[i])
  341. // item.push(rightAdvice[i])
  342. // this.advices.push(item)
  343. // }
  344. // this.loading = false
  345. // this.doctor_advices = response.data.data.advices == null ? [] : response.data.data.advices
  346. // for (let index = 0; index < this.doctor_advices.length; index++) {
  347. // this.doctor_advices[index]['isShow'] = 2
  348. // }
  349. // if (this.doctor_advices.length > 0) {
  350. // var group = this.newAdviceGroupObject()
  351. // var initGroupBlock = function(group, advice) {
  352. // group.group_no = advice.groupno
  353. // }
  354. // for (let index = this.doctor_advices.length - 1; index >= 0; index--) {
  355. // var new_advice_index = 0
  356. // if ('children' in this.doctor_advices[index] && this.doctor_advices[index].children.length > 0) {
  357. // new_advice_index = index + this.doctor_advices[index].children.length + 1
  358. // var doctor_advice = {
  359. // delivery_way: this.doctor_advices[index].delivery_way,
  360. // execution_frequency: this.doctor_advices[index].execution_frequency,
  361. // groupno: this.doctor_advices[index].groupno,
  362. // id: this.doctor_advices[index].id,
  363. // parent_id: this.doctor_advices[index].parent_id,
  364. // children: this.doctor_advices[index].children,
  365. // remark: this.doctor_advices[index].remark,
  366. // execution_staff: this.doctor_advices[index].execution_staff,
  367. // checker: this.doctor_advices[index].checker,
  368. // advice_doctor: this.doctor_advices[index].advice_doctor,
  369. // }
  370. // doctor_advice['isShow'] = 1
  371. // this.doctor_advices.splice(new_advice_index, 0, doctor_advice)
  372. // // this.doctor_advices.push(doctor_advice)
  373. // }
  374. // }
  375. // for (let index = 0; index < this.doctor_advices.length; index++) {
  376. // const advice = this.doctor_advices[index]
  377. // if (advice.groupno == 0) {
  378. // // 老版本的医嘱没有分组的概念,所以这一个 if 是解决这个问题的,将每个无分组的医嘱各自归为一组
  379. // if (advice.parent_id > 0) {
  380. // if (this.advice_groups.length > 0) {
  381. // var parent_group = this.advice_groups[
  382. // this.advice_groups.length - 1
  383. // ]
  384. // if (parent_group.advices.length > 0) {
  385. // if (parent_group.advices[0].id == advice.parent_id) {
  386. // parent_group.advices.push(advice)
  387. // }
  388. // }
  389. // }
  390. // continue
  391. // } else {
  392. // if (group.group_no > 0) {
  393. // this.advice_groups.push(group)
  394. // group = this.newAdviceGroupObject()
  395. // }
  396. // initGroupBlock(group, advice)
  397. // group.advices.push(advice)
  398. // this.advice_groups.push(group)
  399. // group = this.newAdviceGroupObject()
  400. // continue
  401. // }
  402. // }
  403. // if (group.group_no > 0 && group.group_no != advice.groupno) {
  404. // this.advice_groups.push(group)
  405. // group = this.newAdviceGroupObject()
  406. // }
  407. // if (group.group_no == 0) {
  408. // initGroupBlock(group, advice)
  409. // }
  410. // if (group.group_no == advice.groupno) {
  411. // group.advices.push(advice)
  412. // }
  413. // }
  414. // if (group.group_no > 0) {
  415. // // 上述的算法会导致最后一组没有加到advice_groups,这里要手动加上
  416. // this.advice_groups.push(group)
  417. // }
  418. // }
  419. // console.log(this.advice_groups)
  420. } else {
  421. this.loading = false
  422. this.$message.error('请求数据失败')
  423. return false
  424. }
  425. })
  426. },
  427. bloodAccessParOperaName(id) {
  428. if (id in this.bloodAccessParOpera) {
  429. return this.bloodAccessParOpera[id].name
  430. }
  431. return ''
  432. },
  433. dialysateFormulationName(id) {
  434. if (id in this.dialysateFormulationOptions) {
  435. return this.dialysateFormulationOptions[id].name
  436. }
  437. return ''
  438. }, getAge: function(val) {
  439. if (this.org_template_info.template_id == 2) {
  440. if (val.age == 0) {
  441. return jsGetAge(val.birth, '-')
  442. } else {
  443. return val.age
  444. }
  445. } else {
  446. return jsGetAge(val.birth, '-')
  447. }
  448. }, newAdviceGroupObject: function() {
  449. return Object.assign(
  450. {},
  451. {
  452. group_no: 0,
  453. // advice_doctor: 0,
  454. // start_time: 0,
  455. advices: []
  456. // exec_staff: 0,
  457. // exec_time: 0,
  458. // checker: 0,
  459. }
  460. )
  461. }
  462. },
  463. watch: {
  464. 'patientInfo.gender': function() {
  465. if (this.patientInfo.gender == 1) {
  466. this.patientInfo_gender_1 = true
  467. this.patientInfo_gender_2 = false
  468. } else if (this.patientInfo.gender == 2) {
  469. this.patientInfo_gender_2 = true
  470. this.patientInfo_gender_1 = false
  471. } else {
  472. this.patientInfo_gender_2 = false
  473. this.patientInfo_gender_1 = false
  474. }
  475. },
  476. 'patientInfo.source': function() {
  477. if (this.patientInfo.source == 1) {
  478. this.patientInfo_source_1 = true
  479. this.patientInfo_source_2 = false
  480. } else if (this.patientInfo.source == 2) {
  481. this.patientInfo_source_2 = true
  482. this.patientInfo_source_1 = false
  483. } else {
  484. this.patientInfo_source_2 = false
  485. this.patientInfo_source_1 = false
  486. }
  487. }
  488. },
  489. created() {
  490. var xtuser = this.$store.getters.xt_user
  491. this.orgname = xtuser.org.org_name
  492. // this.orgname = "遂溪方济医院";
  493. this.modeOptions = this.$store.getters.treatment_mode
  494. this.replacementWays = this.$store.getters.replacement_ways
  495. this.perfusionApparatus = this.$store.getters.perfusion_apparatus
  496. this.anticoagulantsConfit = this.$store.getters.anticoagulants_confit
  497. // this.bloodAccessParOpera = getDataConfig('hemodialysis', 'vascular_access_desc')
  498. var bloodAccessParOpera = getDataConfig('hemodialysis', 'vascular_access_desc')
  499. for (var key in bloodAccessParOpera) {
  500. this.bloodAccessParOpera[bloodAccessParOpera[key].id] = bloodAccessParOpera[key]
  501. }
  502. var dialysateFormulationOptions = getDataConfig('hemodialysis', 'dialysate_formulation')
  503. for (var key in dialysateFormulationOptions) {
  504. this.dialysateFormulationOptions[dialysateFormulationOptions[key].id] = dialysateFormulationOptions[key]
  505. }
  506. const xtdate = this.$route.query && this.$route.query.xtdate
  507. const xtno = this.$route.query && this.$route.query.xtno
  508. if (typeof (xtdate) === 'string' && xtdate.length > 0 && typeof (xtno) === 'string' && xtno.length > 0) {
  509. this.queryParams.xtdate = xtdate
  510. this.queryParams.xtno = xtno
  511. this.getDialysisRecord()
  512. } else {
  513. this.$message.error('参数不齐')
  514. return false
  515. }
  516. }
  517. }
  518. </script>
  519. <style>
  520. .dialysis-print-order {
  521. width: 960px;
  522. margin: 0 auto
  523. }
  524. .dialysis-print-order .order-yy-name {
  525. margin: auto;
  526. text-align: center;
  527. font-size: 20px;
  528. letter-spacing: 5px;
  529. }
  530. .dialysis-print-order .order-title {
  531. margin: auto;
  532. font-weight: 600;
  533. text-align: center;
  534. font-size: 22px;
  535. padding: 10px 20px 20px 20px;
  536. }
  537. .dialysis-print-order .table-box {
  538. width: 100%;
  539. line-height: 23px;
  540. font-size: 14px;
  541. }
  542. .dialysis-print-order .print-table {
  543. width: 100%;
  544. text-align: center;
  545. border-collapse: collapse;
  546. line-height: 40px;
  547. font-size: 14px;
  548. }
  549. .dialysis-print-order .print-table-no {
  550. width: 100%;
  551. text-align: center;
  552. border-collapse: collapse;
  553. font-size: 14px;
  554. }
  555. .dialysis-print-order .under-line {
  556. border-bottom: 1px solid #999;
  557. width: 95%;
  558. text-align: center;
  559. margin-left: 2px;
  560. }
  561. .dialysis-print-order .title-box {
  562. text-align: center;
  563. font-size: 16px;
  564. }
  565. .dialysis-print-order .radio-lebel-box {
  566. font-weight: 400;
  567. cursor: pointer;
  568. }
  569. .dialysis-print-order .radio-no {
  570. opacity: 0;
  571. outline: none;
  572. position: absolute;
  573. margin: 0;
  574. width: 0;
  575. height: 0;
  576. z-index: -1;
  577. }
  578. .dialysis-print-order .radio-inner {
  579. white-space: nowrap;
  580. cursor: pointer;
  581. outline: none;
  582. display: inline-block;
  583. line-height: 1;
  584. position: relative;
  585. vertical-align: middle;
  586. }
  587. .dialysis-print-order .radio-fang {
  588. display: inline-block;
  589. position: relative;
  590. border: 1px solid #000;
  591. box-sizing: border-box;
  592. width: 14px;
  593. height: 14px;
  594. background-color: #fff;
  595. z-index: 1;
  596. transition: border-color .25s cubic-bezier(.71, -.46, .29, 1.46), background-color .25s cubic-bezier(.71, -.46, .29, 1.46);
  597. }
  598. .dialysis-print-order .is-checked-radio::after {
  599. content: "√";
  600. font-size: 15px;
  601. }
  602. .dialysis-print-order .print-table-no tr td {
  603. padding: 8px 5px;
  604. line-height: 25px;
  605. }
  606. .dialysis-print-order .print-table tr td {
  607. padding: 1px 1px;
  608. /*line-height: 25px;*/
  609. }
  610. .es-img {
  611. height: 25px;
  612. }
  613. .advice-name {
  614. text-align: left;
  615. }
  616. .advice-children {
  617. display: flex;
  618. }
  619. .title-box-pro{
  620. border: 0 #fff;
  621. line-height: 25px;
  622. height: 25px;
  623. text-align: left;
  624. padding-left: 10px !important;
  625. }
  626. .title-box-pro-tr {
  627. border: 0 #fff;
  628. }
  629. .text-align-left{
  630. text-align: left !important;
  631. padding-left:10px !important;
  632. font-size: 14px !important;
  633. line-height: 25px;
  634. }
  635. .print-table-tr-new td{
  636. line-height: 20px !important;
  637. }
  638. .border-top-solid{
  639. border:solid 1px #000;
  640. }
  641. .print-template-two tr {
  642. line-height: 30px;
  643. }
  644. </style>