diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/appservice/impl/OperatingRoomAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/appservice/impl/OperatingRoomAppServiceImpl.java
index 98fabb54..32d4f292 100644
--- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/appservice/impl/OperatingRoomAppServiceImpl.java
+++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/appservice/impl/OperatingRoomAppServiceImpl.java
@@ -76,6 +76,26 @@ public class OperatingRoomAppServiceImpl implements IOperatingRoomAppService {
operatingRoomPage.getRecords().forEach(e -> {
// 状态
e.setStatusEnum_dictText(e.getStatusEnum() != null && e.getStatusEnum() == 1 ? "启用" : "停用");
+ // 类型
+ if (e.getRoomTypeEnum() != null) {
+ switch (e.getRoomTypeEnum()) {
+ case 1:
+ e.setRoomTypeEnum_dictText("急诊手术室");
+ break;
+ case 2:
+ e.setRoomTypeEnum_dictText("择期手术室");
+ break;
+ case 3:
+ e.setRoomTypeEnum_dictText("日间手术室");
+ break;
+ case 4:
+ e.setRoomTypeEnum_dictText("复合手术室");
+ break;
+ default:
+ e.setRoomTypeEnum_dictText("未知");
+ break;
+ }
+ }
// 拼音码
e.setPyStr(ChineseConvertUtils.toPinyinFirstLetter(e.getName()));
// 五笔码
@@ -105,6 +125,27 @@ public class OperatingRoomAppServiceImpl implements IOperatingRoomAppService {
operatingRoomDto.setStatusEnum_dictText(
operatingRoom.getStatusEnum() != null && operatingRoom.getStatusEnum() == 1 ? "启用" : "停用");
+ // 类型描述
+ if (operatingRoom.getRoomTypeEnum() != null) {
+ switch (operatingRoom.getRoomTypeEnum()) {
+ case 1:
+ operatingRoomDto.setRoomTypeEnum_dictText("急诊手术室");
+ break;
+ case 2:
+ operatingRoomDto.setRoomTypeEnum_dictText("择期手术室");
+ break;
+ case 3:
+ operatingRoomDto.setRoomTypeEnum_dictText("日间手术室");
+ break;
+ case 4:
+ operatingRoomDto.setRoomTypeEnum_dictText("复合手术室");
+ break;
+ default:
+ operatingRoomDto.setRoomTypeEnum_dictText("未知");
+ break;
+ }
+ }
+
// 如果有机构ID,查询机构名称
if (operatingRoom.getOrganizationId() != null) {
String orgName = commonService.getOrgNameById(operatingRoom.getOrganizationId());
diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/dto/OperatingRoomDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/dto/OperatingRoomDto.java
index 5ca30778..8c85f92e 100644
--- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/dto/OperatingRoomDto.java
+++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basedatamanage/dto/OperatingRoomDto.java
@@ -2,6 +2,7 @@ package com.openhis.web.basedatamanage.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
+import com.openhis.common.annotation.Dict;
import lombok.Data;
import lombok.experimental.Accessors;
@@ -35,6 +36,13 @@ public class OperatingRoomDto implements Serializable {
*/
private String name;
+ /**
+ * 手术室类型
+ */
+ @Dict(dictCode = "operating_room_type")
+ private Integer roomTypeEnum;
+ private String roomTypeEnum_dictText;
+
/**
* 所属机构ID
*/
diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/OperatingRoom.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/OperatingRoom.java
index 0be7c6ec..57573f35 100644
--- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/OperatingRoom.java
+++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/OperatingRoom.java
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.core.common.core.domain.HisBaseEntity;
+import com.openhis.common.annotation.Dict;
import com.openhis.common.enums.LocationStatus;
import lombok.Data;
import lombok.EqualsAndHashCode;
@@ -31,9 +32,17 @@ public class OperatingRoom extends HisBaseEntity {
/** 手术室名称 */
private String name;
+ /** 手术室类型 */
+ @Dict(dictCode = "operating_room_type")
+ private Integer roomTypeEnum;
+ private String roomTypeEnum_dictText;
+
/** 所属机构ID */
private Long organizationId;
+ /** 所属机构名称 */
+ private String organizationName;
+
/** 位置描述 */
private String locationDescription;
diff --git a/openhis-ui-vue3/src/router/index.js b/openhis-ui-vue3/src/router/index.js
index 531b68f6..f4b359be 100644
--- a/openhis-ui-vue3/src/router/index.js
+++ b/openhis-ui-vue3/src/router/index.js
@@ -113,116 +113,116 @@ export const constantRoutes = [
]
},
// 兼容系统业务管理路径
- {
- path: '/system/ywgz',
- component: Layout,
- redirect: '/system/ywgz/InvoiceManagement',
- hidden: true,
- children: [
- {
- path: 'InvoiceManagement',
- component: () => import('@/views/basicmanage/InvoiceManagement/index.vue'),
- name: 'SystemInvoiceManagement',
- meta: { title: '发票管理' }
- }
- ]
- },
- {
- path: '/maintainSystem',
- component: Layout,
- redirect: '/maintainSystem/chargeConfig',
- name: 'MaintainSystem',
- meta: { title: '维护系统', icon: 'system' },
- children: [
- {
- path: '',
- redirect: 'chargeConfig'
- },
- {
- path: 'chargeConfig',
- component: () => import('@/views/maintainSystem/chargeConfig/index.vue'),
- name: 'ChargeConfig',
- meta: { title: '挂号收费系统参数维护', icon: 'config', permissions: ['maintainSystem:chargeConfig:list'] }
- },
- {
- path: 'Inspection',
- component: () => import('@/views/maintainSystem/Inspection/index.vue'),
- name: 'Inspection',
- meta: { title: '检验管理', icon: 'inspection' },
- children: [
- {
- path: 'PackageManagement',
- component: () => import('@/views/maintainSystem/Inspection/PackageManagement.vue'),
- name: 'PackageManagement',
- meta: { title: '套餐管理' }
- }
- ]
- }
- ]
- },
- {
- path: '/system',
- component: Layout,
- redirect: '/system/user',
- name: 'System',
- meta: { title: '系统管理', icon: 'system' },
- children: [
- {
- path: 'user',
- component: () => import('@/views/system/user/index.vue'),
- name: 'User',
- meta: { title: '用户管理', icon: 'user', permissions: ['system:user:list'] }
- },
- {
- path: 'role',
- component: () => import('@/views/system/role/index.vue'),
- name: 'Role',
- meta: { title: '角色管理', icon: 'role', permissions: ['system:role:list'] }
- },
- {
- path: 'menu',
- component: () => import('@/views/system/menu/index.vue'),
- name: 'Menu',
- meta: { title: '菜单管理', icon: 'menu', permissions: ['system:menu:list'] }
- },
- {
- path: 'dept',
- component: () => import('@/views/system/dept/index.vue'),
- name: 'Dept',
- meta: { title: '部门管理', icon: 'dept', permissions: ['system:dept:list'] }
- },
- {
- path: 'post',
- component: () => import('@/views/system/post/index.vue'),
- name: 'Post',
- meta: { title: '岗位管理', icon: 'post', permissions: ['system:post:list'] }
- },
- {
- path: 'dict',
- component: () => import('@/views/system/dict/index.vue'),
- name: 'Dict',
- meta: { title: '字典管理', icon: 'dict', permissions: ['system:dict:list'] }
- },
- {
- path: 'config',
- component: () => import('@/views/system/config/index.vue'),
- name: 'Config',
- meta: { title: '参数配置', icon: 'config', permissions: ['system:config:list'] }
- },
- {
- path: 'notice',
- component: () => import('@/views/system/notice/index.vue'),
- name: 'Notice',
- meta: { title: '通知公告', icon: 'notice', permissions: ['system:notice:list'] }
- },
- {
- path: 'tenant',
- component: () => import('@/views/system/tenant/index.vue'),
- name: 'Tenant',
- meta: { title: '租户管理', icon: 'tenant', permissions: ['system:tenant:list'] }
- }
- ]
- },
+ // {
+ // path: '/system/ywgz',
+ // component: Layout,
+ // redirect: '/system/ywgz/InvoiceManagement',
+ // hidden: true,
+ // children: [
+ // {
+ // path: 'InvoiceManagement',
+ // component: () => import('@/views/basicmanage/InvoiceManagement/index.vue'),
+ // name: 'SystemInvoiceManagement',
+ // meta: { title: '发票管理' }
+ // }
+ // ]
+ // },
+ // {
+ // path: '/maintainSystem',
+ // component: Layout,
+ // redirect: '/maintainSystem/chargeConfig',
+ // name: 'MaintainSystem',
+ // meta: { title: '维护系统', icon: 'system' },
+ // children: [
+ // {
+ // path: '',
+ // redirect: 'chargeConfig'
+ // },
+ // {
+ // path: 'chargeConfig',
+ // component: () => import('@/views/maintainSystem/chargeConfig/index.vue'),
+ // name: 'ChargeConfig',
+ // meta: { title: '挂号收费系统参数维护', icon: 'config', permissions: ['maintainSystem:chargeConfig:list'] }
+ // },
+ // {
+ // path: 'Inspection',
+ // component: () => import('@/views/maintainSystem/Inspection/index.vue'),
+ // name: 'Inspection',
+ // meta: { title: '检验管理', icon: 'inspection' },
+ // children: [
+ // {
+ // path: 'PackageManagement',
+ // component: () => import('@/views/maintainSystem/Inspection/PackageManagement.vue'),
+ // name: 'PackageManagement',
+ // meta: { title: '套餐管理' }
+ // }
+ // ]
+ // }
+ // ]
+ // },
+ // {
+ // path: '/system',
+ // component: Layout,
+ // redirect: '/system/user',
+ // name: 'System',
+ // meta: { title: '系统管理', icon: 'system' },
+ // children: [
+ // {
+ // path: 'user',
+ // component: () => import('@/views/system/user/index.vue'),
+ // name: 'User',
+ // meta: { title: '用户管理', icon: 'user', permissions: ['system:user:list'] }
+ // },
+ // {
+ // path: 'role',
+ // component: () => import('@/views/system/role/index.vue'),
+ // name: 'Role',
+ // meta: { title: '角色管理', icon: 'role', permissions: ['system:role:list'] }
+ // },
+ // {
+ // path: 'menu',
+ // component: () => import('@/views/system/menu/index.vue'),
+ // name: 'Menu',
+ // meta: { title: '菜单管理', icon: 'menu', permissions: ['system:menu:list'] }
+ // },
+ // {
+ // path: 'dept',
+ // component: () => import('@/views/system/dept/index.vue'),
+ // name: 'Dept',
+ // meta: { title: '部门管理', icon: 'dept', permissions: ['system:dept:list'] }
+ // },
+ // {
+ // path: 'post',
+ // component: () => import('@/views/system/post/index.vue'),
+ // name: 'Post',
+ // meta: { title: '岗位管理', icon: 'post', permissions: ['system:post:list'] }
+ // },
+ // {
+ // path: 'dict',
+ // component: () => import('@/views/system/dict/index.vue'),
+ // name: 'Dict',
+ // meta: { title: '字典管理', icon: 'dict', permissions: ['system:dict:list'] }
+ // },
+ // {
+ // path: 'config',
+ // component: () => import('@/views/system/config/index.vue'),
+ // name: 'Config',
+ // meta: { title: '参数配置', icon: 'config', permissions: ['system:config:list'] }
+ // },
+ // {
+ // path: 'notice',
+ // component: () => import('@/views/system/notice/index.vue'),
+ // name: 'Notice',
+ // meta: { title: '通知公告', icon: 'notice', permissions: ['system:notice:list'] }
+ // },
+ // {
+ // path: 'tenant',
+ // component: () => import('@/views/system/tenant/index.vue'),
+ // name: 'Tenant',
+ // meta: { title: '租户管理', icon: 'tenant', permissions: ['system:tenant:list'] }
+ // }
+ // ]
+ // },
{
path: '/system/tenant-user',
component: Layout,
diff --git a/openhis-ui-vue3/src/views/operatingroom/index.vue b/openhis-ui-vue3/src/views/operatingroom/index.vue
index 6b7e5937..444bfb14 100644
--- a/openhis-ui-vue3/src/views/operatingroom/index.vue
+++ b/openhis-ui-vue3/src/views/operatingroom/index.vue
@@ -52,6 +52,8 @@
+
+
@@ -109,6 +111,18 @@
+
+
+
+
+
+
+
+
+
+
@@ -196,6 +213,7 @@
{{ viewData.busNo }}
{{ viewData.name }}
+ {{ viewData.roomTypeEnum_dictText }}
{{ viewData.locationDescription }}
{{ viewData.capacity }}
{{ viewData.organizationName }}
@@ -260,6 +278,7 @@ const form = ref({
id: undefined,
busNo: undefined,
name: undefined,
+ roomTypeEnum: undefined,
organizationId: undefined,
locationDescription: undefined,
equipmentConfig: undefined,
@@ -272,6 +291,13 @@ const form = ref({
const operatingRoomRef = ref()
const viewData = ref({})
+const roomTypeOptions = ref([
+ { value: 1, label: '急诊手术室' },
+ { value: 2, label: '择期手术室' },
+ { value: 3, label: '日间手术室' },
+ { value: 4, label: '复合手术室' }
+])
+
const statusOptions = ref([
{ value: 1, label: '启用' },
{ value: 0, label: '停用' }
@@ -344,6 +370,7 @@ function reset() {
id: undefined,
busNo: undefined,
name: undefined,
+ roomTypeEnum: undefined,
organizationId: undefined,
locationDescription: undefined,
equipmentConfig: undefined,