diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocTemplateAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocTemplateAppServiceImpl.java index dcc22608..d2344a98 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocTemplateAppServiceImpl.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/document/appservice/impl/DocTemplateAppServiceImpl.java @@ -59,7 +59,7 @@ public class DocTemplateAppServiceImpl implements IDocTemplateAppService { docTemplateDto.setUserId(SecurityUtils.getLoginUser().getUserId()); } docTemplate.setOrganizationId(docTemplateDto.getOrganizationId()); - docTemplate.setId(docTemplateDto.getUserId()); + docTemplate.setUserId(docTemplateDto.getUserId()); docTemplate.setUseRange(docTemplateDto.getUseRange()); docTemplate.setRemark(docTemplateDto.getRemark()); docTemplateService.save(docTemplate); @@ -140,7 +140,7 @@ public class DocTemplateAppServiceImpl implements IDocTemplateAppService { docTemplate.setOrganizationId(docTemplateDto.getOrganizationId()); docTemplate.setUserId(docTemplateDto.getUserId()); docTemplate.setRemark(docTemplateDto.getRemark()); - docTemplateService.save(docTemplate); + docTemplateService.updateById(docTemplate); return R.ok("更新成功"); } diff --git a/openhis-ui-vue3/src/views/doctorstation/components/hospitalizationEmr/components/template.vue b/openhis-ui-vue3/src/views/doctorstation/components/hospitalizationEmr/components/template.vue index ed220122..06335b0f 100644 --- a/openhis-ui-vue3/src/views/doctorstation/components/hospitalizationEmr/components/template.vue +++ b/openhis-ui-vue3/src/views/doctorstation/components/hospitalizationEmr/components/template.vue @@ -9,8 +9,7 @@ -->
- - +
{{ item.name }} @@ -19,7 +18,6 @@
-
diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js index 68edb556..b9b4bd85 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/api.js @@ -74,10 +74,29 @@ export function updateTemplate(data) { } // 删除模板 -export function deleteTemplate(ids) { +export function deleteTemplate(id) { return request({ url: '/document/template/delete', method: 'delete', - data: ids, + params: { id }, }); } + + +// 保存或更新模板 +export function saveOrUpdate(data) { + if (data.id && data.id !== null && data.id !== 0 && String(data.id).trim() !== '') { + return request({ + url: '/document/template/update', + method: 'put', + data, + }); + } else { + const { id, ...restData } = data; + return request({ + url: '/document/template/add', + method: 'post', + data: restData, + }); + } +} diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/createTemplate.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/createTemplate.vue new file mode 100644 index 00000000..2ae2e759 --- /dev/null +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/createTemplate.vue @@ -0,0 +1,590 @@ + + + + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue index 38e1800b..07c6c0f2 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/components/template.vue @@ -9,17 +9,15 @@ -->
- - -
- {{ item.name }} - - - - -
-
-
+ +
+ {{ item.name }} + + + + +
+
@@ -108,12 +106,18 @@ const handleEdit = (data) => { // 删除模板 const handleDelete = async (item) => { try { + const templateId = item.id || item.templateId; + if (!templateId) { + console.error('模板数据:', item); + ElMessage.error('模板ID不存在'); + return; + } ElMessageBox.confirm('确定要删除该模板吗?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning', }).then(async () => { - await deleteTemplate(item.id); + await deleteTemplate(templateId); ElMessage.success('删除成功'); // 清除缓存中的数据,强制重新加载 templateCache.delete(unref(definitionId)); @@ -127,7 +131,10 @@ const handleDelete = async (item) => { }; const currentSelectTemplate = ref({}); -defineExpose({ queryList }); +const clearCache = () => { + templateCache.delete(unref(definitionId)); +}; +defineExpose({ queryList, clearCache }); + + \ No newline at end of file diff --git a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue index 91d36dc6..8cb27e2f 100644 --- a/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue +++ b/openhis-ui-vue3/src/views/inpatientDoctor/home/emr/index.vue @@ -101,6 +101,19 @@ @submitOk="templateEditSubmitOk" /> + + + +