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.

456 lines
16 KiB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
  1. import Vue from "vue";
  2. import VueRouter from "vue-router";
  3. // import HomeView from "../views/HomeView.vue";
  4. import login from "@/views/login/Login.vue";
  5. Vue.use(VueRouter);
  6. // const originalpush = VueRouter.prototype.push
  7. // VueRouter.prototype.push = function (location) {
  8. // return originalpush.call(this, location).catch(err => err)
  9. // }
  10. const routes = [{
  11. path: "/",
  12. component: login,
  13. },
  14. {
  15. path: "/login",
  16. name: "login",
  17. component: () =>
  18. import ("../views/login/Login.vue"),
  19. },
  20. {
  21. path: "/home",
  22. name: "home",
  23. component: () =>
  24. import ("../views/Home.vue"),
  25. children: [{
  26. path: "/role",
  27. component: () =>
  28. import ("../views/user-list/Role.vue"),
  29. },
  30. {
  31. path: "/user-list",
  32. component: () =>
  33. import ("../views/user-list/UserList.vue"),
  34. },
  35. {
  36. path: "/organization-units",
  37. component: () =>
  38. import ("../views/user-list/OrganizationUnits.vue"),
  39. },
  40. {
  41. path: "/audit-log",
  42. component: () =>
  43. import ("../views/user-list/AuditLog.vue"),
  44. },
  45. {
  46. path: "/guide-type",
  47. component: () =>
  48. import ("../views/basic-dictionary/GuideType.vue"),
  49. },
  50. {
  51. path: "/medical-report-type",
  52. component: () =>
  53. import ("../views/basic-dictionary/MedicalReportType.vue"),
  54. },
  55. {
  56. path: "/sex",
  57. component: () =>
  58. import ("../views/basic-dictionary/Sex.vue"),
  59. },
  60. {
  61. path: "/marital-status",
  62. component: () =>
  63. import ("../views/basic-dictionary/MaritalStatus.vue"),
  64. },
  65. {
  66. path: "/nation",
  67. component: () =>
  68. import ("../views/basic-dictionary/Nation.vue"),
  69. },
  70. {
  71. path: "/birth-place",
  72. component: () =>
  73. import ("../views/basic-dictionary/BirthPlace.vue"),
  74. },
  75. {
  76. path: "/result-status",
  77. component: () =>
  78. import ("../views/basic-dictionary/ResultStatus.vue"),
  79. },
  80. {
  81. path: "/medical-type",
  82. component: () =>
  83. import ("../views/basic-dictionary/MedicalType.vue"),
  84. },
  85. {
  86. path: "/personnel-type",
  87. component: () =>
  88. import ("../views/basic-dictionary/PersonnelType.vue"),
  89. },
  90. {
  91. path: "/device-type",
  92. component: () =>
  93. import ("../views/basic-dictionary/DeviceType.vue"),
  94. },
  95. {
  96. path: "/sample-type",
  97. component: () =>
  98. import ("../views/basic-dictionary/SampleType.vue"),
  99. },
  100. {
  101. path: "/unit",
  102. component: () =>
  103. import ("../views/basic-dictionary/Unit.vue"),
  104. },
  105. {
  106. path: "/diagnosis-postfix",
  107. component: () =>
  108. import ("../views/basic-dictionary/DiagnosisPostfix.vue"),
  109. },
  110. {
  111. path: "/medical-conclusion-type",
  112. component: () =>
  113. import ("../views/basic-dictionary/MedicalConclusionType.vue"),
  114. },
  115. {
  116. path: "/medical-conclusion",
  117. component: () =>
  118. import ("../views/basic-dictionary/MedicalConclusion.vue"),
  119. },
  120. {
  121. path: "/sample-container",
  122. component: () =>
  123. import ("../views/basic-dictionary/SampleContainer.vue"),
  124. },
  125. {
  126. path: "/common-char-type",
  127. component: () =>
  128. import ("../views/basic-dictionary/CommonCharType.vue"),
  129. },
  130. {
  131. path: "/common-char",
  132. component: () =>
  133. import ("../views/basic-dictionary/CommonChar.vue"),
  134. },
  135. {
  136. path: "/customer-org-type",
  137. component: () =>
  138. import ("../views/basic-dictionary/CustomerOrgType.vue"),
  139. },
  140. {
  141. path: "/item-default-result",
  142. component: () =>
  143. import ("../views/basic-dictionary/ItemDefaultResult.vue"),
  144. },
  145. {
  146. path: "/diagnosis-level",
  147. component: () =>
  148. import ("../views/basic-dictionary/DiagnosisLevel.vue"),
  149. },
  150. {
  151. path: "/diagnosisSet",
  152. name:'诊断建议设置',
  153. component: () =>
  154. import ("../views/diagnosis/diagnosis.vue"),
  155. },
  156. //---------------------- 收费设置 start ----------------------
  157. {
  158. path: "/invoice-item-type",
  159. component: () =>
  160. import ("../views/fee-settings/InvoiceItemType.vue"),
  161. },
  162. {
  163. path: "/pay-mode",
  164. component: () =>
  165. import ("../views/fee-settings/PayMode.vue"),
  166. },
  167. {
  168. path: "/cardType",
  169. name: "会员卡类别",
  170. component: () =>
  171. import ("../views/fee-settings/cardType.vue"),
  172. },
  173. {
  174. path: "/cardRegister",
  175. name: "会员卡登记",
  176. component: () =>
  177. import ("../views/fee-settings/cardRegister.vue"),
  178. },
  179. {
  180. path: "/cardBill",
  181. name: "会员卡记账",
  182. component: () =>
  183. import ("../views/fee-settings/cardBill.vue"),
  184. },
  185. //---------------------- 收费设置 start ----------------------
  186. {
  187. path: "/item-type",
  188. component: () =>
  189. import ("../views/common-settings/ItemType.vue"),
  190. },
  191. {
  192. path: "/sample-group",
  193. component: () =>
  194. import ("../views/common-settings/SampleGroup.vue"),
  195. },
  196. {
  197. path: "/asbitem",
  198. component: () =>
  199. import ("../views/fee-settings/Asbitem.vue"),
  200. },
  201. {
  202. path: "/item",
  203. component: () =>
  204. import ("../views/fee-settings/Item.vue"),
  205. },
  206. {
  207. path: "/reference-range",
  208. component: () =>
  209. import ("../views/fee-settings/ReferenceRange.vue"),
  210. },
  211. {
  212. path: "/diagnosis",
  213. component: () =>
  214. import ("../views/fee-settings/Diagnosis.vue"),
  215. hidden: true,
  216. // meta: {
  217. // title: '诊断',
  218. // menu
  219. // }
  220. meat: {
  221. title: "诊断",
  222. noCache: true,
  223. menus: ["diagosis:advertDemandRelease"],
  224. },
  225. },
  226. {
  227. path: "/item-result-template",
  228. component: () =>
  229. import ("../views/fee-settings/ItemResultTemplate.vue"),
  230. },
  231. {
  232. path: "/item-result-match",
  233. component: () =>
  234. import ("../views/fee-settings/ItemResultMatch.vue"),
  235. },
  236. {
  237. path: "/item-template",
  238. component: () =>
  239. import ("../views/fee-settings/ItemTemplate.vue"),
  240. },
  241. {
  242. path: "/medical-package",
  243. component: () =>
  244. import ("../views/fee-settings/MedicalPackage.vue"),
  245. },
  246. {
  247. path: "/sex-hormone-reference-range",
  248. component: () =>
  249. import ("../views/fee-settings/SexHormoneReferenceRange.vue"),
  250. },
  251. {
  252. path: "/diagnosis-template",
  253. component: () =>
  254. import ("../views/fee-settings/DiagnosisTemplate.vue"),
  255. },
  256. {
  257. path: "/sys-parm-type",
  258. component: () =>
  259. import ("../views/fee-settings/SysParmSet.vue"), //../views/fee-settings/SysParmType.vue
  260. },
  261. //---------------------- 体检登记 start ----------------------
  262. {
  263. path: "/customerOrg",
  264. name: "体检单位设置",
  265. component: () =>
  266. import ("../views/customerOrg/customerOrg.vue"),
  267. },
  268. {
  269. path: "/customerOrgGroup",
  270. name: "单位分组设置",
  271. component: () =>
  272. import ("../views/customerOrg/customerOrgGroup.vue"),
  273. },
  274. {
  275. path: "/patientRegister",
  276. name: "体检人员登记",
  277. component: () =>
  278. import ("../views/customerOrg/patientRegister.vue"),
  279. },
  280. {
  281. path: "/patientRegisterSign",
  282. name: "体检人员签到",
  283. component: () =>
  284. import ("../views/customerOrg/patientRegisterSign.vue"),
  285. },
  286. {
  287. path: "/personnelBatch",
  288. name: "人员批量登记",
  289. component: () =>
  290. import ("../views/doctorCheck/personnelBatch.vue"),
  291. },
  292. {
  293. path: "/patientRegisterRecover",
  294. name: "体检表回收",
  295. component: () =>
  296. import ("../views/customerOrg/patientRegisterRecover.vue"),
  297. },
  298. {
  299. path: "/patientRegisterRefuse",
  300. name: "弃检登记",
  301. component: () =>
  302. import ("../views/customerOrg/patientRegisterRefuse.vue"),
  303. },
  304. {
  305. path: "/charge",
  306. name: "体检收费",
  307. component: () =>
  308. import ("../views/charge/charge.vue"),
  309. },
  310. //---------------------- 体检登记 start ----------------------
  311. //---------------------- 体 检 start ----------------------
  312. {
  313. path: "/doctorCheck",
  314. name: "体检医生诊台",
  315. component: () =>
  316. import ("../views/doctorCheck/doctorCheck.vue"),
  317. },
  318. {
  319. path: "/sumDoctorCheck",
  320. name: "总检医生诊台",
  321. component: () =>
  322. import ("../views/doctorCheck/sumDoctorCheck.vue"),
  323. },
  324. //---------------------- 体 检 end ----------------------
  325. //---------------------- 体检查询 start ----------------------
  326. {
  327. path: "/report",
  328. name: "体检报告",
  329. component: () =>
  330. import ("../views/report/report.vue"),
  331. },
  332. {
  333. path: "/checkStatus",
  334. name: "组合项目检查状态",
  335. component: () =>
  336. import ("../views/report/checkStatus.vue"),
  337. },
  338. {
  339. path: "/chargeAsbitem",
  340. name: "人员费用组合项目",
  341. component: () =>
  342. import ("../views/report/chargeAsbitem.vue"),
  343. },
  344. {
  345. path: "/unCheckAsbitem",
  346. name: "人员未检组合项目",
  347. component: () =>
  348. import ("../views/report/unCheckAsbitem.vue"),
  349. },
  350. //---------------------- 体检查询 end ----------------------
  351. //---------------------- 体 检 end ----------------------
  352. //---------------------- 疾病人数登记 ----------------------
  353. {
  354. path: "/diseaseStatistics",
  355. name: "疾病人数统计",
  356. component: () =>
  357. import ("../views/customerReport/diseaseStatistics.vue"),
  358. },
  359. {
  360. path: "/positiveResultsList",
  361. name: "阳性结果清单",
  362. component: () =>
  363. import ("../views/customerReport/positiveResultsList.vue"),
  364. },
  365. {
  366. path: "/unitphysicalexamination",
  367. name: "单位体检报表",
  368. component: () =>
  369. import ("../views/doctorCheck/unitphysicalexamination.vue"),
  370. },
  371. {
  372. path: "/personnelPositive",
  373. name: "人员阳性结果",
  374. component: () =>
  375. import ("../views/customerReport/personnelPositive.vue")
  376. },
  377. //---------------------- 工作量登记 ----------------------
  378. {
  379. path: "/registrar",
  380. name: "登记员工作量",
  381. component: () =>
  382. import ("../views/workload/registrar.vue"),
  383. },
  384. {
  385. path: "/doctorstaionworkload",
  386. name: "登记员工作量",
  387. component: () =>
  388. import ("../views/workload/doctorstaionworkload.vue"),
  389. },
  390. {
  391. path: "/directordoctor",
  392. name: "总检医生工作量",
  393. component: () =>
  394. import ("../views/workload/directordoctor.vue"),
  395. },
  396. {
  397. path: "/deskwork",
  398. name: "总检医生工作量",
  399. component: () =>
  400. import ("../views/workload/deskwork.vue"),
  401. },
  402. {
  403. path: "/tollcollector",
  404. name: "收费员",
  405. component: () =>
  406. import ("../views/workload/tollcollector.vue"),
  407. },
  408. {
  409. path: "/individualfeedetails",
  410. name: "个人收费明细",
  411. component: () =>
  412. import ("../views/workload/individualfeedetails.vue"),
  413. },
  414. {
  415. path: "/membershipcard",
  416. name: "会员卡分类统计",
  417. component: () =>
  418. import ("../views/workload/membershipcard.vue"),
  419. },
  420. ],
  421. },
  422. ];
  423. const router = new VueRouter({
  424. //mode: "history",
  425. //base: process.env.BASE_URL,
  426. routes,
  427. });
  428. router.beforeEach((to, form, next) => {
  429. let token = window.sessionStorage.getItem("token");
  430. let tokentype = window.sessionStorage.getItem("tokentype");
  431. if (to.path === "/login") {
  432. if (token != null) {
  433. next({
  434. path: "/",
  435. });
  436. } else {
  437. next();
  438. }
  439. } else {
  440. if (token == null) {
  441. next({
  442. path: "/login",
  443. });
  444. } else {
  445. next();
  446. }
  447. }
  448. });
  449. export default router;