فهرست منبع

优化病案首页打印问题

lighter 3 سال پیش
والد
کامیت
1e3a3a0165

+ 314 - 0
src/components/inpatient/frontsheet-printpage/HeadPage.vue

@@ -0,0 +1,314 @@
+<template>
+  <div id="page0">
+    <h3 style="width: 100%; font-size: 17px; text-align: center">住 院 病 案 首 页</h3>
+    <div style="margin-right: 8px; width: 100%; height: 32px; line-height: 32px; font-size: 15px; text-align: center">
+      医疗机构:
+      <span style="font-weight: 700">湖南泰和医院</span>
+      (组织机构代码:
+      <span style="font-weight: 700">43010150145</span>
+      )
+    </div>
+    <div style="margin-right: 8px; height: 25px; line-height: 25px; display: flex">
+      <div>
+        医疗付费方式:
+        <span style="display: inline-block; width: 180px">{{ filterNameInDic(patient.payMethod, 'getPayMethod') }}</span>
+      </div>
+      <div style="margin-right: 8px; width: 120px; margin-left: 12px">健康卡号: {{ patient.healthCardNo }}</div>
+      <div style="margin-right: 8px; width: 100px">第&nbsp;{{ patient.admissTimes }}&nbsp;次住院</div>
+      <div style="margin-right: 8px; width: 130px">病案号: {{ patient.bah }}</div>
+    </div>
+  </div>
+  <div id="page1" style="border: 1px solid black; padding: 5px">
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      姓名:
+      <div style="padding: 0 4px; margin-right: 8px; width: 70px; border-bottom: 1px solid black">{{ patient.name }}</div>
+      性别:
+      <div style="padding: 0 4px; margin-right: 8px; border-bottom: 1px solid black">{{ filterNameInDic(patient.sex, 'getSexCode') }}</div>
+      出生日期:
+      <div style="padding: 0 4px; margin-right: 8px; width: 130px; border-bottom: 1px solid black">{{ patient.birthDate }}</div>
+      年龄:
+      <div style="padding: 0 4px; margin-right: 8px; width: 30px; border-bottom: 1px solid black">{{ patient.age }}</div>
+      国籍:
+      <div style="padding: 0 4px; margin-right: 8px; border-bottom: 1px solid black">{{ filterNameInDic(patient.country, 'getCountry') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (年龄不足 1 周岁的)年龄:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.ageDays }}</div>
+      天<span style="margin-left: 8px">新生儿出生体重:</span>
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.newBornWeight }}</div>
+      克<span style="margin-left: 8px">新生儿入院体重:</span>
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.newBornAdmissWeight }}</div>
+      克
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      出生地:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 230px">{{ patient.birthPlaceName }}</div>
+      籍贯:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 180px">{{ patient.nativePlaceName }}</div>
+      民族:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.nation, 'getNation') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      身份证号:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 160px">{{ patient.socialNo }}</div>
+      职业:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.occupation, 'getOccupation') }}</div>
+      婚姻:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.marriage, 'getMarriageCode') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      现住址:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.livePlace }}</div>
+      电话:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ patient.phone }}</div>
+      邮编:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.addrZipCode }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      户口地址:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.hkPlaceName }}</div>
+      邮编:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.hkZipCode }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      工作单位及地址:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; margin-right: 0; width: 290px">{{ patient.unitName }}/{{ patient.unitPlace }}</div>
+      单位电话:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 80px">{{ patient.unitPhone }}</div>
+      邮编:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.unitZipCode }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      联系人姓名:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 90px">{{ patient.contactName }}</div>
+      联系人关系:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.contactRelation, 'getRelations') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      联系人地址:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.contactAddrName }}</div>
+      联系人电话:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 90px">{{ patient.contactPhone }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      入院途径:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.zyAdmissWay, 'getAdmissWay') }}</div>
+      是否手术:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.hasSurgery, 'getOperations') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      入院时间:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 135px">{{ patient.admissDate }}</div>
+      入院科别:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 120px">{{ patient.admissDept }}</div>
+      病房:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 80px">{{ patient.admissWard }}</div>
+      转科科别:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 120px">{{ patient.transDept }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      出院时间:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 135px">{{ patient.dismissDate }}</div>
+      出院科别:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 120px">{{ patient.dismissDept }}</div>
+      病房:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 80px">{{ patient.dismissWard }}</div>
+      住院天数:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.admissDays }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      门(急)诊诊断:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 350px">{{ patient.clinicDiagStr }}</div>
+      疾病编码:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 110px">{{ patient.clinicDiagCode }}</div>
+    </div>
+    <div style="margin-right: 8px; height: max-content; display: flex; width: 720px">
+      <div style="margin-right: 8px; width: 360px">
+        <table style="width: 360px; border: 1px solid black; border-collapse: collapse">
+          <tr>
+            <th>主要诊断</th>
+            <th>疾病编码</th>
+            <th>入院病情</th>
+            <th>出院病情</th>
+          </tr>
+          <tr>
+            <td style="width: 170px">
+              {{ patient.disdiagList[0].name }}
+            </td>
+            <td style="width: 100px; text-align: center">
+              {{ patient.disdiagList[0].code }}
+            </td>
+            <td style="width: 30px">
+              {{ patient.disdiagList[0].admissStatus }}
+            </td>
+            <td style="width: 30px">
+              {{ patient.disdiagList[0].dismissStatus }}
+            </td>
+          </tr>
+          <tr>
+            <th colspan="4">其他诊断</th>
+          </tr>
+          <tr v-for="n in 11" :key="n">
+            <td style="text-align: left; padding-left: 5px">
+              {{ patient.disdiagList[n].name }}
+            </td>
+            <td style="width: 90px">
+              {{ patient.disdiagList[n].code }}
+            </td>
+            <td style="width: 30px">
+              {{ patient.disdiagList[n].admissStatus }}
+            </td>
+            <td style="width: 30px">
+              {{ patient.disdiagList[n].dismissStatus }}
+            </td>
+          </tr>
+        </table>
+      </div>
+      <div style="margin-right: 8px; width: 360px">
+        <table style="width: 360px; border: 1px solid black; border-collapse: collapse">
+          <tr v-for="n in 14" :key="n">
+            <td>
+              <div style="margin-right: 8px; width: 170px">{{ patient.disdiagList[n + 11].name }}</div>
+            </td>
+            <td>
+              <div style="margin-right: 8px; width: 100px">{{ patient.disdiagList[n + 11].code }}</div>
+            </td>
+            <td>
+              <div style="margin-right: 8px; width: 30px">{{ patient.disdiagList[n + 11].admissStatus }}</div>
+            </td>
+            <td>
+              <div style="margin-right: 8px; width: 30px">{{ patient.disdiagList[n + 11].dismissStatus }}</div>
+            </td>
+          </tr>
+        </table>
+      </div>
+    </div>
+    <div style="margin: 4px 0 2px 0; padding: 0 4px; border-bottom: 1px solid black; font-size: 12px; display: flex">
+      备注:
+      <div>入院病情:</div>
+      1.有,2.临床未确定,3.情况不明,4.无
+      <div style="margin-right: 8px; margin-left: 10px">出院病情:</div>
+      1.治愈,2.好转,3.未愈,4.死亡,9.其他
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      损伤、中毒的外部原因:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.hurtReasonName }}</div>
+      疾病编码:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 110px">{{ patient.hurtReasonCode }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      病理诊断:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.pathologicDiagStr }}</div>
+      病理编码:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 90px">{{ patient.pathologicDiagCode }}</div>
+      病理号:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.blh }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      药物过敏:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.allergy, 'getHaveOrNot') }}</div>
+      ,过敏药物:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 110px">{{ patient.allergicMedicine }}</div>
+      死亡患者尸检:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.autopsy, 'getAutopsies') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      输血前四项: HbsAg
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.hbsAg, 'getHbsag') }}</div>
+      HCV-Ab
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; margin-left: 8px">{{ filterNameInDic(patient.hcvAb, 'getHbsag') }}</div>
+      HIV-Ab
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; margin-left: 8px">{{ filterNameInDic(patient.hivAb, 'getHbsag') }}</div>
+      TP-Ab
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; margin-left: 8px">{{ filterNameInDic(patient.tpAb, 'getHbsag') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      血型:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.bloodType, 'getBloodType') }}</div>
+      Rh:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.rh, 'getHbsag') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      科室主任:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.deptLeaderName }}</div>
+      主任(副主任)医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.leaderDoctorName }}</div>
+      主治医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.mainDoctorName }}</div>
+      住院医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.admissDoctorName }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      责任护士:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.dutyNurseName }}</div>
+      进修医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.studyDoctorName }}</div>
+      实习医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.internshipDoctorName }}</div>
+      编码员:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.coderName }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      病案质量:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.qualityControlLevel, 'getQualityLevel') }}</div>
+      质控医师:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.qualityControlDoctorName }}</div>
+      质控护士:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.qualityControlNurseName }}</div>
+      质控日期:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 170px">{{ patient.qualityControlDate }}</div>
+    </div>
+  </div>
+</template>
+
+<script>
+import { filterDismissStatus } from '@/views/hospitalization/case-front-sheet/common'
+export default {
+  props: {
+    patient: {
+      type: Object,
+      required: true,
+    },
+    dics: {
+      type: Object,
+      required: true,
+    },
+  },
+  setup(props) {
+    const filterNameInDic = (val, dic) => {
+      if (!val) {
+        return ''
+      }
+      const dicValue = props.dics[dic]
+      if (!dicValue) {
+        console.log(dic, 'no value')
+      }
+      for (let i = 0; i < dicValue.length; i++) {
+        const dicItem = dicValue[i]
+        if (dicItem.code == val) {
+          return dicItem.name
+        }
+      }
+      return '-'
+    }
+
+    return {
+      filterNameInDic,
+    }
+  },
+}
+</script>
+
+<style scoped>
+table,
+th,
+td {
+  border: 1px solid black;
+  border-collapse: collapse;
+}
+td,
+th {
+  height: 24px;
+  padding-left: 4px;
+}
+</style>

+ 308 - 0
src/components/inpatient/frontsheet-printpage/TailPage.vue

@@ -0,0 +1,308 @@
+<template>
+  <div id="page2" style="border: 1px solid black; padding: 5px">
+    <table id="surgeryTable" style="border: 1px solid black; border-collapse: collapse; width: 100%">
+      <tr>
+        <th rowspan="2">手术及操作名称</th>
+        <th rowspan="2" style="width: 70px">手术及操作日期</th>
+        <th rowspan="2" style="width: 10px">手术级别</th>
+        <th rowspan="2">手术及操作编码</th>
+        <th colspan="3">手术及操作医师</th>
+        <th rowspan="2" style="width: 30px">切口愈合等级</th>
+        <th rowspan="2">麻醉方式</th>
+        <th rowspan="2">麻醉医师</th>
+      </tr>
+      <tr>
+        <th>术者</th>
+        <th>I助</th>
+        <th>II助</th>
+      </tr>
+      <tr v-for="n in 5" :key="n">
+        <td style="padding: 3px">
+          {{ patient.surgeryList[n - 1].name }}
+        </td>
+        <td style="padding: 3px; width: 70px">
+          {{ patient.surgeryList[n - 1].date }}
+        </td>
+        <td style="text-align-last: center; width: 30px">
+          {{ filterNameInDic(patient.surgeryList[n - 1].level, 'getOperateScale') }}
+        </td>
+        <td style="width: 70px">
+          {{ patient.surgeryList[n - 1].code }}
+        </td>
+        <td style="width: 40px">
+          {{ patient.surgeryList[n - 1].operatorName }}
+        </td>
+        <td style="width: 50px">
+          {{ patient.surgeryList[n - 1].assistantOneName }}
+        </td>
+        <td style="width: 50px">
+          {{ patient.surgeryList[n - 1].assistantTwoName }}
+        </td>
+        <td style="text-align-last: center">
+          {{ filterNameInDic(patient.surgeryList[n - 1].cutHeal, 'getCutHealGrade') }}
+        </td>
+        <td>
+          {{ filterNameInDic(patient.surgeryList[n - 1].anaesthesia, 'getAnaesthesia') }}
+        </td>
+        <td style="width: 40px">
+          {{ patient.surgeryList[n - 1].anaesthesiaorName }}
+        </td>
+      </tr>
+    </table>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      离院方式:
+      <div style="padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.zyDismissWay, 'getZyDismissWay') }}</div>
+      ,拟接收医疗机构名称:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 210px">{{ patient.dismissDestination }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      是否有出院31天内再住院计划:
+      <div style="padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.admissAgainInOneMonth, 'getHaveOrNot') }}</div>
+      ,目的:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 300px">{{ patient.admissAgainPurpose }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      颅脑损伤患者昏迷时间: 入院前
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaDaysBeforeAdmiss }}</div>
+      天
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaHoursBeforeAdmiss }}</div>
+      小时
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaMinutesBeforeAdmiss }}</div>
+      分钟 <span style="margin-left: 8px">入院后</span>
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaDaysAfterAdmiss }}</div>
+      天
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaHoursAfterAdmiss }}</div>
+      小时
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.comaMinutesAfterAdmiss }}</div>
+      分钟
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      住院费用(元): 总费用
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 110px">{{ patient.totalCost }}</div>
+      (自付金额:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 110px">{{ patient.selfPay }}</div>
+      )
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      1.综合医疗服务类: (1)一般医疗服务费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.generalMedicalServiceFee }}</div>
+      (2)一般治疗操作费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.generalTreatmentOperatingFee }}</div>
+      (3)护理费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.careFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (4)其他费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.elseFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      2.诊断类: (5)病理诊断费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.pathologicDiagFee }}</div>
+      (6)实验室诊断费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.experimentDiagFee }}</div>
+      (7)影像学诊断费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.ctDiagFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (8)临床诊断项目费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.clinicalDiagFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      3.治疗类: (9)非手术治疗项目费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.notSurgicalFee }}</div>
+      (临床物理治疗费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.clinicalPhysicalFee }}</div>
+      )
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (10)手术治疗费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.surgicalFee }}</div>
+      (麻醉费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.anesthetizeFee }}</div>
+      &nbsp;&nbsp;手术费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.surgeryFee }}</div>
+      )
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      4.康复类: (11)康复费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.recoverFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      5.中医类: (12)中医治疗费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.tcmTreatmentFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      6.西药类: (13)西药费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.westMedicineFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      7.中药类: (14)中成药费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.chinesePatentMedicineFee }}</div>
+      (15)中草药费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.chineseHerbalMedicineFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      8.血液和血液制品类: (16)血费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.bloodFee }}</div>
+      (17)白蛋白类制品费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.albuminProductsFee }}</div>
+      (18)球蛋白类制品费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.globulinProductsFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (19)凝血因子类制品费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.coagulationFactorProductsFee }}</div>
+      (20)细胞因子类制品费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.cytokineProductsFee }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      9.耗材类: (21)检查用一次性医用材料费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.costOfDisposableMedicalMaterialsForExamination }}</div>
+      (22)治疗用一次性医用材料费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.costOfDisposableMedicalMaterialsForTreatment }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      (23)手术用一次性医用材料费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.costOfDisposableMedicalMaterialsForOperation }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      10.其他类: (24)其他费:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; width: 70px">{{ patient.otherFees }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      主要诊断治愈好转情况:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black; padding: 0 5px">
+        {{ dismissStatusText(patient.disdiagList[0].dismissStatus) }}
+      </div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      诊断符合情况: 门诊与出院
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.diagConform1, 'getDiagConform') }}</div>
+      入院与出院
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.diagConform2, 'getDiagConform') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      术前与术后
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.diagConform3, 'getDiagConform') }}</div>
+      临床与病理
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.diagConform4, 'getDiagConform') }}</div>
+      放射与病理
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.diagConform5, 'getDiagConform') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      抢救情况: 抢救
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 90px">{{ patient.rescueTimes }}</div>
+      次, 成功
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 90px">{{ patient.rescueSuccessTimes }}</div>
+      次
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      病例分型:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.caseClassification, 'getCaseClassification') }}</div>
+      实施重症监护:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.hasIcu, 'getHaveOrNot') }}</div>
+      ,监护总时间:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.icuDays }}</div>
+      天
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 30px">{{ patient.icuHours }}</div>
+      小时
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      单病种管理:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.monopathyManagement, 'getYesOrNo') }}</div>
+      实施临床路径管理:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.clinicalPathwayManagement, 'getClinicalPathwayManagement') }}</div>
+      实施DRGs管理:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.drgsManagement, 'getDrgsManagement') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      抗生素使用:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.useAntibiotic, 'getYesOrNo') }}</div>
+      细菌培养标本送检:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.bacilliculture, 'getYesOrNo') }}</div>
+      法定传染病:
+      <div style="margin-right: 8px; padding: 0 4px; border-bottom: 1px solid black">{{ filterNameInDic(patient.statutoryEpidemic, 'getStatutoryEpidemic') }}</div>
+    </div>
+    <div style="display: flex; margin: 10px 8px 10px 0">
+      肿瘤分期: T
+      <div style="width: 30px; padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.tumorLevelT, 'getTumorLevelT') }}</div>
+      N
+      <div style="width: 30px; padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.tumorLevelN, 'getTumorLevelN') }}</div>
+      M
+      <div style="width: 30px; padding: 0 4px; border-bottom: 1px solid black; margin-right: 12px">{{ filterNameInDic(patient.tumorLevelM, 'getTumorLevelM') }}</div>
+      分期
+      <div style="width: 30px; padding: 0 4px; border-bottom: 1px solid black; margin-right: 18px">{{ filterNameInDic(patient.tumorLevel, 'getTumorLevel') }}</div>
+      新生儿Apgar评分:
+      <div style="padding: 0 4px; border-bottom: 1px solid black; width: 50px">{{ patient.xxeApgar }}</div>
+      分
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  props: {
+    patient: {
+      type: Object,
+      required: true,
+    },
+    dics: {
+      type: Object,
+      required: true,
+    },
+  },
+  setup(props) {
+    const dismissStatusText = (val) => {
+      switch (val) {
+        case '1':
+          return '治愈'
+        case '2':
+          return '好转'
+        case '3':
+          return '未愈'
+        case '4':
+          return '死亡'
+        case '9':
+          return '其他'
+        default:
+          return ''
+      }
+    }
+
+    const filterNameInDic = (val, dic) => {
+      if (!val) {
+        return ''
+      }
+      const dicValue = props.dics[dic]
+      if (!dicValue) {
+        console.log(dic, 'no value')
+      }
+      for (let i = 0; i < dicValue.length; i++) {
+        const dicItem = dicValue[i]
+        if (dicItem.code == val) {
+          return dicItem.name
+        }
+      }
+      return '-'
+    }
+    return {
+      dismissStatusText,
+      filterNameInDic,
+    }
+  },
+}
+</script>
+
+<style scoped>
+table,
+th,
+td {
+  border: 1px solid black;
+  border-collapse: collapse;
+}
+td,
+th {
+  height: 24px;
+  padding-left: 4px;
+}
+</style>

+ 3 - 1
src/utils/request.js

@@ -19,7 +19,9 @@ service.interceptors.request.use(
     if (typeof config.jdtTitle !== 'undefined') {
       store.commit('app/setJdt', { title: config.jdtTitle, isOpen: true, closeButton: false })
     } else {
-      startLoading()
+      if (config.url !== '/caseFrontSheet/printVerify') {
+        startLoading()
+      }
     }
     if (store.getters['user/token']) {
       config.headers['token'] = store.state.user.token

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 200 - 438
src/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue


برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است