|
@@ -7,9 +7,11 @@ import {
|
|
|
RefreshLeft,
|
|
|
RefreshRight,
|
|
|
SortDown,
|
|
|
+ Avatar
|
|
|
} from "@element-plus/icons-vue";
|
|
|
|
|
|
import {
|
|
|
+ emrConfig,
|
|
|
emrMitt, query,
|
|
|
useRecoveryEmr
|
|
|
} from "@/views/hospitalization/zhu-yuan-yi-sheng/electronic-medical-record/emr-editor/emr-init";
|
|
@@ -18,20 +20,29 @@ import {
|
|
|
Button,
|
|
|
PopoverButton,
|
|
|
} from "./useEmrFunction";
|
|
|
+import {xcMessage} from "@/utils/xiaochan-element-plus";
|
|
|
|
|
|
const props = defineProps<{
|
|
|
openRecovery: () => void,
|
|
|
- isOpenPage: boolean
|
|
|
+ isOpenPage: boolean,
|
|
|
+ reviewMode: number;
|
|
|
}>()
|
|
|
let zoom = 1;
|
|
|
|
|
|
-const emits = defineEmits(['update:isOpenPage'])
|
|
|
+const emits = defineEmits(['update:isOpenPage', 'update:reviewMode'])
|
|
|
+
|
|
|
+
|
|
|
+function setRevisionShowMode(value: number) {
|
|
|
+ emits('update:reviewMode', 2)
|
|
|
+ emrMitt.emit('editor')?.setRevisionShowMode(2);
|
|
|
+}
|
|
|
|
|
|
const businessFunctions = [
|
|
|
{
|
|
|
iconfontName: 'baocun',
|
|
|
title: '保存正在编写的电子病历',
|
|
|
name: '保存',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
click() {
|
|
|
emrMitt.emit('clickSaveData')
|
|
|
}
|
|
@@ -40,14 +51,25 @@ const businessFunctions = [
|
|
|
iconfontName: 'tijiao',
|
|
|
title: '标识病历为提交,提交不是保存,该功能只是在病历的前面加上一个🔒的样式',
|
|
|
name: '提交',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
click() {
|
|
|
emrMitt.emit('clickToSubmitTheMedicalRecord')
|
|
|
},
|
|
|
},
|
|
|
+ {
|
|
|
+ iconfontName: 'huizhenshenqing',
|
|
|
+ title: "由上级医生点击,上级医生审核完成病历后需要点击该按钮。",
|
|
|
+ name: '审核',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
+ click() {
|
|
|
+ emrMitt.emit('auditClick')
|
|
|
+ }
|
|
|
+ },
|
|
|
{
|
|
|
iconfontName: <Delete/>,
|
|
|
title: '删除当前病历,可在回收站恢复,出院患者无法删除,需要把出院患者召回才行',
|
|
|
name: '删除',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
click() {
|
|
|
emrMitt.emit('clickDelete')
|
|
|
},
|
|
@@ -56,6 +78,7 @@ const businessFunctions = [
|
|
|
iconfontName: 'huanyuan',
|
|
|
title: '还原当前病历上一次保存的状态',
|
|
|
name: '还原',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
click: props.openRecovery,
|
|
|
},
|
|
|
{
|
|
@@ -75,6 +98,7 @@ const functionList = ref<FunctionList[][]>([
|
|
|
name: '数据同步',
|
|
|
title: "数据同步,患者基本信息只会在空的时候填充,从病历提取的数据会强制替换,如入院诊断,鼠标右键可选择性填充数据",
|
|
|
iconfontName: 'tongbu',
|
|
|
+ disabled: !emrConfig.value.editor,
|
|
|
click() {
|
|
|
emrMitt.emit('syncEmrPatientData')
|
|
|
},
|
|
@@ -101,6 +125,33 @@ const functionList = ref<FunctionList[][]>([
|
|
|
}
|
|
|
],
|
|
|
[
|
|
|
+ {
|
|
|
+ title: "",
|
|
|
+ iconfontName: 'shenyue',
|
|
|
+ dropdown: [
|
|
|
+ {
|
|
|
+ name: '嵌入模式',
|
|
|
+ title: '开启后会在病历中会有其他医生的修改痕迹,默认开启',
|
|
|
+ click() {
|
|
|
+ setRevisionShowMode(2)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: '卡片模式',
|
|
|
+ title: '病历右侧会以列表的形式显示 添加,删除,更新的记录,可以通过该模式消除痕迹,选择 √ 或 X即可。',
|
|
|
+ click() {
|
|
|
+ const editor = emrMitt.emit('editor');
|
|
|
+ if (editor!.isRevisionMode) {
|
|
|
+ setRevisionShowMode(2)
|
|
|
+ xcMessage.warning('您不是该病历或片段的创建人无法使用卡片模式')
|
|
|
+ } else {
|
|
|
+ setRevisionShowMode(1)
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+ },
|
|
|
{
|
|
|
iconfontName: <Printer/>,
|
|
|
title: "",
|
|
@@ -164,6 +215,15 @@ const functionList = ref<FunctionList[][]>([
|
|
|
emrMitt.emit('editor')!.setPaginate(value.activation)
|
|
|
}
|
|
|
}
|
|
|
+ ],
|
|
|
+ [
|
|
|
+ {
|
|
|
+ title: "点击可以打开聊天室",
|
|
|
+ iconfontName: <Avatar/>,
|
|
|
+ click() {
|
|
|
+ emrMitt.emit('openChatRoom')
|
|
|
+ }
|
|
|
+ }
|
|
|
]
|
|
|
]);
|
|
|
|
|
@@ -204,7 +264,7 @@ emrMitt.emit('setHeaderFunction', [...businessFunctions, ...functionList.value[0
|
|
|
padding: 4px;
|
|
|
|
|
|
.emr_function-action-group {
|
|
|
- margin: 5px 0;
|
|
|
+ margin: 8px 0;
|
|
|
|
|
|
.el-button:hover {
|
|
|
background-color: #f5f7fa;
|