瀏覽代碼

初步完成住院医生

xiaochan 3 年之前
父節點
當前提交
9010fd5658

+ 20 - 0
src/api/zhu-yuan-yi-sheng/yi-zhu-lu-ru.js

@@ -0,0 +1,20 @@
+import request from '@/utils/request'
+
+
+const url = '/yiZhuLuRu'
+
+export function huoQuHuanZheLieBiao(wardCode) {
+    return request({
+        url: url + '/huoQuHuanZheLieBiao',
+        method: 'get',
+        params: {wardCode},
+    })
+}
+
+export function huoQuHuanZheXinXi(inpatientNo) {
+    return request({
+        url: url + '/huoQuHuanZheXinXi',
+        method: 'get',
+        params: {inpatientNo},
+    })
+}

+ 98 - 0
src/components/zhu-yuan-yi-sheng/HuanZheLieBiao.vue

@@ -0,0 +1,98 @@
+<template>
+  <el-container>
+    <el-aside style="width: 190px;">
+      <el-checkbox style="margin-left: 10px" v-model="woDeBingRen">我的病人</el-checkbox>
+      <el-table
+          :data="cptHuanZheLieBiaoData.slice((huanZheLieBiaoCurrentPage - 1) * 20,huanZheLieBiaoCurrentPage * 20 )"
+          :height="tableHeight / 1.15" stripe highlight-current-row @row-click="huanZheXinXi">
+        <el-table-column label="床位" prop="bedNo" width="40"></el-table-column>
+        <el-table-column label="姓名" prop="name">
+          <template #default="scope">
+            <div :title="scope.row.zkWardName">
+              <img class="sex-icon"
+                   :src="scope.row.sex === 1 ? maleIcon : femaleIcon"/>
+              {{ scope.row.name }}
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="住院号" prop="inpatientNo"></el-table-column>
+        <el-table-column label="小科室" prop="zkWardName"></el-table-column>
+      </el-table>
+      <el-pagination
+          :page-sizes="[10, 20, 30, 40]"
+          :page-size="20"
+          small
+          layout="prev,pager,next,total"
+          :total="huanZheLieBiaoData.length"
+          @current-change="huanZheLeiBiaoCurrentChange"
+      >
+      </el-pagination>
+    </el-aside>
+  </el-container>
+</template>
+
+<script>
+
+import {computed, ref} from "vue";
+import store from "../../store";
+import {huoQuHuanZheLieBiao, huoQuHuanZheXinXi} from "../../api/zhu-yuan-yi-sheng/yi-zhu-lu-ru";
+import maleIcon from '../../assets/male-icon.png'
+import femaleIcon from '../../assets/female-icon.png'
+
+export default {
+  name: "HuanZheLieBiao",
+  setup(props, cxt) {
+    const tableHeight = computed(() => {
+      return store.state.app.windowSize.h
+    })
+    const huanZheLieBiaoData = ref([])
+    const huanZheLieBiaoCurrentPage = ref(1)
+    const woDeBingRen = ref(false)
+
+    const userCode = store.state.user.info.code
+
+    const huoQuHuanZheLieBiaoClick = (val) => {
+      huoQuHuanZheLieBiao(val).then((res) => {
+        huanZheLieBiaoData.value = res
+      }).catch((e) => {
+        huanZheLieBiaoData.value = []
+      })
+    }
+
+    const huanZheLeiBiaoCurrentChange = (val) => {
+      huanZheLieBiaoCurrentPage.value = val
+    }
+
+    const huanZheXinXi = (val) => {
+      huoQuHuanZheXinXi(val.inpatientNo).then((res) => {
+        cxt.emit('clickHuanZheXinXi', {res})
+      })
+
+    }
+
+    const cptHuanZheLieBiaoData = computed(() => {
+      return huanZheLieBiaoData.value.filter(item => {
+        return item.consultPhysician.indexOf(woDeBingRen.value ? userCode : '') > -1 || item.referPhysician.indexOf(woDeBingRen.value ? userCode : '') > -1
+      })
+    })
+
+
+    return {
+      tableHeight,
+      huanZheLieBiaoData,
+      huoQuHuanZheLieBiaoClick,
+      huanZheLieBiaoCurrentPage,
+      huanZheLeiBiaoCurrentChange,
+      maleIcon,
+      femaleIcon,
+      woDeBingRen,
+      cptHuanZheLieBiaoData,
+      huanZheXinXi
+    }
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 80 - 0
src/components/zhu-yuan-yi-sheng/HuanZheXinXi.vue

@@ -0,0 +1,80 @@
+<template>
+  <el-container>
+    <el-main>
+      <el-row>
+        <el-col :span="2" style="text-align: right">住院号:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.inpatientNo }}</el-col>
+        <el-col :span="2" style="text-align: right">住院次数:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.bedNo }}</el-col>
+        <el-col :span="2" style="text-align: right">身份证号:</el-col>
+        <el-col :span="4">{{ huanZheXinXi.socialNo }}</el-col>
+        <el-col :span="2" style="text-align: right">出生日期:</el-col>
+        <el-col :span="4">
+          <span>{{ huanZheXinXi.birthDate }}</span> &nbsp;&nbsp;
+          <span>{{ huanZheXinXi.age }} 岁</span></el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="2" style="text-align: right">姓名:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.name }}</el-col>
+        <el-col :span="2" style="text-align: right">性别:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.sexName }}</el-col>
+        <el-col :span="2" style="text-align: right">联系电话:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.homeTel }}</el-col>
+        <el-col :span="2" style="text-align: right">入院日期:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.admissDate }}</el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="2" style="text-align: right">管床医生:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.referPhysicianName }}</el-col>
+        <el-col :span="2" style="text-align: right">病区:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.admissWardName }}</el-col>
+        <el-col :span="2" style="text-align: right">入院医生:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.admissPhysicianName }}</el-col>
+        <el-col :span="2" style="text-align: right">入院诊断:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.admissDiagStr }}</el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="2" style="text-align: right">小科室:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.smallDeptName }}</el-col>
+        <el-col :span="2" style="text-align: right">登记日期:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.ybRegisterDate }}</el-col>
+        <el-col :span="2" style="text-align: right">身份:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.responceTypeName }}</el-col>
+        <el-col :span="2" style="text-align: right">总费用:</el-col>
+        <el-col :span="4">
+          <span>{{ huanZheXinXi.totalCharge }}</span> &nbsp;&nbsp;
+          <span style="color: red">{{ huanZheXinXi.balance }}</span>
+        </el-col>
+      </el-row>
+      <el-row>
+        <el-col :span="2" style="text-align: right">药品占比:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.yp }}</el-col>
+        <el-col :span="2" style="text-align: right">检验检查:</el-col>
+        <el-col :span="4"> {{ huanZheXinXi.jyjc }}</el-col>
+        <el-col :span="2" style="text-align: right">医保:</el-col>
+        <el-col :span="4">
+          <span>{{ huanZheXinXi.chargeYb }}</span> &nbsp;&nbsp;
+          <span>{{ huanZheXinXi.yb }}</span>
+        </el-col>
+      </el-row>
+    </el-main>
+  </el-container>
+</template>
+
+<script>
+import {ref, watch} from "vue";
+
+export default {
+  name: "HuanZheXinXi",
+  props: ['huanZheXinXi'],
+  setup(props, cxt) {
+    return {}
+  }
+}
+</script>
+
+<style scoped>
+.el-col-4 span {
+  border-bottom: 1px solid;
+}
+</style>

+ 485 - 473
src/router/modules/dashboard.js

@@ -1,496 +1,508 @@
 import Layout from '@/layout/index.vue'
 import MenuBox from '@/components/menu/index.vue'
-import { createNameComponent } from '../createNode'
+import {createNameComponent} from '../createNode'
 
 const route = [
-  {
-    path: '/login',
-    component: createNameComponent(() => import('@/views/system/login.vue')),
-    hideMenu: true,
-    meta: { title: '登录', hideTabs: true },
-  },
-  {
-    path: '/',
-    component: Layout,
-    redirect: '/dashboard',
-    meta: { title: '工作集成平台', icon: 'el-icon-menu' },
-    children: [
-      {
-        path: 'dashboard',
-        component: createNameComponent(() => import('@/views/dashboard/index.vue')),
-        meta: { title: '首页', icon: 'el-icon-menu', hideClose: true },
-      },
-    ],
-  },
-  // 这里以下都是临时新加的
-  {
-    path: '/medins',
-    component: Layout,
-    meta: { title: '医保模块', icon: 'iconfont icon-yibao' },
-    children: [
-      {
-        path: 'inpatient',
-        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/Home.vue')),
-        meta: { title: '住院医保', icon: 'iconfont icon-yibao' },
-        redirect: '/medins/inpatient/admRegistration',
+    {
+        path: '/login',
+        component: createNameComponent(() => import('@/views/system/login.vue')),
+        hideMenu: true,
+        meta: {title: '登录', hideTabs: true},
+    },
+    {
+        path: '/',
+        component: Layout,
+        redirect: '/dashboard',
+        meta: {title: '工作集成平台', icon: 'el-icon-menu'},
         children: [
-          {
-            path: 'admRegistration',
-            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmRegistration.vue')),
-            meta: { title: '医保入院登记', icon: 'iconfont icon-ruyuandengji' },
-          },
-          {
-            path: 'inHospFeeUpload',
-            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/InHospFeeUpload.vue')),
-            meta: { title: '医保费用上传', icon: 'iconfont icon-feiyongshangchuan' },
-          },
-          {
-            path: 'discSettlement',
-            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/DiscSettlement.vue')),
-            meta: { title: '医保出院结算', icon: 'iconfont icon-chuyuan' },
-          },
-          {
-            path: 'medInsVerification',
-            component: createNameComponent(() => import('@/views/medical-insurance/inpatient/MedInsVerification.vue')),
-            meta: { title: '医保身份审核', icon: 'iconfont icon-yibaoshenhe' },
-          },
+            {
+                path: 'dashboard',
+                component: createNameComponent(() => import('@/views/dashboard/index.vue')),
+                meta: {title: '首页', icon: 'el-icon-menu', hideClose: true},
+            },
         ],
-      },
-      {
-        path: 'outpatient',
-        component: MenuBox,
-        meta: { title: '门诊医保', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+    },
+    // 这里以下都是临时新加的
+    {
+        path: '/medins',
+        component: Layout,
+        meta: {title: '医保模块', icon: 'iconfont icon-yibao'},
         children: [
-          {
-            path: 'mzRegister',
-            component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
-            meta: { title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'mzSpltryRcrd',
-            component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
-            meta: { title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'spcChrRcd',
-            component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
-            meta: { title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
+            {
+                path: 'inpatient',
+                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/Home.vue')),
+                meta: {title: '住院医保', icon: 'iconfont icon-yibao'},
+                redirect: '/medins/inpatient/admRegistration',
+                children: [
+                    {
+                        path: 'admRegistration',
+                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmRegistration.vue')),
+                        meta: {title: '医保入院登记', icon: 'iconfont icon-ruyuandengji'},
+                    },
+                    {
+                        path: 'inHospFeeUpload',
+                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/InHospFeeUpload.vue')),
+                        meta: {title: '医保费用上传', icon: 'iconfont icon-feiyongshangchuan'},
+                    },
+                    {
+                        path: 'discSettlement',
+                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/DiscSettlement.vue')),
+                        meta: {title: '医保出院结算', icon: 'iconfont icon-chuyuan'},
+                    },
+                    {
+                        path: 'medInsVerification',
+                        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/MedInsVerification.vue')),
+                        meta: {title: '医保身份审核', icon: 'iconfont icon-yibaoshenhe'},
+                    },
+                ],
+            },
+            {
+                path: 'outpatient',
+                component: MenuBox,
+                meta: {title: '门诊医保', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                children: [
+                    {
+                        path: 'mzRegister',
+                        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
+                        meta: {title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'mzSpltryRcrd',
+                        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
+                        meta: {title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'spcChrRcd',
+                        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
+                        meta: {title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                ],
+            },
+            {
+                path: 'qryManage',
+                component: MenuBox,
+                meta: {title: '查询与管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                children: [
+                    {
+                        path: 'catalogue',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
+                        meta: {title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'psnInfo',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
+                        meta: {title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'inhospInfo',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
+                        meta: {title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'visitInfo',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
+                        meta: {title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'siSettleDetailList',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
+                        meta: {title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan'},
+                    },
+                    {
+                        path: 'setllistReconciliation',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
+                        meta: {title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+                    },
+                    {
+                        path: 'setSheetUpload',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
+                        meta: {title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan'},
+                    },
+                    {
+                        path: 'setlStatistics',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
+                        meta: {title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan'},
+                    },
+                    {
+                        path: 'logAnalyse',
+                        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
+                        meta: {title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan'},
+                    },
+                ],
+            },
         ],
-      },
-      {
-        path: 'qryManage',
-        component: MenuBox,
-        meta: { title: '查询与管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
+    },
+    {
+        path: '/inspections',
+        component: Layout,
+        meta: {title: '检验检查', icon: 'iconfont icon-jiancha'},
         children: [
-          {
-            path: 'catalogue',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
-            meta: { title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'psnInfo',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
-            meta: { title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'inhospInfo',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
-            meta: { title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'visitInfo',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
-            meta: { title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'siSettleDetailList',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
-            meta: { title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan' },
-          },
-          {
-            path: 'setllistReconciliation',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
-            meta: { title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-          },
-          {
-            path: 'setSheetUpload',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
-            meta: { title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan' },
-          },
-          {
-            path: 'setlStatistics',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
-            meta: { title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan' },
-          },
-          {
-            path: 'logAnalyse',
-            component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
-            meta: { title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan' },
-          },
+            {
+                path: 'inspectionReportIndex',
+                component: createNameComponent(() => import('@/views/examination/InspectionReportIndex.vue')),
+                meta: {title: '检验报告', icon: 'iconfont icon-jianyanbaogao'},
+            },
+            {
+                path: 'covidExamResult',
+                component: createNameComponent(() => import('@/views/examination/CovidExamResult.vue')),
+                meta: {title: '新冠核酸检测报告', icon: 'iconfont icon-xinguan'},
+            },
+            {
+                path: 'healthCrdUpld',
+                component: createNameComponent(() => import('@/views/examination/UploadToHealthCard.vue')),
+                meta: {title: '健康证对接', icon: 'iconfont icon-jiankangzheng'},
+            },
+            {
+                path: 'bookableManagement',
+                component: createNameComponent(() => import('@/views/examination/BookableManagement.vue')),
+                meta: {title: '检验检查预约维护', icon: 'iconfont icon-yuyuedingdan'},
+            },
         ],
-      },
-    ],
-  },
-  {
-    path: '/inspections',
-    component: Layout,
-    meta: { title: '检验检查', icon: 'iconfont icon-jiancha' },
-    children: [
-      {
-        path: 'inspectionReportIndex',
-        component: createNameComponent(() => import('@/views/examination/InspectionReportIndex.vue')),
-        meta: { title: '检验报告', icon: 'iconfont icon-jianyanbaogao' },
-      },
-      {
-        path: 'covidExamResult',
-        component: createNameComponent(() => import('@/views/examination/CovidExamResult.vue')),
-        meta: { title: '新冠核酸检测报告', icon: 'iconfont icon-xinguan' },
-      },
-      {
-        path: 'healthCrdUpld',
-        component: createNameComponent(() => import('@/views/examination/UploadToHealthCard.vue')),
-        meta: { title: '健康证对接', icon: 'iconfont icon-jiankangzheng' },
-      },
-      {
-        path: 'bookableManagement',
-        component: createNameComponent(() => import('@/views/examination/BookableManagement.vue')),
-        meta: { title: '检验检查预约维护', icon: 'iconfont icon-yuyuedingdan' },
-      },
-    ],
-  },
-  {
-    path: '/medTecMod',
-    component: Layout,
-    meta: { title: '医技模块', icon: 'iconfont icon-yijimokuai' },
-    children: [
-      {
-        path: 'yiJiFeiYongLuRu',
-        component: createNameComponent(() => import('@/views/med-tec-mod/YiJiFeiYongLuRu.vue')),
-        meta: { title: '医技费用录入', icon: 'iconfont icon-yiJiFeiYongLuRu' },
-      },
-      {
-        path: 'queRenYiZhuShouFei',
-        component: createNameComponent(() => import('@/views/med-tec-mod/QueRenYiZhuShouFei.vue')),
-        meta: { title: '确认医嘱费用', icon: 'iconfont icon-queRenYiZhuShouFei' },
-      },
-      {
-        path: 'menZhenXiangMu',
-        component: createNameComponent(() => import('@/views/med-tec-mod/MenZhenXiangMu.vue')),
-        meta: { title: '门诊项目确认或取消', icon: 'iconfont icon-menZhenXiangMu' },
-      },
-    ],
-  },
-  {
-    path: '/dictionary',
-    component: Layout,
-    meta: { title: '字典准备', icon: 'iconfont icon-xiangmuzidian' },
-    children: [
-      {
-        path: 'prjctMdcnMtch',
-        component: createNameComponent(() => import('@/views/dictionary/NationalSiMatch.vue')),
-        meta: { title: '项目药品匹配', icon: 'iconfont icon-pipei' },
-      },
-      {
-        path: 'deptMatch',
-        component: createNameComponent(() => import('@/views/dictionary/YiBaoKeShiPiPei.vue')),
-        meta: { title: '医保科室匹配', icon: 'iconfont icon-pipei' },
-      },
-    ],
-  },
-  {
-    path: '/reports',
-    component: Layout,
-    meta: { title: '报表模块', icon: 'iconfont icon-baobiaomokuai' },
-    children: [
-      {
-        path: 'deptPriodRprt',
-        component: createNameComponent(() => import('@/views/reports/DeptPeriodReport.vue')),
-        meta: { title: '科室时段报表', icon: 'iconfont icon-shiduanfenxi' },
-      },
-      {
-        path: 'infntChrgRprt',
-        component: createNameComponent(() => import('@/views/reports/InfantFeeReport.vue')),
-        meta: { title: '婴儿收费统计', icon: 'iconfont icon-yinger' },
-      },
-      {
-        path: 'mdcnStckCnt',
-        component: createNameComponent(() => import('@/views/reports/MedicineStockCount.vue')),
-        meta: { title: '药品盘点', icon: 'iconfont icon-yaopin' },
-      },
-      {
-        path: 'clockinStatistics',
-        component: createNameComponent(() => import('@/views/reports/ClockinData.vue')),
-        meta: { title: '打卡数据', icon: 'iconfont icon-dakashuju' },
-      },
-      {
-        path: 'covidVaccinateAppointment',
-        component: createNameComponent(() => import('@/views/reports/covid-vaccinate/CovidVaccinateAppointment.vue')),
-        meta: { title: '新冠接种预约', icon: 'iconfont icon-xinguanjiezhong' },
-      },
-      {
-        path: 'inquiryOfConsultationFee',
-        component: createNameComponent(() => import('@/views/reports/InquiryOfConsultationFee.vue')),
-        meta: { title: '查询会诊费用', icon: 'iconfont icon-feiyongshenqing' },
-      },
-      {
-        path: 'consumablesStatistics',
-        component: createNameComponent(() => import('@/views/reports/ConsumablesStatistics.vue')),
-        meta: { title: '耗材使用统计', icon: 'iconfont icon-haocaitongji' },
-      },
-      {
-        path: 'illegalChargesAnalysis',
-        component: createNameComponent(() => import('@/views/reports/IllegalChargesAnalysis.vue')),
-        meta: { title: '违规收费分析', icon: 'iconfont icon-weiguishoufeifenxi' },
-      },
-      {
-        path: 'queryPayService',
-        component: createNameComponent(() => import('@/views/reports/QueryPayService.vue')),
-        meta: { title: '收费项目', icon: 'iconfont icon-shoufeixiangmu' },
-      },
-      {
-        path: 'drugInquiry',
-        component: createNameComponent(() => import('@/views/reports/DrugInquiry.vue')),
-        meta: { title: '查询药品', icon: 'iconfont icon-chaxunyaopin' },
-      },
-      {
-        path: 'yuanNeiTongJi',
-        component: createNameComponent(() => import('@/views/reports/YuanNeiTongJi.vue')),
-        meta: { title: '院内统计', icon: 'iconfont icon-haocaitongji' },
-      },
-      {
-        path: 'keShiShouRuTongJi',
-        component: createNameComponent(() => import('@/views/reports/KeShiShouRuTongJi.vue')),
-        meta: { title: '科室收入统计', icon: 'iconfont icon-keShiShouRuTongJi' },
-      },
-    ],
-  },
-  {
-    path: '/dataModify',
-    component: Layout,
-    meta: { title: '数据修改', icon: 'iconfont icon-shujuxiugai' },
-    children: [
-      {
-        path: 'yzActOrderModify',
-        component: createNameComponent(() => import('@/views/data-modify/YzActOrderModify.vue')),
-        meta: { title: '医嘱修改申请', icon: 'iconfont icon-yizhu' },
-      },
-      {
-        path: 'zyChargeFeeModify',
-        component: createNameComponent(() => import('@/views/data-modify/ZyChargeFeeModify.vue')),
-        meta: { title: '住院费用修改', icon: 'iconfont icon-zhuyuanfeiyongfenxi' },
-      },
-      {
-        path: 'yzActOrderModifyVerify',
-        component: createNameComponent(() => import('@/views/data-modify/YzActOrderModifyVerify.vue')),
-        meta: { title: '医嘱修改审核', icon: 'iconfont icon-yizhuxiugaishenhe' },
-      },
-      {
-        path: 'yzTemperatureModify',
-        component: createNameComponent(() => import('@/views/data-modify/YzTemperatureModify.vue')),
-        meta: { title: '护理记录单修改', icon: 'iconfont icon-hulijiludan' },
-      },
-      {
-        path: 'secondFefund',
-        component: createNameComponent(() => import('@/views/data-modify/SecondFefund.vue')),
-        meta: { title: '二次退费', icon: 'iconfont icon-ercituifei' },
-      },
-      {
-        path: 'queryOfReceiptDetails',
-        component: createNameComponent(() => import('@/views/data-modify/QueryOfReceiptDetails.vue')),
-        meta: { title: '入库明细查询', icon: 'iconfont icon-rukuguanli' },
-      },
-      {
-        path: 'deliveryDetailsQuery',
-        component: createNameComponent(() => import('@/views/data-modify/DeliveryDetailsQuery.vue')),
-        meta: { title: '出库明细查询', icon: 'iconfont icon-chukuguanli' },
-      },
-    ],
-  },
-
-  {
-    path: '/inpatient',
-    component: Layout,
-    meta: { title: '住院模块', icon: 'iconfont icon-yiyuan' },
-    children: [
-      {
-        path: 'makeDbzFees',
-        component: createNameComponent(() => import('@/views/hospitalization/MakeDbzFees.vue')),
-        meta: { title: '单病种费用生成', icon: 'iconfont icon-danbingzhong' },
-      },
-      {
-        path: 'advrsEvnt',
-        component: MenuBox,
-        meta: { title: '不良事件', icon: 'iconfont icon-buliangshijian1' },
+    },
+    {
+        path: '/medTecMod',
+        component: Layout,
+        meta: {title: '医技模块', icon: 'iconfont icon-yijimokuai'},
+        children: [
+            {
+                path: 'yiJiFeiYongLuRu',
+                component: createNameComponent(() => import('@/views/med-tec-mod/YiJiFeiYongLuRu.vue')),
+                meta: {title: '医技费用录入', icon: 'iconfont icon-yiJiFeiYongLuRu'},
+            },
+            {
+                path: 'queRenYiZhuShouFei',
+                component: createNameComponent(() => import('@/views/med-tec-mod/QueRenYiZhuShouFei.vue')),
+                meta: {title: '确认医嘱费用', icon: 'iconfont icon-queRenYiZhuShouFei'},
+            },
+            {
+                path: 'menZhenXiangMu',
+                component: createNameComponent(() => import('@/views/med-tec-mod/MenZhenXiangMu.vue')),
+                meta: {title: '门诊项目确认或取消', icon: 'iconfont icon-menZhenXiangMu'},
+            },
+        ],
+    },
+    {
+        path: '/dictionary',
+        component: Layout,
+        meta: {title: '字典准备', icon: 'iconfont icon-xiangmuzidian'},
+        children: [
+            {
+                path: 'prjctMdcnMtch',
+                component: createNameComponent(() => import('@/views/dictionary/NationalSiMatch.vue')),
+                meta: {title: '项目药品匹配', icon: 'iconfont icon-pipei'},
+            },
+            {
+                path: 'deptMatch',
+                component: createNameComponent(() => import('@/views/dictionary/YiBaoKeShiPiPei.vue')),
+                meta: {title: '医保科室匹配', icon: 'iconfont icon-pipei'},
+            },
+        ],
+    },
+    {
+        path: '/reports',
+        component: Layout,
+        meta: {title: '报表模块', icon: 'iconfont icon-baobiaomokuai'},
         children: [
-          {
-            path: 'fillAdverseEvent',
-            component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
-            meta: { title: '不良事件上报', icon: 'iconfont icon-buliangshijian' },
-          },
-          {
-            path: 'dealAdverseEvent',
-            component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
-            meta: { title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli' },
-          },
-          {
-            path: 'allAdverseEvent',
-            component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
-            meta: { title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong' },
-          },
+            {
+                path: 'deptPriodRprt',
+                component: createNameComponent(() => import('@/views/reports/DeptPeriodReport.vue')),
+                meta: {title: '科室时段报表', icon: 'iconfont icon-shiduanfenxi'},
+            },
+            {
+                path: 'infntChrgRprt',
+                component: createNameComponent(() => import('@/views/reports/InfantFeeReport.vue')),
+                meta: {title: '婴儿收费统计', icon: 'iconfont icon-yinger'},
+            },
+            {
+                path: 'mdcnStckCnt',
+                component: createNameComponent(() => import('@/views/reports/MedicineStockCount.vue')),
+                meta: {title: '药品盘点', icon: 'iconfont icon-yaopin'},
+            },
+            {
+                path: 'clockinStatistics',
+                component: createNameComponent(() => import('@/views/reports/ClockinData.vue')),
+                meta: {title: '打卡数据', icon: 'iconfont icon-dakashuju'},
+            },
+            {
+                path: 'covidVaccinateAppointment',
+                component: createNameComponent(() => import('@/views/reports/covid-vaccinate/CovidVaccinateAppointment.vue')),
+                meta: {title: '新冠接种预约', icon: 'iconfont icon-xinguanjiezhong'},
+            },
+            {
+                path: 'inquiryOfConsultationFee',
+                component: createNameComponent(() => import('@/views/reports/InquiryOfConsultationFee.vue')),
+                meta: {title: '查询会诊费用', icon: 'iconfont icon-feiyongshenqing'},
+            },
+            {
+                path: 'consumablesStatistics',
+                component: createNameComponent(() => import('@/views/reports/ConsumablesStatistics.vue')),
+                meta: {title: '耗材使用统计', icon: 'iconfont icon-haocaitongji'},
+            },
+            {
+                path: 'illegalChargesAnalysis',
+                component: createNameComponent(() => import('@/views/reports/IllegalChargesAnalysis.vue')),
+                meta: {title: '违规收费分析', icon: 'iconfont icon-weiguishoufeifenxi'},
+            },
+            {
+                path: 'queryPayService',
+                component: createNameComponent(() => import('@/views/reports/QueryPayService.vue')),
+                meta: {title: '收费项目', icon: 'iconfont icon-shoufeixiangmu'},
+            },
+            {
+                path: 'drugInquiry',
+                component: createNameComponent(() => import('@/views/reports/DrugInquiry.vue')),
+                meta: {title: '查询药品', icon: 'iconfont icon-chaxunyaopin'},
+            },
+            {
+                path: 'yuanNeiTongJi',
+                component: createNameComponent(() => import('@/views/reports/YuanNeiTongJi.vue')),
+                meta: {title: '院内统计', icon: 'iconfont icon-haocaitongji'},
+            },
+            {
+                path: 'keShiShouRuTongJi',
+                component: createNameComponent(() => import('@/views/reports/KeShiShouRuTongJi.vue')),
+                meta: {title: '科室收入统计', icon: 'iconfont icon-keShiShouRuTongJi'},
+            },
         ],
-      },
-      {
-        path: 'casefrntsht',
-        component: MenuBox,
-        meta: { title: '病案首页', icon: 'iconfont icon-binganshouye' },
+    },
+    {
+        path: '/dataModify',
+        component: Layout,
+        meta: {title: '数据修改', icon: 'iconfont icon-shujuxiugai'},
         children: [
-          {
-            path: 'fillCaseFrontSheet',
-            component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
-            meta: { title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie' },
-          },
-          {
-            path: 'allCaseFrontSheet',
-            component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
-            meta: { title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x' },
-          },
-          {
-            path: 'jieShouHuiZhen',
-            component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
-            meta: { title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen' },
-          },
+            {
+                path: 'yzActOrderModify',
+                component: createNameComponent(() => import('@/views/data-modify/YzActOrderModify.vue')),
+                meta: {title: '医嘱修改申请', icon: 'iconfont icon-yizhu'},
+            },
+            {
+                path: 'zyChargeFeeModify',
+                component: createNameComponent(() => import('@/views/data-modify/ZyChargeFeeModify.vue')),
+                meta: {title: '住院费用修改', icon: 'iconfont icon-zhuyuanfeiyongfenxi'},
+            },
+            {
+                path: 'yzActOrderModifyVerify',
+                component: createNameComponent(() => import('@/views/data-modify/YzActOrderModifyVerify.vue')),
+                meta: {title: '医嘱修改审核', icon: 'iconfont icon-yizhuxiugaishenhe'},
+            },
+            {
+                path: 'yzTemperatureModify',
+                component: createNameComponent(() => import('@/views/data-modify/YzTemperatureModify.vue')),
+                meta: {title: '护理记录单修改', icon: 'iconfont icon-hulijiludan'},
+            },
+            {
+                path: 'secondFefund',
+                component: createNameComponent(() => import('@/views/data-modify/SecondFefund.vue')),
+                meta: {title: '二次退费', icon: 'iconfont icon-ercituifei'},
+            },
+            {
+                path: 'queryOfReceiptDetails',
+                component: createNameComponent(() => import('@/views/data-modify/QueryOfReceiptDetails.vue')),
+                meta: {title: '入库明细查询', icon: 'iconfont icon-rukuguanli'},
+            },
+            {
+                path: 'deliveryDetailsQuery',
+                component: createNameComponent(() => import('@/views/data-modify/DeliveryDetailsQuery.vue')),
+                meta: {title: '出库明细查询', icon: 'iconfont icon-chukuguanli'},
+            },
         ],
-      },
-    ],
-  },
+    },
 
-  {
-    path: '/outpatient',
-    component: Layout,
-    meta: { title: '门诊模块', icon: 'iconfont icon-menzhen' },
-    children: [
-      {
-        path: 'mzGuideBill',
-        component: createNameComponent(() => import('@/views/clinic/MzGuideBill.vue')),
-        meta: { title: '门诊指引单', icon: 'iconfont icon-zhiyin' },
-      },
-      {
-        path: 'doctorInfoManagement',
-        component: createNameComponent(() => import('@/views/clinic/DoctorInfoManagement.vue')),
-        meta: { title: '医生信息管理', icon: 'iconfont icon-renyuanxinxiguanli' },
-      },
-      {
-        path: 'transferInOfExpenses',
-        component: createNameComponent(() => import('@/views/clinic/TransferInOfExpenses.vue')),
-        meta: { title: '急诊费用转入', icon: 'iconfont icon-feiyongzhuanru' },
-      },
-      {
-        path: 'wxPayRefund',
-        component: createNameComponent(() => import('@/views/clinic/WxPayRefund.vue')),
-        meta: { title: '微信支付退款', icon: 'iconfont icon-tuikuan' },
-      },
-      {
-        path: 'triage',
-        component: MenuBox,
-        meta: { title: '门诊分诊', icon: 'iconfont icon-menzhenfenzhen' },
+    {
+        path: '/inpatient',
+        component: Layout,
+        meta: {title: '住院模块', icon: 'iconfont icon-yiyuan'},
         children: [
-          {
-            path: 'untriaged',
-            component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
-            meta: { title: '未分诊', icon: 'iconfont icon-weifenzhen' },
-          },
-          {
-            path: 'triaged',
-            component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
-            meta: { title: '已分诊', icon: 'iconfont icon-yifenzhen' },
-          },
-          {
-            path: 'allTriages',
-            component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
-            meta: { title: '所有挂号', icon: 'iconfont icon-suoyou' },
-          },
-          {
-            path: 'triageDeptSettings',
-            component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
-            meta: { title: '科室设置', icon: 'iconfont icon-keshi' },
-          },
-          {
-            path: 'triageRoomSettings',
-            component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
-            meta: { title: '诊室设置', icon: 'iconfont icon-zhenshiguanli' },
-          },
-          {
-            path: 'triageIpManagement',
-            component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
-            meta: { title: 'IP管理', icon: 'iconfont icon-ip' },
-          },
-          {
-            path: 'triageDisplaySettings',
-            component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
-            meta: { title: '显示管理', icon: 'iconfont icon-xianshishezhi' },
-          },
-          {
-            path: 'triageFloorScreen',
-            component: createNameComponent(() => import('@/views/clinic/triage/FloorScreen.vue')),
-            meta: { title: '分诊大屏', icon: 'iconfont icon-daping' },
-          },
+            {
+                path: 'makeDbzFees',
+                component: createNameComponent(() => import('@/views/hospitalization/MakeDbzFees.vue')),
+                meta: {title: '单病种费用生成', icon: 'iconfont icon-danbingzhong'},
+            },
+            {
+                path: 'advrsEvnt',
+                component: MenuBox,
+                meta: {title: '不良事件', icon: 'iconfont icon-buliangshijian1'},
+                children: [
+                    {
+                        path: 'fillAdverseEvent',
+                        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
+                        meta: {title: '不良事件上报', icon: 'iconfont icon-buliangshijian'},
+                    },
+                    {
+                        path: 'dealAdverseEvent',
+                        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
+                        meta: {title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli'},
+                    },
+                    {
+                        path: 'allAdverseEvent',
+                        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
+                        meta: {title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong'},
+                    },
+                ],
+            },
+            {
+                path: 'casefrntsht',
+                component: MenuBox,
+                meta: {title: '病案首页', icon: 'iconfont icon-binganshouye'},
+                children: [
+                    {
+                        path: 'fillCaseFrontSheet',
+                        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
+                        meta: {title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie'},
+                    },
+                    {
+                        path: 'allCaseFrontSheet',
+                        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
+                        meta: {title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x'},
+                    },
+                    {
+                        path: 'jieShouHuiZhen',
+                        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
+                        meta: {title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen'},
+                    },
+                ],
+            },
+            {
+                path: 'zhuYuanYiSheng',
+                component: MenuBox,
+                meta: {title: '住院医生', icon: 'iconfont icon-zhuyuanyisheng'},
+                children: [
+                    {
+                        path: 'yiZhuLuRu',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/YiZhuLuRu.vue')),
+                        meta: {title: '医嘱录入', icon: 'iconfont icon-yizhuluru'},
+                    },
+                ]
+            },
         ],
-      },
-    ],
-  },
-  {
-    path: '/settings',
-    component: Layout,
-    meta: { title: '设置', icon: 'iconfont icon-shezhi' },
-    children: [
-      {
-        path: 'deptPhones',
-        component: createNameComponent(() => import('@/views/settings/DeptPhones.vue')),
-        meta: { title: '科室电话', icon: 'iconfont icon-dianhua' },
-      },
-      {
-        path: 'sendNotification',
-        component: createNameComponent(() => import('@/views/settings/SendNotification.vue')),
-        meta: { title: '发送通知', icon: 'iconfont icon-fasongtongzhi' },
-      },
-      {
-        path: 'userInfo',
-        component: createNameComponent(() => import('@/views/settings/UserInfo.vue')),
-        meta: { title: '个人中心', icon: 'iconfont icon-gerenzhongxin' },
-      },
-      {
-        path: 'permission',
-        component: MenuBox,
-        meta: { title: '权限管理', icon: 'iconfont icon-permission' },
+    },
+
+    {
+        path: '/outpatient',
+        component: Layout,
+        meta: {title: '门诊模块', icon: 'iconfont icon-menzhen'},
+        children: [
+            {
+                path: 'mzGuideBill',
+                component: createNameComponent(() => import('@/views/clinic/MzGuideBill.vue')),
+                meta: {title: '门诊指引单', icon: 'iconfont icon-zhiyin'},
+            },
+            {
+                path: 'doctorInfoManagement',
+                component: createNameComponent(() => import('@/views/clinic/DoctorInfoManagement.vue')),
+                meta: {title: '医生信息管理', icon: 'iconfont icon-renyuanxinxiguanli'},
+            },
+            {
+                path: 'transferInOfExpenses',
+                component: createNameComponent(() => import('@/views/clinic/TransferInOfExpenses.vue')),
+                meta: {title: '急诊费用转入', icon: 'iconfont icon-feiyongzhuanru'},
+            },
+            {
+                path: 'wxPayRefund',
+                component: createNameComponent(() => import('@/views/clinic/WxPayRefund.vue')),
+                meta: {title: '微信支付退款', icon: 'iconfont icon-tuikuan'},
+            },
+            {
+                path: 'triage',
+                component: MenuBox,
+                meta: {title: '门诊分诊', icon: 'iconfont icon-menzhenfenzhen'},
+                children: [
+                    {
+                        path: 'untriaged',
+                        component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
+                        meta: {title: '未分诊', icon: 'iconfont icon-weifenzhen'},
+                    },
+                    {
+                        path: 'triaged',
+                        component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
+                        meta: {title: '已分诊', icon: 'iconfont icon-yifenzhen'},
+                    },
+                    {
+                        path: 'allTriages',
+                        component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
+                        meta: {title: '所有挂号', icon: 'iconfont icon-suoyou'},
+                    },
+                    {
+                        path: 'triageDeptSettings',
+                        component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
+                        meta: {title: '科室设置', icon: 'iconfont icon-keshi'},
+                    },
+                    {
+                        path: 'triageRoomSettings',
+                        component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
+                        meta: {title: '诊室设置', icon: 'iconfont icon-zhenshiguanli'},
+                    },
+                    {
+                        path: 'triageIpManagement',
+                        component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
+                        meta: {title: 'IP管理', icon: 'iconfont icon-ip'},
+                    },
+                    {
+                        path: 'triageDisplaySettings',
+                        component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
+                        meta: {title: '显示管理', icon: 'iconfont icon-xianshishezhi'},
+                    },
+                    {
+                        path: 'triageFloorScreen',
+                        component: createNameComponent(() => import('@/views/clinic/triage/FloorScreen.vue')),
+                        meta: {title: '分诊大屏', icon: 'iconfont icon-daping'},
+                    },
+                ],
+            },
+        ],
+    },
+    {
+        path: '/settings',
+        component: Layout,
+        meta: {title: '设置', icon: 'iconfont icon-shezhi'},
         children: [
-          {
-            path: 'userRoleSettings',
-            component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
-            meta: { title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli' },
-          },
-          {
-            path: 'roleMenuSettings',
-            component: createNameComponent(() => import('@/views/settings/permissions/RoleMenuSettings.vue')),
-            meta: { title: '角色菜单管理', icon: 'iconfont icon-juesecaidanguanli' },
-          },
+            {
+                path: 'deptPhones',
+                component: createNameComponent(() => import('@/views/settings/DeptPhones.vue')),
+                meta: {title: '科室电话', icon: 'iconfont icon-dianhua'},
+            },
+            {
+                path: 'sendNotification',
+                component: createNameComponent(() => import('@/views/settings/SendNotification.vue')),
+                meta: {title: '发送通知', icon: 'iconfont icon-fasongtongzhi'},
+            },
+            {
+                path: 'userInfo',
+                component: createNameComponent(() => import('@/views/settings/UserInfo.vue')),
+                meta: {title: '个人中心', icon: 'iconfont icon-gerenzhongxin'},
+            },
+            {
+                path: 'permission',
+                component: MenuBox,
+                meta: {title: '权限管理', icon: 'iconfont icon-permission'},
+                children: [
+                    {
+                        path: 'userRoleSettings',
+                        component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
+                        meta: {title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli'},
+                    },
+                    {
+                        path: 'roleMenuSettings',
+                        component: createNameComponent(() => import('@/views/settings/permissions/RoleMenuSettings.vue')),
+                        meta: {title: '角色菜单管理', icon: 'iconfont icon-juesecaidanguanli'},
+                    },
+                ],
+            },
         ],
-      },
-    ],
-  },
+    },
 
-  {
-    path: '/utilities',
-    component: Layout,
-    meta: { title: '通用工具', icon: 'iconfont icon-tool' },
-    children: [
-      {
-        path: 'parseJson',
-        component: createNameComponent(() => import('@/views/utilities/ParseJson.vue')),
-        meta: { title: 'JSON格式化', icon: 'iconfont icon-fasongtongzhi' },
-      },
-    ],
-  },
+    {
+        path: '/utilities',
+        component: Layout,
+        meta: {title: '通用工具', icon: 'iconfont icon-tool'},
+        children: [
+            {
+                path: 'parseJson',
+                component: createNameComponent(() => import('@/views/utilities/ParseJson.vue')),
+                meta: {title: 'JSON格式化', icon: 'iconfont icon-fasongtongzhi'},
+            },
+        ],
+    },
 ]
 
 export default route

+ 89 - 0
src/views/hospitalization/zhu-yuan-yi-sheng/YiZhuLuRu.vue

@@ -0,0 +1,89 @@
+<template>
+  <el-container>
+    <el-header height="36px" style="margin-top: 8px">
+      <el-select v-model="currentWard" @change="huanZheLieBiaoChange" style="width: 120px" filterable>
+        <el-option v-for="item in userWards" :key="item.code" :value="item.code" :label="item.name"></el-option>
+      </el-select>
+    </el-header>
+    <el-container>
+      <el-aside style="width:auto !important;">
+        <huan-zhe-lie-biao ref="huanZheLieBiaoRef" @clickHuanZheXinXi="clickHuanZheXinXi"></huan-zhe-lie-biao>
+      </el-aside>
+      <el-main>
+        <el-collapse v-model="activeNames">
+          <el-collapse-item title="患者信息" class="collapse-item-height" name="1">
+            <huan-zhe-xin-xi :huanZheXinXi="huanZhe"></huan-zhe-xin-xi>
+          </el-collapse-item>
+        </el-collapse>
+      </el-main>
+    </el-container>
+  </el-container>
+</template>
+
+<script>
+import store from '../../../store'
+import {getUserWards} from '../../../api/case-front-sheet'
+import {computed, onMounted, ref} from "vue";
+import {huoQuHuanZheLieBiao} from "../../../api/zhu-yuan-yi-sheng/yi-zhu-lu-ru";
+import {listNotBlank} from "../../../utils/blank-utils";
+import HuanZheLieBiao from "../../../components/zhu-yuan-yi-sheng/HuanZheLieBiao.vue";
+import HuanZheXinXi from "../../../components/zhu-yuan-yi-sheng/HuanZheXinXi.vue";
+import {clone} from "../../../utils/clone";
+
+export default {
+  name: "YiZhuLuRu",
+  components: {HuanZheXinXi, HuanZheLieBiao},
+  setup() {
+    // 用户可以选择的 病房信息
+    const userWards = ref([])
+    // 选择的病房
+    const currentWard = ref('')
+    // 患者列表组件
+    const huanZheLieBiaoRef = ref(null)
+    // 手风琴
+    const activeNames = ref(['1'])
+    // 选中的患者
+    const huanZhe = ref('')
+
+
+    const tableHeight = computed(() => {
+      return store.state.app.windowSize.h
+    })
+
+    const huanZheLieBiaoChange = () => {
+      huanZheLieBiaoRef.value.huoQuHuanZheLieBiaoClick(currentWard.value)
+    }
+
+    const clickHuanZheXinXi = (val) => {
+      huanZhe.value = clone(val.res)
+      console.log(huanZhe.value)
+    }
+
+    onMounted(() => {
+      getUserWards().then((res) => {
+        userWards.value = res
+        if (listNotBlank(userWards.value)) {
+          currentWard.value = userWards.value[0].code
+          huanZheLieBiaoChange()
+        }
+      })
+    })
+    return {
+      currentWard,
+      userWards,
+      tableHeight,
+      huanZheLieBiaoRef,
+      huanZheLieBiaoChange,
+      activeNames,
+      clickHuanZheXinXi,
+      huanZhe,
+    }
+  }
+}
+</script>
+
+<style scoped>
+.collapse-item-height >>> .el-collapse-item__header {
+  height: 20px;
+}
+</style>