You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

853 lines
30 KiB

import Vue from "vue";
import VueRouter from "vue-router";
import vuex from "vuex"
import store from "../store";
// import HomeView from "../views/HomeView.vue";
import login from "@/views/login/Login.vue";
Vue.use(VueRouter);
// const originalpush = VueRouter.prototype.push
// VueRouter.prototype.push = function (location) {
// return originalpush.call(this, location).catch(err => err)
// }
const routes = [{
path: "/",
component: login,
},
{
path: "/login",
name: "login",
component: login,
},
{
path: "/home",
name: "home",
component: () =>
import ("../views/Home.vue"),
children: [
// 权限管理 ------------------------------- start -------------------------------
{
path: "/organization-units",
name: "科室设置",
component: () =>
import ("../views/user-list/OrganizationUnits.vue"),
},
{
path: "/role",
name: "角色管理",
component: () =>
import ("../views/user-list/Role.vue"),
},
{
path: "/user-list",
name: "用户管理",
component: () =>
import ("../views/user-list/UserList.vue"),
},
{
path: "/audit-log",
name: "安全日志",
component: () =>
import ("../views/user-list/AuditLog.vue"),
},
{
path: "/menuPage",
name: "菜单与页面",
component: () =>
import ("../views/menuPage/menuPage.vue"),
},
{
path: "/directorManaMenu",
name: "主任管理菜单",
component: () =>
import ("../views/menuPage/directorManaMenu.vue"),
},
// 权限管理 ------------------------------- end -------------------------------
{
path: "/guide-type",
name: "指引单类别",
component: () =>
import ("../views/basic-dictionary/GuideType.vue"),
},
{
path: "/medical-report-type",
name: "体检报告类别",
component: () =>
import ("../views/basic-dictionary/MedicalReportType.vue"),
},
{
path: "/sex",
name: "人员性别",
component: () =>
import ("../views/basic-dictionary/Sex.vue"),
},
{
path: "/marital-status",
name: "婚姻状况",
component: () =>
import ("../views/basic-dictionary/MaritalStatus.vue"),
},
{
path: "/nation",
name: "民族",
component: () =>
import ("../views/basic-dictionary/Nation.vue"),
},
{
path: "/birth-place",
name: "籍贯",
component: () =>
import ("../views/basic-dictionary/BirthPlace.vue"),
},
{
path: "/result-status",
name: "结果状态",
component: () =>
import ("../views/basic-dictionary/ResultStatus.vue"),
},
{
path: "/medical-type",
name: "体检类别",
component: () =>
import ("../views/basic-dictionary/MedicalType.vue"),
},
{
path: "/personnel-type",
name: "人员类别",
component: () =>
import ("../views/basic-dictionary/PersonnelType.vue"),
},
{
path: "/device-type",
name: "仪器类别",
component: () =>
import ("../views/basic-dictionary/DeviceType.vue"),
},
{
path: "/sample-type",
name: "标本类型",
component: () =>
import ("../views/basic-dictionary/SampleType.vue"),
},
{
path: "/unit",
name: "计量单位",
component: () =>
import ("../views/basic-dictionary/Unit.vue"),
},
{
path: "/diagnosis-postfix",
name: "诊断后缀",
component: () =>
import ("../views/basic-dictionary/DiagnosisPostfix.vue"),
},
{
path: "/medical-conclusion-type",
name: "体检结论类别",
component: () =>
import ("../views/basic-dictionary/MedicalConclusionType.vue"),
},
{
path: "/applicable-gender",
name: "适用性别",
component: () =>
import ("../views/basic-dictionary/ApplicableGender.vue"),
},
{
path: "/unit-nature",
name: "单位性质",
component: () =>
import ("../views/basic-dictionary/UnitNature.vue"),
},
{
path: "/character-categories",
name: "常用字符类别",
component: () =>
import ("../views/basic-dictionary/CharacterCategories.vue"),
},
{
path: "/common-characters",
name: "常用字符",
component: () =>
import ("../views/basic-dictionary/CommonCharacters.vue"),
},
{
path: "/medical-conclusion",
name: "体检结论",
component: () =>
import ("../views/basic-dictionary/MedicalConclusion.vue"),
},
{
path: "/sample-container",
name: "标本容器",
component: () =>
import ("../views/basic-dictionary/SampleContainer.vue"),
},
{
path: "/customer-org-type",
name: "客户单位类别",
component: () =>
import ("../views/basic-dictionary/CustomerOrgType.vue"),
},
{
path: "/item-default-result",
name: "项目默认结果",
component: () =>
import ("../views/basic-dictionary/ItemDefaultResult.vue"),
},
{
path: "/sex-hormone-duration",
name: "性激素期限",
component: () =>
import ("../views/basic-dictionary/SexHormoneDuration.vue"),
},
{
path: "/diagnosis-level",
name: "诊断级别",
component: () =>
import ("../views/basic-dictionary/DiagnosisLevel.vue"),
},
{
path: "/diagnosisSet",
name: '诊断建议设置',
component: () =>
import ("../views/diagnosis/diagnosis.vue"),
},
{
path: "/field-comparison-interface",
name: '字段对照接口',
component: () =>
import ("../views/basic-dictionary/FieldComparisonInterface.vue"),
},
{
path: "/field-comparison",
name: '字段对照',
component: () =>
import ("../views/basic-dictionary/FieldComparison.vue"),
},
{
path: "/third-party-interfaces",
name: '第三方接口',
component: () =>
import ("../views/basic-dictionary/ThirdPartyInterfaces.vue"),
},
{
path: "/commonTable",
name: '公共表',
component: () =>
import ("../components/commonTable/commonTableType.vue"),
},
{
path: "/thirdMedicalCenter",
name: '第三方体检中心',
component: () =>
import ("../components/third/thirdMedicalCenter.vue"),
},
{
path: "/summary-items",
name: '汇总项目类别',
component: () =>
import ("../views/basic-dictionary/SummaryItems.vue"),
},
{
path: "/room",
name: '分诊叫号房间设置',
component: () =>
import ("../components/room/room.vue"),
},
{
path: "/critical-value-category",
name: '危急值类别',
component: () =>
import ("../views/fee-settings/CriticalValueCategory.vue"),
},
{
path: "/critical-value",
name: '危急值',
component: () =>
import ("../views/fee-settings/CriticalValue.vue"),
},
{
path: "/device",
name: '仪器设备',
component: () =>
import ("../views/fee-settings/Device.vue"),
},
//---------------------- 收费设置 start ----------------------
{
path: "/invoice-item-type",
name: "发票项目类别",
component: () =>
import ("../views/fee-settings/InvoiceItemType.vue"),
},
{
path: "/pay-mode",
name: "支付方式",
component: () =>
import ("../views/fee-settings/PayMode.vue"),
},
{
path: "/cardType",
name: "会员卡类别",
component: () =>
import ("../views/fee-settings/cardType.vue"),
},
{
path: "/cardRegister",
name: "会员卡管理",
component: () =>
import ("../views/fee-settings/cardRegister.vue"),
},
{
path: "/cardBill",
name: "会员卡记账记录",
component: () =>
import ("../views/fee-settings/cardBill.vue"),
},
{
path: "/cardBillSum",
name: "会员卡记账统计",
component: () =>
import ("../views/fee-settings/cardBillSum.vue"),
},
//---------------------- 收费设置 start ----------------------
{
path: "/item-type",
name: "项目类别",
component: () =>
import ("../views/common-settings/ItemType.vue"),
},
{
path: "/sample-group",
name: '条码分组',
component: () =>
import ("../views/common-settings/SampleGroup.vue"),
},
{
path: "/asbitem",
name: "组合项目",
component: () =>
import ("../views/fee-settings/Asbitem.vue"),
},
{
path: "/item",
name: '项目设置',
component: () =>
import ("../views/fee-settings/Item.vue"),
},
{
path: "/reference-range",
component: () =>
import ("../views/fee-settings/ReferenceRange.vue"),
},
{
path: "/diagnosis",
component: () =>
import ("../views/fee-settings/Diagnosis.vue"),
hidden: true,
// meta: {
// title: '诊断',
// menu
// }
meat: {
title: "诊断",
noCache: true,
menus: ["diagosis:advertDemandRelease"],
},
},
{
path: "/item-template",
name: "项目模板",
component: () =>
import ("../views/fee-settings/ItemTemplate.vue"),
},
{
path: "/medicalPackage", // medical-package
name: "套餐设置",
component: () =>
import ("../views/common-settings/medicalPackage.vue"), //../views/fee-settings/MedicalPackage.vue
},
{
path: "/sex-hormone-reference-range",
component: () =>
import ("../views/fee-settings/SexHormoneReferenceRange.vue"),
},
{
path: "/diagnosis-template",
name: "诊断模板",
component: () =>
import ("../views/fee-settings/DiagnosisTemplate.vue"),
},
{
path: "/sys-parm-type",
name: "系统参数",
component: () =>
import ("../views/fee-settings/SysParmSet.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/disease-screening",
name: "疾病筛查类别",
component: () =>
import ("../views/basic-dictionary/DiseaseScreening.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/toxic-categories",
name: "毒害类别",
component: () =>
import ("../views/basic-dictionary/ToxicCategories.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/toxic-factors",
name: "毒害因素",
component: () =>
import ("../views/basic-dictionary/ToxicFactors.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/symptom-settings",
name: "症状设置",
component: () =>
import ("../views/basic-dictionary/SymptomSettings.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/protective-measures",
name: "防护措施",
component: () =>
import ("../views/basic-dictionary/ProtectiveMeasures.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/oc-check-type",
name: "职业病检查类别",
component: () =>
import ("../views/basic-dictionary/OcCheckType.vue"), //../views/fee-settings/SysParmType.vue
},
{
path: "/occCheckConclusion",
name: "职业病检查结论",
component: () =>
import ("../views/basic-dictionary/occCheckConclusion.vue"), //../views/fee-settings/SysParmType.vue
},
//---------------------- 体检登记 start ----------------------
{
path: "/customerOrg",
name: "体检单位设置",
component: () =>
import ("../views/customerOrg/customerOrg.vue"),
},
{
path: "/customerOrgGroup",
name: "体检单位分组",
component: () =>
import ("../views/customerOrg/customerOrgGroup.vue"),
},
{
path: "/patientRegister",
name: "体检人员登记",
component: () =>
import ("../views/customerOrg/patientRegister.vue"),
},
{
path: "/patientRegisterSign",
name: "体检人员签到",
component: () =>
import ("../views/customerOrg/patientRegisterSign.vue"),
},
{
path: "/patientRegisterBatch",
name: "人员批量预登记",
component: () =>
import ("../views/customerOrg/patientRegisterImport.vue"), //../views/doctorCheck/personnelBatch.vue
},
{
path: "/busReservationImport",
name: "公交预约导入",
component: () =>
import ("../views/customerOrg/BusReservationImport.vue"), //../views/doctorCheck/personnelBatch.vue
},
{
path: "/patientRegisterRecover",
name: "体检表回收",
component: () =>
import ("../views/customerOrg/patientRegisterRecover.vue"),
},
{
path: "/patientRegisterRefuse",
name: "弃检登记",
component: () =>
import ("../views/customerOrg/patientRegisterRefuse.vue"),
},
{
path: "/patientRegisterMedical",
name: "体检中心调整",
component: () =>
import ("../views/customerOrg/patientRegisterMedical.vue"),
},
{
path: "/charge",
name: "体检收费",
component: () =>
import ("../views/charge/charge.vue"),
},
{
path: "/patientLis",
name: "条码打印",
component: () =>
import ("../views/customerOrg/patientLis.vue"),
},
//---------------------- 体检登记 end ----------------------
//---------------------- 体 检 start ----------------------
{
path: "/doctorCheck",
name: "体检医生诊台",
component: () =>
import ("../views/doctorCheck/doctorCheck.vue")
},
{
path: "/sumDoctorCheck",
name: "总检医生诊台",
component: () =>
import ("../views/doctorCheck/sumDoctorCheck.vue"),
},
{
path: "/pacsBrower",
name: "pacs看图",
component: () =>
import ("../components/doctorCheck/PacsDcmList.vue"),
},
{
path: "/checkPicImport",
name: "批量导入图片",
component: () =>
import ("../views/doctorCheck/checkPicImport.vue"),
},
{
path: "/lisResultImport",
name: "从文件导入检验结果",
component: () =>
import ("../views/doctorCheck/lisResultImport.vue"),
},
{
path: "/follow",
name: "随访管理",
component: () =>
import ("../components/follow/follow.vue"),
},
{
path: "/tabletCalling",
name: "平板叫号",
component: () =>
import ("../views/doctorCheck/tabletCalling.vue"),
},
{
path: "/LisTakeSample",
name: "样本采集",
component: () =>
import ("../views/lis/LisTakeSample.vue"),
},
{
path: "/pacsRequest",
name: "pacs申请",
component: () =>
import ("../views/lis/pacsRequest.vue"),
},
//---------------------- 体 检 end ----------------------
//---------------------- 体检查询 start ----------------------
{
path: "/report",
name: "体检报告",
component: () =>
import ("../views/report/report.vue"),
},
{
path: "/TurnoverReport",
name: "营业额统计(单位)",
component: () =>
import ("../components/report/TurnoverReport.vue"),
},
{
path: "/TurnoverReportM",
name: "营业额统计(体检类别)",
component: () =>
import ("../components/report/TurnoverReportM.vue"),
},
{
path: "/TurnoverReportP",
name: "营业额统计(人员类别)",
component: () =>
import ("../components/report/TurnoverReportP.vue"),
},
{
path: "/TurnoverReportS",
name: "营业额统计(业务员)",
component: () =>
import ("../components/report/TurnoverReportS.vue"),
},
{
path: "/TurnoverReportDetails",
name: "营业额统计(明细)",
component: () =>
import ("../components/report/TurnoverReportDetails.vue"),
},
{
path: "/TurnoverReportReal",
name: "营业额统计(实收)",
component: () =>
import ("../components/report/TurnoverReportReal.vue"),
},
{
path: "/AppointQuery",
name: "网上预约汇总",
component: () =>
import ("../components/report/AppointQuery.vue"),
},
{
path: "/NationHealthReport",
name: "上报国家平台数据",
component: () =>
import ("../components/report/NationHealthReport.vue"),
},
{
path: "/checkStatus",
name: "组合项目检查状态",
component: () =>
import ("../views/report/checkStatus.vue"),
},
{
path: "/chargeAsbitem",
name: "人员费用组合项目",
component: () =>
import ("../views/report/chargeAsbitem.vue"),
},
{
path: "/recoverQuery",
name: "回收表格查询",
component: () =>
import ("../components/patientRegister/patientRegisterRecoverListQuery.vue"),
},
{
path: "/deptProgress",
name: "科室进度查询",
component: () =>
import ("../components/report/deptProgress.vue"),
},
{
path: "/unCheckAsbitem",
name: "人员未检组合项目",
component: () =>
import ("../views/report/unCheckAsbitem.vue"),
},
//---------------------- 体检查询 end ----------------------
//---------------------- 体 检 end ----------------------
//---------------------- 疾病人数登记 ----------------------
{
path: "/diseaseStatistics",
name: "疾病人数统计",
component: () =>
import ("../views/customerReport/diseaseStatistics.vue"),
},
{
path: "/positiveResultsList",
name: "阳性结果人员",
component: () =>
import ("../views/customerReport/positiveResultsList.vue"),
},
{
path: "/unitphysicalexamination",
name: "单位体检报表",
component: () =>
import ("../views/doctorCheck/unitphysicalexamination.vue"),
},
{
path: "/occReport",
name: "单位职业病汇总报表",
component: () =>
import ("../components/occDisease/occReport.vue"),
},
{
path: "/personnelPositive",
name: "人员阳性结果",
component: () =>
import ("../views/customerReport/personnelPositive.vue")
},
{
path: "/combinationDetails",
name: "组合项目具体结果统计",
component: () =>
import ("../views/customerReport/combinationDetails.vue")
},
{
path: "/detailedIitems",
name: "明细项目具体结果统计",
component: () =>
import ("../views/customerReport/detailedIitems.vue")
},
{
path: "/unitSettlement",
name: "单位体检收费结算",
component: () =>
import ("../views/customerReport/unitSettlement.vue")
},
{
path: "/unitStatistics",
name: "单位费用汇总",
component: () =>
import ("../views/customerReport/unitStatistics.vue")
},
{
path: "/unitPersonInspected",
name: "单位个人已检统计",
component: () =>
import ("../views/customerReport/unitPersonInspected.vue")
},
//---------------------- 工作量登记 ----------------------
{
path: "/registrar",
name: "登记员工作量统计",
component: () =>
import ("../views/workload/registrar.vue"),
},
{
path: "/doctorstaionworkload",
name: "医生工作量统计",
component: () =>
import ("../views/workload/doctorstaionworkload.vue"),
},
{
path: "/directordoctor",
name: "总检医生工作量统计",
component: () =>
import ("../views/workload/directordoctor.vue"),
},
{
path: "/examinedoctor",
name: "审核医生工作量统计",
component: () =>
import ("../views/workload/examinedoctor.vue"),
},
{
path: "/peisworkload",
name: "体检工作量统计",
component: () =>
import ("../views/workload/peisworkload.vue"),
},
{
path: "/deskwork",
name: "科室工作量统计",
component: () =>
import ("../views/workload/deskwork.vue"),
},
{
path: "/collectionbloodnurse",
name: "采血护士工作量统计",
component: () =>
import ("../views/workload/collectionbloodnurse.vue"),
},
{
path: "/tollcollector",
name: "收费员报表",
component: () =>
import ("../views/workload/tollcollector.vue"),
},
{
path: "/individualfeedetails",
name: "个人收费明细",
component: () =>
import ("../views/workload/individualfeedetails.vue"),
},
{
path: "/peispersontime",
name: "体检人次汇总",
component: () =>
import ("../views/workload/peispersontime.vue"),
},
{
path: "/departmentalfees",
name: "科室收费汇总",
component: () =>
import ("../views/workload/departmentalfees.vue"),
},
{
path: "/feeforservice",
name: "项目收费汇总",
component: () =>
import ("../views/workload/feeforservice.vue"),
},
{
path: "/summaryoftollcollectors",
name: "收费员收费汇总",
component: () =>
import ("../views/workload/summaryoftollcollectors.vue"),
},
{
path: "/financialsettlement",
name: "财务结算",
component: () =>
import ("../views/workload/financialsettlement.vue"),
},
{
path: "/membershipcard",
name: "会员卡收费统计",
component: () =>
import ("../views/workload/membershipcard.vue"),
},
{
path: "/LocalConfig",
name: "本地设置",
component: () =>
import ("../components/common/LocalConfig.vue"),
},
// pacs词条
{
path: "/BigtextResultType",
name: "词条类别",
component: () =>
import ("../views/common-settings/BigtextResultType.vue"),
},
{
path: "/ResultTemplate",
name: "词条模版",
component: () =>
import ("../views/fee-settings/BigtextResultTemplate.vue"),
},
{
path: "/ResultSetting",
name: "词条设置",
component: () =>
import ("../views/fee-settings/ResultSetting.vue"),
},
],
},
];
const router = new VueRouter({
//mode: "history",
//base: process.env.BASE_URL,
routes,
});
router.beforeEach((to, from, next) => {
store.commit('getMenu')
let token = window.sessionStorage.getItem("token");
let tokentype = window.sessionStorage.getItem("tokentype");
if (to.path == "/login") {
if (token != null) {
next({
path: "/",
});
} else {
next();
}
} else {
if (token == null) {
next({
path: "/login",
});
} else {
next();
}
}
});
export default router;