Переглянути джерело

要求添加国家医保编码和名称

xiaochan 3 роки тому
батько
коміт
77f6098acd

+ 40 - 32
src/components/medical-insurance/medfee-analyse/Index.vue

@@ -2,7 +2,7 @@
   <div class="component-box-wrapper__fullscreen">
     <div style="font-size: 18px !important; margin-bottom: 20px">医保费用明细</div>
     <div style="position: fixed; top: 12px; right: 20px; width: 100%; text-align: right">
-      <el-button type="danger" icon="el-icon-close" circle title="关闭" @click="close"></el-button>
+      <el-button circle icon="el-icon-close" title="关闭" type="danger" @click="close"></el-button>
     </div>
     <el-container>
       <el-aside width="360px">
@@ -12,7 +12,8 @@
           <div style="width: 22%">政策范围内金额</div>
           <div style="width: 21%">政策范围外金额</div>
         </div>
-        <div v-for="(val, key) in analyse" :key="key" class="fee-type" :style="currentStyle(key)" @click="handleClickChrgtype(val, key)">
+        <div v-for="(val, key) in analyse" :key="key" :style="currentStyle(key)" class="fee-type"
+             @click="handleClickChrgtype(val, key)">
           <div>
             <div style="width: 34%">{{ val[0] }}</div>
             <div style="width: 23%">{{ val[1] }}</div>
@@ -24,47 +25,50 @@
       <el-main>
         <el-descriptions :column="4" border>
           <el-descriptions-item>
-            <template #label> 姓名 </template>
+            <template #label> 姓名</template>
             {{ psninfo.psnName }}
           </el-descriptions-item>
           <el-descriptions-item>
-            <template #label> 住院号 </template>
+            <template #label> 住院号</template>
             {{ psninfo.patNo }}
           </el-descriptions-item>
           <el-descriptions-item>
-            <template #label> 住院次数 </template>
+            <template #label> 住院次数</template>
             {{ psninfo.times }}
           </el-descriptions-item>
           <el-descriptions-item>
-            <template #label> 账页号 </template>
+            <template #label> 账页号</template>
             {{ psninfo.ledgerSn }}
           </el-descriptions-item>
         </el-descriptions>
-        <el-table :data="cptFeedtle.slice(pageSize * (currentPage - 1), pageSize * currentPage)" stripe :height="tableHeight">
-          <el-table-column prop="feedetlSn" label="流水号" width="60"></el-table-column>
-          <el-table-column prop="feeOcurTime" label="费用发生时间"></el-table-column>
-          <el-table-column prop="medinsListCodg" label="院内码"></el-table-column>
-          <el-table-column prop="medinsListName" label="收费名称"></el-table-column>
-          <el-table-column prop="cnt" label="数量" width="80"></el-table-column>
-          <el-table-column prop="pric" label="单价" width="80"></el-table-column>
-          <el-table-column prop="detItemFeeSumamt" label="金额" width="80"></el-table-column>
-          <el-table-column prop="fulamtOwnpayAmt" label="全自费金额" width="80" sortable></el-table-column>
-          <el-table-column prop="overlmtAmt" label="超限价金额" width="80" sortable></el-table-column>
-          <el-table-column prop="preselfpayAmt" label="先行自付金额" width="80" sortable></el-table-column>
-          <el-table-column prop="inscpScpAmt" label="符合政策范围金额" width="80" sortable></el-table-column>
-          <el-table-column prop="chrgitmLvName" label="收费项目等级" width="80"></el-table-column>
-          <el-table-column prop="bilgDeptName" label="科室"></el-table-column>
-          <el-table-column prop="bilgDrName" label="医生"></el-table-column>
+        <el-table :data="cptFeedtle.slice(pageSize * (currentPage - 1), pageSize * currentPage)" :height="tableHeight"
+                  stripe>
+          <el-table-column label="流水号" prop="feedetlSn" width="60"></el-table-column>
+          <el-table-column label="费用发生时间" prop="feeOcurTime"></el-table-column>
+          <el-table-column label="院内码" prop="medinsListCodg"></el-table-column>
+          <el-table-column label="收费名称" prop="medinsListName"></el-table-column>
+          <el-table-column label="国家编码" prop="medListCodg"></el-table-column>
+          <el-table-column label="国家名称" prop="medListName"></el-table-column>
+          <el-table-column label="数量" prop="cnt" width="80"></el-table-column>
+          <el-table-column label="单价" prop="pric" width="80"></el-table-column>
+          <el-table-column label="金额" prop="detItemFeeSumamt" width="80"></el-table-column>
+          <el-table-column label="全自费金额" prop="fulamtOwnpayAmt" sortable width="80"></el-table-column>
+          <el-table-column label="超限价金额" prop="overlmtAmt" sortable width="80"></el-table-column>
+          <el-table-column label="先行自付金额" prop="preselfpayAmt" sortable width="80"></el-table-column>
+          <el-table-column label="符合政策范围金额" prop="inscpScpAmt" sortable width="80"></el-table-column>
+          <el-table-column label="收费项目等级" prop="chrgitmLvName" width="80"></el-table-column>
+          <el-table-column label="科室" prop="bilgDeptName"></el-table-column>
+          <el-table-column label="医生" prop="bilgDrName"></el-table-column>
         </el-table>
         <el-pagination
-          @size-change="handleSizeChange"
-          @current-change="handleCurrentChange"
-          :current-page="currentPage"
-          :page-sizes="[10, 30, 50, 100]"
-          :page-size="pageSize"
-          layout="total, sizes, prev, pager, next, jumper"
-          :total="cptFeedtle.length"
-          style="margin-top: 5px"
+            :current-page="currentPage"
+            :page-size="pageSize"
+            :page-sizes="[10, 30, 50, 100]"
+            :total="cptFeedtle.length"
+            layout="total, sizes, prev, pager, next, jumper"
+            style="margin-top: 5px"
+            @size-change="handleSizeChange"
+            @current-change="handleCurrentChange"
         ></el-pagination>
       </el-main>
     </el-container>
@@ -72,9 +76,10 @@
 </template>
 
 <script>
-import { queryFeeDetails } from '@/api/medical-insurance/si-query'
-import { ref, onMounted, computed } from 'vue'
-import { useStore } from 'vuex'
+import {queryFeeDetails} from '@/api/medical-insurance/si-query'
+import {computed, onMounted, ref} from 'vue'
+import {useStore} from 'vuex'
+
 export default {
   props: {
     type: {
@@ -167,6 +172,7 @@ export default {
 * {
   font-size: 12px !important;
 }
+
 .fee-type {
   width: 360px;
   display: flex;
@@ -174,11 +180,13 @@ export default {
   align-items: center;
   border-bottom: 1px solid rgb(230, 222, 222);
 }
+
 .fee-type :hover {
   cursor: pointer;
   background: #409eff;
   color: white;
 }
+
 .fee-type > div {
   width: 100%;
   padding: 0 12px;

+ 15 - 8
src/layout/Header/index.vue

@@ -5,26 +5,27 @@
       <div class="menu-icon" @click="opendStateChange">
         <i :class="isCollapse ? 'el-icon-s-unfold' : 'el-icon-s-fold'"></i>
       </div>
-      <Breadcrumb />
+      <Breadcrumb/>
     </div>
     <div class="right-box">
       <!-- 快捷功能按钮 -->
       <div class="function-list">
         <div class="function-list-item hidden-sm-and-down" style="margin-right: 10px">
-          <Message />
+          <Message/>
         </div>
         <div class="function-list-item hidden-sm-and-down">
-          <Full-screen />
+          <Full-screen/>
         </div>
         <div class="function-list-item">
-          <SizeChange />
+          <SizeChange/>
         </div>
         <div class="function-list-item hidden-sm-and-down">
-          <Theme />
+          <Theme/>
         </div>
       </div>
       <!-- 用户信息 -->
       <div class="user-info">
+        {{ ybCode }}
         <el-dropdown>
           <span class="el-dropdown-link">
             {{ username }}
@@ -38,14 +39,14 @@
           </template>
         </el-dropdown>
       </div>
-      <password-layer v-if="layer.show" :layer="layer" />
+      <password-layer v-if="layer.show" :layer="layer"/>
     </div>
   </header>
 </template>
 
 <script>
-import { computed, defineComponent, reactive } from 'vue'
-import { useStore } from 'vuex'
+import {computed, defineComponent, reactive} from 'vue'
+import {useStore} from 'vuex'
 import Message from './functionList/message.vue'
 import FullScreen from './functionList/fullscreen.vue'
 import SizeChange from './functionList/sizeChange.vue'
@@ -67,6 +68,11 @@ export default defineComponent({
     const username = computed(() => {
       return store.getters['user/info'].name
     })
+
+    const ybCode = computed(() => {
+      return store.getters['user/info'].ybCode
+    })
+    // console.log(store.state.user.info)
     const layer = reactive({
       show: false,
       showButton: true,
@@ -91,6 +97,7 @@ export default defineComponent({
       opendStateChange,
       loginOut,
       showPasswordLayer,
+      ybCode
     }
   },
 })

+ 11 - 5
src/layout/Logo/index.vue

@@ -1,14 +1,19 @@
 <template>
   <div class="logo-container">
-    <img src="@/assets/logo.png" :style="logoStyle" alt="" />
-    <h1 v-if="!isCollapse">{{ systemTitle }}</h1>
+    <img :style="logoStyle" alt="" src="@/assets/logo.png"/>
+    <h1 v-if="!isCollapse">{{ systemTitle }}
+      <br>
+      <span style="font-size: 12px">机构编码:H43010500370 </span>
+
+    </h1>
   </div>
 </template>
 
 <script>
-import { defineComponent, computed, ref, reactive } from 'vue'
-import { useStore } from 'vuex'
-import { systemTitle } from '@/config'
+import {computed, defineComponent} from 'vue'
+import {useStore} from 'vuex'
+import {systemTitle} from '@/config'
+
 export default defineComponent({
   setup() {
     const store = useStore()
@@ -37,6 +42,7 @@ export default defineComponent({
   width: 100%;
   // background-color: var(--system-logo-background);
   background-color: white;
+
   h1 {
     font-size: 20px;
     white-space: nowrap;

+ 20 - 15
src/layout/Menu/index.vue

@@ -1,23 +1,23 @@
 <template>
   <el-menu
-    :class="isCollapse ? 'collapse' : ''"
-    :collapse="isCollapse"
-    :collapse-transition="false"
-    :default-active="activeMenu"
-    :unique-opened="expandOneMenu"
-    active-text-color="var(--system-primary-color)"
-    background-color="var(--system-menu-background)"
-    class="layout-menu system-scrollbar"
-    text-color="var(--system-menu-text-color)"
+      :class="isCollapse ? 'collapse' : ''"
+      :collapse="isCollapse"
+      :collapse-transition="false"
+      :default-active="activeMenu"
+      :unique-opened="expandOneMenu"
+      active-text-color="var(--system-primary-color)"
+      background-color="var(--system-menu-background)"
+      class="layout-menu system-scrollbar"
+      text-color="var(--system-menu-text-color)"
   >
-    <menu-item v-for="(menu, key) in allRoutes" :key="key" :menu="menu" />
+    <menu-item v-for="(menu, key) in allRoutes" :key="key" :menu="menu"/>
   </el-menu>
 </template>
 
 <script>
-import { computed, defineComponent, onMounted } from 'vue'
-import { useRoute } from 'vue-router'
-import { useStore } from 'vuex'
+import {computed, defineComponent, onMounted} from 'vue'
+import {useRoute} from 'vue-router'
+import {useStore} from 'vuex'
 import MenuItem from './MenuItem.vue'
 
 export default defineComponent({
@@ -31,13 +31,15 @@ export default defineComponent({
     const allRoutes = computed(() => store.state.user.routes)
     const route = useRoute()
     const activeMenu = computed(() => {
-      const { meta, path } = route
+      const {meta, path} = route
       if (meta.activeMenu) {
         return meta.activeMenu
       }
       return path
     })
-    onMounted(() => {})
+    onMounted(() => {
+      console.log(activeMenu.value);
+    })
     return {
       isCollapse,
       expandOneMenu,
@@ -62,9 +64,11 @@ export default defineComponent({
   :deep(.el-menu-item, .el-submenu) {
     background-color: var(--system-menu-background) !important;
   }
+
   :deep(.el-menu-item i, .el-menu-item-group__title, .el-submenu__title i) {
     color: var(--system-menu-text-color);
   }
+
   :deep(.el-menu-item, .el-submenu__title) {
     &.is-active {
       background-color: var(--system-primary-color) !important;
@@ -114,6 +118,7 @@ export default defineComponent({
 
   :deep(.el-submenu .el-submenu__title) {
     background-color: var(--system-menu-children-background) !important;
+
     &:hover {
       background-color: var(--system-primary-color) !important;
     }

+ 529 - 529
src/router/modules/dashboard.js

@@ -1,542 +1,542 @@
 import Layout from '@/layout/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: 'dashboard',
+                component: createNameComponent(() => import('@/views/dashboard/index.vue')),
+                meta: {title: '首页', icon: 'el-icon-menu', hideClose: true},
+            },
         ],
-      },
-      {
-        path: 'inpatient/admissVerification',
-        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmissVerification.vue')),
-        meta: { title: '入院登记审核', icon: 'iconfont icon-yibaoshenhe' },
-      },
-      {
-        path: 'inpatient/medInsVerification',
-        component: createNameComponent(() => import('@/views/medical-insurance/inpatient/SettleVerification.vue')),
-        meta: { title: '出院结算审核', icon: 'iconfont icon-yibaoshenhe' },
-      },
-      {
-        path: 'outpatient/mzRegister',
-        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
-        meta: { title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'outpatient/mzSpltryRcrd',
-        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
-        meta: { title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'outpatient/spcChrRcd',
-        component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
-        meta: { title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/catalogue',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
-        meta: { title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/psnInfo',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
-        meta: { title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/inhospInfo',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
-        meta: { title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/visitInfo',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
-        meta: { title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/siSettleDetailList',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
-        meta: { title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan' },
-      },
-      {
-        path: 'qryManage/setllistReconciliation',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
-        meta: { title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2' },
-      },
-      {
-        path: 'qryManage/setSheetUpload',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
-        meta: { title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan' },
-      },
-      {
-        path: 'qryManage/setlStatistics',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
-        meta: { title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan' },
-      },
-      {
-        path: 'qryManage/logAnalyse',
-        component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
-        meta: { title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan' },
-      },
-    ],
-  },
-  {
-    path: '/inspections',
-    component: Layout,
-    meta: { title: '检验检查', icon: 'iconfont icon-jiancha' },
-    children: [
-      {
-        path: 'inspectionReportIndex',
-        name: '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: 'mixLabelPrinter',
-        component: createNameComponent(() => import('@/views/examination/MixLabelPrinter.vue')),
-        meta: { title: '混采标签打印', icon: 'iconfont icon-jianyanbaogao' },
-      },
-    ],
-  },
-  {
-    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: '/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',
+                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: 'inpatient/admissVerification',
+                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/AdmissVerification.vue')),
+                meta: {title: '入院登记审核', icon: 'iconfont icon-yibaoshenhe'},
+            },
+            {
+                path: 'inpatient/medInsVerification',
+                component: createNameComponent(() => import('@/views/medical-insurance/inpatient/SettleVerification.vue')),
+                meta: {title: '出院结算审核', icon: 'iconfont icon-yibaoshenhe'},
+            },
+            {
+                path: 'outpatient/mzRegister',
+                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzRegister.vue')),
+                meta: {title: '门诊登记', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'outpatient/mzSpltryRcrd',
+                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/MzSpltryRcrd.vue')),
+                meta: {title: '门诊补录', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'outpatient/spcChrRcd',
+                component: createNameComponent(() => import('@/views/medical-insurance/outpatient/SpcChrRcd.vue')),
+                meta: {title: '慢特病备案', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/catalogue',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/Catalogue.vue')),
+                meta: {title: '目录管理', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/psnInfo',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/PsnInfo.vue')),
+                meta: {title: '医保身份查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/inhospInfo',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/InhospInfo.vue')),
+                meta: {title: '在院查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/visitInfo',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/VisitInfo.vue')),
+                meta: {title: '就诊信息查询', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/siSettleDetailList',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SiSettleDetailList.vue')),
+                meta: {title: '医保结算单', icon: 'iconfont icon-zhuyuanqingdan'},
+            },
+            {
+                path: 'qryManage/setllistReconciliation',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetllistReconciliation.vue')),
+                meta: {title: '结算与对账', icon: 'iconfont icon-menzhenteshubingdingdianbiangeng2'},
+            },
+            {
+                path: 'qryManage/setSheetUpload',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetSheetUpload.vue')),
+                meta: {title: '结算单上传', icon: 'iconfont icon-jiesuandanshangchuan'},
+            },
+            {
+                path: 'qryManage/setlStatistics',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/SetlStatistics.vue')),
+                meta: {title: '结算统计', icon: 'iconfont icon-zhuyuanqingdan'},
+            },
+            {
+                path: 'qryManage/logAnalyse',
+                component: createNameComponent(() => import('@/views/medical-insurance/allpatient/LogAnalyse.vue')),
+                meta: {title: '日志分析', icon: 'iconfont icon-zhuyuanqingdan'},
+            },
+        ],
+    },
+    {
+        path: '/inspections',
+        component: Layout,
+        meta: {title: '检验检查', icon: 'iconfont icon-jiancha'},
+        children: [
+            {
+                path: 'inspectionReportIndex',
+                name: '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: 'mixLabelPrinter',
+                component: createNameComponent(() => import('@/views/examination/MixLabelPrinter.vue')),
+                meta: {title: '混采标签打印', icon: 'iconfont icon-jianyanbaogao'},
+            },
+        ],
+    },
+    {
+        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/fillAdverseEvent',
-        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
-        meta: { title: '不良事件上报', icon: 'iconfont icon-buliangshijian' },
-      },
-      {
-        path: 'advrsEvnt/dealAdverseEvent',
-        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
-        meta: { title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli' },
-      },
-      {
-        path: 'advrsEvnt/allAdverseEvent',
-        component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
-        meta: { title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong' },
-      },
-      {
-        path: 'casefrntsht/fillCaseFrontSheet',
-        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
-        meta: { title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie' },
-      },
-      {
-        path: 'casefrntsht/allCaseFrontSheet',
-        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
-        meta: { title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x' },
-      },
-      {
-        path: 'casefrntsht/jieShouHuiZhen',
-        component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
-        meta: { title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen' },
-      },
-      {
-        path: 'zhuYuanYiSheng',
-        redirect: '', //
-        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/Home.vue')),
-        meta: { title: '住院医生', passRule: true },
+    {
+        path: '/inpatient',
+        component: Layout,
+        meta: {title: '住院模块', icon: 'iconfont icon-yiyuan'},
         children: [
-          {
-            path: 'xinZengShuJu',
-            name: 'xinZengShuJu',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/XinZengShuJu.vue')),
-            meta: { title: '新增数据', hideTabs: true, blankPage: true },
-          },
-          {
-            path: 'yiZhuLuRu',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/YiZhuLuRu.vue')),
-            meta: {
-              title: '医嘱录入',
-              hideTabs: true,
-              icon: 'iconfont icon-yizhuluru',
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-              parentName: '住院医生',
-            },
-          },
-          {
-            path: 'huiZhenShenQing',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/HuiZhenShenQing.vue')),
-            meta: {
-              title: '会诊申请',
-              hideTabs: true,
-              icon: 'iconfont icon-huizhenshenqing',
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-            },
-          },
-          {
-            path: 'jianChaShenQing',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianChaShenQing.vue')),
-            meta: {
-              title: '检查申请',
-              hideTabs: true,
-              icon: 'iconfont icon-jianchashenqing',
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-            },
-          },
-          {
-            path: 'jianYanShenQing',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianYanShenQing.vue')),
-            meta: {
-              title: '检验申请',
-              hideTabs: true,
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-            },
-          },
-          {
-            path: 'shouShuShenQing',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/shou-shu-shen-qing/ShouShuShenQing.vue')),
-            meta: {
-              title: '查看手术',
-              hideTabs: true,
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-            },
-          },
-          {
-            path: 'caoYaoYiZhu',
-            component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/cao-yao-yi-zhu/ChaXunChaoYaoYiZhu.vue')),
-            meta: {
-              title: '查看草药医嘱',
-              hideTabs: true,
-              passRule: true,
-              activeMenu: '/inpatient/zhuYuanYiSheng',
-            },
-          },
+            {
+                path: 'makeDbzFees',
+                component: createNameComponent(() => import('@/views/hospitalization/MakeDbzFees.vue')),
+                meta: {title: '单病种费用生成', icon: 'iconfont icon-danbingzhong'},
+            },
+            {
+                path: 'advrsEvnt/fillAdverseEvent',
+                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/FillAderverseEvent.vue')),
+                meta: {title: '不良事件上报', icon: 'iconfont icon-buliangshijian'},
+            },
+            {
+                path: 'advrsEvnt/dealAdverseEvent',
+                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/DealAdverseEvent.vue')),
+                meta: {title: '不良事件处理', icon: 'iconfont icon-buliangshijianchuli'},
+            },
+            {
+                path: 'advrsEvnt/allAdverseEvent',
+                component: createNameComponent(() => import('@/views/hospitalization/adverse-event/AllAdverseEvent.vue')),
+                meta: {title: '不良事件汇总', icon: 'iconfont icon-buliangshijianhuizong'},
+            },
+            {
+                path: 'casefrntsht/fillCaseFrontSheet',
+                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/FillCaseFrontSheet.vue')),
+                meta: {title: '病案首页填写', icon: 'iconfont icon-binganshouyetianxie'},
+            },
+            {
+                path: 'casefrntsht/allCaseFrontSheet',
+                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/AllCaseFrontSheet.vue')),
+                meta: {title: '病案首页汇总', icon: 'iconfont icon-binganshouye3x'},
+            },
+            {
+                path: 'casefrntsht/jieShouHuiZhen',
+                component: createNameComponent(() => import('@/views/hospitalization/case-front-sheet/JieShouHuiZhen.vue')),
+                meta: {title: '接收会诊', icon: 'iconfont icon-jieshouhuizhen'},
+            },
+            {
+                path: 'zhuYuanYiSheng',
+                redirect: '', //
+                component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/Home.vue')),
+                meta: {title: '住院医生', passRule: true},
+                children: [
+                    {
+                        path: 'xinZengShuJu',
+                        name: 'xinZengShuJu',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/XinZengShuJu.vue')),
+                        meta: {title: '新增数据', hideTabs: true, blankPage: true},
+                    },
+                    {
+                        path: 'yiZhuLuRu',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/yi-zhu-lu-ru/YiZhuLuRu.vue')),
+                        meta: {
+                            title: '医嘱录入',
+                            hideTabs: true,
+                            icon: 'iconfont icon-yizhuluru',
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                            parentName: '住院医生',
+                        },
+                    },
+                    {
+                        path: 'huiZhenShenQing',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/HuiZhenShenQing.vue')),
+                        meta: {
+                            title: '会诊申请',
+                            hideTabs: true,
+                            icon: 'iconfont icon-huizhenshenqing',
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                        },
+                    },
+                    {
+                        path: 'jianChaShenQing',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianChaShenQing.vue')),
+                        meta: {
+                            title: '检查申请',
+                            hideTabs: true,
+                            icon: 'iconfont icon-jianchashenqing',
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                        },
+                    },
+                    {
+                        path: 'jianYanShenQing',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/jian-cha-jian-yan-shen-qing/JianYanShenQing.vue')),
+                        meta: {
+                            title: '检验申请',
+                            hideTabs: true,
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                        },
+                    },
+                    {
+                        path: 'shouShuShenQing',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/shou-shu-shen-qing/ShouShuShenQing.vue')),
+                        meta: {
+                            title: '查看手术',
+                            hideTabs: true,
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                        },
+                    },
+                    {
+                        path: 'caoYaoYiZhu',
+                        component: createNameComponent(() => import('@/views/hospitalization/zhu-yuan-yi-sheng/cao-yao-yi-zhu/ChaXunChaoYaoYiZhu.vue')),
+                        meta: {
+                            title: '查看草药医嘱',
+                            hideTabs: true,
+                            passRule: true,
+                            activeMenu: '/inpatient/zhuYuanYiSheng',
+                        },
+                    },
+                ],
+            },
         ],
-      },
-    ],
-  },
+    },
 
-  {
-    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/untriaged',
-        component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
-        meta: { title: '未分诊', icon: 'iconfont icon-weifenzhen' },
-      },
-      {
-        path: 'triage/triaged',
-        component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
-        meta: { title: '已分诊', icon: 'iconfont icon-yifenzhen' },
-      },
-      {
-        path: 'triage/allTriages',
-        component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
-        meta: { title: '所有挂号', icon: 'iconfont icon-suoyou' },
-      },
-      {
-        path: 'triage/triageDeptSettings',
-        component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
-        meta: { title: '科室设置', icon: 'iconfont icon-keshi' },
-      },
-      {
-        path: 'triage/triageRoomSettings',
-        component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
-        meta: { title: '诊室设置', icon: 'iconfont icon-zhenshiguanli' },
-      },
-      {
-        path: 'triage/triageIpManagement',
-        component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
-        meta: { title: 'IP管理', icon: 'iconfont icon-ip' },
-      },
-      {
-        path: 'triage/triageDisplaySettings',
-        component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
-        meta: { title: '显示管理', icon: 'iconfont icon-xianshishezhi' },
-      },
-      {
-        path: 'triage/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: '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/userRoleSettings',
-        component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
-        meta: { title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli' },
-      },
-      {
-        path: 'permission/roleMenuSettings',
-        component: createNameComponent(() => import('@/views/settings/permissions/RoleMenuSettings.vue')),
-        meta: { title: '角色菜单管理', icon: 'iconfont icon-juesecaidanguanli' },
-      },
-    ],
-  },
+    {
+        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/untriaged',
+                component: createNameComponent(() => import('@/views/clinic/triage/Untriaged.vue')),
+                meta: {title: '未分诊', icon: 'iconfont icon-weifenzhen'},
+            },
+            {
+                path: 'triage/triaged',
+                component: createNameComponent(() => import('@/views/clinic/triage/Triaged.vue')),
+                meta: {title: '已分诊', icon: 'iconfont icon-yifenzhen'},
+            },
+            {
+                path: 'triage/allTriages',
+                component: createNameComponent(() => import('@/views/clinic/triage/AllTriages.vue')),
+                meta: {title: '所有挂号', icon: 'iconfont icon-suoyou'},
+            },
+            {
+                path: 'triage/triageDeptSettings',
+                component: createNameComponent(() => import('@/views/clinic/triage/DeptSettings.vue')),
+                meta: {title: '科室设置', icon: 'iconfont icon-keshi'},
+            },
+            {
+                path: 'triage/triageRoomSettings',
+                component: createNameComponent(() => import('@/views/clinic/triage/RoomSettings.vue')),
+                meta: {title: '诊室设置', icon: 'iconfont icon-zhenshiguanli'},
+            },
+            {
+                path: 'triage/triageIpManagement',
+                component: createNameComponent(() => import('@/views/clinic/triage/IpManagement.vue')),
+                meta: {title: 'IP管理', icon: 'iconfont icon-ip'},
+            },
+            {
+                path: 'triage/triageDisplaySettings',
+                component: createNameComponent(() => import('@/views/clinic/triage/DisplaySettings.vue')),
+                meta: {title: '显示管理', icon: 'iconfont icon-xianshishezhi'},
+            },
+            {
+                path: 'triage/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: '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/userRoleSettings',
+                component: createNameComponent(() => import('@/views/settings/permissions/UserRoleSettings.vue')),
+                meta: {title: '人员角色管理', icon: 'iconfont icon-renyuanjueseguanli'},
+            },
+            {
+                path: 'permission/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

+ 7 - 10
src/views/hospitalization/zhu-yuan-yi-sheng/XinZengShuJu.vue

@@ -19,7 +19,6 @@ import {ElNotification} from "element-plus";
 import {cuoWuXinXi, huanZheXinXi} from "@/views/hospitalization/zhu-yuan-yi-sheng/public-js/zhu-yuan-yi-sheng";
 import {stringIsBlank} from "@/utils/blank-utils";
 import store from '@/store'
-import {huoQuYuanGongXinXi} from "@/api/public-api";
 
 export default {
   name: "XinZengShuJu",
@@ -27,15 +26,12 @@ export default {
   setup() {
     const name = ref('')
 
-    let userInfo = $ref({})
+    let userInfo = computed(() => {
+      return store.state.user.info
+    })
 
-    let notify = null
 
-    onMounted(() => {
-      huoQuYuanGongXinXi(store.state.user.info.code).then((res) => {
-        userInfo = res
-      })
-    })
+    let notify = null
 
     onActivated(() => {
       name.value = ''
@@ -54,10 +50,11 @@ export default {
       } else {
         notify = ElNotification({
           type: 'warning',
-          message: `医生:【${userInfo.name}】您现在进入新增数据<br>您的医保编码:${userInfo.ybCode}<br>正在编辑患者<span style="color: teal">【${huanZheXinXi.value.name}】</span><br>正在编辑【${name.value}】`,
+          message: `医生:【${userInfo.value.name}】您现在进入新增数据<br>您的医保编码:${userInfo.value.ybCode}<br>正在编辑患者<span style="color: teal">【${huanZheXinXi.value.name}】</span><br>正在编辑【${name.value}】`,
           duration: 0,
           dangerouslyUseHTMLString: true,
-          showClose: false
+          showClose: true,
+          position: 'bottom-right',
         })
       }
     })