HuanZheXinXi.vue 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. <template>
  2. <div>
  3. <div @click="collapseChange"
  4. style="padding-left: 30px;cursor: pointer;border-bottom: 1px solid #000">
  5. {{ titleName() }}
  6. 当前登录账号:{{ userInfo.codeRs }} 姓名:{{ userInfo.name }}
  7. </div>
  8. <div v-show="collapse">
  9. <div class="box">
  10. <div>
  11. <template v-if="isDev || needRule(1)">
  12. <el-input style="width: 90px" v-model="props.huanZheXinXi.inpatientNo"
  13. @keydown.enter="queryPatientInfoClick"/>
  14. {{ props.huanZheXinXi.admissTimes }}
  15. </template>
  16. <template v-else>
  17. 住院号:{{ props.huanZheXinXi.inpatientNo }}_{{ props.huanZheXinXi.admissTimes }}
  18. </template>
  19. </div>
  20. <div>
  21. 床号:{{ props.huanZheXinXi.bedNo }}
  22. </div>
  23. <div>
  24. 姓名:{{ props.huanZheXinXi.name }}
  25. </div>
  26. <div>
  27. 身份证号:{{ props.huanZheXinXi.socialNo }}
  28. </div>
  29. <div>
  30. 出生日期:{{ props.huanZheXinXi.birthDate }} {{ companyFunc(props.huanZheXinXi.age, '岁') }}
  31. </div>
  32. <div>
  33. 性别:{{ props.huanZheXinXi.sexName }}
  34. </div>
  35. <div>
  36. 联系电话:{{ props.huanZheXinXi.homeTel }}
  37. </div>
  38. <div>
  39. 入院日期:{{ props.huanZheXinXi.admissDate }}
  40. {{ companyFunc(props.huanZheXinXi.actIptDays, '天') }}
  41. </div>
  42. </div>
  43. <div class="box">
  44. <div>
  45. 管床医生:{{ props.huanZheXinXi.referPhysicianName }}
  46. </div>
  47. <div>
  48. 病区:{{ props.huanZheXinXi.admissWardName }}
  49. </div>
  50. <div>
  51. 入院医生:{{ props.huanZheXinXi.admissPhysicianName }}
  52. </div>
  53. <div>
  54. 入院诊断:{{ props.huanZheXinXi.admissDiagStr }}
  55. </div>
  56. <div>
  57. 小科室:{{ props.huanZheXinXi.zkWardName }}
  58. </div>
  59. <div>
  60. 身份:{{ props.huanZheXinXi.medTypeName }}
  61. </div>
  62. </div>
  63. <div class="box">
  64. <div>
  65. 总费用:{{ props.huanZheXinXi.totalCharge }}
  66. <span style="color: red">
  67. {{ props.huanZheXinXi.balance }}
  68. </span>
  69. </div>
  70. <div>
  71. 药品占比:{{ props.huanZheXinXi.yp }}
  72. </div>
  73. <div>
  74. 检验检查:{{ props.huanZheXinXi.jyjc }}
  75. </div>
  76. <div>
  77. 医保:{{ props.huanZheXinXi.chargeYb }} {{ props.huanZheXinXi.yb }}
  78. </div>
  79. </div>
  80. <div class="box">
  81. <div>
  82. 付费权重:{{ props.huanZheXinXi.groupInfoWeight }}
  83. </div>
  84. <div>
  85. 分组结果:{{ props.huanZheXinXi.groupInfoName }}
  86. </div>
  87. <div>
  88. 倍率(DRG):{{ props.huanZheXinXi.groupInfoBl }}
  89. </div>
  90. <div>
  91. 盈亏额:{{ props.huanZheXinXi.groupInfoProfit }}
  92. </div>
  93. <div>
  94. 标杆费用:{{ props.huanZheXinXi.groupInfoFeeStand }}
  95. </div>
  96. </div>
  97. </div>
  98. </div>
  99. </template>
  100. <script setup name="HuanZheXinXi">
  101. import {isDev, needRule} from "@/utils/public";
  102. import {clickOnThePatient} from "@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng";
  103. import {stringNotBlank} from "@/utils/blank-utils";
  104. import store from "@/store";
  105. const props = defineProps({
  106. huanZheXinXi: {
  107. type: Object
  108. },
  109. })
  110. const userInfo = store.state.user.info
  111. const emit = defineEmits(['isShow'])
  112. const collapse = ref(!isDev)
  113. const queryPatientInfoClick = () => {
  114. clickOnThePatient(props.huanZheXinXi.inpatientNo)
  115. }
  116. const companyFunc = (val, company) => {
  117. if (stringNotBlank(val)) {
  118. return val + company
  119. } else {
  120. return ''
  121. }
  122. }
  123. const collapseChange = async () => {
  124. collapse.value = !collapse.value
  125. emit('isShow', collapse.value, collapse.value ? 130 : 16)
  126. }
  127. const titleName = () => {
  128. if (props.huanZheXinXi.inpatientNo) {
  129. return `患者 【${props.huanZheXinXi.name}】`;
  130. }
  131. return `请选择患者`;
  132. }
  133. onMounted(() => {
  134. emit('isShow', collapse.value, collapse.value ? 130 : 16)
  135. })
  136. </script>
  137. <style lang="scss" scoped>
  138. .box {
  139. display: flex;
  140. line-height: 26px;
  141. border-bottom: 1px solid #000;
  142. div {
  143. white-space: nowrap;
  144. padding: 0 5px;
  145. border-left: 1px solid;
  146. border-right: 1px solid;
  147. }
  148. }
  149. </style>